[发明专利]用于处理SHA-2安全散列算法的方法和设备有效
申请号: | 201710074199.6 | 申请日: | 2012-03-30 |
公开(公告)号: | CN106802788B | 公开(公告)日: | 2019-11-08 |
发明(设计)人: | K·S·雅普;G·M·沃尔里齐;J·D·吉尔福德;V·戈帕尔;E·奥兹图科;S·M·格尔雷;W·K·费格哈利;M·G·迪克森 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F15/80 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 张欣 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 处理 sha 安全 算法 方法 设备 | ||
本发明涉及用于处理SHA‑2安全散列算法的方法和设备。一种处理器包括指令解码器,用于接收第一指令以处理安全散列算法2(SHA‑2)散列算法,第一指令具有与存储SHA‑2状态的第一存储位置相关联的第一操作数以及与存储多个消息和轮常数相关联的第二存储位置相关联的第二操作数。处理器还包括耦合到所述指令解码器的执行单元,用于对所述第一操作数指定的SHA‑2状态和所述第二操作数指定的多个消息和轮常数执行SHA‑2散列算法的一次或多次迭代。
本申请是国际申请日为2012/03/30,国际申请号为PCT/US2012/031632,进入中国国家阶段的申请号为201280072066.0,题为“用于处理SHA-2安全散列算法的方法和设备”的发明专利申请的分案申请。
技术领域
本发明的各实施例一般涉及指令处理设备。更具体而言,本发明的各实施例涉及处理SHA-2安全散列算法的指令处理设备。
背景技术
SHA代表安全散列算法。它包括由国家安全局(NSA)设计且由国家标准和技术局(NIST)公布的五个散列函数。其中之一是SHA-2。SHA-2是一组安全散列函数,包括由NSA开发的SHA 224、SHA 256、SHA 384和SHA 512,旨在提供比SHA-1更高级别的安全性。SHA 224和SHA 256是基于32位字长度的类似算法,产生224和256位的摘要(digest)。SHA 384和SHA512基于64位字且产生384和512位的摘要。
SHA-2算法在计算上比SHA 1更复杂,依赖于进位传播加法(propagate addition)以及逻辑操作和循环移位(rotate)。用于一轮SHA-2操作的关键路径包括四个连续的传播加法,且加法器输入由复杂逻辑和循环移位函数确定。图1描述SHA-2算法的细节。A,B,C,D,E,F,G和H表示8个状态字(对于SHA 224/256为32位,且对于SHA384/512为64位)。对于每次迭代执行以下的操作:
对于SHA-512,按位的循环移位(bitwise rotation)使用不同的常数。在该示例中,给定的数用于SHA-256。可在该轮关键路径之前执行常数K加Wi消息输入加法。SHA-2算法的消息调度函数也比SHA-1更复杂,依赖于先前的消息输入的经循环移位的复本以形成消息输入:
对于i从16至63
s0:=(w[i-15]ROTR 7)XOR(w[i-15]ROTR 18)XOR(w[i-15]SHR 3)
s1:=(w[i-2]ROTR 17)XOR(w[i-2]ROTR 19)XOR(w[i-2]SHR 10)
w[i]:=w[i-16]+s0+w[i-7]+s1
其中ROTR(也用作“>>>”)指示按位的循环右移(right-rotate)操作符,SHR指示按位的向右移位(right-shift)操作符,且XOR指示按位的异或操作符。
对于SHA-256,如下地执行每次迭代:
Σ0:=(a ROTR 2)XOR(a ROTR 13)XOR(a ROTR 22)
maj:=(a AND b)XOR(a AND c)XOR(b AND c)
t2:=Σ0+maj
Σ1:=(e ROTR 6)XOR(e ROTR 11)XOR(e ROTR 25)
ch:=(e AND f)XOR((NOT e)AND g)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710074199.6/2.html,转载请声明来源钻瓜专利网。