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

        ?

        ANT 系列分組密碼算法的FPGA 高速實現(xiàn)*

        2021-04-24 11:37:08王建新劉芮安肖超恩
        電子技術應用 2021年4期
        關鍵詞:設計

        王建新,劉芮安,肖超恩,張 磊

        (北京電子科技學院 電子與通信工程系,北京 100070)

        0 引言

        隨著信息技術的發(fā)展,信息安全問題日益受到重視。在網(wǎng)絡空間安全維護、發(fā)展的進程中,密碼技術在公鑰基礎設施、GSM 鑒權、電子信封及區(qū)塊鏈等[1]領域中起到了關鍵作用。分組密碼算法是保障信息機密性和完整性的重要技術手段[2],在智能終端、無線傳感網(wǎng)絡等領域廣泛應用[3]。目前,所使用的分組密碼多為國外設計,且傳統(tǒng)分組密碼如AES[4]等在資源有限的情況下并不適用。我國自主設計的商用分組密碼算法以SM4 算法為主。

        近年來,提升科技創(chuàng)新的保障效應和網(wǎng)絡安全的動力機能[5]成為網(wǎng)絡空間治理的重要目標。為推動密碼算法技術進步,中國密碼學會舉辦了全國密碼算法設計競賽。ANT 系列分組密碼算法由山東大學網(wǎng)絡空間安全學院王美琴[6]等提交,經(jīng)公開評議、檢測評估和專家評選已入選競賽第二輪名單。

        近年來,輕量級密碼算法逐漸成為研究熱點[7],如HIGHT[8]、PRESENT[9]、PICCOLO[10]、LED[11]、LBlock[12]和Zorro[13]等。作為一款國產(chǎn)輕量級密碼算法,ANT 系列分組密碼算法具有抗側(cè)信道攻擊、適合bit-slice 多路并行實現(xiàn)等優(yōu)勢[6],具有一定的研究價值及應用前景。

        為了適應第五代移動通信、物聯(lián)網(wǎng)等高新技術對密碼算法高速實現(xiàn)的需求[14],本文采用流水線結(jié)構(gòu),對ANT 算法進行高速、高數(shù)據(jù)吞吐率的硬件設計實現(xiàn)。

        1 ANT 系列分組密碼算法介紹

        1.1 ANT-128/128 分組密碼算法

        ANT-128/128 分組密碼算法采用128 bit 長度主密鑰K=k2n-1||k2n-2||…||k0,并可以分為:

        K1||K0作為LFSR 的初始狀態(tài)。每次先取出當前低位寄存器Ki中的n 比特作為當前輪的輪密鑰ki,然后進行LSFR 的狀態(tài)更新,(i+1)作為輪常數(shù)(i 為當前輪數(shù)),如圖1 所示。Ki+1經(jīng)過A 操作迭代變換3 次,如圖2所示。

        圖1 ANT-128/128 算法密鑰擴展結(jié)構(gòu)圖

        圖2 A 操作結(jié)構(gòu)圖

        在ANT-128/128 算法中,常數(shù)t0=7,t1=1。

        1.2 輪函數(shù)

        ANT-128/128 分組密碼算法輪函數(shù)結(jié)構(gòu)如圖3 所示,其中,(s0,s1)=(3,16)。為保證加解密一致,最后一輪左支經(jīng)過輪函數(shù)后不進行交換。

        圖3 輪函數(shù)結(jié)構(gòu)圖

        1.2.1 非線性函數(shù)G0 、G1

        G0、G1為非線性函數(shù),包含兩層,兩層中間是一層比特級的置換。

        (1)對于G0:y1=G0(x0)

        先經(jīng)過第一層:

        其中,0≤j<n。

        (2)對于G1,結(jié)構(gòu)與G0相同,僅作比特位與模數(shù)的變換,在此不作贅述。

        1.2.2 比特級置換PERM

        在ANT-128/128 算法下,比特級置換PERM 的表達式如下:

        2 功能模塊設計

        本文采用Verilog HDL 語言以Quartus II 15.0 為平臺進行工程實現(xiàn)。系統(tǒng)由兩個主要部分組成,分別為密鑰擴展模塊和加解密模塊。本文使用了有限狀態(tài)機(FSM)[15-16]的設計思路對兩個模塊進行工程實現(xiàn),并采用流水線結(jié)構(gòu)對加解密模塊進行性能優(yōu)化,以提高數(shù)據(jù)吞吐率。系統(tǒng)整體結(jié)構(gòu)框圖如圖4 所示。

        圖4 系統(tǒng)整體結(jié)構(gòu)框圖

        圖4 中,在控制信號置位后,密鑰擴展模塊讀取128 bit主密鑰并進行子密鑰擴展,存儲于子密鑰寄存器中,供加解密模塊調(diào)用。加解密模塊讀取明文,并以流水線的形式同時開始各輪函數(shù)運算,在經(jīng)歷46 輪后,生成128 bit密文。下面將對三個模塊設計方案進行詳細說明。

        2.1 密鑰擴展模塊設計

        ANT 密鑰擴展模塊基于LFSR 實現(xiàn),采用有限狀態(tài)機結(jié)構(gòu),能夠達到“狀態(tài)更新一次,寄存器移位一次”的效果。密鑰擴展模塊定義的輸入端口有:時鐘、主密鑰以及復位,設置狀態(tài)字寄存器。當系統(tǒng)檢測到復位信號時,電路將從空閑狀態(tài)轉(zhuǎn)換為工作狀態(tài),并在每一個時鐘上升沿到來時轉(zhuǎn)換到下一狀態(tài)。每一輪完成后,生成的子密鑰將會存入相應的寄存器,供輪函數(shù)調(diào)用。經(jīng)歷46 輪后,密鑰擴展完畢。密鑰擴展模塊流程如圖5 所示。

        圖5 密鑰擴展流程圖

        在密鑰擴展模塊中,為保證數(shù)據(jù)的擴散性,算法設計了A 操作并對其進行三次迭代,其實質(zhì)是對比特分組的移位和異或。為提升運算速度,本文經(jīng)過計算得到A 操作迭代三次后的輸出表達式,并將其整體例化為元件。該設計方式無需調(diào)用三次“A 操作”,只需調(diào)用一次“A 操作三次迭代”,省去了四次異或運算與四次移位。在密鑰擴展中,由于各輪中該部分功能相同,只需實現(xiàn)一次元件,并在各輪中依次調(diào)用,從而大大節(jié)約了硬件資源。

        A 操作經(jīng)計算后的表達式為:

        其中,i 為輪數(shù),x[7]、x[6]…x[0]為A 操作輸入均分成的8 個32 比特的分組。

        2.2 輪函數(shù)設計

        ANT 輪函數(shù)采用Feistel 結(jié)構(gòu),在每一輪中,左側(cè)輸出涉及兩個循環(huán)左移、兩次G 操作和三個異或運算,右側(cè)輸出等于左側(cè)輸入,不參與運算。對于循環(huán)左移,由于各次移動位數(shù)相同,本文直接采用位拼接的方式改變輸入信號,省去了移位運算。

        G0、G1操作是比特級非線性函數(shù),僅采用比特級的與操作、異或操作和PERM 置換操作[6]。由于各輪中比特置換PERM 完全一致,本文則直接對相應比特位進行線網(wǎng)型賦值,不進行單獨例化,從而減少不必要的運算和資源占用。G0、G1操作功能一致但各輪輸入輸出信號不同,例化為元件,供各輪調(diào)用。G0實現(xiàn)流程如圖6 所示,G1與G0操作類似,僅模數(shù)不同,故此處不再贅述。

        圖6 G0 操作流程圖

        2.3 加解密模塊設計

        ANT 加(解)密模塊中各輪相同功能模塊只需實現(xiàn)一次并對其重復調(diào)用。由于輪函數(shù)每一輪的左輸出即為下一輪的右輸入;每一輪的右輸出即為下一輪的左輸入;又因為每輪右輸入的值與上一輪左輸入的值相同,采用有限狀態(tài)機方式,定義了左右兩組寄存器,實現(xiàn)數(shù)據(jù)在狀態(tài)跳變時的依次傳遞。當系統(tǒng)檢測到密鑰擴展完成后,狀態(tài)機跳轉(zhuǎn)至工作狀態(tài),讀取明(密)文數(shù)據(jù)。當狀態(tài)依次更新時,各輪進行左右數(shù)據(jù)交換,并進行加(解)密運算,以此類推。ANT 算法加解密結(jié)構(gòu)一致,本文僅以加密過程為例。具體流程如圖7 所示。

        2.4 流水線設計優(yōu)化

        本文采用流水線結(jié)構(gòu)[16-19]對算法進行速度優(yōu)化。流水線是一種通過增加空間的利用來減少時間消耗的時空映射技術[20],對電路邏輯進行系統(tǒng)分割,在各部分之間插入寄存器暫存中間數(shù)據(jù),將大操作分解成若干個小操作。每一個小操作的時間短且支持并行計算。

        圖7 加密模塊流程圖

        ANT-128/128 算法包含46 輪加解密運算,采用流水線結(jié)構(gòu)可以實現(xiàn)輪運算的并行操作,大大提升加解密效率。在具體實現(xiàn)中,本文采用46 級全級流水線結(jié)構(gòu),每一輪函數(shù)運算結(jié)束后,其結(jié)果存入緩沖區(qū)中,供下一輪函數(shù)運算調(diào)用。同時,其本身也將從上一輪運算的緩沖區(qū)中提取數(shù)據(jù),開始下一輪運算。與非流水線結(jié)構(gòu)相比,該方法能夠使效率顯著提升?;诹魉€的加密模塊流程如圖8 所示。

        圖8 基于流水線的加密模塊流程圖

        圖8 中,輪函數(shù)1 使用第一組明文開始運算,將結(jié)果存入1/2 輪緩沖區(qū),同時讀取下一組明文。輪函數(shù)2讀取1/2 輪緩沖區(qū)中的數(shù)據(jù),將結(jié)果存入2/3 緩沖區(qū),并再次從1/2 緩沖區(qū)中讀取新的數(shù)據(jù),以此類推。

        3 仿真驗證與性能分析

        本文采用Altera 公司Cyclone V 系列的5CGXFC7D6-F31C7ES 芯片,以Quartus II 15.0 為開發(fā)環(huán)境對算法進行系統(tǒng)仿真驗證與性能分析。

        3.1 密鑰擴展模塊結(jié)果與性能分析

        密鑰擴展模塊仿真波形如圖9 所示。為方便觀察,圖中僅列出了00 輪至05 輪、10 輪至15 輪以及最后一輪的數(shù)據(jù)。算法作者給出的部分子密鑰標準向量值如表1 所示,可以得出:仿真結(jié)果與標準向量值一致。

        表1 部分輪次子密鑰標準向量值

        密鑰擴展模塊性能參數(shù)如表2 所示。其中,邏輯單元1 663 Slices,占總邏輯資源的3%;寄存器3 185 Slices;綜合最大工作頻率247.52 MHz。

        表2 密鑰擴展模塊性能參數(shù)

        圖9 密鑰擴展模塊仿真波形圖

        3.2 加解密模塊結(jié)果與性能分析

        本文利用Verilog HDL 語言進行了基于單輪單個分組數(shù)據(jù)的加密,并已將各輪子密鑰存儲于寄存器中。其中,采用有限狀態(tài)機設計的仿真波形如圖10 所示,采用流水線設計的仿真波形如圖11 所示。算法作者給出的密文標準向量值如圖12 所示,仿真結(jié)果與標準向量值一致。

        由表3 可知,采用有限狀態(tài)機設計的加解密模塊占用資源較少,但運算速度不高,其吞吐率v1為:

        表3 加解密模塊性能參數(shù)對比

        采用流水線設計進行優(yōu)化后,雖然占用資源較多,但可以獲得更高的工作頻率,使得數(shù)據(jù)吞吐率得到極大提升。流水線設計的最大工作頻率為338.52 MHz,其吞吐率v2為:

        圖10 采用有限狀態(tài)機設計的仿真波形圖

        圖11 采用流水線設計的仿真波形圖

        圖12 算法作者給出的密文標準向量值

        算法作者給出的硬件仿真(基于HJTC110nm 標準元件庫)數(shù)據(jù)中,加密吞吐率約為1.3 Gb/s,而本文所得加密吞吐率為43 Gb/s,約為其吞吐率的33 倍??梢?,ANT分組密碼算法的加密吞吐率在經(jīng)流水線結(jié)構(gòu)優(yōu)化后顯著提升。

        4 結(jié)論

        本文對ANT-128/128 分組密碼算法進行了相關研究,在用有限狀態(tài)機結(jié)構(gòu)對算法進行硬件實現(xiàn)后,采用流水線設計對加解密模塊進行效率優(yōu)化,并對二者進行了性能對比。其中,面向速度優(yōu)化的流水線設計大大提高了加解密速率,在工作頻率339 MHz 下,生成一組128 bit 的密文,速度達到43 Gb/s。后續(xù)將會對其面積、速度進行更深入優(yōu)化,進一步提升算法運行效率。

        猜你喜歡
        設計
        二十四節(jié)氣在平面廣告設計中的應用
        河北畫報(2020年8期)2020-10-27 02:54:06
        何為設計的守護之道?
        《豐收的喜悅展示設計》
        流行色(2020年1期)2020-04-28 11:16:38
        基于PWM的伺服控制系統(tǒng)設計
        電子制作(2019年19期)2019-11-23 08:41:36
        基于89C52的32只三色LED搖搖棒設計
        電子制作(2019年15期)2019-08-27 01:11:50
        基于ICL8038的波形發(fā)生器仿真設計
        電子制作(2019年7期)2019-04-25 13:18:16
        瞞天過?!律O計萌到家
        藝術啟蒙(2018年7期)2018-08-23 09:14:18
        設計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        從平面設計到“設計健康”
        商周刊(2017年26期)2017-04-25 08:13:04
        亚洲欧美日韩一区二区在线观看| 欧美午夜精品一区二区三区电影| 中文字幕人妻少妇久久| 亚洲日本在线中文字幕| 亚洲中国美女精品久久久| 国产白色视频在线观看| 国产精品区一区二区三在线播放| 搡老熟女中国老太| 国产成人精品免费久久久久| 午夜日本精品一区二区| 91青青草手机在线视频| 亚洲人成综合第一网站| 欧美俄罗斯40老熟妇| 亚洲欧美另类自拍| 国产亚洲av手机在线观看| 国产一区二区av在线免费观看| 在线观看亚洲av每日更新影片| 丁香美女社区| 亚洲裸男gv网站| 亚洲色图+国产精品| 2021国产精品久久| 亚洲色偷偷偷综合网另类小说| 日本一区二区三区一级免费| 91久久偷偷做嫩模影院| 国产又黄又硬又粗| 欧美私人情侣网站| 久久6国产| 国产女人高潮的av毛片| 一区二区三区视频在线观看免费| 天天躁夜夜躁av天天爽| 国产精品嫩草影院av| 男女真实有遮挡xx00动态图| 精品久久久久中文字幕APP| 中文字幕亚洲综合久久久| 日韩一区二区三区久久精品| 国产午夜精品一区二区| 亚洲人成绝费网站色www| 国产精品18禁久久久久久久久| 91青青草久久| 久久精品国产9久久综合| 国产女人精品视频国产灰线|