[发明专利]一种分组密码算法实现的方法、装置和设备在审
申请号: | 202210778720.5 | 申请日: | 2022-06-30 |
公开(公告)号: | CN115102692A | 公开(公告)日: | 2022-09-23 |
发明(设计)人: | 王宇辰;洪澄 | 申请(专利权)人: | 阿里巴巴(中国)有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 汪洋 |
地址: | 311121 浙江省杭州市余杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分组 密码 算法 实现 方法 装置 设备 | ||
1.一种分组密码算法实现的方法,其特征在于,包括:
将获取的第一明文数据和第一轮密钥分别映射至复合域中,获得第二明文数据和第二轮密钥,所述第一明文数据和所述第一轮密钥为分组密码算法的有限域中的数据,所述第一轮密钥是利用初始密钥通过密钥扩展算法生成的密钥,所述复合域与所述分组密码算法的有限域之间存在同构关系;
在所述复合域中,根据所述第二明文数据和所述第二轮密钥实现所述分组密码算法包括的轮函数的计算,获得第一密文数据;
将所述第一密文数据反映射至所述分组密码算法的有限域中,获得第二密文数据;
输出所述第二密文数据。
2.根据权利要求1所述的方法,其特征在于,所述在所述复合域中,根据所述第二明文数据和所述第二轮密钥实现所述分组密码算法包括的轮函数的计算,获得第一密文数据,包括:
在所述复合域中,利用第一输入数据和所述第二轮密钥对所述轮函数执行多轮迭代处理,获得所述多轮迭代处理对应的多个迭代结果;
对所述多轮迭代处理中最后N轮迭代处理获得的迭代结果进行反序排列,获得所述第一密文数据,N为正整数;
其中,在第一轮迭代处理中,所述第一输入数据为所述第二明文数据;在除所述第一轮迭代处理之外的任意一轮迭代处理中,所述第一输入数据采用如下方式获得:将上一轮迭代处理时输入至所述轮函数的原第一输入数据中的预定的部分数据,与上一轮迭代后获得的迭代结果进行预定方式的组合。
3.根据权利要求2所述的方法,其特征在于,所述轮函数包括第一操作和第二操作,所述第一操作包括仿射变换处理和求逆处理,所述第二操作包括移位操作、按位异或操作以及规定操作α;所述在所述复合域中,利用第一输入数据和所述第二轮密钥对所述轮函数执行多轮迭代处理,获得所述多轮迭代处理对应的多个迭代结果,其中任意一轮迭代处理包括:
对第二输入数据、第一预设矩阵和第一预设行向量执行所述第一操作,获得所述第一操作处理后的结果,所述第二输入数据是对所述第二轮密钥和所述第一输入数据中的部分数据执行按位异或操作获得的数据,所述第一预设矩阵和所述第一预设行向量是所述复合域中的数据;
利用线性矩阵集合对所述第一操作处理后的结果执行第二操作,获得所述第二操作处理后的结果,所述线性矩阵集合包括的第一线性矩阵和第二线性矩阵是所述复合域中的两个不同的线性矩阵;
对所述第二操作处理后的结果和所述第一输入数据中的部分数据执行按位异或操作,获得本轮迭代后的输出结果。
4.根据权利要求3所述的方法,其特征在于,所述仿射变换处理包括第一仿射变换和第二仿射变换,所述对第二输入数据、第一预设矩阵和第一预设行向量执行所述第一操作,获得所述第一操作处理后的结果,包括:
对所述第二输入数据、所述第一预设矩阵和所述第一预设行向量执行所述第一仿射变换,获得所述第一仿射变换结果;
对所述第一仿射变换结果执行所述求逆处理,获得所述求逆处理后的结果;
对所述求逆处理后的结果、所述第一预设矩阵和所述第一预设行向量执行所述第二仿射变换,获得所述第一操作处理后的结果。
5.根据权利要求4所述的方法,其特征在于,所述规定操作α包括第一线性变换和第二线性变换,所述移位操作包括第一移位操作和第二移位操作,所述利用线性矩阵集合对所述第一操作处理后的结果执行第二操作,获得所述第二操作处理后的结果,包括:
利用所述第一线性矩阵对所述第一操作处理后的结果执行所述第一线性变换,获得所述第一线性变换结果;以及利用所述第二线性矩阵对所述第一操作处理后的结果执行所述第二线性变换,获得所述第二线性变换结果;
对所述第一线性变换结果和所述第二线性变换结果执行所述按位异或操作,获得所述按位异或操作处理后的结果;
对所述按位异或操作处理后的结果执行所述第一移位操作,以及对所述第二线性变换结果执行所述第二移位操作,分别获得所述第一移位操作处理后的结果和所述第二移位操作处理后的结果;
对所述第一线性变换结果、所述第一移位操作处理后的结果和所述第二移位操作处理后的结果执行所述按位异或操作,获得所述第二操作处理后的结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴(中国)有限公司,未经阿里巴巴(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210778720.5/1.html,转载请声明来源钻瓜专利网。