技术新讯 > 电子通信装置的制造及其应用技术 > 基于MILP的轻量级S盒的智能生成方法及相关设备  >  正文

基于MILP的轻量级S盒的智能生成方法及相关设备

  • 国知局
  • 2024-10-09 14:53:52

本发明涉及信息安全,尤其涉及一种基于milp的轻量级s盒的智能生成方法及相关设备。

背景技术:

1、s盒是密码算法中混淆层关键的非线性组件,其需要满足特定的密码学性质,例如差分均匀度(differential uniformity)、线性度(linearity)、不动点个数、差分/线性输入输出汉明重量为1的个数(bad input and bad output,bibo)等。同时,密码算法是需要通过软件或者硬件实现才能保证现有的通信安全,因此s盒的硬件实现代价和性能也是至关重要的,例如实现的最小逻辑门数,使用比特切片(bit-sliced)技术实现的门数、使用掩码保护的抗侧信道攻击的实现门数、硬件实现的关键路径长度(可用逻辑门深度大概估算)等。因此得到密码学性质好且软硬件实现性能好的s盒是密码设计中迫切需要的。

2、目前,s盒设计方法主要有4种方法:(1)随机生成;(2)使用数学上代数方法或者结构构造的方法;(3)使用启发式的方法构造s盒;(4)基于boolean satisiability problem(sat),使用求解器搜索密码学性质较好的s盒。然而上面4种寻找s盒的方法都是优先保证寻找密码学性质比较好的s盒,再考虑如何以更少的代价实现s盒。但是一旦s盒确定下来后,其软硬件实现性能的范围是有限的。

技术实现思路

1、为找到一个符合密码学特定要求且实现性能较好的s盒,本发明在s盒设计之初同时考虑密码学性质和软硬件实现性能,基于混合线性整数规划问题(mixed integerlinear programming,milp)提出了一个智能化的s盒生成方法及相关设备。

2、第一方面,本发明提供一种基于milp的轻量级s盒的智能生成方法,包括:

3、步骤1:在milp模型中建立s盒与其差分分布表ddt之间的关系,并设定差分均匀度≤u,u表示给定的差分均匀度阈值;

4、步骤2:设定实现s盒所需要的逻辑门个数k,在milp模型中建立s盒的硬件实现电路;

5、步骤3:对构建的milp模型进行求解,搜索得到目标s盒。

6、进一步地,步骤1具体包括:

7、步骤1.1:在milp模型中声明s盒在每个地址的取值和差分分布表ddt中的每个变量,并约束s盒在任意两个不同地址的取值不同;

8、步骤1.2:根据ddt定义,使用不等式约束在所述milp模型中刻画s盒在每个地址的取值与差分分布表ddt中的每个变量之间的关系。

9、进一步地,步骤1.2具体包括:

10、在milp模型中声明s盒在输入为x时和输入为x⊕α时的输出差分dα,x=s(x)⊕s(x⊕α);其中,⊕表示异或;

11、在milp模型中声明变量fα,x,β表示dα,x是否为β的标志信号,并建立变量fα,x,β与差分分布表ddt中的每个变量之间的关系;

12、令差分分布表ddt中的最大值≤u。

13、进一步地,使用下述的不等式对三个取值为0或1的整数变量a,b,c建立异或关系⊕:

14、

15、进一步地,步骤2具体包括:

16、步骤2.1:设定实现s盒所需要的逻辑门个数k,并在milp模型中声明硬件实现电路建模所需要的变量,包括:s盒输入变量,在给定s盒输入变量下每个逻辑门的输入变量和输出变量,用于指示每个逻辑门类型的变量,以及用于指示每个逻辑门的输入变量的取值来源的变量;

17、步骤2.2:根据声明的硬件实现电路建模所需要的变量在milp模型中对逻辑门的功能和各个逻辑门之间的连接关系进行建模;

18、步骤2.3:建立s盒在每个地址的取值与步骤2.2建模得到的硬件实现电路之间的关系。

19、进一步地,步骤3中,采用gurobi软件对构建的milp模型进行求解。

20、第二方面,本发明提供一种基于milp的轻量级s盒的智能生成装置,包括:

21、关系建模模块,用于在milp模型中建立s盒与其差分分布表ddt之间的关系,并设定差分均匀度≤u,u表示给定的差分均匀度阈值;

22、电路建模模块,用于设定实现s盒所需要的逻辑门个数k,在milp模型中建立s盒的硬件实现电路;

23、s盒生成模块,用于对构建的milp模型进行求解,搜索得到目标s盒。

24、第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的方法。

25、第四方面,本发明提供一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如第一方面所述的方法。

26、本发明的有益效果:

27、(1)相对于目前使用sat的s盒设计方案,本发明首次提出了基于milp问题的s盒设计方案,对s盒自动化设计提供了完全不同的解决方案。

28、(2)本发明提出的基于milp的智能化s盒生成方法能够同时兼顾密码学性质和硬件实现代价,相对于原有只考虑安全性的设计方法能够找到易于实现的s盒,对设计高性能和低功耗的安全的密码算法具有重要意义。

29、(3)本发明基于milp问题进行建模,使用gurobi求解器时可以同时得到多个符合约束的解,即同时满足差分均匀度≤u且硬件实现门数为k的多个s盒的设计方案。

技术特征:

1.基于milp的轻量级s盒的智能生成方法,其特征在于,包括:

2.根据权利要求1所述的基于milp的轻量级s盒的智能生成方法,其特征在于,步骤1具体包括:

3.根据权利要求2所述的基于milp的轻量级s盒的智能生成方法,其特征在于,步骤1.2具体包括:

4.根据权利要求3所述的基于milp的轻量级s盒的智能生成方法,其特征在于,使用下述的不等式对三个取值为0或1的整数变量a,b,c建立异或关系⊕:

5.根据权利要求1所述的基于milp的轻量级s盒的智能生成方法,其特征在于,步骤2具体包括:

6.根据权利要求1所述的基于milp的轻量级s盒的智能生成方法,其特征在于,步骤3中,采用gurobi软件对构建的milp模型进行求解。

7.基于milp的轻量级s盒的智能生成装置,其特征在于,包括:

8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述的方法。

9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一所述的方法。

技术总结本发明提供一种基于MILP的轻量级S盒的智能生成方法及相关设备。本发明基于MILP求解问题提出了同时满足密码学性质且硬件实现门数为k的S盒自动化搜索方法,该方法同时兼顾了密码学安全性质和软硬件实现代价,有利于找到易于实现且保证安全性质的S盒,对现有密码算法设计中安全性、高性能和低功耗具有重要意义。技术研发人员:吕广秋,金晨辉,崔霆,杨阳,陈士伟,张际焱,史臻受保护的技术使用者:中国人民解放军战略支援部队信息工程大学技术研发日:技术公布日:2024/9/29

本文地址:https://www.jishuxx.com/zhuanli/20241009/306882.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。