[發(fā)明專利]一種折疊結(jié)構(gòu)的SM3雜湊密碼壓縮運算電路有效
| 申請?zhí)枺?/td> | 201410349798.0 | 申請日: | 2014-07-22 |
| 公開(公告)號: | CN105281890B | 公開(公告)日: | 2018-04-03 |
| 發(fā)明(設(shè)計)人: | 鄭朝霞;蔚然;鄒雪城;高峻;朱國義;田園 | 申請(專利權(quán))人: | 華中科技大學(xué) |
| 主分類號: | H04L9/06 | 分類號: | H04L9/06 |
| 代理公司: | 武漢東喻專利代理事務(wù)所(普通合伙)42224 | 代理人: | 李佑宏 |
| 地址: | 430074 湖北*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 折疊 結(jié)構(gòu) sm3 雜湊 密碼 壓縮 運算 電路 | ||
技術(shù)領(lǐng)域
本發(fā)明屬于雜湊密碼學(xué)技術(shù)領(lǐng)域,更具體地,涉及一種折疊結(jié)構(gòu)的SM3雜湊密碼壓縮運算電路。
背景技術(shù)
雜湊密碼算法在現(xiàn)代密碼學(xué)中占有重要的位置。雜湊密碼算法計算了一個消息的摘要,而這個摘要是一個非常短的、固定長度的位字符串。對某個特定的消息而言,消息摘要(或雜湊值)可以看做是該消息的指紋,是消息的唯一表示。雜湊密碼在密碼學(xué)中的應(yīng)用有很多方面,是數(shù)字簽名方案和消息驗證碼的核心部分。
九十年代初,NIST向全球發(fā)布一種新的雜湊密碼算法SHA-0,并經(jīng)過幾年的修訂推出SHA-1。SHA-1很快就取代MD5,成為使用最廣泛的雜湊密碼算法,目前許多應(yīng)用仍在使用SHA-1。2001年,為增強安全性,NIST發(fā)布了第二代雜湊密碼算法SHA-2系列。2007年,NIST開始征集新的雜湊密碼算法,經(jīng)過為期5年的三輪競賽,最終Keccak算法贏得競賽,成為SHA-3算法。在密碼學(xué)高速發(fā)展的背景下,中國國家密碼管理局于2010年的12月份公布《SM3雜湊密碼算法》,其安全要求適用于我國的商用密碼產(chǎn)品。
SM3雜湊密碼算法的壓縮運算如下所示:
為了實現(xiàn)上述SM3雜湊密碼算法,現(xiàn)有的電路有兩種方式:一種是迭代方法,即在單周期執(zhí)行一次壓縮運算;另一種是循環(huán)展開方式,即在單周期執(zhí)行多次壓縮運算。由于迭代方式和循環(huán)展開方式在單周期執(zhí)行一次或多次壓縮運算,因此導(dǎo)致了壓縮運算在電路實現(xiàn)時較大的資源占用和較大的關(guān)鍵路徑延時。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的在于提供一種占用資源小,關(guān)鍵路徑延時小,采用數(shù)字電路實現(xiàn)的折疊結(jié)構(gòu)SM3雜湊密碼壓縮運算電路。
本發(fā)明提供的折疊結(jié)構(gòu)的SM3雜湊密碼壓縮運算電路,包括第一寄存器、第二寄存器、第三寄存器、第四寄存器、第五寄存器、第六寄存器、第七寄存器、第八寄存器、第九寄存器、第十寄存器、第十一寄存器、第一與門、第二與門、第三與門、第四與門、第五與門、第一異或門、第二異或門、第三異或門、第四異或門、第一或門、第二或門、第一非門、第一加法器、第二加法器、第三加法器、第四加法器、第五加法器、第六加法器、第七加法器、第八加法器、第一循環(huán)左移單元、第五循環(huán)左移單元、第二循環(huán)左移單元、第三循環(huán)左移單元、第四循環(huán)左移單元、第六循環(huán)左移單元、第一選擇器、第二選擇器、第三選擇器、第四選擇器、第五選擇器、第六選擇器、第七選擇器、第八選擇器、第九選擇器、第十選擇器、第十一選擇器、第十二選擇器、第十三選擇器、第十四選擇器、第十五選擇器、第十六選擇器、第十七選擇器、第十八選擇器、第十九選擇器、第二十選擇器和第二十一選擇器;所述第一寄存器的輸出端分別與所述第一與門的第一輸入端、第三與門的第一輸入端、第一異或門的第一輸入端、第三循環(huán)左移單元的輸入端、第十四選擇器的第二輸入端和第十五選擇器的第一輸入端連接;所述第二寄存器的輸出端分別與所述第一與門的第二輸入端、所述第二與門的第一輸入端、第一異或門的第二輸入端、第十五選擇器的第二輸入端、第五循環(huán)左移單元的輸入端連接;所述第三寄存器的輸出端分別與所述第二與門的第二輸入端、所述第三與門的第二輸入端、所述第一異或門的第三輸入端、所述第十六選擇器的第二輸入端、所述第十七選擇器的第一輸入端連接;所述第四寄存器的輸出端分別與所述第一加法器的第二輸入端和所述第十七選擇器的第二輸入端連接;所述第五寄存器的輸出端分別與第六加法器的第二輸入端、所述第四與門的第一輸入端、所述第一非門的輸入端、所述第二異或門的第一輸入端、所述第十八選擇器的第二輸入端和所述第十九選擇器的第一輸入端連接;所述第六寄存器的輸出端分別與所述第四與門的第二輸入端、所述第二異或門的第二輸入端、所述第十九選擇器的第二輸入端、所述第六循環(huán)左移單元的輸入端連接;所述第七寄存器的輸出端分別與所述第五與門的第二輸入端、第二異或門的第三輸入端、第二十選擇器的第二輸入端、第二十一選擇器的第一輸入端連接;所述第八寄存器的輸出端分別與所述第三加法器的第二輸入端、所述第二十一選擇器的第二輸入端連接;所述第九寄存器的輸出端分別與所述第二選擇器的第二輸入端、所述第一加法器的第一輸入端、所述第二加法器的第一輸入端和所述第八加法器的第一輸入端連接;所述第十寄存器的輸出端分別與所述第三加法器的第一輸入端、所述第四加法器的第一輸入端、所述第五加法器的第一輸入端、所述第一循環(huán)左移單元的輸入端、所述第二循環(huán)左移單元的輸入端、所述第三異或門的第三輸入端和所述第六選擇器的第二輸入端連接;所述第十一寄存器的輸出端分別與所述第五加法器的第二輸入端、所述第七加法器的第一輸入端、所述第八加法器的第二輸入端、所述第四循環(huán)左移單元的輸入端、所述第四異或門的第一輸入端和所述第十選擇器的第二輸入端連接;所述第一與門的輸出端與所述第一或門的第一輸入端連接;所述第二與門的輸出端與所述第一或門的第二輸入端連接;所述第三與門的輸出端與所述第一或門的第三輸入端連接;所述第四與門的輸出端與所述第二或門的第一輸入端連接;所述第五與門的輸出端與所述第二或門的第二輸入端連接;所述第一異或門的輸出端與所述第一選擇器的第二輸入端連接;所述第二異或門的輸出端與所述第五選擇器的第二輸入端連接;所述第三異或門的輸出端與所述第十八選擇器的第一輸入端連接;所述第四異或門的輸出端與所述第十三選擇器的第二輸入端連接;所述第一或門的輸出端與所述第一選擇器的第一輸入端連接;所述第二或門的輸出端與所述第五選擇器的第一輸入端連接;所述第一非門的輸出端與所述第五與門的第一輸入端連接;所述第一加法器的輸出端與所述第三選擇器的第二輸入端連接;所述第二加法器的輸出端與所述第四選擇器的第二輸入端連接;所述第三加法器的輸出端與所述第七選擇器的第二輸入端連接;所述第四加法器的輸出端與所述第八選擇器的第二輸入端連接;所述第五加法器的輸出端與所述第九選擇器的第二輸入端連接;所述第六加法器的輸出端與所述第十選擇器的第一輸入端連接;所述第七加法器的輸出端與所述第十一選擇器的第二輸入端連接;所述第八加法器的輸出端與所述第十四選擇器的第一輸入端連接;所述第一循環(huán)左移單元的輸出端與所述第三異或門的第一輸入端連接;所述第二循環(huán)左移單元的輸出端與所述第三異或門的第二輸入端連接;所述第三循環(huán)左移單元的輸出端,分別接第七加法器的第二輸入端、第四異或門的第二輸入端連接;所述第四循環(huán)左移單元的輸出端與所述第十二選擇器的第二輸入端連接;所述第五循環(huán)左移單元的輸出端與所述第十六選擇器的第一輸入端連接;所述第六循環(huán)左移單元的輸出端與所述第二十選擇器的第一輸入端連接;所述第一選擇器的輸出端與所述第二選擇器的第一輸入端連接;所述第二選擇器的輸出端與所述第三選擇器的第一輸入端連接;所述第三選擇器的輸出端與所述第四選擇器的第一輸入端連接;所述第四選擇器的輸出端與所述第九寄存器的輸入端連接;所述第五選擇器的輸出端與所述第六選擇器的第一輸入端連接;所述第六選擇器的輸出端與所述第七選擇器的第一輸入端連接;所述第七選擇器的輸出端與所述第八選擇器的第一輸入端連接;所述第八選擇器的輸出端與所述第九選擇器的第一輸入端連接;所述第九選擇器的輸出端與所述第十寄存器的輸入端連接;所述第十選擇器的輸出端與所述第十一選擇器的第一輸入端連接;所述第十一選擇器的輸出端與所述第十二選擇器的第一輸入端連接;所述第十二選擇器的輸出端與所述第十三選擇器的第一輸入端連接;所述第十三選擇器的輸出端與所述第十一寄存器的輸入端連接;所述第十四選擇器的輸出端與所述第一寄存器的輸入端連接;所述第十五選擇器的輸出端與所述第二寄存器的輸入端連接;所述第十六選擇器的輸出端與所述第三寄存器的輸入端連接;所述第十七選擇器的輸出端與所述第四寄存器的輸入端連接;所述第十八選擇器的輸出端與所述第五寄存器的輸入端連接;所述第十九選擇器的輸出端與所述第六寄存器的輸入端連接;所述第二十選擇器的輸出端與所述第七寄存器的輸入端連接;所述第二十一選擇器的輸出端與所述第八寄存器的輸入端連接;第一輸入信號SEL0分別與所述第二選擇器的第三輸入端、所述第六選擇器的第三輸入端、所述第十選擇器的第三輸入端連接;所述第二輸入信號SEL1分別與所述第三選擇器的第三輸入端、所述第七選擇器的第三輸入端和所述第十一選擇器的第三輸入端連接;所述第三輸入信號SEL2分別與所述第四選擇器的第三輸入端、所述第八選擇器的第三輸入端和所述第十二選擇器的第三輸入端連接;所述第四輸入信號SEL3分別與所述第九選擇器的第三輸入端和所述第十三選擇器的第三輸入端連接;所述第五輸入信號SEL4分別與所述第十四選擇器的第三輸入端、所述第十五選擇器的第三輸入端、所述第十六選擇器的第三輸入端、所述第十七選擇器的第三輸入端、所述第十八選擇器的第三輸入端、所述第十九選擇器的第三輸入端、所述第二十選擇器的第三輸入端和所述第二十一選擇器的第三輸入端連接;所述第六輸入信號R_SEL分別與所述第一選擇器的第三輸入端和所述第五選擇器的第三輸入端連接;所述第一輸入信號輪操作字Wj與所述第四加法器的第二輸入端連接;所述第一輸入信號輪操作字Wj`與所述第二加法器的第二輸入端連接;所述輸入信號輪常量Tj與所述第六加法器的第一輸入端。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華中科技大學(xué),未經(jīng)華中科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410349798.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 卡片結(jié)構(gòu)、插座結(jié)構(gòu)及其組合結(jié)構(gòu)
- 鋼結(jié)構(gòu)平臺結(jié)構(gòu)
- 鋼結(jié)構(gòu)支撐結(jié)構(gòu)
- 鋼結(jié)構(gòu)支撐結(jié)構(gòu)
- 單元結(jié)構(gòu)、結(jié)構(gòu)部件和夾層結(jié)構(gòu)
- 鋼結(jié)構(gòu)扶梯結(jié)構(gòu)
- 鋼結(jié)構(gòu)隔墻結(jié)構(gòu)
- 鋼結(jié)構(gòu)連接結(jié)構(gòu)
- 螺紋結(jié)構(gòu)、螺孔結(jié)構(gòu)、機械結(jié)構(gòu)和光學(xué)結(jié)構(gòu)
- 螺紋結(jié)構(gòu)、螺孔結(jié)構(gòu)、機械結(jié)構(gòu)和光學(xué)結(jié)構(gòu)
- 用于向多列打包盤填裝片形產(chǎn)品的方法和設(shè)備
- SM3消息處理方法和裝置
- 一種SM3算法IP核及其信息處理方法、設(shè)備、介質(zhì)
- 一種基于可重構(gòu)陣列的SM3算法的映射方法
- SM3密碼雜湊算法的并行化優(yōu)化方法
- 國密算法的引入方法及調(diào)用方法、及裝置、設(shè)備、Fabric平臺
- 使用SDF、SKF實現(xiàn)國密SSL協(xié)議的方法及系統(tǒng)
- 一種白盒實現(xiàn)方法、裝置、電子設(shè)備及計算機存儲介質(zhì)
- 一種HMAC-SM3算法的密鑰獲取方法、裝置、設(shè)備和存儲介質(zhì)
- 一種基于TCP的SM3數(shù)字簽名認證方法、裝置及設(shè)備
- 數(shù)據(jù)管理和數(shù)據(jù)分布過程中提供完整性與信任的方法與系統(tǒng)
- DH雜湊法
- 一種數(shù)字簽名的實現(xiàn)方法及裝置
- 一種云存儲的數(shù)據(jù)存取方法及系統(tǒng)
- 數(shù)字簽名、驗簽方法和區(qū)分交易簽名和普通簽名的方法
- 帳號管理應(yīng)用程序的強固方法以及使用該方法的裝置
- 一種基于動態(tài)可重構(gòu)密碼芯片的無密鑰數(shù)據(jù)加解密方法
- 基于區(qū)塊鏈的合約簽核與驗證系統(tǒng)及其實施方法
- 一種安卓軟件完整性校驗方法和裝置
- 用于驗證暫存器內(nèi)容完整性的系統(tǒng)及其方法





