Document
拖动滑块完成拼图
个人中心

预订订单
商城订单
发布专利 发布成果 人才入驻 发布商标 发布需求

请提出您的宝贵建议,有机会获取IP积分或其他奖励

投诉建议

在线咨询

联系我们

龙图腾公众号
首页 专利交易 IP管家助手 科技果 科技人才 积分商城 国际服务 商标交易 会员权益 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索
当前位置 : 首页 > 专利喜报 > 南京理工大学;中移互联网有限公司周永彬获国家专利权

南京理工大学;中移互联网有限公司周永彬获国家专利权

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

龙图腾网获悉南京理工大学;中移互联网有限公司申请的专利一种基于共享状态机的SM4加解密密钥生成硬件设计方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN121125058B

龙图腾网通过国家知识产权局官网在2026-01-27发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202511654177.8,技术领域涉及:H04L9/06;该发明授权一种基于共享状态机的SM4加解密密钥生成硬件设计方法是由周永彬;庄严;张倩;刘月君;苏儒;张锐;孙硕设计研发完成,并于2025-11-12向国家知识产权局提交的专利申请。

一种基于共享状态机的SM4加解密密钥生成硬件设计方法在说明书摘要公布了:本发明公开一种基于共享状态机的SM4加解密密钥生成硬件设计方法,将加密密钥生成和解密密钥生成过程结合起来,共用全部数据通路,共享部分状态机,该状态机在加密时将K00、K11、K22、K33作为主密钥输入,在解密时,将K3535、K3434、K3333、K3232作为主密钥输入,可以在不需要更新密钥时,只需要32个周期就可以完成解密密钥的生成,从而减少解密轮密钥生成所需要的周期数。定制状态机通过状态跳转优化了解密密钥生成过程,通过控制信号来控制来确保生成的加密轮密钥和解密轮密钥的正确性。用于SM4加解密密钥生成,将密钥不变时的解密密钥生成的周期数减少50%。减少了加解密密钥生成所需的寄存器和组合逻辑数量。

本发明授权一种基于共享状态机的SM4加解密密钥生成硬件设计方法在权利要求书中公布了:1.一种基于共享状态机的SM4加解密密钥生成硬件设计方法,其特征在于:将加密密钥生成和解密密钥生成过程结合起来,共用全部数据通路,共享部分状态机,该状态机在加密时将K0、K、K、K作为主密钥输入,在解密时,将K35、K34、K33、K32作为主密钥输入,在不需要更新密钥时,只需要32个周期就可以完成解密密钥的生成,从而减少解密轮密钥生成所需要的周期数; 首先,加密时,采用的加密密钥生成公式如下: 其中,MK表示128比特输入主密钥,FK表示SM4标准中的128比特系统参数,r表示轮数,K表示32比特的第r轮加密轮密钥,A1、B1是32比特的中间变量;a~a分别表示8比特的中间变量;τ表示非线性函数;LB1表示输入为B1的线性变换;Sboxa~Sboxa分别表示S盒函数;ck表示SM4标准中的32比特固定参数;rk表示第r轮加密轮密钥; 其次,解密时,采用的解密轮密钥生成公式如下: 在已知K35、K34、K33、K32的情况下,解密轮函数可以表示为: 其中,A2、B2是32比特的中间变量,LB2表示输入为B2的线性变换;rk31-r和K31-r表示32比特的第31-r轮加密轮密钥,用作第r轮解密密钥; 加密和解密轮密钥生成的32轮循环迭代的函数四输入异或、非线性函数τ、线性函数以及二输入异或这四个操作均是相同的,不同之处在于输入不同; SM4的加解密密钥生成器包括数据通路、输出轮密钥取值、定制状态机三部分; 输出轮密钥取值为assignRK=K,RK表示SM4算法的轮密钥输出; 定制状态机需要S0至S38共计39个状态;通过状态机跳转、下一状态NS的组合逻辑赋值、状态机的时序逻辑输出K、K、K、K和K35、K34、K33、K32,状态机的时序逻辑输出控制信号flag1,状态机的组合逻辑输出常数ck,状态机的组合逻辑为输出输出有效信号key_out_valid; 状态机跳转:由CS表示当前状态,NS表示下一状态;在复位时,CS赋值为0;否则在时钟沿到来时,将NS赋值给CS; 下一状态NS的组合逻辑赋值:在CS为初始状态S0,当flag==0且flag1==0时,NS跳转至状态S1,否则保持当前状态;在CS为状态S1、状态S2至状态S32时,NS跳转至当前状态CS+1的状态;在CS为状态S33时,如果flag=1,NS跳转到S0,如果flag=0且flag1=1,NS跳转到S35,否则跳转至状态S34;在CS为状态34时,如果load_key=1,NS跳转至状态S1,如果load_data=1,跳转至状态S35,否则保持当前状态;在CS为状态35、状态36以及状态37时,NS跳转至当前状态CS+1的状态;在CS为状态38时,NS跳转至状态S5;在CS为default时,NS跳转至S0状态; 状态机的时序逻辑输出K、K、K、K;在CS为状态S0和S34时,将主密钥异或MK的值,作为K、K、K、K的初始值,即{K,K,K,K=key^MK;在CS为状态S1至状态S32时,更新K、K、K、K的值,即{K,K,K2,K3}={K1,K2,K3,next_K3},其中next_K3为组合逻辑计算出的下一个轮密钥;在CS为状态S35时,将K35赋值给K3;状态S36时,将K34赋值给K3,将K35赋值给K0;在CS为状态S37时,将K33赋值给K3,将K34赋值给K1,将K35赋值给K0;在CS为状态S38时,将K32赋值给K3,将K33赋值给K2,将K34赋值给K1,将K35赋值给K0;实际上执行状态S35至状态S38时,是将K35,K34,K33,K32作为解密初始轮密钥,且每个周期使用一个,在解密初始轮密钥赋值完成后,之后进入状态5至状态32,就可以每个周期得到一个解密轮密钥; 状态机的另一组时序逻辑输出K35、K34、K33、K32;在CS为状态33时,如果flag1=0,将K3、K2、K1、K0分别作为K35、K34、K33、K32的值,否则保持;在CS为其他状态时,K35、K34、K33、K32保持;此逻辑输出表示,在状态33时,将真正的K35、K34、K33、K32赋值后,就保持不变了,在解密时,如果主密钥不变,可以直接使用K35、K34、K33、K32作为初始值; 状态机的另一时序逻辑输出flag1控制信号;在CS为状态S0时,flag1赋值为0;在CS为状态33时,flag1赋值为1,其他状态flag1保持; 状态机的组合逻辑输出常数ck;CS在不同状态下,将cki的值赋值给ck;cki表示在计算第i个加密轮密钥时所需要的常数值;flag1=0时,由加密初始轮密钥计算加密轮密钥,依次由状态S1至状态S32,依次给出ck0至ck31,依次赋值给ck,并可以计算出新的next_K3,赋值得到新的K3;flag1=1时,由解密初始轮密钥计算解密轮密钥,依次由状态S5至状态S32,依次给出ck31至ck4,依次赋值给ck,并可以计算出新的next_K3,赋值得到新的K3;其他状态时,ck默认均取ck0。

如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人南京理工大学;中移互联网有限公司,其通讯地址为:210094 江苏省南京市玄武区孝陵卫街道孝陵卫街200号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。

以上内容由龙图腾AI智能生成。

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。