[发明专利]SM4加速处理器、方法和系统在审
申请号: | 201910491938.0 | 申请日: | 2015-06-19 |
公开(公告)号: | CN110233721A | 公开(公告)日: | 2019-09-13 |
发明(设计)人: | S·格伦;V·克拉斯诺夫 | 申请(专利权)人: | 英特尔公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;G06F9/30;G06F21/60 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 黄嵩泉;钱慰民 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理器 紧缩 数据操作数 数据寄存器 解码单元 密码轮 指令 存储位置 结果存储 解码指令 指令指示 耦合的 响应 申请 | ||
1.一种处理器,包括:
用于存储单指令多数据SIMD数据的多个寄存器,包括第一寄存器和第二寄存器,所述第一寄存器用于存储第一源数据,所述第一源数据包括与SM4密码算法的四个在先的密钥扩展轮相对应的四个轮密钥,所述第二寄存器用于存储包括四个密钥生成常数的第二源数据;
解码单元,用于解码指令,所述指令具有用于指定所述第一寄存器的第一字段、用于指定所述第二寄存器的第二字段、和用于指定所述多个寄存器中的目的地寄存器的第三字段;以及
执行单元,与所述解码单元和所述多个寄存器耦合,所述执行单元用于:响应于所述指令的解码,生成结果并将所述结果存储在所述目的地寄存器中,所述结果包括与所述SM4密码算法的四个顺序的密钥扩展轮相对应的四个轮密钥,所述四个顺序的密钥扩展轮顺序地跟在所述四个在先的密钥扩展轮之后。
2.如权利要求1所述的处理器,其特征在于,所述执行单元用于生成与具有用于所述相应密钥扩展轮的值的密钥扩展线性替换函数的求值相一致的四个轮密钥的每一个轮密钥,所述值等于:所述值逻辑异或所述值左循环13位、逻辑异或所述值左循环23。
3.如权利要求1所述的处理器,其特征在于,所述执行单元响应于所述指令的解码,用于通过为所述相应的顺序的密钥扩展轮执行混合器替换来生成所述四个轮密钥的每一个轮密钥,其中,所述混合器替换包括作为非线性替换的结果的线性替换。
4.如权利要求1所述的处理器,其特征在于,所述第二源数据是128位的,并且包括:
位[31:0]中的用于所述四个在先的密钥扩展轮中的第四近的密钥扩展轮的第一密钥生成常数;
位[63:32]中的用于所述四个在先的密钥扩展轮中的第三近的密钥扩展轮的第二密钥生成常数;
位[95:64]中的用于所述四个在先的密钥扩展轮中的第二近的密钥扩展轮的第三密钥生成常数;以及
位[127:96]中的用于所述四个在先的密钥扩展轮中的最近的密钥扩展轮的第四密钥生成常数。
5.如权利要求1所述的处理器,其特征在于,所述结果是128位的,并且包括:
位[31:0]中的用于所述四个顺序的密钥扩展轮中的第四近的密钥扩展轮的第五轮密钥;
位[63:32]中的用于所述四个顺序的密钥扩展轮中的第三近的密钥扩展轮的第六轮密钥;
位[95:64]中的用于所述四个顺序的密钥扩展轮中的第二近的密钥扩展轮的第七轮密钥;以及
位[127:96]中的用于所述四个顺序的密钥扩展轮中的最近的密钥扩展轮的第八轮密钥。
6.如权利要求1所述的处理器,其特征在于,所述第一源数据包括位[31:0]中的第一轮密钥、位[63:32]中的第二轮密钥、位[95:64]中的第三轮密钥以及位[127:96]中的第四轮密钥,且其中,所述第二源数据具有位[31:0]中的第一密钥生成常数、位[63:32]中的第二密钥生成常数、位[95:64]中的第三密钥生成常数以及位[127:96]中的第四密钥生成常数,且其中,所述结果包括位[31:0]中的第五轮密钥,所述第五轮密钥等于所述第一轮密钥逻辑异或用第一输入求值的函数的第一输出,所述第一输入等于所述第二轮密钥逻辑异或所述第三轮密钥、逻辑异或所述第四轮密钥、逻辑异或所述第一密钥生成常数,所述第一输出等于第一值,所述第一值等于应用于所述第一输入的替换盒、逻辑异或所述第一值左循环13位、逻辑异或所述第一值左循环23位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910491938.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:SM4加速处理器、方法和系统
- 下一篇:在区块链上的出块方法及装置