亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于雙重流水同步迭代的SM3算法高速硬件設(shè)計(jì)

        2020-04-20 11:48:48谷會(huì)濤武宗濤
        關(guān)鍵詞:現(xiàn)場可編程門陣列

        谷會(huì)濤 武宗濤

        摘要:SM3算法是國家標(biāo)準(zhǔn)商用密碼雜湊算法,廣泛應(yīng)用于數(shù)字簽名和驗(yàn)證、消息認(rèn)證碼的生成與驗(yàn)證以及隨機(jī)數(shù)的生成等領(lǐng)域。介紹了SM3算法的基本流程,分析了SM3算法高速實(shí)現(xiàn)的3種方法,提出了基于雙重流水同步迭代的SM3算法高速硬件設(shè)計(jì)方法,進(jìn)行了模擬驗(yàn)證和FPGA設(shè)計(jì)實(shí)現(xiàn),給出了算法性能和綜合結(jié)果,結(jié)果表明所提方法具有較高的運(yùn)算性能。

        關(guān)鍵詞:雜湊運(yùn)算;SM3;高速設(shè)計(jì);現(xiàn)場可編程門陣列

        中圖分類號:TN918.4文獻(xiàn)標(biāo)志碼:A文章編號:1008-1739(2020)02-54-3

        0引言

        雜湊運(yùn)算是不可逆的密碼運(yùn)算過程,可將任意長度的數(shù)據(jù)信息變換成固定長度的數(shù)據(jù)輸出[1],在商用密碼中廣泛應(yīng)用在數(shù)字簽名和驗(yàn)證、消息認(rèn)證碼的生成與驗(yàn)證以及隨機(jī)數(shù)的生成等方面[2]。美國制定了安全雜湊算法(Secure Hash Algorithm,SHA)等系列標(biāo)準(zhǔn),我國國家密碼管理局2010年公布了中國商用密碼雜湊算法標(biāo)準(zhǔn)SM3算法,該算法在SHA-256基礎(chǔ)上改進(jìn)實(shí)現(xiàn),采用Merkle-Damgard結(jié)構(gòu),消息分組長度為512 bit,摘要值長度為256 bit[2]。

        SM3等密碼算法運(yùn)算復(fù)雜,在計(jì)算機(jī)處理器上采用軟件實(shí)現(xiàn)SM3算法,性能難以滿足高速應(yīng)用場景的使用需求。本文分析了SM3算法的實(shí)現(xiàn)原理,提出了一種高速實(shí)現(xiàn)方法,最后基于現(xiàn)場可編程門陣列(Field-Programmable Gate Array,F(xiàn)PGA)進(jìn)行了設(shè)計(jì)實(shí)現(xiàn),驗(yàn)證了該方法的運(yùn)算性能。

        1 SM3算法

        SM3算法標(biāo)準(zhǔn)約定,對于任意有限長度的消息,SM3算法可生成256 bit的雜湊值。SM3雜湊算法主要包括填充和迭代壓縮2個(gè)過程。

        ①將整個(gè)消息用1 bit1, bit0和64 bit消息長度進(jìn)行填充,填充完畢的消息長度按512 bit對齊。消息填充后按512 bit進(jìn)行分組,每個(gè)消息分組依次進(jìn)行迭代壓縮運(yùn)算。

        2 SM3算法實(shí)現(xiàn)方法

        SM3算法計(jì)算過程中,消息分組迭代壓縮過程計(jì)算較為復(fù)雜,實(shí)現(xiàn)邏輯直接影響算法的執(zhí)行效率。為了實(shí)現(xiàn)SM3快速運(yùn)算,研究人員提出了多種FPGA迭代實(shí)現(xiàn)方法。SM3算法中,一個(gè)消息分組一般需要進(jìn)行64輪運(yùn)算,每輪運(yùn)算包括消息擴(kuò)展和壓縮函數(shù)2步運(yùn)算。根據(jù)這2步運(yùn)算的耦合程度和執(zhí)行順序,F(xiàn)PGA迭代實(shí)現(xiàn)方法可以分為順序迭代[3]、循環(huán)展開[4]和流水迭代[5]3種方法[6]。

        順序迭代方法如圖2所示,一個(gè)消息分組的輪運(yùn)算串行執(zhí)行,每輪運(yùn)算的消息擴(kuò)展和壓縮函數(shù)運(yùn)算也串行執(zhí)行。順序迭代實(shí)現(xiàn)方法控制簡單、實(shí)現(xiàn)方便。但如果將消息擴(kuò)展和壓縮函數(shù)運(yùn)算在一個(gè)時(shí)鐘周期內(nèi)完成,則導(dǎo)致硬件邏輯關(guān)鍵路徑較長,降低了時(shí)鐘頻率,進(jìn)而影響運(yùn)算速率。如果將消息擴(kuò)展和壓縮函數(shù)運(yùn)算劃分為2個(gè)時(shí)鐘周期執(zhí)行,則一個(gè)消息分組的運(yùn)算需要128個(gè)時(shí)鐘周期左右,運(yùn)算速率較低。

        循環(huán)展開方法如圖3所示,將消息分組的2輪消息進(jìn)行擴(kuò)展運(yùn)算,2輪壓縮函數(shù)運(yùn)算循環(huán)展開各放到一個(gè)時(shí)鐘周期執(zhí)行,因此可以將一個(gè)消息分組的運(yùn)算時(shí)間降低到順序迭代方法的50%左右,一個(gè)消息分組的運(yùn)算需要64個(gè)時(shí)鐘周期。如果將更多輪操作循環(huán)展開,運(yùn)算時(shí)間還可以進(jìn)一步壓縮。循環(huán)展開方法速率較高,但需要占用更多的硬件資源。由于一個(gè)時(shí)鐘周期完成的2輪壓縮函數(shù)運(yùn)算存在相關(guān)性,必須串行執(zhí)行,因此單周期內(nèi)需要完成的運(yùn)算更多,限制了整個(gè)算法實(shí)現(xiàn)的工作頻率。

        流水迭代方法如圖4所示,將消息擴(kuò)展運(yùn)算和壓縮函數(shù)流水實(shí)現(xiàn),且消息擴(kuò)展運(yùn)算與壓縮函數(shù)并行執(zhí)行。流水迭代方法控制簡單、實(shí)現(xiàn)方便,性能與循環(huán)展開方法相近,占用硬件資源較少。

        3雙重流水同步迭代技術(shù)設(shè)計(jì)與實(shí)現(xiàn)

        基于流水迭代方法,本文提出了SM3算法雙重流水同步迭代方法。該方法分別設(shè)計(jì)了消息擴(kuò)展運(yùn)算和壓縮函數(shù)運(yùn)算2條流水線,并且第+1輪消息擴(kuò)展運(yùn)算和第輪壓縮函數(shù)運(yùn)算同步執(zhí)行,2條流水線同步運(yùn)算極大提升了數(shù)據(jù)塊運(yùn)算效率。

        4 FPGA實(shí)現(xiàn)與性能評估

        本文基于雙重流水同步迭代方法,設(shè)計(jì)實(shí)現(xiàn)了SM3算法,采用ModelSim工具進(jìn)行了功能驗(yàn)證,采用標(biāo)準(zhǔn)給出的2組測試向量進(jìn)行輸入,輸出結(jié)果與標(biāo)準(zhǔn)預(yù)期值相同。本文基于Xilinx公司XC7K325T芯片,采用ISE14.7進(jìn)行了綜合實(shí)現(xiàn),綜合結(jié)果如表1所示,本文方法最高綜合頻率222 MHz。

        按此工作頻率設(shè)置測試用例,采用ModelSim工具對長消息進(jìn)行運(yùn)算,本文結(jié)構(gòu)性能達(dá)到約1 690 Mbps。表2給出了本文結(jié)構(gòu)與順序迭代方法、循環(huán)展開方法和流水迭代方法性能對比。從表中可以看出,文獻(xiàn)[3-4],算法硬件邏輯復(fù)雜、工作頻率較低,影響了計(jì)算性能。文獻(xiàn)[5]方法主頻和計(jì)算性能較高。不考慮器件選型的差異,相比這些方法,本文提出的方法在工作主頻和計(jì)算性能上最優(yōu)。

        5結(jié)束語

        本文介紹了SM3算法的基本運(yùn)算步驟,分析了3種典型的SM3算法實(shí)現(xiàn)方法,提出了基于雙重流水同步迭代技術(shù)的SM3算法高速硬件設(shè)計(jì)方法。通過對本文方法進(jìn)行模擬驗(yàn)證和FPGA設(shè)計(jì)實(shí)現(xiàn),得出了算法性能和綜合結(jié)果。結(jié)果表明,本文提出的方法可獲得較高的工作頻率和算法性能。

        參考文獻(xiàn)

        [1]國家密碼管理局.GM/T 0004-2012 SM3密碼雜湊算法[S].北京:中國標(biāo)準(zhǔn)出版社,2012.

        [2]趙睿斌,楊紹亮,王毛路,等.基于商密體系的政務(wù)鏈解決數(shù)據(jù)安全共享交換的研究[J].信息安全與通信保密,2018,(5): 83-88.

        [3]王曉燕,楊先文.基于FPGA的SM3算法優(yōu)化設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2012,38(6):244-246.

        [4]周威,王博,張衛(wèi)東.SM3算法硬件實(shí)現(xiàn)研究與應(yīng)用[J].電子測量技術(shù),2015,38(12):67-71.

        [5]劉宗斌,馬原,荊繼武,等.SM3哈希算法的硬件實(shí)現(xiàn)與研究[J].信息網(wǎng)絡(luò)安全,2011(9):191-193.

        [6]丁冬平,高獻(xiàn)偉.SM3算法的FPGA設(shè)計(jì)與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2012,31(5):26-28.

        猜你喜歡
        現(xiàn)場可編程門陣列
        基于機(jī)器人的溫室大棚環(huán)境智能監(jiān)控系統(tǒng)
        一種PCI接口AFDX端系統(tǒng)模塊的設(shè)計(jì)與實(shí)現(xiàn)
        D—BLAST基帶系統(tǒng)的FPGA實(shí)現(xiàn)研究
        雙目立體匹配算法的FPGA實(shí)現(xiàn)
        任務(wù)間通訊郵箱的硬件實(shí)現(xiàn)
        一種千兆以太網(wǎng)SerDes 接口與電接口的轉(zhuǎn)換方法
        卷積神經(jīng)網(wǎng)絡(luò)的FPGA并行結(jié)構(gòu)研究
        基于FPGA的遺傳算法在交通控制中的應(yīng)用
        基于FPGA的顏色識別觸摸屏系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
        基于FPGA的9/7小波變換算法實(shí)現(xiàn)
        国产无码swag专区| 亚洲av精品一区二区三区| 国产强被迫伦姧在线观看无码| 人妻丝袜av中文系列先锋影音| 国产亚洲日韩欧美一区二区三区| 亚洲乱码一区AV春药高潮| av在线网站一区二区| 校园春色人妻激情高清中文字幕| 欧美综合天天夜夜久久| 台湾佬综合网| 久久久久人妻精品一区5555| 中文字幕亚洲五月综合婷久狠狠| 国产自拍高清在线观看| 蜜臀av午夜一区二区三区| 婷婷综合久久中文字幕蜜桃三电影| 国产一区二区三区免费精品| 自拍av免费在线观看| 免费黄片小视频在线播放| 医院人妻闷声隔着帘子被中出 | 内谢少妇xxxxx8老少交| 亚洲人成7777影视在线观看| 国产欧美激情一区二区三区| 久久99精品久久只有精品| 国产无套粉嫩白浆在线观看| 亚洲男同志gay 片可播放| 国产免费一区二区av| 国产自拍成人免费视频| 成人亚洲一区二区三区在线| 国产在线精品欧美日韩电影| 日本道免费精品一区二区| 日本一区二区啪啪视频| 亚洲精品无码久久久久y| 精品国产午夜理论片不卡| 97福利视频| 女优av性天堂网男人天堂| 高清精品一区二区三区| 亚洲视频在线看| 亚洲av一区二区三区网站| 亚洲精品视频1区2区| 人妻精品久久无码区| 毛片免费在线播放|