<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 可重構平臺下AES算法的流水線(xiàn)性能優(yōu)化

可重構平臺下AES算法的流水線(xiàn)性能優(yōu)化

作者: 時(shí)間:2009-07-08 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要 -Rijndael是美國取代DES的新一代分組加密標準,也是事實(shí)上的國際標準。本文在可上針對 128位密鑰長(cháng)度技術(shù)進(jìn)行了研究,通過(guò)對基本運算、循環(huán)展開(kāi)、輪內、輪間、混合多級流水線(xiàn)結構等方法的討論和實(shí)現,對比不同優(yōu)化方法的優(yōu)缺點(diǎn)及適用環(huán)境。實(shí)驗表明,不同結構的設計,其加密存在很大差異。其中,混合多級流水線(xiàn)結構的加密達到27.1 Gb/s的速率,為目前國內外相關(guān)研究的較好結果。
關(guān)鍵詞 高級加密標準 可計算 流水線(xiàn) 結構優(yōu)化 -Rijndael算法

本文引用地址:http://dyxdggzs.com/article/158006.htm


1 AES-RijndaeI算法總體結構
AES-Rijndael算法是一個(gè)替換一置換網(wǎng)絡(luò )結構的分組密碼算法。它的設計基于有限域上的多項式運算,密碼算法的主體結構由4部分組成:SubBytes,進(jìn)行S-盒非線(xiàn)性變換;ShiftRows,狀態(tài)矩陣的水平置換;MixCol-umns,執行有限域GF(28)上的矩陣乘運算;AddRoundK-eys,通過(guò)簡(jiǎn)單異或運算使子密鑰與狀態(tài)矩陣發(fā)生聯(lián)系。算法經(jīng)過(guò)Nr輪變換,將一個(gè)128位明文分組加密成為一個(gè)128位的密文分組。這里Nr是一個(gè)與密鑰長(cháng)度相關(guān)的常數。對于128位密鑰的情況,Nr的值為 10。除了最后一輪外,其他每一輪加密過(guò)程都相同。最后一輪加密中省去了 MixColumns變換,以抵抗某些特殊密碼分析。

2 循環(huán)展開(kāi)和流水線(xiàn)優(yōu)化
對于前述AES加密過(guò)程的實(shí)現,如圖1(a)所示,我們針對可下4個(gè)變換函數的實(shí)現方法進(jìn)行了優(yōu)化,優(yōu)化后的加密過(guò)程時(shí)鐘頻率達到了127.9 MHz。這樣,對于一個(gè)128位明文分組的加密需要11個(gè)時(shí)鐘周期,因此,其加密速率為1.49 Gb/s。這一速率已經(jīng)能滿(mǎn)足絕大多數應用的需要,然而為了滿(mǎn)足一些更高速應用的需要,可以通過(guò)改變加密處理過(guò)程體系結構進(jìn)一步優(yōu)化相應設計。要提高加密速率,最簡(jiǎn)單的方法是使用循環(huán)展開(kāi)技術(shù)將迭代加密的結構展開(kāi),并將多份加密輪變換電路的輸入輸出首尾相連,如圖1(b)所示。這樣可以節省寄存器建立延遲和選路器的傳輸延遲時(shí)間,從而加快加密變換處理的速度。然而,這種方法會(huì )消耗大量的邏輯資源,并且性能提高得不多。根據我們的實(shí)驗,循環(huán)展開(kāi)后的芯片速度比迭代結構增加了17%,然而所消耗的邏輯資源卻是迭代結構的6倍。因此,這一優(yōu)化方法的效率是極其低的;只有在對性能要求很高,但資源又充分的情況下才能采用。
另外一種優(yōu)化方法是使用流水線(xiàn)技術(shù)。它是將關(guān)鍵執行路徑切分為多級短的執行步,并在各執行步電路間插入寄存器存儲上一級執行結果。這樣,雖然關(guān)鍵執行路徑?jīng)]有變短,但電路可以在一個(gè)較少的時(shí)鐘周期內同時(shí)處理多個(gè)數據塊的加密,從而提高了并發(fā)程度,因此,加密速率也就能大大提高。在設計加密算法處理流水線(xiàn)的過(guò)程中,最常用的是輪間流水線(xiàn)技術(shù)。輪問(wèn)流水線(xiàn)技術(shù)是將循環(huán)展開(kāi)結構按各加密輪切分為一系列的流水線(xiàn),其中每一輪加密變換為一級。在流水線(xiàn)的各級之間插入寄存器,寄存器由同步時(shí)鐘來(lái)控制,每次時(shí)鐘觸發(fā),寄存器就保存上一次的變換結果,同時(shí)將之前保存的結果送流水線(xiàn)處理部件處理并將結果保存到下一級寄存器中,如圖1(c)所示。根據我們的實(shí)驗結果(見(jiàn)圖3),輪間流水線(xiàn)結構的設計,加密速率是迭代結構的12倍;同時(shí)資源消耗也大量增長(cháng),是迭代結構的7倍。由實(shí)驗結果可見(jiàn),輪間流水線(xiàn)技術(shù)是一種對分組加密算法很有效的優(yōu)化技術(shù)。特別是當算法中加密輪函數較為簡(jiǎn)單的情況下,輪間流水線(xiàn)技術(shù)是相當適用的;但是,對于一些輪函數復雜,加密輪數較少的算法,輪問(wèn)流水線(xiàn)技術(shù)的優(yōu)化效果就不是很突出了。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>