[發(fā)明專利]用于處理SHA-2安全散列算法的方法和設(shè)備有效
| 申請?zhí)枺?/td> | 201710073658.9 | 申請日: | 2012-03-30 |
| 公開(公告)號: | CN106878021B | 公開(公告)日: | 2020-04-10 |
| 發(fā)明(設(shè)計)人: | K·S·雅普;G·M·沃爾里齊;J·D·吉爾福德;V·戈帕爾;E·奧茲圖科;S·M·格爾雷;W·K·費格哈利;M·G·迪克森 | 申請(專利權(quán))人: | 英特爾公司 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32;H04L9/06 |
| 代理公司: | 上海專利商標(biāo)事務(wù)所有限公司 31100 | 代理人: | 張欣 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 處理 sha 安全 算法 方法 設(shè)備 | ||
本申請是國際申請日為2012/03/30,國際申請?zhí)枮镻CT/US2012/031632,進入中國國家階段的申請?zhí)枮?01280072066.0,題為“用于處理SHA-2安全散列算法的方法和設(shè)備”的發(fā)明專利申請的分案申請。
技術(shù)領(lǐng)域
本發(fā)明的各實施例一般涉及指令處理設(shè)備。更具體而言,本發(fā)明的各實施例涉及處理SHA-2安全散列算法的指令處理設(shè)備。
背景技術(shù)
SHA代表安全散列算法。它包括由國家安全局(NSA)設(shè)計且由國家標(biāo)準(zhǔn)和技術(shù)局(NIST)公布的五個散列函數(shù)。其中之一是SHA-2。SHA-2是一組安全散列函數(shù),包括由NSA開發(fā)的SHA 224、SHA 256、SHA 384和SHA 512,旨在提供比SHA-1更高級別的安全性。SHA 224和SHA 256是基于32位字長度的類似算法,產(chǎn)生224和256位的摘要(digest)。SHA 384和SHA 512基于64位字且產(chǎn)生384和512位的摘要。
SHA-2算法在計算上比SHA 1更復(fù)雜,依賴于進位傳播加法(propagate addition)以及邏輯操作和循環(huán)移位(rotate)。用于一輪SHA-2操作的關(guān)鍵路徑包括四個連續(xù)的傳播加法,且加法器輸入由復(fù)雜邏輯和循環(huán)移位函數(shù)確定。圖1描述SHA-2算法的細節(jié)。A,B,C,D,E,F,G和H表示8個狀態(tài)字(對于SHA 224/256為32位,且對于SHA384/512為64位)。對于每次迭代執(zhí)行以下的操作:
對于SHA-512,按位的循環(huán)移位(bitwise rotation)使用不同的常數(shù)。在該示例中,給定的數(shù)用于SHA-256。可在該輪關(guān)鍵路徑之前執(zhí)行常數(shù)K加Wi消息輸入加法。SHA-2算法的消息調(diào)度函數(shù)也比SHA-1更復(fù)雜,依賴于先前的消息輸入的經(jīng)循環(huán)移位的復(fù)本以形成消息輸入:
對于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(也用作“>>>”)指示按位的循環(huán)右移(right-rotate)操作符,SHR指示按位的向右移位(right-shift)操作符,且XOR指示按位的異或操作符。
對于SHA-256,如下地執(zhí)行每次迭代:
Σ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)
t1:=h+Σ1+ch+k[i]+w[i]
h:=g
g:=f
f:=e
e:=d+t1
d:=c
c:=b
b:=a
a:=t1+t2
對于輪1至16,消息輸入w[i]是32位x 16=512位數(shù)據(jù)塊。對于輪17至64的W[i]必須被導(dǎo)出。對于每一輪指定常數(shù)K,可在實際的輪迭代之前計算每輪的W[i]+K[i]值。可在Federal Information Processing Standard Publication(聯(lián)邦信息處理標(biāo)準(zhǔn)公布)出版的安全散列標(biāo)準(zhǔn)(FIPS PUB 180-3,2008年10月出版)中找到關(guān)于SHA-2規(guī)范的更詳細的信息。
使用標(biāo)準(zhǔn)指令的常規(guī)軟件方案需要單獨的指令用于實現(xiàn)諸如SHA256算法之類的SHA-2的輪和調(diào)度函數(shù)所需的每個加法和邏輯移位/循環(huán)移位指令。當(dāng)前的用于SHA256的行業(yè)基準(zhǔn)數(shù)據(jù)是每字節(jié)范圍15個循環(huán)。SHA256的標(biāo)準(zhǔn)之類實現(xiàn)的限制潛在地接近每字節(jié)范圍9個循環(huán)。缺少執(zhí)行以上操作的有效方式。
附圖說明
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于英特爾公司,未經(jīng)英特爾公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710073658.9/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





