《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于System Generator的ECC加解密系統設計
基于System Generator的ECC加解密系統設計
來源:電子技術應用2012年第4期
肖雪芳1, 蘇 航2, 雷國偉2
1. 廈門理工學院 電子與電氣工程系, 福建 廈門 361024; 2. 集美大學 理學院, 福建 廈門361021
摘要: 根據橢圓曲線密碼體制的幾種關鍵算法,采用Modelsim仿真工具設計相應的算法模塊。然后將各模塊代碼通過System Generator生成對應的系統模塊,再將這些模塊搭建成完整的ECC系統。最后對整個ECC系統進行仿真,實驗數據進一步驗證了該設計的正確性。
中圖分類號: TN46;TP309
文獻標識碼: A
文章編號: 0258-7998(2012)04-0134-03
Design of ECC system based on System Generator
Xiao Xuefang1, Su Hang2, Lei Guowei2
1. Department of Electronic and Electrical, Xiamen University of Technology, Xiamen 361024, China; 2. School of Science, Jimei University, Xiamen 361021, China
Abstract: Based on several key algorithms of ECC(Elliptic Curve Cryptosystem), each module of the algorithms was designed via Modelsim tool. Then the source codes of each module were generated into its counterpart of ECC system by System Generator. and the modules were grouped into ECC system. Finally, the system was simulated and verified by experimental results.
Key words : System Generator; elliptic curve; finite field

    橢圓曲線密碼系統(ECC)與其他公鑰加密系統相比,因其密鑰長度短、安全強度高等諸多優點,被公認為最有前途的公鑰密碼體系,受到人們的普遍關注和研究[1-4]。

    在國內外有關ECC的研究方面,主要集中在 ECC的時間復雜度和空間復雜度上[2-4]。參考文獻[2]研究模逆和標乘的快速算法,參考文獻[3]針對KP算法將改進的Booth算法嵌入傳統算法,極大地降低了迭代次數和有限域運算量。參考文獻[4]將所有的模運算全轉化為模乘運算和模加運算,并改進了LSD乘法器,利用該單元進行模運算,從而其硬件實現了具有面積小、速度快等優點。目前國內的密碼技術還是落后于國外,特別是在生活應用中,國內的企業基本上是引用國外的密碼技術進行二次開發。如果要將實現的橢圓曲線密碼系統應用到實際中,則需要通過系統集成芯片設計(SOC),將FPGA上實現的橢圓曲線密碼系統集成實用性的加密芯片。一旦設計過程中所需的資源和條件不夠完善,將導致加密芯片的制作難以實現。為此,本文借助Xilinx公司提供的強大的系統級硬件仿真工具System Generator[5],研究并設計ECC加解密系統。
1 橢圓曲線密碼體制
    由于最終是要在硬件上實現橢圓曲線密碼體制[6],所以本文選擇的有限域是特征為2的GF(2n),選擇的橢圓曲線方程如式(1)所示。
  
   
    可見橢圓曲線密碼體制涉及到GF(2n)上的模加運算、模乘運算、求逆運算,還有橢圓曲線的KP點乘運算,下面對幾個主要算法進行分析。
1.1 GF(2n)域上的模乘運算
    模乘模塊是整個設計中最關鍵的模塊,模乘的過程包括多項式相乘和取模兩個過程。傳統的乘法器是將兩個m位操作數相乘,然后對其進行f(x)求模。這樣的缺點就是需要一個2m位的寄存器來存儲中間結果,勢必會浪費資源。本文采用全串行移位相加法來實現模乘運算[6]。該算法只有簡單的移位和“異或”運算,但是需要大量的移位運算,如果A、B具有m位,則需要進行m-1次移位運算,這是比較耗時的。但是本文使用的FPGA工作在61.44 MHz時鐘下,m一般取值在200左右,因此全串行移位相加法大概需要的是ns級的時間,而且全串行移位算法也是最節省資源的算法。通過Modelsim仿真該模塊,得到圖1所示結果。其中, clk是系統時鐘61.44 MHz;reset是系統復位信號;en是使能端口;din是乘數輸入端口,低位在前;dout是輸出結果;rdy是輸出結果有效指示。

1.2 GF(2n)域上的模逆運算
     對于GF(2n)域上的模逆運算,當今最有效的算法就是擴展歐幾里德算法和基于費馬定理的模逆算法。擴展歐幾里德算法用時會比基于費馬定理的模逆算法用時短很多,但是相應地是以犧牲硬件資源為代價,在后面的點乘算法和最后的橢圓曲線密碼體制的實現耗用資源很大。擴展歐幾里德算法還要去另外設計一個多項式模塊,而基于費馬定理的模逆算法只需要反復調用先前做好的模乘模塊就行,再加上本文用的FPGA時鐘頻率本身就高,因此本文選擇費馬定理來做模逆算法。通過Modelsim仿真該模塊,得到圖2所示結果。其中,clk是系統時鐘61.44 MHz;reset是系統復位信號;en是模逆使能;din是輸入數據;a_inv是輸出結果;rdy是輸出結果有效指示。

    選取參數:
    K=157E51751D89C66CBDF44596BF7F653876A18C4B12
40B85A;
    x=36B3DAF8A23206F9C4F299D7B21A9C369137F2C84
AE1AA0D;
    y=7658E73433B3F95E332932E70EA245CA2418EA0EF9
8018FB;
    b=2E45EF571F00786F67B0081B9495A3D95462F5DE0A
A185EC;
    f=800000000000000000000000000000000000000000000
201。
    仿真結果:
    Cx=34EEC5768673E71B8CDC139FB8EB4ACD9989FAA
E1EC9EF1D;
    Cy=779097F490A2DA7A6B09A9518733B4817D5C21947
547D2A1。
2 System Generator搭建ECC加密系統
    System Generator是業內領先的高級系統級FPGA開發工具。其作用是借助FPGA設計高性能DSP系統并和Simulink實現無縫鏈接,快速建模并自動生成代碼[5]。System Generator最大的特點就是可利用Simulink建模和仿真環境來實現FPGA設計,無需了解和使用RTL級硬件語言,讓DSP設計者能夠發揮基于FPGA的DSP的最大性能和靈活性,并縮短整個設計周期。前文用FPGA實現了ECC的各個關鍵模塊,下面用先前生成的各個模塊代碼通過System Generator的黑盒子生成各自相應的模塊。再將這些模塊搭建成完整的ECC模塊,以便在Matlab工作空間中輸入相應的參數、明文和相應的使能端口就可以實現加密;輸入相應的參數、密文和相應的使能端口就可以實現解密。但是本文所涉及的參數較大,輸入的過程很耗費時間,因此本文將參數都固定在一個ROM中間,只要控制相應的使能信號,就可以達到一個加解密的模擬過程。
2.1數據輸入模塊的搭建
    本文中的端口有使能端口和參數端口,其中,使能端口是1 bit的,就可以用計數器來實現。對于191個bit位的參數,可先將其分解成6組的32 bit系數, 存在如圖4所示的ROM中,只要改變ROM中的值就可以控制輸入參數的值,改變3個常數模塊就可以控制參數輸入的時刻。

 

 

2.2 ECC系統的搭建與仿真結果
    利用代碼生成的KP模塊、求逆模塊和乘法模塊搭建成ECC加解密系統。由于ECC加解密系統的各個子模塊有很多的反饋端口,搭建起來的圖顯得比較亂,因此可以在ECC系統中的m文件添加 this block.addFile()。把各個子模塊添加到ECC頂層模塊中,這樣就相當于把各個子模塊集成在統一的黑盒子中。
    設置運行時間為4 000 000個時鐘周期,將加解密指示信號設置為加密,點擊運行,進行加密仿真,在工作區間可以看到,明文輸入和對應的密文輸出。例如,當輸入的明文為“4129534493046158328227537522838960054530294419451055575666”時,輸出的密文為“3625519732263338515328819742424233936313311718087”。
    設置運行時間為4 000 000個時鐘周期,將加解密指示信號設置為解密,點擊運行,進行解密仿真,在工作區間可以看到密文輸入和對應的的明文輸出。例如,當輸入的密文為“362551973226333851532881974242423393631
3311718087”, 則輸出的明文為“4129534493046158328227537522838960054530294419451055575666”。
    ECC模塊加解密運算輸出有效數據的時鐘周期是第3274550,使能信號則是在第11個時鐘周期輸入,因此整個運算過程中數據的輸入輸出所耗費的時間是3274550-11=3 274 539個時鐘周期,所以對于采用時鐘頻率為61.44 MHz的FPGA來說,只要用3 274 539/61.44 ?滋s就可以完成一次加密算法,或者一次解密算法。總共用的時間為3274539/61.44 ns=53.3 ms,而若單單只用Matlab仿真運行,大概需要時間為20 min。因此采用硬件實現橢圓曲線密碼系統的優越性不言而喻。
參考文獻  
[1] HANKERSON D,MENEZES A, VANSTONE S. Guide to elliptic curve cryptography[M]. Springer Verlag New York Inc,2004:25-147.
[2] MA S W, HAO Y L, PAN Z Q. Fast  implementation for modular inversion an d scalar multiplication in the elliptic curve cryptography[C].IITA ’08,Beijing,China,2008:488-492.
[3] 龔書,劉文江,戎蒙恬.一種橢圓曲線密碼加密算法及實現[J].高技術通訊,2004(3):25-28.
[4] 唐薛峰,沈海斌,嚴曉浪.GF(2^m)上橢圓密碼體制的硬件實現[J].計算機工程與應用,2004,40(11):96-98.
[5] 田耕,徐文波,胡彬.Xilinx ISE Design Suite 10.x FPGA開發指南[M].北京:人民郵電出版社,2008.
[6] 祝躍飛,張亞娟.橢圓曲線公鑰密碼導引[M]. 北京:科學出版社,2006.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产成人精品久久| 亚洲女人天堂av| 亚洲特级片在线| 亚洲精品韩国| 亚洲国产精品精华液2区45| 国产在线一区二区三区四区 | 一二三区精品福利视频| 亚洲国产91| 在线日韩成人| 亚洲国产天堂久久综合网| 在线观看欧美一区| 亚洲第一福利社区| 亚洲激情女人| 亚洲免费观看在线视频| 99re66热这里只有精品4| 日韩亚洲欧美成人一区| 日韩视频免费| 制服丝袜亚洲播放| 亚洲性视频网站| 亚洲欧美日韩精品一区二区| 亚洲免费视频一区二区| 亚洲欧美综合网| 欧美伊人久久久久久午夜久久久久 | 欧美第一黄色网| 欧美激情第一页xxx| 欧美女同视频| 国产精品地址| 国产欧美日韩| 黄色亚洲精品| 亚洲欧洲午夜| 一区二区三区鲁丝不卡| 亚洲欧美日韩中文视频| 久久精品91| 99国产精品| 亚洲影院在线| 久久精品国产精品亚洲精品| 久久一区中文字幕| 欧美精品久久99久久在免费线| 欧美日韩视频一区二区三区| 国产精品伦一区| 国产亚洲制服色| 亚洲国产精品va在线看黑人| 亚洲精品影视| 亚洲欧美日韩天堂| 亚洲黄色大片| 亚洲免费在线看| 久久午夜视频| 欧美日韩亚洲综合一区| 国产人成精品一区二区三| 国内在线观看一区二区三区| 亚洲激情在线播放| 亚洲一级在线观看| 亚洲黄一区二区三区| 亚洲桃色在线一区| 久久九九热re6这里有精品| 欧美激情精品久久久久久大尺度 | 欧美日韩精品在线播放| 国产欧美一区二区白浆黑人| 在线看片成人| 亚洲欧美日韩网| 日韩午夜在线| 久久精品伊人| 欧美四级剧情无删版影片| 国产一区高清视频| 日韩视频永久免费| 久久成人资源| 亚洲综合色婷婷| 欧美成人一区二区三区片免费| 国产精品国产三级欧美二区| 精品成人一区二区三区| 亚洲调教视频在线观看| 亚洲激情黄色| 欧美中文在线观看| 欧美日韩一二区| 亚洲国产高清在线| 午夜视频在线观看一区二区| 日韩亚洲欧美在线观看| 久久另类ts人妖一区二区| 欧美性猛交99久久久久99按摩| 狠狠色狠狠色综合日日小说| 亚洲素人在线| 一区二区三区高清在线观看| 久久夜色精品亚洲噜噜国产mv| 国产精品国色综合久久| 亚洲欧洲日本国产| 亚洲福利国产| 久久久午夜视频| 国产精品日韩一区二区三区| 亚洲日本激情| 亚洲三级国产| 久久资源在线| 国产亚洲一区二区精品| 亚洲一区日韩在线| 亚洲性图久久| 欧美日本不卡| 亚洲第一精品久久忘忧草社区| 亚洲欧美日韩国产中文| 亚洲视频一区二区免费在线观看| 欧美二区在线看| 狠狠操狠狠色综合网| 亚洲欧美在线视频观看| 亚洲私人影院| 欧美性大战久久久久久久蜜臀| 亚洲美洲欧洲综合国产一区| 亚洲精品在线三区| 免费在线看一区| 一区二区三区在线观看国产| 久久精品1区| 久久免费黄色| 精品成人一区二区| 亚洲成色最大综合在线| 久久福利视频导航| 国产老女人精品毛片久久| 亚洲综合国产激情另类一区| 午夜精品久久久久久久男人的天堂| 欧美日韩国产成人在线免费 | 欧美一进一出视频| 久久av一区二区三区| 国产精品一区二区久久精品| 亚洲四色影视在线观看| 亚洲欧美一区二区三区在线| 国产精品国产三级国产专区53| 一区二区三区视频观看| 亚洲制服av| 国产九九精品| 欧美在线91| 美女日韩在线中文字幕| 18成人免费观看视频| 亚洲精品在线免费| 欧美日韩精品一区二区天天拍小说| 亚洲精品欧美在线| 亚洲图片欧美日产| 国产精品久久久久久超碰| 亚洲一区二区免费| 久久不射中文字幕| 国产一区二区在线观看免费| 亚洲国产精品va在看黑人| 欧美高清日韩| 9i看片成人免费高清| 亚洲视频国产视频| 国产精品视频一区二区三区| 午夜久久久久| 免费一级欧美片在线观看| 亚洲激情二区| 亚洲欧美日韩一区二区| 国产女人精品视频| 亚洲国产精品成人综合| 欧美激情网友自拍| 正在播放日韩| 久久久女女女女999久久| 亚洲高清色综合| 亚洲一区三区电影在线观看| 国产欧美日韩一区| 亚洲国产精品一区二区第四页av | 国产精品免费久久久久久| 午夜视频在线观看一区二区| 久久免费视频在线观看| 91久久精品国产91久久性色| 亚洲影院色无极综合| 国产午夜精品福利| 日韩午夜在线电影| 国产老女人精品毛片久久| 亚洲欧洲三级| 欧美系列一区| 亚洲国产aⅴ天堂久久| 欧美日韩专区| 欧美一区二区视频在线观看| 欧美成人精品影院| 亚洲视频一区二区在线观看| 久久免费国产精品| av不卡在线观看| 久久国产手机看片| 亚洲人成网站在线观看播放| 欧美一区二区三区免费在线看 | 亚洲区在线播放| 欧美在线视频一区二区| 亚洲黄色免费| 久久精品麻豆| 一区二区激情| 免费成人av在线| 亚洲免费视频一区二区| 欧美激情一区二区三区成人| 亚洲欧美日韩一区| 欧美劲爆第一页| 久久精品视频网| 国产精品国产三级国产专播品爱网| 亚洲国产精品嫩草影院| 国产精品视频内| 中文精品视频一区二区在线观看| 国一区二区在线观看| 亚洲一级在线观看| 亚洲国产精品第一区二区三区| 欧美在线在线| 中文高清一区| 欧美激情第3页| 久久爱www| 国产精品免费区二区三区观看| 日韩视频精品在线| 极品少妇一区二区三区精品视频| 亚洲尤物精选|