《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的可加密USB存儲設(shè)備設(shè)計(jì)
基于FPGA的可加密USB存儲設(shè)備設(shè)計(jì)
王 鵬1, 呂志剛1, 黃 健2
1. 西安工業(yè)大學(xué) 電子信息工程學(xué)院信息通信系, 陜西 西安710032;2. 西安科技大學(xué) 通信學(xué)
摘要: 基于FPGA的可加密USB存儲設(shè)備的設(shè)計(jì)過程,介紹了FPGA芯片EP1C3T100、USB接口芯片AU6983等各個(gè)模塊的功能及硬件電路設(shè)計(jì)。對AES加密算法作了詳細(xì)說明,并對硬件FPGA實(shí)現(xiàn)進(jìn)行了設(shè)計(jì)和優(yōu)化。該設(shè)備由FPGA芯片通過硬件來完成數(shù)據(jù)加密過程,由高速傳輸總線進(jìn)行數(shù)據(jù)傳輸。具有實(shí)時(shí)性好、安全性高等優(yōu)點(diǎn)。
Abstract:
Key words :

摘  要:  基于FPGA的可加密USB存儲設(shè)備的設(shè)計(jì)過程,介紹了FPGA芯片EP1C3T100USB接口芯片AU6983等各個(gè)模塊的功能及硬件電路設(shè)計(jì)。對AES加密算法作了詳細(xì)說明,并對硬件FPGA實(shí)現(xiàn)進(jìn)行了設(shè)計(jì)和優(yōu)化。該設(shè)備由FPGA芯片通過硬件來完成數(shù)據(jù)加密過程,由高速傳輸總線進(jìn)行數(shù)據(jù)傳輸。具有實(shí)時(shí)性好、安全性高等優(yōu)點(diǎn)。
關(guān)鍵詞: FPGA; USB接口; AES算法; 數(shù)據(jù)加密

    USB移動存儲設(shè)備,由于其容量大、使用方便等優(yōu)點(diǎn)得到廣泛的應(yīng)用。但隨著電子資料和電子信息的不斷增多,USB移動存儲設(shè)備的使用可能會造成存儲的重要信息或私密文件被竊取,使個(gè)人資料的存儲變得越來越不安全,導(dǎo)致頻繁出現(xiàn)無法挽回的損失和不堪設(shè)想的后果。而加密 USB存儲設(shè)備的出現(xiàn)則可以有效防止個(gè)人或企業(yè)數(shù)據(jù)經(jīng)由U盤泄露。
    雖然現(xiàn)在很多廠商推出的各種U盤產(chǎn)品均提供了加密功能以提高數(shù)據(jù)的安全性,但很多均停留于軟件加密層面,不僅需要另外安裝軟件,而且數(shù)據(jù)安全性也打了折扣,在某程度上仍不能防范數(shù)據(jù)被盜竊。本文選擇FPGA芯片對U盤進(jìn)行硬件加密[1]。
1 系統(tǒng)設(shè)計(jì)
1.1 系統(tǒng)組成

   系統(tǒng)主要由兩部分組成:PC機(jī)與USB存儲設(shè)備。USB存儲設(shè)備由USB接口芯片、FPGA芯片、Flash芯片、電源電路組成。系統(tǒng)原理框圖如圖1所示。


1.2 系統(tǒng)工作原理
    基于FPGA的加密USB存儲設(shè)備,在Flash與USB接口芯片之間加1個(gè)FPGA芯片用于各種加密算法的實(shí)現(xiàn),通過FPGA將存入Flash中的數(shù)據(jù)進(jìn)行加密、解密。將主設(shè)備上需要加密的數(shù)據(jù)通過USB接口發(fā)送到FPGA加密芯片,加密芯片根據(jù)控制信號的信息分析出應(yīng)該采用何種加密算法,加密數(shù)據(jù)產(chǎn)生后,給出標(biāo)志信號,然后輸出加密好的數(shù)據(jù)。
    FPGA芯片是系統(tǒng)的核心,主要實(shí)現(xiàn)3個(gè)主要功能:
    (1)用于實(shí)現(xiàn)加密過程中的Flash讀寫時(shí)序控制,包括輸入的數(shù)據(jù)加密、加密算法的模式選擇等。
    (2)用于加密算法的實(shí)現(xiàn),需要加密的數(shù)據(jù)通過USB接口發(fā)送到FPGA芯片,F(xiàn)PGA芯片根據(jù)控制信號判讀是否需要對數(shù)據(jù)加密,如果需要加密則運(yùn)行加密算法,加密數(shù)據(jù)產(chǎn)生后,輸出加密好的數(shù)據(jù),并且輸出標(biāo)志信號。
    (3)實(shí)現(xiàn)與USB接口芯片進(jìn)行數(shù)據(jù)通信。FPGA和USB之間的通信通過8 bit數(shù)據(jù)總線加上若干控制信號實(shí)現(xiàn),只要FPGA產(chǎn)生符合USB輸入/輸出時(shí)序的脈沖,即可實(shí)現(xiàn)兩者之間的通信[2-3]。
2 系統(tǒng)硬件設(shè)計(jì)
    設(shè)備的核心部分是FPGA芯片。加密、解密功能通過FPGA設(shè)計(jì)工具中硬件描述語言進(jìn)行描述,在集成軟件環(huán)境下進(jìn)行編譯、調(diào)試及綜合,使用專用下載電纜將程序代碼下載存儲在FPGA芯片中,一旦USB設(shè)備與PC機(jī)相連,F(xiàn)PGA芯片中的算法程序會對寫入Flash芯片中的數(shù)據(jù)進(jìn)行加密或解密。
2.1  FPGA接口設(shè)計(jì)
    本設(shè)計(jì)中選用的FPGA芯片為EP1C3T100,其中為100個(gè)管腳封裝,I/O的電源為3.3 V,內(nèi)核電壓為1.5 V,只有1個(gè)鎖相環(huán)(PLL),2個(gè)專用全局時(shí)鐘輸入管腳CLK0、CLK1,5個(gè)雙重用途時(shí)鐘管腳DPCLK。所有管腳中有一些是專用配置管腳。其中,nCSO、DATA0、DCLK、ASDI是與配置芯片EPCS4相連的;TCK、TDO、TMS、TDI等管腳則與JTAG相連。
    FPGA 是SRAM型的可編程邏輯器件(不是ROM型可編程器件CPLD),通過JTAG就可以直接把代碼固化在片子里面。FPGA下載到片子中的代碼存放在RAM里,所以斷電后這些代碼即刻消失。由于可用來調(diào)試FPGA,所以能夠在系統(tǒng)運(yùn)行時(shí)或系統(tǒng)運(yùn)行之前的任意時(shí)刻內(nèi),為所有的輸入、輸出管腳更新I/O標(biāo)準(zhǔn)。在調(diào)試階段采用JTAG模式。基于JTAG下載模式的易失性,F(xiàn)PGA就需要非易失性存儲器用來存放代碼,每次上電后把代碼從配置芯片讀入FPGA 然后運(yùn)行。本設(shè)計(jì)選用ALTERA公司配套的AS模式的配置存儲器EPCS4,成本比較低,并且很容易配置[4]。
2.2  Flash芯片接口設(shè)計(jì)
    本設(shè)計(jì)選用三星公司的NAND Flash芯片K9G8G08U0M,容量為1 GB。NAND Flash 的數(shù)據(jù)以bit 的方式保存在存儲單元,每頁2 KB+64 B,每128頁形成1個(gè)塊,1塊就是256 KB+8 KB。
2.3  USB接口設(shè)計(jì)
    本設(shè)計(jì)中USB接口芯片采用安國公司的AU6983,其芯片質(zhì)量和可靠性較高,該芯片最多可以接2片F(xiàn)lash芯片。接口電路如圖2所示。

2.4  電源電路設(shè)計(jì)
    USB接口提供5 V電源,F(xiàn)PGA的I/O電源是3.3 V,內(nèi)核的電壓是1.5 V。使用2個(gè)LDO,1個(gè)將5 V轉(zhuǎn)到3.3 V;另1個(gè)將3.3 V轉(zhuǎn)為1.5 V,加上一些濾波電容,板上的其他外設(shè)電源均是3.3 V。另外有3.3 V的電源指示燈,表示電源是否正常。另有防反插二極管,防止電源反插,對器件造成損壞。
    LT1086能更好地提供高效率1.5 A電流,其所有的內(nèi)部電路設(shè)計(jì)將輸入、輸出端之間的壓降控制在1 V左右,起到穩(wěn)壓作用。LT1587-1.5是1個(gè)低壓差三端穩(wěn)壓器,有固定的1.5 V的輸出電壓和3 A輸出電流的性能。
3 系統(tǒng)軟件設(shè)計(jì)
    各種功能通過在FPGA設(shè)計(jì)工具中用Verilog HDL語言進(jìn)行描述,在集成軟件環(huán)境Quartus II中進(jìn)行編譯、調(diào)試及綜合,使用專用下載電纜將程序代碼下載到FPGA芯片中。在系統(tǒng)工作前,先檢查設(shè)備是否連接好之后,開始FPGA芯片及配置芯片的初始化。根據(jù)用戶需要進(jìn)行讀操作或?qū)懖僮鳎绻麢z測到寫信號線有效時(shí),則還需要判斷此時(shí)寫數(shù)據(jù)還是寫命令,如果是寫數(shù)據(jù),則啟動加密功能,并存入Flash;如果是寫命令,則不能啟動加密功能。如果檢測到讀信號線有效時(shí),也需要判斷此時(shí)是讀數(shù)據(jù)還是讀命令或讀Flash的ID,如果是讀數(shù)據(jù),即啟動解密功能,并從Flash中讀出數(shù)據(jù);而是讀命令,則不能啟動解密功能。系統(tǒng)軟件流程圖如圖3所示。


    對于加密算法的選擇,目前常見的加密算法主要有DES和AES 2種。DES出現(xiàn)得比較早,資源豐富、算法成熟。但是AES作為新一代的數(shù)據(jù)加密標(biāo)準(zhǔn),其安全性、效率明顯高于DES,同時(shí)由于AES算法的簡潔性,對內(nèi)存的需求非常低,使得它的實(shí)現(xiàn)更為容易。綜合各方面考慮,在本設(shè)計(jì)方案中采用AES算法[5-7]。
4  調(diào)試與仿真
    本文中的設(shè)計(jì)使用Verilog HDL語言進(jìn)行功能仿真和功能驗(yàn)證,利用Quartus II可以對源程序進(jìn)行驗(yàn)證和綜合。其加密程序的仿真結(jié)果如圖4所示。圖中,I/O1是輸入的數(shù)據(jù),I/O2是經(jīng)過加密后輸出的數(shù)據(jù)。


    本文介紹了一種具有數(shù)據(jù)實(shí)時(shí)自動加密的USB存儲設(shè)備設(shè)計(jì)過程,開創(chuàng)了USB安全通信的新領(lǐng)域。本系統(tǒng)以大規(guī)模可編程邏輯FPGA為平臺,用Verilog HDL硬件描述語言實(shí)現(xiàn)數(shù)據(jù)加密,由于加密算法中大量使用了復(fù)雜的按位運(yùn)算,而通常這類運(yùn)算不適合在通用處理器上運(yùn)行,但在本系統(tǒng)中使用的FPGA芯片能夠進(jìn)行大量邏輯運(yùn)算,非常適合作為加密算法的硬件載體。用硬件實(shí)現(xiàn)加密算法,并且封裝到芯片中,不易被外部攻擊者讀取或更改,有較高的物理安全性。
    安全性、可靠性相對較高的USB存儲設(shè)備將會對金融、通信等領(lǐng)域提供很大的幫助。因此,基于FPGA的硬件加密是極具研究意義的,它能夠提高U盤的安全性、可靠性,同時(shí)也不會影響U盤的讀寫速度。
參考文獻(xiàn)
[1]  Altera. Pin Information for the cyclone  EP1C3T100 device    version 1.5[S]. 2006.
[2]  NIST. Advanced encryption standard(AES)[M]. Federal Information Processing Standards Publication,2001
[3]  莫林利.基于FPGA模式的USB接口數(shù)據(jù)加密系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)與現(xiàn)代化, 2005(2).
[4]  呂振,程千里,馬艷南.基于FPGA+USB接口的硬件加密系統(tǒng)[D].遼寧工程技術(shù)大學(xué)電氣與控制工程學(xué)院, 2007.
[5]  趙彬,謝濤.基于FPGA的身份認(rèn)證智能卡設(shè)計(jì)[J].微計(jì)算機(jī)信息, 2006(8).
[6]  鄭志安,夏國榮.基于FPGA的高級數(shù)據(jù)加密AES中的字節(jié)替換設(shè)計(jì)[J].電子設(shè)計(jì)工程,2005(8).
[7]  李雪梅,路而紅,歐海文.AES算法的快速硬件設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2006,32(5).

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产伦精品一区二区三区视频黑人| 欧美日韩三级视频| 亚洲欧洲日产国产网站| 欧美在线视频播放| 亚洲一区二区三区中文字幕在线| 99国产精品久久久久久久成人热| 亚洲片在线资源| 亚洲夫妻自拍| 在线国产精品播放| 精品盗摄一区二区三区| 国产在线拍揄自揄视频不卡99| 国产精品永久免费观看| 国产精品人人爽人人做我的可爱| 欧美先锋影音| 国产精品国产三级国产aⅴ浪潮| 欧美日韩视频在线| 欧美日韩另类视频| 欧美视频二区36p| 国产精品mv在线观看| 欧美日韩亚洲综合| 欧美午夜国产| 国产精品久久一级| 国产精品视频免费在线观看| 国产精品亚洲欧美| 国产欧美日韩激情| 国产一区二区三区直播精品电影| 国产主播一区二区| 黄色一区二区三区| 在线观看成人av电影| 亚洲国产精品va在看黑人| 亚洲破处大片| 一本大道久久a久久精品综合| 妖精视频成人观看www| 在线一区视频| 亚洲欧洲99久久| 欧美一二三区在线观看| 久久激情综合网| 亚洲精品国产视频| 一区二区三区国产| 亚洲欧美一级二级三级| 久久精品国产免费看久久精品| 久久综合伊人77777尤物| 欧美福利一区二区三区| 欧美日一区二区三区在线观看国产免 | 日韩天堂在线观看| 亚洲一区二区高清视频| 欧美在线一区二区三区| 美国十次成人| 国产精品大片免费观看| 红桃av永久久久| 日韩视频专区| 欧美一级视频免费在线观看| 亚洲精品免费网站| 午夜精品久久久久久99热| 老鸭窝亚洲一区二区三区| 欧美日韩99| 国产一区99| 日韩亚洲国产精品| 久久国产精品99精品国产| 99视频有精品| 久久久国产亚洲精品| 欧美日韩国产三区| 国产午夜精品久久| 亚洲裸体视频| 亚洲成人资源| 国产精品www网站| 国产日韩精品一区二区| 亚洲福利精品| 亚洲欧美电影院| 一本到高清视频免费精品| 久久成人免费电影| 欧美日韩国产综合视频在线观看中文| 国产欧美短视频| 亚洲美女av电影| 亚洲第一成人在线| 亚洲欧美日韩国产| 欧美激情视频在线播放| 国产午夜精品福利| 一区二区三区四区国产| 亚洲第一精品久久忘忧草社区| 亚洲一区二区三区国产| 欧美肥婆bbw| 精品电影一区| 亚洲欧美中文在线视频| 亚洲午夜在线| 男人的天堂成人在线| 国产亚洲激情视频在线| 亚洲婷婷在线| 一区二区三区四区蜜桃| 免费看亚洲片| 国精品一区二区三区| 亚洲影院色无极综合| 99精品欧美一区二区三区| 久久午夜电影网| 国产麻豆成人精品| 在线视频精品一区| 99精品视频免费观看视频| 看片网站欧美日韩| 国产日韩综合一区二区性色av| 一本久久综合亚洲鲁鲁| 亚洲麻豆一区| 欧美a级大片| 在线看不卡av| 亚洲国产cao| 久久久久久高潮国产精品视| 国产精品日本欧美一区二区三区| avtt综合网| 亚洲手机在线| 欧美日韩福利视频| 亚洲日本激情| av成人天堂| 欧美日韩精品免费观看| 亚洲人线精品午夜| 日韩特黄影片| 欧美日本网站| 日韩手机在线导航| 亚洲视频www| 欧美日韩一区在线视频| 日韩一区二区免费看| 中文在线资源观看网站视频免费不卡 | 欧美精品粉嫩高潮一区二区| 亚洲国产精品一区制服丝袜| 亚洲国产日韩欧美一区二区三区| 久久一综合视频| 极品少妇一区二区| 亚洲国产精品福利| 欧美成人精品高清在线播放| 影音先锋日韩资源| 最新高清无码专区| 欧美精品一区在线播放| 亚洲破处大片| 中文精品99久久国产香蕉| 欧美午夜理伦三级在线观看| 亚洲视频在线观看网站| 午夜精品久久久久久久99热浪潮| 国产欧美精品日韩区二区麻豆天美| 午夜视频一区| 另类综合日韩欧美亚洲| 1000部国产精品成人观看| 亚洲人成网站影音先锋播放| 欧美人与禽猛交乱配| 夜夜嗨av色一区二区不卡| 亚洲欧美日韩国产成人| 国产欧美日韩视频一区二区| 欧美一区永久视频免费观看| 老鸭窝亚洲一区二区三区| 亚洲欧洲日产国产网站| 亚洲午夜电影在线观看| 国产精品日韩| 久久精品二区亚洲w码| 欧美风情在线观看| 一区二区三区回区在观看免费视频| 欧美伊人影院| 曰韩精品一区二区| 亚洲视频日本| 国产日本欧洲亚洲| 亚洲精品免费电影| 国产精品久久久久天堂| 欧美在线观看一区| 欧美理论电影在线观看| 亚洲欧美日本日韩| 蜜臀99久久精品久久久久久软件| 日韩一级在线观看| 久久国产精品99国产| 在线观看一区| 亚洲女同在线| 影音先锋欧美精品| 亚洲永久网站| 伊人久久久大香线蕉综合直播| 一区二区三区欧美亚洲| 国产一区二区三区四区五区美女| 亚洲免费成人av| 国产日本欧美一区二区| 亚洲精品在线视频| 国产精品视频久久一区| 亚洲国产欧美久久| 国产精品久久午夜| 亚洲精品视频中文字幕| 国产麻豆精品视频| 99在线热播精品免费| 国产日韩综合| 一区二区三区精品视频在线观看| 国产真实乱偷精品视频免| 中国女人久久久| 影音先锋国产精品| 欧美一区二区三区在| 最新日韩中文字幕| 久久精品国产一区二区三| 亚洲另类黄色| 久久伊人精品天天| 亚洲自拍三区| 欧美日韩精品一区| 亚洲二区视频| 国产欧美日韩一区二区三区| 一本色道久久综合亚洲二区三区| 国产综合色在线| 小处雏高清一区二区三区| 亚洲人成啪啪网站| 久久综合中文色婷婷| 亚洲永久免费精品|