一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于ARX白盒分组密码的数字内容加解密方法与流程

2021-10-24 08:02:00 来源:中国专利 TAG:数字 加解密 内容 分组 信息安全

技术特征:
1.一种基于arx白盒分组密码的数字内容加解密方法,其特征在于,在加密中执行24轮arx的循环操作后再执行aes

128的轮函数操作,解密时执行aes

128的逆轮函数操作后再查询一个32比特输入、32比特输出的查找表;该加解密方法的步骤包括如下:步骤1,生成加密密钥:利用密钥导出函数kdf,将一个128位的主密钥变换为25个32位的轮密钥k0,k1,...,k
i
,...,k
24
,作为数字内容的加密密钥;步骤2,利用arx循环操作生成解密密钥:(2a)将2
32
个32位比特串0,1,10,

,11111111111111111111111111111111分别与初始轮密钥k0异或,得到异或后的2
32
个32位比特串;(2b)对每个32位比特串中的高16位循环右移7位后,再与低16位进行模数为65536的相加操作,得到该比特串的高16位,将每个32位比特串中的低16位复制,得到该比特串的低16位;(2c)对每个32位比特串中的低16位循环左移2位后,再与高16位进行异或操作,得到该比特串的低16位,将每个32位比特串中的高16位复制,得到该比特串的高16位;(2d)对每个32位比特串与轮密钥k
i
进行异或操作,得到异或后的32位比特串,其中i表示循环轮次;(2e)遍历步骤(2b)、(2c)、(2d)24次,得到2
32
个32位比特串;(2f)将2
32
个32位比特串排列在一张查找表中,作为数字内容的解密密钥;步骤3,对数字内容进行预处理:将数字内容编码为比特串,将比特串切分为128位的明文分组,对于不足128位的分组填充比特
‘0’
;步骤4,利用初始轮密钥异或操作更新明文分组:将每个128位的明文分组切分为4个32比特的小块,将每个小块与初始轮密钥k0异或,得到该小块异或后的小块;步骤5,利用arx循环操作更新明文分组:(5a)采用与步骤(2b)、(2c)、(2d)、(2e)的相同方法,对每个明文分组的每个小块进行arx循环操作,得到每个明文分组的4个更新后的小块;(5b)对每个明文分组的4个更新后的小块,按照其更新前的顺序从高位到低位进行级联操作,得到128位比特串,作为每个明文分组的更新后的明文分组;步骤6,利用aes

128的轮函数操作更新明文分组:(6a)利用aes

128的密钥编排操作,将一个随机的128位比特串变换为与轮次相同数量的128位的比特串,作为aes

128的轮密钥;(6b)对每个明文分组和aes

128的轮密钥进行aes

128的轮函数操作,得到明文分组更新后的明文分组;步骤7,对明文分组进行后处理:将所有更新后的明文分组按照其更新前的顺序从高位到低位进行级联操作,得到密文比特串,将密文比特串编码为密文形式的数字内容;步骤8,对密文形式的数字内容进行预处理:将密文形式的数字内容解码为比特串,将比特串切分为128位的密文分组;
步骤9,利用查表操作更新密文分组:(9a)将每个密文分组切分为4个32比特的小块,对每个小块对应的32比特索引,查找其在步骤(2f)生成的查找表中对应的32位比特串,作为该小块更新后的小块;(9b)采用与步骤(5b)的相同方法,对每个密文分组进行级联操作,得到128位比特串,作为每个密文分组的更新后的密文分组;步骤10,利用aes

128的逆轮函数操作更新密文分组:对每个密文分组和aes

128的轮密钥进行aes

128的逆轮函数操作,得到密文分组更新后的密文分组;步骤11,对密文分组进行后处理:将所有更新后的密文分组按照其更新前的顺序从高位到低位进行级联操作,得到明文比特串,将明文比特串解码为明文形式的数字内容。2.根据权利要求1所述的基于arx白盒分组密码的数字内容加解密方法,其特征在于,步骤1中所述的密钥导出函数kdf是指安全哈希算法族里的输出可扩展函数shake128、shake256中的任意一种。3.根据权利要求1所述的基于arx白盒分组密码的数字内容加解密方法,其特征在于,步骤(6b)中所述的aes

128的轮函数操作是指预白化密钥、字节代换、行移位、列混淆、轮密钥加的操作,包括如下:预白化密钥:将128位明文分组与aes

128的第1个轮密钥进行异或操作,得到更新后的明文分组;字节代换:将更新后的明文分组切分为16个8比特的小块,将16个小块按照从左到右、从上到下的顺序排列在一个4行4列的矩阵中,对每个小块对应的8比特索引,查找其在aes

128的字节代换查找表中对应的8位比特串,作为该小块更新后的小块,得到更新后的矩阵;行移位:将更新后的矩阵中的第1行内的4个小块保持不变,第2行内的4个小块循环左移1个位置,第3行内的4个小块循环左移2个位置,第4行内的4个小块循环左移3个位置,得到更新后的矩阵;列混淆:对更新后的矩阵的每一列左乘aes

128的列混淆矩阵,得到更新后的矩阵,将矩阵中的16个小块按照从左到右、从上到下的顺序排列成128位的比特串,作为更新后的明文分组;轮密钥加:将更新后的明文分组与aes

128的轮密钥进行异或操作,得到更新后的明文分组。4.根据权利要求1所述的基于arx白盒分组密码的数字内容加解密方法,其特征在于,步骤10中所述的aes

128的逆轮函数操作是指预白化密钥、逆列混淆、逆行移位、逆字节代换、轮密钥加的操作,包括如下:预白化密钥:将128位密文分组与aes

128的最后一个轮密钥进行异或操作,得到更新后的密文分组;逆列混淆:将更新后的密文分组切分为16个8比特的小块,将16个小块按照从左到右、从上到下的顺序排列在一个4行4列的矩阵中,对矩阵的每一列左乘aes

128的逆列混淆矩阵,得到更新后的矩阵;逆行移位:将更新后的矩阵中的第1行内的4个小块保持不变,第2行内的4个小块循环
右移1个位置,第3行内的4个小块循环右移2个位置,第4行内的4个小块循环右移3个位置,得到更新后的矩阵;逆字节代换:对更新后的矩阵中的每个小块对应的8比特索引,查找其在aes

128的逆字节代换查找表中对应的8位比特串,作为该小块更新后的小块,得到更新后的矩阵,将更新后的矩阵中的16个小块按照从左到右、从上到下的顺序排列成128位的比特串,作为更新后的密文分组;轮密钥加:将更新后的密文分组与aes

128的轮密钥进行异或操作,得到更新后的密文分组。

技术总结
本发明公开一种基于ARX白盒分组密码的数字内容加解密方法,主要解决现有技术加解密方法运行效率不高以及解密方法存储空间成本太高的问题。该方法包括在加密中执行ARX的循环操作以及AES


技术研发人员:刘君 陈杰 罗一诺
受保护的技术使用者:西安电子科技大学
技术研发日:2021.07.12
技术公布日:2021/10/23
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜