999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種LED與PRESENT密碼算法重構實現研究

2015-04-26 11:04:48劉波濤賀位位余孝忠杜國權
衡陽師范學院學報 2015年3期
關鍵詞:優化

劉波濤,李 浪,2,賀位位,余孝忠,2,杜國權

(1.衡陽師范學院 計算機科學系,湖南 衡陽 421002;2.聚落文化遺產數字化技術與應用湖南省重點實驗室,湖南 衡陽 421002)

0 引 言

物聯網越來越深入到人們生產生活中,其安全引起了大家高度關注。2007年密碼學者提出了適合資源約束的輕量級密碼算法PRESENT[1],2011年超輕量級密碼算法LED也被提出[2],二個密碼算法主要是為資源受限的智能卡加密研發的。如果攻擊者知道智能卡加密運算為某一具體密碼算法,則容易采取相應攻擊手段進行攻擊,如果把二種密碼算法重構在一起,隨機選擇某一密碼算法進行運算,由于攻擊者不知道具體運算的加密算法,則安全性相應提高。重構計算作為一種新興的計算模式,在許多方面得到了深度應用。重構密碼算法是利用可重構計算技術,能夠根據需要靈活配置以實現不同的密碼算法,從而提高安全性。

重構算法是密碼安全的一個重要研究方向,近年來,許多研究機構都致力于密碼算法的可重構研究[6-8]。2010年,文獻[6]設計了一種 DES、AES和SMS4密碼算法的高效可重構,文獻[7]給出了一種AES和Camellia算法的可重構硬件實現,兩者都未給出可重構算法的具體優化方案。本文實現了一種LED-PRESENT算法重構,研究了優化實現,并對其性能進行了實驗驗證。

1 LED與PRESENT輕量級密碼算法簡介

1.1 LED加密算法簡介

LED密碼算法是一種具有SP結構的分組迭代密碼算法,其明文長度為64-bit,密鑰長度為64-bit或128-bit,對應輪數分別為32輪和48輪,分別用LED-64和LED-128表示。圖1為LED-64加密運算過程。

圖1 LED-64加密運算結構

LED加密過程:

(1)明文和密鑰異或:輪密鑰相加(AddRound-Key);(2)進行4輪運算,每個輪包括常數變換(AddConstant)、S 盒 變 換 (SubCell)、行 變 換(ShiftRow)、列混合變換(MixColumnsSerial)4個運算;(3)將中間結果和密鑰k異或,轉到第(2)步,重復執行8次;(4)輸出密文C。

1.2 PRESENT加密算法簡介

PRESENT密碼算法采用SP結構的輕量級密碼算法,其明文長度為64-bit,密鑰長度為80-bit或128-bit,記為 PRESENT-80和 PRESENT-128,加密變換需要31輪迭代運算。圖2為PRESENT-80加密運算過程。

由圖2可知,PRESENT有輪密鑰加函數(AddRoundKey)、S盒替換(Sboxlayer)、層置換(pLayer)、密鑰擴展(Update)4個模塊運算。

圖2 PRESENT-80加密運算結構

2 LED-PRESENT重構方法

2.1 重構方案

在兩個加密算法中都需要進行S盒變換(Sub-Cell)、密鑰加(AddRoundKey)運算,基于此,對LED與PRESENT密碼算法S盒變換(SubCell)和密鑰加(AddRoundkey)進行重構實現。考慮到所要消耗的面積,還需對LED-PRESENT算法進行FPGA優化實現。

2.2 優化方案

1)在LED有限域部分,用assign連續賦值方式賦值,使得完成一次有限域計算不需要時鐘延時,也不需要額外申請寄存器。下面為具體優化實現的VerilogHDL代碼:

2)在PRESENT主控制模塊中,通過計數器控制重復調用PresentRound模塊,可使整個算法實現的面積大為減少。具體VerilogHDL實現代碼如下:

2.3 實現步驟

以密鑰長為64-bit的LED和80-bit的PRESENT為例,結合流程圖給出具體的操作過程。

1)明文加密前由系統隨機生成一個1-bit隨機數:switch.

2)switch為1時,選擇進行 PRESENT-80加密;為0時,選擇進行LED-64加密,運算結構如圖3。

圖3 LED-64與PRESENT-80重構結構流程

明文64-bit,密鑰80-bit進行加密的具體參數如下表示,其中state表示明文,key表示密鑰。

state=64’h0000_0000_0000_0000;

key=80’h0000_0000_0000_0000_0000;

switch=$random()%2;

3)整個算法采用Verilog HDL硬件描述語言實現,重構后的算法內部運算流程如圖4,具體運算過程如下:

圖4 重構算法內部運算流程

(1)初始化明文state、密鑰key,系統隨機生成switch;

(2)取密鑰的前64-bit與明文進行AddRound-Key運算,把運算的輪數r設置為0;

(3)1:如果switch等于1,運算 UpdataKey模塊;否則key的值保持不變;

2:state依次完成如下模塊運算:(第二個參數相當于使能信號)

2.1AddConstant(state,!switch);

2.2SubCell(state);

2.3ShiftRow(state,!switch);

2.4MixCloumnSerial(state,!switch);

2.5Exchange(state,switch).

3:如果switch等于1或者 (r%4==3),則進行AddRoundKey運算;

4:更新r的值:r=r+1;

(4)跳到(3),重復執行31次;

(5)如果switch等于1,直接輸出密文,否則完成LED-64加密算法的最后一輪加密:

AddConstant(state,1);

SubCell(state);

ShiftRow(state,1);

MixCloumnSerial(state,1).

(6)輸出密文,運算結束。

由于switch取值為0和1兩種,當取值為1時,即選擇執行的是PRESENT-80密碼算法,由于!switch=0,故3)中的2.1、2.3和2.4是不參與運算的。同理,當switch=0時,執行的是LED-64密碼算法,3)中的2.5模塊是不參與運算的。

2.4 仿真實驗

對Verilog HDL語言實現的LED-PRESENT重構算法進行Modelsim 6.1f仿真,整個算法都是用連續賦值(assign)語句實現,時鐘信號控制計算器更新,重構運算分別需要32個時鐘周期和31個時鐘周期。仿真截圖如圖5。

圖5 重構算法LED-PRESENT仿真截圖

從圖5的實驗結果中可以得到重構算法正確。

3 FPGA硬件實現結果分析

3.1 實驗結果

對LED-64和PRESENT-80密碼算法,進行了FPGA實現,通過ISE13.2綜合下載進行性能分析,FPGA 型號為 Xilinx Virtex-5LX50T。圖6是LED-64算法下載到FPGA上的實驗數據截圖。圖7是PRESENT-80算法下載到FPGA上的實驗數據截圖。圖8和圖9是LED-PRESENT算法重構后下載到FPGA上的實驗數據截圖。

圖6 LED-64算法面積測試數據

圖7 PRESENT-80算法面積測試數據

圖8 重構算法LED-PRESENT面積測試數據

圖9 LED-PRESENT加密運算頻率

3.2 性能分析

根據 實 驗 結 果,LED-64、PRESENT-80 以 及LED-PRESENT重構算法的性能對比分析如表1。

表1 性能對比

從表1可以得知,LED-64與PRESENT-80算法單獨實現面積和為:10222+10265=20487Slices,而重構后LED-PRESENT算法面積為10815Slices,其中Slices是FPGA中面積單元,可以得出重構后的LED-PRESENT比分別實現面積上少了9672個Slices。在加密性能上,分別實現時最高加密速率為198.912Mb/s,而重構密碼系統的吞吐率為:

可知,由于使用了優化方法實現,復雜的重構實現并未使系統加密速率降低。

4 結束語

通過對LED與PRESENT密碼算法進行重構優化,使得其在單一芯片上資源最優化實現,從而可以適應復雜環境下高安全的加密應用。密碼算法重構使得加密運算具有靈活性,從而增強了密碼系統的安全。因為密碼攻擊需要確切知道正在執行的具體密碼算法,所以在一定程度上可以抵抗密碼攻擊。

[1]Bogdanov A,Knudsen L R,Leander G,et al.PRESENT:an ultra-lightweight block cipher//Proceddings of the 2007International Workshop on Cryptographic Hardware and Embedded Systems.Vienna,Austria.2007:450-466.

[2]Guo J,Peyrin T,Poschmann A et al.The LED block cipher//Proceddings of the 2011International Workshop of Cryptographic Hardware and Embedded Systems.Nara,Japan.2011:326-341.

[3]李瑋,谷大武,趙辰,等.物聯網環境下LED輕量級密碼算法的安全性分析[J].計算機學報,2012,35(3):434-445.

[4]吳克輝,趙新杰,王韜,等.PRESENT密碼代數故障攻擊[J],通信學報,2012,33(8):85-92.

[5]李浪,李仁發,鄒祎等.PRESENT密碼硬件語言實現及其優化研究[J].小型微型計算機系統,2013,34(10):2272-2275.

[6]李文君.DES、AES和SMS4密碼算法的高效可重構實現研究[D].鄭州:解放軍信息工程大學,2010.

[7]楊宏志,韓文報,李光松.AES和Camellia算法的可重構硬件實現[J].計算機工程,2010,36(10):18-20.

[8]高娜娜,王沁,李占才.一種可重構體系結構用于高速實現DES、3DES和 AES[J].電子學報,2006,34(8):1386-1390.

猜你喜歡
優化
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
PEMFC流道的多目標優化
能源工程(2022年1期)2022-03-29 01:06:28
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
由“形”啟“數”優化運算——以2021年解析幾何高考題為例
圍繞“地、業、人”優化產業扶貧
今日農業(2020年16期)2020-12-14 15:04:59
事業單位中固定資產會計處理的優化
消費導刊(2018年8期)2018-05-25 13:20:08
4K HDR性能大幅度優化 JVC DLA-X8 18 BC
幾種常見的負載均衡算法的優化
電子制作(2017年20期)2017-04-26 06:57:45
主站蜘蛛池模板: 色综合激情网| 2022国产91精品久久久久久| 日本妇乱子伦视频| 国产主播喷水| 老熟妇喷水一区二区三区| 国产极品美女在线观看| 亚洲va在线观看| 国产午夜精品一区二区三区软件| 一级爆乳无码av| 国产在线无码av完整版在线观看| 精品一区国产精品| 色综合狠狠操| 久热精品免费| 国产欧美视频在线观看| 国产精品一区不卡| 亚洲一区二区视频在线观看| 97免费在线观看视频| 国产精品久久国产精麻豆99网站| a毛片基地免费大全| 黄色一及毛片| 国产成人三级| 就去色综合| 亚洲精品麻豆| 97超碰精品成人国产| 国产日本欧美亚洲精品视| 色婷婷色丁香| 一级做a爰片久久免费| 国产成人调教在线视频| 精品久久久无码专区中文字幕| 国产H片无码不卡在线视频| 久久青草热| 91在线视频福利| 国产91视频观看| 老熟妇喷水一区二区三区| 中文字幕有乳无码| 久久人体视频| 天天色综合4| 国产三级国产精品国产普男人| 毛片基地美国正在播放亚洲| 99久久成人国产精品免费| 亚洲VA中文字幕| 久久久久人妻一区精品色奶水| 99热这里只有精品免费国产| 欧洲日本亚洲中文字幕| 亚洲成av人无码综合在线观看| 亚洲国产综合第一精品小说| 亚洲国产中文在线二区三区免| 亚洲精品无码人妻无码| 精品视频免费在线| 欧美97欧美综合色伦图| 中文天堂在线视频| 欧美国产在线精品17p| 97国产在线视频| 国产自产视频一区二区三区| 国产成人高清在线精品| 国产女人18水真多毛片18精品| 国产www网站| 在线免费无码视频| 强乱中文字幕在线播放不卡| 国产三区二区| 久久精品国产精品青草app| 国产一级在线观看www色| 强乱中文字幕在线播放不卡| 国产原创自拍不卡第一页| 亚洲h视频在线| 狠狠做深爱婷婷综合一区| 在线观看无码a∨| 亚洲天堂网在线播放| 黄色网站在线观看无码| 思思热在线视频精品| 小说 亚洲 无码 精品| 中文字幕乱妇无码AV在线| 高清无码不卡视频| 香蕉网久久| 久久九九热视频| 精品人妻系列无码专区久久| 成人欧美在线观看| 午夜性刺激在线观看免费| 99re在线视频观看| 欧美日韩精品在线播放| 男女精品视频| 国产精品综合久久久|