《信息安全技術(shù) SM3密碼雜湊算法》編制說明_第1頁
《信息安全技術(shù) SM3密碼雜湊算法》編制說明_第2頁
《信息安全技術(shù) SM3密碼雜湊算法》編制說明_第3頁
《信息安全技術(shù) SM3密碼雜湊算法》編制說明_第4頁
《信息安全技術(shù) SM3密碼雜湊算法》編制說明_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一、任務(wù)來源

根據(jù)國家標準化管理委員會XX年下達的國家標準制修訂計劃,國家標準

《信息安全技術(shù)SM3密碼雜湊算法》由國家商密辦負責(zé)主辦。標準計劃號為

XXXXX(全國信息安全標準化技術(shù)委員會XXXX年信息安全專項)。

二、編制原則

1.堅持安全、實用、美觀的技術(shù)標準:全面分析所制定規(guī)范的安全性,對

算法的可抗攻擊性進行完善分析,重點考慮實用性和其以后的推廣;保證算法能

夠有效抵抗比特追蹤法以及其他已知的分析方法。算法的設(shè)計過程中,算法的符

號表述盡量標準、美觀。

2.創(chuàng)新性:在算法標準的設(shè)計方面分別有不同的創(chuàng)新。

3.自主性:設(shè)計自主、符合我國需求的哈希算法。

4.高效性:設(shè)計的雜湊算法便于軟、硬件平臺高效的實現(xiàn)。在保障安全性

的前提下,綜合性能指標優(yōu)于SHA-256。

5.合法性:符合國家有關(guān)法律法規(guī)和已經(jīng)制定的標準規(guī)范的相關(guān)要求。

三、主要工作過程

(一)密碼行業(yè)標準起草工作過程

1.設(shè)計評審階段

2002年1月21日,國密辦下達了“雜湊算法”研制任務(wù)的通知,算法于2002

年5月設(shè)計完成。2002年8月22日,技術(shù)處對數(shù)據(jù)所研制的SCH1雜湊算法進

行了算法審查,并于8月29日至31日對其余六個分別由數(shù)據(jù)所、濟南得安、中

科院DCS中心、成都衛(wèi)士通、江南所和山東大學(xué)研制的SCH2-SCH7進行了集

中審查。確定并評審出SCH4雜湊算法。

2.優(yōu)化檢測階段

2003年7月,國密辦向SCH4研制單位中科院數(shù)據(jù)與通信保護研究教育中心

下達了“關(guān)于對SCH4雜湊算法進行修改完善的通知”,9月26日“LSW雜湊算法

課題組”完成SCH4雜湊算法修改完善工作完成并形成相關(guān)技術(shù)文檔。2003年10

月27日志12月26日,商用密碼雜湊算法綜合檢測組在SSR02密碼算法綜合檢

測平臺、IC卡匯編語言仿真檢測平臺、FPGA/ASIC仿真檢測平臺上對優(yōu)化后的

SCH4雜湊算法進行了綜合檢測并形成綜合檢測記錄和檢測報告。

3.初稿編寫及IP核實施階段

2004年6月國密辦下達雜湊算法標準編寫任務(wù)。7月~10月底,中科院數(shù)

據(jù)通信與保護研究教育中心根據(jù)雜湊算法標準編寫任務(wù)的要求完成商用密碼雜

湊算法標準,形成初稿。

同年11月,根據(jù)國密辦《關(guān)于下達雜湊算法IP核設(shè)計任務(wù)的通知》,國家

密碼管理委員會辦公室商用密碼研究中心承擔(dān)了SCH4雜湊算法0.35um、

0.25um、0.18um三種工藝IP核實現(xiàn)的設(shè)計任務(wù),形成SCH4算法IP核實施方案。

4.算法修改及初稿重新修訂階段

2005年3月,針對王小云教授自主研發(fā)的比特追蹤法破解MD5等算法的情

況,國家密碼管理局請專家組對SCH4算法進行了針對性分析,分析結(jié)果表明該

算法不能有效抵御比特追蹤法分析;隨后國家密碼管理局緊急組織成立了SCH

雜湊算法研制攻關(guān)組,在保持SCH4基本結(jié)構(gòu)的基礎(chǔ)上,運用最先進的雜湊算法

分析和設(shè)計理論對其修改,研制了SCH算法并對初稿進行重新修訂。新算法采

用了新穎的消息擴展算法、雙字介入的并行壓縮結(jié)構(gòu)以及混合使用不同群運算,

有利于消息的擴散和混亂,便于軟、硬件實現(xiàn)。針對算法本身特點,綜合運用差

分抗碰撞分析、線性分析和均差分析等方法進行了深入的安全性分析,特別是針

對國際上最先進的比特追蹤法進行了安全設(shè)計和分析。結(jié)果表明,該算法安全強

度高,靈活性好,技術(shù)先進,設(shè)計上有創(chuàng)新,適合軟硬件實現(xiàn),適合IC卡等終

端用戶產(chǎn)品實現(xiàn)。

5.征求意見稿編寫階段

2005年5月,對初稿進行修改和補充,結(jié)合各成員單位多年技術(shù)積累,反

復(fù)交流,求同存異,在形成一致共識的基礎(chǔ)上整理完成了規(guī)范的征求意見稿。

6.送審稿編寫階段

2008年4月,依據(jù)國密局字[2008]190號文件“關(guān)于下達《SM1分組密碼算

法》等標準文本修訂任務(wù)的通知”,無錫江南信息安全工程技術(shù)中心組成了標準

文本修訂工作小組,開展對SM3密碼雜湊算法標準文本的修訂工作。工作小組

遵照國家密碼管理局關(guān)于“精心組織、周密安排,合理使用經(jīng)費“的要求采取了集

中辦公的方式,統(tǒng)籌安排、合理分工、認真編寫、交流討論等方式開展工作。按

照標準的規(guī)范性要求,在標準的結(jié)構(gòu)、規(guī)范性要素的編寫規(guī)則,尤其是密碼算法

的標準名稱、前言、引言、范圍、術(shù)語和定義、符號和縮略語、內(nèi)容設(shè)置、圖、

表、公式表述、詞語表達、符號選擇、規(guī)范性引用文件和參考性文獻以及規(guī)范性

附錄和資料性附錄等方面,經(jīng)多次討論,反復(fù)修訂,形成了《SM3密碼雜湊算

法》標準文本。

2012年1月~2012年2月,國家密碼管理局組織專家審查,對《算法》進

行修改和討論,并對送審稿進行補充完善,形成了《SM3密碼雜湊算法》(送審

稿)。

(二)國家標準工作過程

1、2013年3月-2013年9月,在上述工作的基礎(chǔ)上,根據(jù)信息安全國家標

準制修訂工作程序,對標準文本進行完善修改,形成《信息安全技術(shù)SM3密碼

雜湊算法》征求意見稿,提交信安標委秘書處。

2、2013年11月20日,信安標委秘書處組織專家對文本進行討論修改;編

制組根據(jù)專家意見對標準文本進行修改完善。

四、標準的主要內(nèi)容及確定內(nèi)容的依據(jù)

1.SM3雜湊算法流程描述

SM3雜湊算法是一種基于分組迭代結(jié)構(gòu)的雜湊算法。

SM3雜湊算法流程描述如下:

(1)消息填充分組處理:將輸入消息比特X(不失一般性,限制消息串的比

特長度小于264),按照特定的規(guī)定填充并分組成為固定長度整數(shù)倍的消

息分組序列BB=BB0…BBn-2BBn-1,其中每一消息分組BBi長度固定為

512比特,并且BBn-1中最好64比特用來指示消息x的比特長度。

(2)迭代處理:從0到n-1迭代計算:

(3)SM3():Hi+1=CF(Hi,BBi)

(4)消息比特串X的輸出結(jié)果為:Hn=SM3(X)是輸出長度為256比特的壓縮

函數(shù)。

(5)其中H0-IV為一256比特常量,CF(Hi,BBi)是輸出長度為256比特的

壓縮函數(shù)。

(6)雜湊值輸出:SM3雜湊算法將以上第n次迭代處理的256比特輸出值

Hn,通過選裁函數(shù)個g(Hn)得到160比特、192比特或256比特三種長度

的雜湊輸出值。

2.SM3雜湊算法主要結(jié)構(gòu)描述

(1)填充過程

假設(shè)消息x的長度為l。則首先將比特“1”添加到消息的末尾,再添加k個“0”,

這里k是滿足l1k448(mod512)的最小非負整數(shù)。然后再添加一個64比特

長的塊,其值等于消息x的長度l的二進制表示。產(chǎn)生的比特串x'的比特長度恰

好為512的整數(shù)倍。

例如,對消息比特串:011000010110001001100011應(yīng)用以上填充得到比特

串:

42364

0110000101100010011000111000000011000

l24

將消息x'按512比特進行分組:x'B0B1......Bn1,其中

n(lk65)512。

(2)迭代壓縮算法

對每一個消息分組Bi按順序進行以下處理:

Vi1CF(Vi,Bi)i0,1,...,n1

其中CF是壓縮函數(shù),V0為256比特初始值IV。

迭代壓縮的輸出為Vn。

(3)消息擴展算法

將消息分組i按以下方法擴展成個消息字:

B132W0,W1,...,W67,W0',....,W63'

將消息分組i劃分為個字。

a.B16W0W1...W15

b.FORj16TO67

WjP1(Wj16Wj9(Wj315))(Wj137)Wj6

ENDFOR

c.FORj16TO63

Wj'WjWj4

ENDFOR

(4)壓縮函數(shù)

令A(yù),B,C,D,E,F,G,H為字寄存器,SS1,SS2,TT1,TT2為中間變量,壓縮函

數(shù)Vi1CF(Vi,Bi)計算過程詳細描述如下:

ABCDEFGHVi

FORj0TO63

SS1[(A12)E(Tj)]7

SS2SS1(A12)

TT1[FF(A,B,C)DSS2]Wj'

TT2[GG(E,F,G)HSS1]Wj

DC

CB9

BA

ATT1

HG

GF19

FE

EP0(TT2)

ENDFOR

Vi1ABCDEFGHVi

壓縮函數(shù)第j步框圖如下:

<<<RAB<<<SCD

FF

W′j

<<<R′

T<<<j

Wj

GG

P0

圖2壓縮函數(shù)Vi1CF(Vi,Bi)中“第j步”的框圖

(5)選裁過程

令消息x的n次迭代壓縮輸出值為VnABCDEFGH,長度為256比特。

針對不同的雜湊輸出值長度要求,通過選裁函數(shù)yg(Vn)選裁產(chǎn)生256比特、

192比特或160比特的雜湊值。

a.256比特輸出

ABCDEFGHVn,

輸出yABCDEFGH。

b.192比特輸出

ABCDEFGHVn

yABEyBFyCG

0,1,2

yDHyFCyDG

3,4,5

輸出比特的雜湊值。

192yy0y1y2y3y4y5

c.160比特輸出

ABCDEFGHVn

y0ABE,y1BFC,y2CG,

y3DH,y4DG

輸出比特的雜湊值。

160yy0y1y2y3y4

五、與相關(guān)法律法規(guī)及國家有關(guān)規(guī)定、國內(nèi)相關(guān)標準的關(guān)系

1)與相關(guān)法律法規(guī)及國家有關(guān)規(guī)定的關(guān)系

本標準遵守《商用密碼管理條例》的各項規(guī)定,標準中定義的各項標識與

GM/T0004-2012《SM3密碼雜湊算法》中規(guī)定的相關(guān)密碼算法的使用要求保持

一致。

2)與相關(guān)國際標準的關(guān)系

本標準中的附錄A“商用密碼領(lǐng)域中的相關(guān)OID定義”定義了國產(chǎn)密碼算法

相關(guān)的標識符OID,與國際上相關(guān)密碼算法的OID定義不存在沖突,是對國際

上密碼算法的OID定義的擴展。

六、有關(guān)問題的說明

1.函數(shù)與常數(shù)

(1)初始值

IV=7380166F4914B2B9172442D7DA8A0600

A96F30BC163138AAE38DEE4DB0FB0E4E

(2)內(nèi)部常數(shù)

77CC45190j15

Tj

7A879D8A16j63

(3)函數(shù)

ABC0j15

FFj(A,B,C)

(AB)(AC)(BC)16j63

EFG0j15

GGj(E,F,G)

(EF)(EG)16j63

(4)置換

P0(X)X(X9)(X17)

P1(X)X(X15)(X23)

2.算法特點

(1)創(chuàng)新的結(jié)構(gòu)設(shè)計

SM3雜湊算法的壓縮函數(shù)采用P置換作為加強雪崩的基本運算,結(jié)合雙字

介入的并行處理結(jié)構(gòu),增加了擴散和混亂的速度,在提高安全性的同時,又保證

了算法的實現(xiàn)效率。消息擴展算法采用了帶P置換的線性反饋移位寄存器結(jié)構(gòu),

加強消息的雪崩,增強了尋找特殊結(jié)構(gòu)消息的難度。

(2)抗比特追蹤法的高安全性設(shè)計

針對單向性、抗碰撞性等密碼安全要求,進行了差分分析、線性分析等全面

的密碼分析,優(yōu)化了算法相關(guān)參數(shù),滿足雜湊算法安全性需求。特別是針對比特

追蹤法等最新雜湊算法分析方法,增加16步全異或布爾函數(shù)運算,采用P置換、

消息快速擴散結(jié)構(gòu)和不同群運算,首次設(shè)計出第一圈抗碰撞攻擊的設(shè)計技術(shù),進

一步提高了算法抗新型分析的安全性。

(3)軟硬件高速實現(xiàn)

SM3雜湊算法首次采用了可并行實現(xiàn)的雙字介入結(jié)構(gòu)、提出了易于實現(xiàn)的

帶循環(huán)移位的P置換、采用了并行兩路加法鏈流水設(shè)計,提高了算法的硬件效率;

使用針對字操作的混合不同群運算設(shè)計,滿足了跨平臺軟件實現(xiàn)的高效性和廣泛

的適用性。

3.與國內(nèi)外同類研究技術(shù)綜合比較

(1)SM3與SHA-256的安全性比較

由于MD5和SHA-1等算法存在碰撞攻擊,我們僅對SM3壓縮函數(shù)和

SHA-256壓縮函數(shù)的安全性關(guān)鍵指標進行比較。由于兩個算法均包括64步,具

體指標能夠真實反映兩者的安全性強度。

局部碰撞:SHA-256存在著9步的局部碰撞,其概率為221。雜湊算法碰撞

攻擊的路線總是由局部碰撞路線復(fù)合而成。SHA-256的9步局部碰撞路線結(jié)合消

息擴展可以構(gòu)成23步的碰撞;而SM3的5步局部碰撞的概率為228,但該5步

局部碰撞不能跟消息擴展相結(jié)合構(gòu)成更多步的SM3的碰撞。

單圈碰撞攻擊:SHA-2(包括所有的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論