日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 工業(yè)控制 > 電子設(shè)計自動化
[導(dǎo)讀]摘要:介紹AES 算法的原理以及基于FPGA 的高速實現(xiàn)。結(jié)合算法和FPGA 的特點,采用查表法優(yōu)化處理了字節(jié)代換運算、列混合運算。同時,為了提高系統(tǒng)工作速度,在設(shè)計中應(yīng)用了內(nèi)外結(jié)合的流水線技術(shù),并應(yīng)用Altera 公司的開發(fā)

摘要:介紹AES 算法的原理以及基于FPGA 的高速實現(xiàn)。結(jié)合算法和FPGA 的特點,采用查表法優(yōu)化處理了字節(jié)代換運算、列混合運算。同時,為了提高系統(tǒng)工作速度,在設(shè)計中應(yīng)用了內(nèi)外結(jié)合的流水線技術(shù),并應(yīng)用Altera 公司的開發(fā)工具及芯片進行實際開發(fā)。

1 引言

隨著信息技術(shù)的迅速發(fā)展,信息已成為當(dāng)今社會的一種重要資源。但當(dāng)人們享受信息資源帶來的巨大便利的同時,也承受著信息被篡改、泄漏、偽造的威脅,安全問題日益嚴重。安全風(fēng)險制約著信息的有效使用,信息安全對現(xiàn)代社會健康有序的發(fā)展,保障國家安全和社會穩(wěn)定有著重要作用。加密技術(shù)是信息安全技術(shù)的核心,是保證信息資源安全的關(guān)鍵。

高級加密標(biāo)準(zhǔn)(Advanced Encryption Standard, AES)作為傳統(tǒng)對稱加密算法標(biāo)準(zhǔn)DES 的替代者,由美國國家標(biāo)準(zhǔn)與技術(shù)研究所(NIST)于1997 年提出征集該算法的公告,2000 年最終選定了Rijndael 算法,并于2001 年正式發(fā)布了AES標(biāo)準(zhǔn)[1]。Rijndael 算法本質(zhì)上是一種對稱分組密碼體制,該算法匯聚了安全性能、效率、可實現(xiàn)性和靈活性等優(yōu)點,已經(jīng)成為工業(yè)界、銀行業(yè)、政府部門的事實上的密碼標(biāo)準(zhǔn)[2]。

隨著網(wǎng)絡(luò)傳輸速度的快速提升,業(yè)界對算法的執(zhí)行速度的要求也越來越高,基于軟件的密碼算法便顯得性能不足,需要采用硬件加密的方式。另外,用硬件實現(xiàn)加密算法具有較更高的物理安全性。而FPGA 芯片兼有硬件的安全性和高速性以及軟件的靈活性和易維護性,從而成為研究和實現(xiàn)AES 算法的理想硬件平臺。

2 AES 加密算法簡介

AES 是一種分組迭代密碼,明文分組長度固定為128 b,而且僅支持128,196 或256b 的密鑰長度,本文著重對密鑰長度為128 b 的情況進行討論。AES 加密算法的實現(xiàn)流程如圖1 所示,將輸入的明文填入一個4X4 的矩陣(16 進制),并將其稱為狀態(tài)矩陣。算法的前round-1 輪包含四種變換,分別是:字節(jié)替換、輪密鑰加、行移位、列混合。對于每一輪,都有對應(yīng)的子密鑰。子密鑰由初始密鑰通過密鑰擴展得到。最后一輪由字節(jié)替換、行移位和輪密鑰加組成。AES 解密過程為上述過程的逆過程。


字節(jié)替換:字節(jié)替換(SubBytes)是一個基于S 盒的非線性置換,它通過一個簡單的查表操作將輸入或中間狀態(tài)的每一個字節(jié)映射為另一個字節(jié)。查表的方法為:將輸入字節(jié)的高4 位作為S 盒的行值,低4 位作為列值,然后取出S 盒中對應(yīng)行和列的元素作為輸出。

行移位:行移位(ShiftRows)完成基于行的循環(huán)移位操作。具體的操作為:第0 行不動,第1 行循環(huán)左移1 個字節(jié),第2 行循環(huán)左移2 個字節(jié),第3 行循環(huán)左移3 個字節(jié)。

列混合:列混合(MixColumns)是對狀態(tài)矩陣中的列做線性變換,進行四字節(jié)乘運算。具體定義如下:將狀態(tài)矩陣的列看作有限域G(28)上的多項式,并在模x4+1 下與一個給定的多項式c(x)相乘,其中c(x)=03x3+01x2+01x+02。假設(shè)該步變換狀態(tài)的一列輸入為a,輸出為b,即b(x)=c(x)·a(x)mod(x4+1)。

密鑰加:密鑰加(AddRoundKey)是將輪密鑰的各字節(jié)和狀態(tài)矩陣中相應(yīng)位置的字節(jié)分別模2 加,實現(xiàn)狀態(tài)和密鑰的混合。輪密鑰的長度和狀態(tài)的長度是一樣的。該步驟的逆變換是其自身[3]。

3 算法實現(xiàn)的優(yōu)化

3.1 對算法本身的優(yōu)化

用查找表和組合邏輯的方式代替了復(fù)雜的乘法運算[3],大大減少了芯片資源的占用,提高了加、解密步驟的執(zhí)行速度。字節(jié)替換是 Rijndael 密碼中唯一的非線性變換。該步驟是一種非線性面向字節(jié)的變換,是將一個8 位二進制數(shù)據(jù)轉(zhuǎn)換為另一個不同的8 位二進制數(shù)據(jù),這里要求一一對應(yīng),并且替換結(jié)果不能超出8 位,可以通過構(gòu)造可逆的S-盒來實現(xiàn)。

由于有限域GF(2)中總共有256 個元素,則可預(yù)先通過一定的算法計算出每個元素的逆元,再進行對應(yīng)的仿射變換求出有限域GF(28)中每個元素經(jīng)過字節(jié)代換后所對應(yīng)的值,并將這個計算出的替代值寫入一個16×16 字節(jié)的置換表中相應(yīng)的位置作為步驟SubBytes 的S-盒。具體實現(xiàn)時,根據(jù)狀態(tài)的每一個字節(jié)的數(shù)值檢索出S-盒中對應(yīng)的替代值,即通過查表即可實現(xiàn)該步變換,避免復(fù)雜的乘法運算[4]。

對于列混合變換,由于GF(28)有限域中的每一個元素都能夠?qū)懗?2 的不同冪次的和,因此,乘以任何常數(shù)的乘法都可以通過反復(fù)的乘以02 和異或運算來實現(xiàn)??蓪⒕仃嚦朔ㄖ械某?shù)因子分解為 02 的不同冪次和,矩陣乘法轉(zhuǎn)換為與02 的乘法和異或運算。將GF(28)域中的每一個元素與02 的乘積存儲在一張16×16 字節(jié)查找表中,記作xtime(·)。所以,該步驟可以通過查表和異或運算實現(xiàn)。

3.2 加密模塊結(jié)構(gòu)的優(yōu)化

加密模塊結(jié)構(gòu)直接影響 AES 算法的加解密速度,AES 算法加解密系統(tǒng)的速度是指單位時間內(nèi)完成的加密(解密)的比特數(shù),也稱為吞吐量(throughput),單位為兆比特每秒(Mbit/s)。其基本結(jié)構(gòu)可分為以下三種:外部流水線結(jié)構(gòu)、內(nèi)部流水線結(jié)構(gòu)和循環(huán)展開結(jié)構(gòu)[5]。其中循環(huán)展開結(jié)構(gòu)的速度是以芯片面積增加為代價的,而外部流水線結(jié)構(gòu)和內(nèi)部流水線結(jié)構(gòu)在反饋模式中速度受到限制,面積的增加并不能增加速度,所以這兩種結(jié)構(gòu)只適用于非反饋模式。內(nèi)部流水線結(jié)構(gòu)的速度在非反饋模式下隨著內(nèi)部流水線站數(shù)的增加而增加,但面積的相應(yīng)增長極小,具有很好的速度面積比。但在反饋模式下其速度面積比不具優(yōu)勢。因此,在外部應(yīng)用流水線結(jié)構(gòu)設(shè)計的同時,在內(nèi)部劃分流水線站,可以在外部流水線結(jié)構(gòu)的速度基礎(chǔ)上進一步提高速度,而面積的增長極小,從而提高吞吐量和速度面積比?;谝陨戏治觯诒驹O(shè)計中采取了非反饋模式和內(nèi)外混合的流水線結(jié)構(gòu)。

4 硬件測試及應(yīng)用

本設(shè)計采用 ALTERA 公司的開發(fā)工具QuartusII,以VerilogHDL 為實現(xiàn)語言,在綜合仿真并測試無誤后,下載至ALTERA 公司的Cyclone 系列芯片上。該系列芯片具有相當(dāng)?shù)男詢r比,非常適合于大批量、低成本的應(yīng)用本設(shè)計方案。本設(shè)計既可以作為單獨的專用加密芯片完成加密任務(wù),也可以嵌入到復(fù)雜的數(shù)字系統(tǒng)中。具有非常廣闊的應(yīng)用市場。



參考文獻:

[1].NISTdatasheethttp://www.dzsc.com/datasheet/NIST_2562226.html.


來源:lele0次

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉