一种轻量化S盒设计方法技术

技术编号:28045703 阅读:22 留言:0更新日期:2021-04-09 23:30
本发明专利技术公开了一种轻量化S盒设计方法。本发明专利技术能够产生密码性质好的轻量化8比特S盒,其单轮逻辑运算仅涉及4个比特与运算和4个比特异或运算,迭代4轮后差分均匀度为16、非线性度为96且整体平衡(非线性置换);与现有技术相比,通过本发明专利技术得到的轻量化8比特S盒在硬件资源低的条件下达到了已知最优的差分均匀度和非线性度等密码学指标,解决了之前轻量化8比特S盒差分均匀度和非线性度等密码性质弱的问题。

【技术实现步骤摘要】
一种轻量化S盒设计方法
本专利技术涉及通信加密
,具体涉及一种轻量化S盒设计方法。
技术介绍
国内外现有的对称密码算法设计仍然沿用香农1949年提出的“混淆”、“扩散”思想,通过对称密码算法的“混淆”和“扩散”部件使得明文、密文和密钥之间的关系异常复杂,以至于攻击者无法从密文得到明文的任何信息、或者从明密文对得到密钥的任何信息。“混淆”部件普遍采用非线性置换S盒(SubstitutionBox)。S盒首次出现在分组密码算法Lucifer中,随着美国标准化技术研究机构NIST(NationalInstituteofStandardTechnology)在1977年发布的数据加密算法标准DES(DataEncryptionStandard)的使用而广为流行。S盒是绝大多数密码算法中唯一的非线性部件,其密码性质几乎决定了整个密码算法的安全强度,也极大影响整个算法的“混淆”效果。n比特输入m比特输出的S盒(简称为n×m的S盒)定义如下:其中fi(X)为的布尔函数,i=1,2,…,m,F2表示由0和1构成的二元域集合本文档来自技高网...

【技术保护点】
1.一种轻量化S盒设计方法,其特征在于,包括以下步骤:/nS1、对选定的S盒规格n,随机选取

【技术特征摘要】
1.一种轻量化S盒设计方法,其特征在于,包括以下步骤:
S1、对选定的S盒规格n,随机选取的布尔函数f1和f2;
S2、对S盒的n比特输入数据(x0,x1,x2,…,xn-2,xn-1),依次遍历{0,1,…,2n-1}所有整数值对应的n比特二元向量{(0,0,0,…,0,0),(0,0,0,…,0,1),…,(1,1,1,…,1,1)},对任意整数值i对应的n比特二元向量(x0,x1,x2,…,xn-2,xn-1),根据布尔函数f1和f2进行3轮n支广义Feistel结构的轮变换和1轮非线性变换得到n比特中间变量,并对n比特中间变量进行比特组合,得到n×n规格的S盒Sbox在整数i的数值Sbox(i),i∈{0,1,…,2n-1};
S3、输出n×n规格的S盒Sbox。


2.根据权利要求1所述的轻量化S盒设计方法,其特征在于,所述步骤S1中布尔函数f1和f2的迭代次数不小于2次,且其代数正规型不包含1次项和常数项。


3.根据权利要求1所述的轻量化S盒设计方法,其特征在于,所述步骤S1中布尔函数f1和f2均包含2U种非零布尔函数,其中U为中间参数。


4.根据权利要求3所述的轻量化S盒设计方法,其特征在于,所述中间参数U的计算公式为:
U=2n-2-n+1。


5.根据权利要求1所述的轻量化S盒设计方法,其特征在于,所述步骤S2的具体步骤为:
S21、对输入的n比特二元向量(x0,x1,x2,…,xn-2,xn-1)计算第1轮n支广义Feistel结构的轮变换,即t01=x2,t11=x3,t21=x4,…,t(n-4)1=xn-2,t(n-3)1=xn-1,(t01,t11,t21,…,t(n-2)1,t(n-1)1)为第一轮变...

【专利技术属性】
技术研发人员:董新锋张文政周宇苗旭东胡建勇李枫申兵王金波韩羽
申请(专利权)人:中国电子科技集团公司第三十研究所
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1