《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于AES算法的存儲測試系統設計
基于AES算法的存儲測試系統設計
2015年電子技術應用第7期
孫 汶1,2,朱 平1,2
1.中北大學電子測試技術國防科技重點實驗室,山西 太原030051; 2.中北大學儀器科學與動態測試教育部重點實驗室,山西 太原030051
摘要: 為了實現對存儲測試系統在某些應用場合中數據保密的需求,提出了一種基于AES算法的數據加密系統設計方案,并完成了系統的算法仿真與硬件設計。系統的硬件以Xilinx公司的FPGA為主要芯片,實現數據采集與加密功能。采用VHDL語言來描述AES算法的硬件實現,對AES加密系統的整體結構和各個子模塊進行了仿真與優化。從仿真測試結果看,完全能夠滿足存儲測試系統的加密要求,達到了設計要求。
中圖分類號: TH70
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.07.021
中文引用格式: 孫汶,朱平. 基于AES算法的存儲測試系統設計[J].電子技術應用,2015,41(7):74-76,84.
英文引用格式: Sun Wen,Zhu Ping. Design of storage testing system based on AES algorithm[J].Application of Electronic Technique,2015,41(7):74-76,84.
Design of storage testing system based on AES algorithm
Sun Wen1,2,Zhu Ping1,2
1.Science and Technology on Electronic Test & Measurement Laboratory,North University of China,Taiyuan 030051,China; 2.Key Laboratory of Instrumentation Science & Dynamic Measurement,Ministry of Education,North University of China, Taiyuan 030051,China
Abstract: In order to achieve the data encryption requirement of storage testing system, which brings a design of data encryption system based on AES algorithm. The algorithm′s simulation and the hardware design of the system are finished. This system′s hardware is based on Xilinx′s FPGA to realize data acquisition and encryption. The design uses VHDL to realize the AES algorithm in hardware and simulates every module of algorithm. Seen from the results of the simulation, the design completely meets the system′s data encryption demand and achieves the design’s requirement.
Key words : AES;storage testing;VHDL;encryption system

   

0 引言

    隨著信息技術的不斷發展與信息價值的不斷提高,人們對于信息存儲的安全問題關注度越來越高,越來越多的信息科技產品采用了加密技術對數據進行保護。由于存儲測試系統應用方面的特殊性,測試的數據大多屬于機密,目前大多數是靠回收記錄器來獲得測試數據,然而由于回收難度大的問題造成了數據安全性方面的隱患,因此對于測試系統的數據加密需求極為迫切[1-2]。高級加密標準(AES)是由美國國家標準與技術研究院于2001年12月公布的對稱密鑰分組密碼[3]。AES是一個非菲斯特爾(Feistel)密碼,可以加密和解密128 bit的數據分組,可使用10、12或14個輪。密鑰的大小可以是128 bit、192 bit或256 bit,依輪的數目而定,擁有三種版本,即AES-128、AES-192和AES-256[4]。本文基于AES-128算法提出了一種數據加密系統的設計方案,給出了基于Xilinx的FPGA硬件實現方法。

1 AES算法

1.1 AES算法概述

    AES算法利用代換、置換、混合和密鑰加來對數據進行類型轉換進而完成加密解密工作,提高系統的安全性能。字節代換、行移位、列混合、加輪密鑰和密鑰擴展是算法加密過程的主要步驟,解密過程主要步驟則為行移位反演、位代換反演、加輪密鑰、列混合反演。需要注意的是在進行加密解密的過程中除第一步加輪密鑰外還須進行十輪數據轉換,在加密過程中第十輪沒有列混合這一步驟,解密過程中第十輪同意不包含列混合反演這一步驟[5]。AES-128加密解密算法的整體工作流程如圖1所示。

ck7-t1.gif

1.2 算法流程

    AES加密算法首先將128 bit明文排列成一個4×4的矩陣,如圖2所示。同樣密鑰也被排列成4×4矩陣。AES算法的加密過程可分為輪變換和密鑰擴展(KeyExpansion),輪變換包括字節代換(SubByte)、行移位(ShiftRow)、列混合(MixColumn)和加輪密鑰(AddRoundKey)。

ck7-t2.gif

    (1)字節代換(SubByte)

    字節代換將明文狀態的每個字節做非線性變換,明文狀態中的每一個字節經過查找表操作,通過S盒變換為另一個字節。字節代換如圖3所示。

ck7-t3.gif

    (2)行移位(ShiftRow)

    經過字節代換后明文數據要進行行移位轉換,這種轉換就是改變字節的序列,移位是在字節層上進行的,不改變字節當中的比特順序。加密過程中,行移位是向左移位,行0沒有移位,行1有一字節移位,行2有兩個字節移位,最后一行移了3個字節。

    (3)列混合(MixColumn)

    經過行移位之后還需要一個字節內交換來改變字節中的比特,列混合就是在列層上的轉換操作,把狀態的每一列轉換為一個新的列,實際上轉換就是一個狀態列和一個常數矩陣相乘。

    (4)加輪密鑰(AddRoundKey)

    加輪密鑰過程每次處理一列,把一個輪密鑰字與每一個狀態列矩陣相加。加輪密鑰的操作也可以看做是對狀態的每一列與相應的密鑰字所進行的異或運算。圖4為加輪密鑰示意圖。

ck7-t4.gif

    (5)密鑰擴展(KeyExpansion)

    AES算法需要一個密鑰擴展模塊來生成每一輪操作所需的密鑰。本設計中加密輪數為10,密鑰擴展就從一個128 bit的密碼密鑰創建成11個128 bit的輪密鑰。第一個輪密鑰用作加輪密鑰,其他的十個輪密鑰用作每一輪的轉換。

2 數據加密系統整體設計及實現

    由于存儲測試系統采集存儲數據的實時性,數據加密也必須對采集的數據進行實時加密,基于此本設計的加密程序采用了內外混合流水線結構設計的方法來滿足存儲測試系統的高速采集。

2.1 數據加密系統器件選擇

    FPGA作為一種可編程邏輯器件,結合了軟件靈活和硬件的速度特性。使用FPGA開發數字電路,可以大大縮短開發時間,提高系統的可靠性,可擦除式編程使程序更加靈活多變。基于對AES算法的分析,其復雜的數學運算可以通過查找表與組合邏輯電路實現,綜合考慮速度、功耗和應用范圍等因素,本設計采用FPGA來實現AES加密算法[6-8]

    選取Xilinx公司生產的Spartan3E系列的XC3S500E作為主控芯片,擁有最多376個可操作I/O口,500 k個系統門數,塊RAM容量為360 KB,最高主頻高達300 MHz,完全滿足系統需要。

2.2 加密系統工作結構

    根據現有存儲測試系統的設計,首先系統通過一定位數的AD采集器將輸入的模擬信號在FPGA主控芯片的控制下以一定采樣頻率轉換為數字信號進行采集,然后采集的數字信號經過AES算法加密模塊進行加密,最后在FPGA芯片的控制下將加密后的數據存儲到Flash閃存中,完成數據的加密存儲過程[9-10]。數據加密系統的硬件電路總體方案如圖5所示。

ck7-t5.gif

    為了達到高精度采集的目的,采用12 bit的高速低功耗逐次逼近型A/D轉換器AD7495。由于本系統采集的模擬信號在-5 V~5 V之間,而AD7495芯片轉換要求輸入的模擬信號幅值在0 V~2.5 V之間,故信號在輸入ADC之前先通過運放AD823進行調理,使其輸入電壓在ADC正常工作范圍之內。同時,信號經調理后消除了使用模擬多路開關帶來的開關導通電阻的影響、通道切換過程中產生的尖峰電壓、輸入信號電壓擺幅等一系列問題。

    A/D轉換的工作過程嚴格按照AD7495的工作時序設定,其工作時序如圖6所示。片選CS拉低以啟動A/D轉換器并對其進行初始化,同時把時鐘信號SCLK傳給A/D轉換器,執行模數轉換并根據SCLK逐位輸出轉換后的數字信號,按照先高8位后低8位的順序送人FIFO中,其中DB12~DB15用0來補,轉換時間由SCLK的頻率決定。

ck7-t6.gif

    在硬件電路設計方案的基礎上,設計出了FPGA與計算機通信的上位機軟件。上位機軟件利用接口單元即USB接口與存儲測試系統進行通信,用戶通過操作上位機軟件即可向FPGA芯片下發命令,完成數據的讀取、擦除和解密等功能,使上位機軟件和數據加密系統形成一個完整的系統。

2.3 加密系統實現

    FPGA的功能邏輯使用 VHDL 語言實現, 用于描述數字系統的結構、行為和功能。使用 VHDL 語言設計硬件電路時,可以使設計者免除編寫邏輯表達式或真值表的工作,這樣使硬件電路設計的難度有了大幅度的降低, 從而提高工作效率, 縮短硬件電路的設計周期。作為采集的數據為8 bit,而加密算法所加密的是128 bit,因此需要一個data8to128模塊。使用VHDL 語言實現的系統 FPGA 部分原理圖如圖7所示。

ck7-t7.gif

    取實際測試采集的128 bit數據作為測試明文,轉換為16進制后的數據即為:08 A6 08 A5 08 A5 08 A4 08 A2 08 A1 08 9F 08 9F。初始密鑰在程序中設置,設初始密鑰為:4A 5B 68 2C 32 E1 B3 AC F2 35 24 A2 4B 3C 2F E6。對128 bit明文的加密轉換為表1所示。

ck7-b1.gif

    圖8為AES加密模塊的整體功能仿真圖,仿真軟件使用Modelsim SE 10.0c。從圖中可看出,完成一次128 bit數據加密從開始到結束需要12個時鐘周期,最終程序加密所得到的數據與加密軟件驗證的一致。

ck7-t8.gif

    本文所設計的系統程序通過ISE12.2進行綜合編譯后進行時序仿真。

    AES算法內部設計的理論處理時延是2 ns,為了數據加密系統能夠穩定工作,因此建議主時鐘周期在10 ns以上。設FPGA的主時鐘頻率為100 MHz,完成128 bit的數據加密需要12個時鐘周期才能完成,計算可得出滿負荷運行時加密速度可以達到1.06 Gb/s。考慮到受器件、延時、邏輯和噪聲等多種條件影響,AES加密核不能保證在更高時鐘下運行正確,實驗測試結果表明:在輸出結果完全正確,時序符合設計要求和系統能正確執行AES加解算法的情況下,加密系統加密過程的吞吐量可達到0.98 Gb/s,完全滿足存儲測試系統的高速采集需求。

3 結束語

    本文首先介紹了ASE算法的結構流程,對存儲測試系統數據加密需求進行了分析,提出了數據加密系統的硬件電路設計方案,編寫了基于VHDL語言的AES加密算法,對算法進行了仿真驗證。最后,對加密系統的整體功能進行了驗證。經實際系統測試,本方法可以有效地保護存儲測試系統采集的數據。

參考文獻

[1] 張文棟.存儲測試系統的設計理論與應用研究及其在導彈動態數據測試中的實現[D].北京:北京理工大學,1995.

[2] 祖靜,申湘南,張文棟.存儲測試技術[J].測試技術學報,1994,8(2):25-31.

[3] (美)Behrouz A.Forouzan.密碼學與網絡安全[M].北京:清華大學出版社,2009.

[4] 李洪剛,楊林楠,張麗蓮,等.基于FPGA的高速多通道數據采集系統的設計[J].計算機測量與控制,2006,14(10).

[5] PONGYUPINPANICH S,PHATHUMVANH S,CHOOMCHUAY S.A32 bits Architecture For An AES System[C].ISCIT,2004:70-73.

[6] 田耘,徐文波.Xilinx FPGA開發實用教程[M].北京:清華大學出版社,2010.

[7] 韋寶典.高級加密標準AES中若干問題的研究[D].西安:西安電子科技大學,2003.

[8] 鹿欽鶴,任濤.AES算法的研究[J].長春理工大學學報,2007,30(1):83-85.

[9] 高磊,戴冠中.AES算法中SubBytes變換的高速硬件實現[J].微電子學與計算機,2006,23(7):47-49.

[10] 何德彪,胡進,陳建華.基于FPGA的高速AES實現[J].華中科技大學學報,2010,38(2):101-103.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
在线免费一区三区| 午夜视黄欧洲亚洲| 国内综合精品午夜久久资源| 欧美四级伦理在线| 欧美日韩午夜| 欧美日韩一区二区在线| 欧美日本久久| 欧美日韩国产综合视频在线观看中文| 欧美电影免费观看网站| 欧美成人精品在线播放| 蜜臀久久久99精品久久久久久| 久久亚洲综合网| 久热精品视频| 欧美成人精品不卡视频在线观看 | 亚洲人成网站在线观看播放| 亚洲国产一区二区三区a毛片 | 欧美中文字幕不卡| 久久精品免费看| 亚洲国产精品热久久| 亚洲国产精品小视频| 亚洲精品久久久久| 99国产精品视频免费观看一公开| 99re66热这里只有精品3直播| 一本到12不卡视频在线dvd| 亚洲午夜一区二区三区| 性做久久久久久久免费看| 欧美一区激情| 久久蜜桃资源一区二区老牛| 美女国产一区| 欧美日韩国产色站一区二区三区| 欧美三级视频在线播放| 国产伦精品一区二区三区视频黑人 | 最新日韩av| 一本色道**综合亚洲精品蜜桃冫 | 亚洲激情第一页| 9色porny自拍视频一区二区| 亚洲字幕在线观看| 久久久久久久久久看片| 欧美成人一区二区三区| 欧美三级网页| 国产视频一区二区三区在线观看| 激情综合网址| 日韩视频免费在线观看| 亚洲欧美日本视频在线观看| 亚洲国产日韩一级| 一区二区三区久久网| 欧美一区二区三区喷汁尤物| 麻豆精品91| 国产精品福利在线观看网址| 国外成人在线视频| 日韩一区二区精品视频| 亚洲欧美亚洲| 亚洲伦理中文字幕| 欧美亚洲一区| 欧美福利视频一区| 国产精品人人做人人爽| 一区国产精品| 一本一本久久a久久精品综合麻豆| 欧美亚洲一区在线| 亚洲理伦电影| 久久精品日产第一区二区| 欧美极品欧美精品欧美视频| 国产久一道中文一区| 亚洲欧洲一区二区三区在线观看 | 亚洲小说欧美另类社区| 久久免费视频在线观看| 欧美肉体xxxx裸体137大胆| 狠狠爱综合网| 亚洲天堂av电影| 亚洲国产黄色| 午夜精品一区二区三区在线视| 女人色偷偷aa久久天堂| 国产伦精品一区二区三区四区免费 | 久久综合图片| 国产精品免费观看在线| 亚洲国产欧美一区二区三区丁香婷| 亚洲永久免费观看| 99精品国产99久久久久久福利| 久久国产天堂福利天堂| 欧美午夜精品久久久久久孕妇| 一区二区三区在线观看国产| 亚洲一区免费看| 夜夜嗨av一区二区三区四区| 久久阴道视频| 国产美女精品免费电影| 99精品视频免费全部在线| 亚洲精品免费网站| 久久黄色网页| 国产精品夜夜嗨| 9久草视频在线视频精品| 亚洲国产日韩欧美在线图片| 久久国产精品久久久| 国产精品免费福利| 日韩一区二区福利| 99pao成人国产永久免费视频| 久久永久免费| 黄色欧美成人| 欧美一区二区三区在线免费观看 | 欧美一级理论片| 亚洲欧美美女| 欧美日韩美女一区二区| 亚洲狠狠婷婷| 亚洲黄一区二区| 久久综合网色—综合色88| 国产一区二区三区奇米久涩| 亚洲免费影视第一页| 亚洲自拍高清| 欧美午夜国产| 99综合电影在线视频| 一区二区三区 在线观看视| 欧美成人精精品一区二区频| 一区二区视频免费在线观看| 亚洲第一中文字幕| 裸体一区二区三区| 激情欧美日韩| 亚洲黄色片网站| 欧美成人国产va精品日本一级| 1024国产精品| 亚洲久久成人| 欧美日本一区二区三区| 99国产麻豆精品| 一区二区三区www| 欧美日韩精品免费观看| 日韩一区二区免费高清| 国产精品99久久不卡二区| 欧美日韩第一区日日骚| 99精品免费网| 亚洲中午字幕| 国产欧美精品| 久久不射中文字幕| 葵司免费一区二区三区四区五区| 一区久久精品| 亚洲乱码国产乱码精品精可以看 | 精品福利电影| 亚洲日本免费电影| 欧美理论片在线观看| 99伊人成综合| 欧美一区二区啪啪| 国精品一区二区三区| 亚洲国产精品综合| 欧美日韩成人免费| 亚洲手机在线| 久久精品国产99精品国产亚洲性色| 国产三区精品| 亚洲国产美女精品久久久久∴| 欧美大片在线观看| 夜夜嗨av一区二区三区网页| 亚洲欧美日韩区| 国产一本一道久久香蕉| 亚洲精品久久7777| 国产精品久久久久久久第一福利| 午夜一区二区三区不卡视频| 免费成人你懂的| 一本色道久久综合亚洲精品小说| 欧美一区高清| 亚洲激情电影中文字幕| 亚洲免费在线看| 激情亚洲网站| 亚洲一二区在线| 国产在线精品二区| 亚洲免费观看高清在线观看| 国产精品久久中文| 亚洲福利视频网| 欧美日韩国产在线一区| 午夜视频在线观看一区| 嫩草国产精品入口| 亚洲一级片在线观看| 美女国产一区| 亚洲无吗在线| 模特精品在线| 亚洲一区欧美一区| 欧美成人精品高清在线播放| 亚洲深夜福利网站| 久久综合给合| 一区二区三区四区五区精品视频| 久久精品在线观看| 日韩午夜电影av| 久久久久久噜噜噜久久久精品| 日韩一区二区电影网| 久久综合久久综合久久综合| 这里只有精品电影| 欧美成人乱码一区二区三区| 亚洲欧美日韩国产综合| 欧美理论在线| 亚洲电影av在线| 国产精品女主播| 99国产精品久久久久久久| 国产一区二区按摩在线观看| 亚洲视频免费观看| 亚洲福利在线视频| 久久久久9999亚洲精品| 99国产精品久久久久久久久久| 麻豆精品网站| 亚洲欧美日韩一区二区三区在线观看 | 国产一区二区中文字幕免费看| aa级大片欧美三级| 精品成人乱色一区二区| 欧美在线啊v| 在线一区二区三区四区| 欧美成年人在线观看|