《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 面向移動安全存儲的密碼SoC設計與實現
面向移動安全存儲的密碼SoC設計與實現
來源:電子技術應用2012年第4期
王雪瑞1,何永強1,公 鑫2
1.河南工程學院,河南 鄭州450001; 2.解放軍信息工程大學,河南 鄭州451191
摘要: 針對目前移動存儲設備大量的失泄密事件,提出了一種適用于移動安全存儲設備的密碼SoC設計方案,并在FPGA開發板上進行了驗證。該SoC集成自主設計的安全協處理器,能夠支持多種密碼算法。介紹了NAND Flash控制器的設計方案,并在此基礎上提出了高速存取技術。基于FPGA的測試結果表明,該SoC能夠有效完成多種密碼操作,具有較高的數據吞吐率。基于SMIC 0.18 μm工藝綜合后的結果顯示,工作頻率能夠達到100 MHz,面積約為250萬門。
中圖分類號: TP343
文獻標識碼: A
文章編號: 0258-7998(2012)04-0010-03
Design and implementation of a cipher SoC for removable secure storage devices
Wang Xuerui1,He Yongqiang1,Gong Xin2
1.Henan Institute of Engineering,Zhengzhou 450001,China; 2.PLA Information Engineering University, Zhengzhou 451191,China
Abstract: Aiming at the vast secret leak event of removable storage devices, this paper proposed a cipher SoC design for removable secure storage devices,and verified it on FPGA platform.Special-designed cipher coprocessor is integrated to realize kinds of cryptographic algorithms.Then this paper introduces the architecture of the NAND Flash controller,based on which the high-speed access technology is proposed.The verification results based on FPGA platform show that this design can realize kinds of cryptographic algorithms and has high data throughput. Based on SMIC 0.18 μm standard CMOS technology, the area of our SoC is 250 million gates and can work at the frequency of 100 MHz.
Key words : SoC;NAND Flash;coprocessor;secure storage;cryptographic

    移動存儲產品已廣泛應用于各行各業,是不可或缺的信息交換載體,特別在日常辦公系統中,以U盤、固態移動硬盤為代表的存儲介質的使用日益普遍。而在實際應用中,移動存儲設備易丟失、易損壞、易染病毒、不可控的特性也使數據安全無法得到充分保證。因遺失、暴力破解、主動泄密、木馬攻擊等方式導致的泄密事件也在逐漸上升[1]。為了解決這一問題,國內外已經研制出多款相關安全產品,但是這些安全產品大多采用單一算法或固定的幾種算法,其靈活性和安全性都不夠高,無法滿足不同設計的安全需求[2]。

    針對現有安全SoC存在的問題,本文基于高性能嵌入式CPU構建并設計了一款密碼SoC平臺。該SoC平臺采用自主設計的安全協處理器執行密碼操作,經驗證可適用于三類主要的密碼算法[3]:對稱密鑰加密算法、散列算法和公開密鑰加密算法。此外,設計了高性能NAND Flash控制器,支持外接多種類型的NAND Flash芯片(SLC、MLC 和TLC),最大支持容量為160 GB。本設計可應用于加密U盤、加密U盤KEY、加密移動硬盤、高速加密流轉接器等設備中。
1 硬件設計
1.1 系統架構

    本文提出的密碼SoC架構如圖1所示。其中集成了兩種處理器核,分別是通用處理器(LEON2)和4個安全協處理器(Security ASIP),兩者通過系統總線相連。所有涉及加解密的運算都被映射到安全協處理器中執行。DMA控制器負責把將要執行的加解密任務按照CPU的配置分配到各安全處理器中,CPU只承擔控制和部分數據傳輸任務,絕大部分的運算由安全協處理器完成,CPU在大部分時間處于掛起(suspend)狀態,直到有中斷將其喚醒。片上存儲器主要包括EFlash/SRAM,用于存儲操作系統引導程序、用戶程序等;物理噪聲源主要用于產生真隨機數,生成密碼運算時的消息密鑰;兩個USB-OTG 接口可根據應用需求設置成Host、Device 或OTG,支持多達6 個端點,可設置成多重復合設備,最大限度地滿足用戶的設計需求;NAND Flash控制器負責產生符合NAND Flash接口操作規范的時序信號,帶有ECC校驗模塊,每512 B可修正位數為1 bit或8 bit,支持外接8片NAND Flash。另外還包含有低速通信接口、定時器、中斷控制器、存儲保護單元、功耗管理單元等輔助模塊,用于完成平臺的其他功能。

1.2 安全協處理器結構
    分析現有的安全存儲設備[4]可以發現,在使用存儲設備之前,必須對使用者進行身份驗證;文件讀寫時,必須對數據進行加解密操作;為了保證數據的完整性,必須對數據進行完整性驗證操作。所以,密碼SoC必須能夠靈活處理對稱、公鑰和雜湊三類算法,這個任務主要由安全協處理器完成。在進行安全協處理器的設計之前,必須對各類密碼的執行特點進行分析。由專門的工具[5]分析可以得出各種密碼算法的執行特點。部分AES算法的計算特征分析結果如表1所示。

    對各類密碼算法的特點進行分析后,本文提出了如圖2所示的安全協處理器架構。該安全協處理器基于傳統的RISC處理器結構所設計,分為取指令(IF)級、譯碼(ID)級、執行(EXE)級/memory訪存級和寫回(write)級四級,能支持標準的RISC指令,并且還能執行一些專門設計的特殊指令。在執行級,不僅有處理正常RISC標準指令的ALU單元,還有專用的硬件功能單元、PTLU(Parallel Table Look-Up)和MHU(Mul/Div unit&Hash Unit),用來對算法中比較耗時的運算(如查找表、模乘等操作)進行加速。為了加快安全協處理器的指令和數據的存取速度,在協處理器內部分別嵌入1 KB大小的指令RAM和數據RAM,用來存放協處理器的指令和數據。該協處理器指令集不僅包括標準的算術和邏輯運算指令,還包括專用的密碼運算指令,如PTAES、 PTW、MOD_MUL等。

 

 


1.3 NAND Flash控制器設計
    本文設計的NAND Flash控制器[7]結構如圖3所示。NAND Flash控制器包含總線接口模塊、DMA握手接口模塊、控制狀態機轉換的主控邏輯模塊,用以緩沖數據、收發命令和狀態字的緩沖器(buffer);提供ECC校驗糾錯功能的ECC模塊和直接控制NAND Flash存儲體的接口模塊。

    總線接口模塊負責接收CPU發送的指令,將收發數據送至相應數據寄存器和指令寄存器,并將狀態寄存器內容返回給CPU核;主控邏輯模塊負責整個Flash控制器的控制工作,包含指令、狀態、配置、數據、頁交換使能、錯誤地址等寄存器,是控制器的核心。
    ECC模塊主要負責對存入NAND Flash中的數據進行糾錯編碼并對從NAND Flash中讀出的數據進行糾錯譯碼的工作。DMA握手接口模塊在系統DMA參與數據傳輸的情況下,負責DMA與NAND Flash控制器之間的硬件握手功能。相比與直接由CPU核發送命令字給NAND Flash,然后直接從I/O 口讀寫數據的工作方式,通過DMA方式的傳輸效率明顯要高。特別在連續讀取大批量數據的情況下,這種工作方式的優點能更好地體現出來。在實際產品應用中(如數碼照片的存取),讀寫數據量一般都是頁大小的上千倍,所以這樣的設計有助于提高產品的實用性。
    該NAND Flash控制器支持外接8片NAND Flash芯片。為了提高數據的讀寫速度,實現對并行數據讀寫的支持,控制器的數據線位寬設置為16 bit,可以支持對兩片數據線位寬為8 bit的NAND Flash的并行讀寫操作;同時,本設計對控制器的結構進行了優化,使其能夠支持對多片NAND Flash芯片的流水線讀寫操作。為了更好地支持SLC、MLC和TLC NAND Flash器件,還設計了基于漢明碼的1 bit ECC糾錯模塊和可糾正8 bit隨機錯誤的BCH編/譯碼器,用戶可以根據需要選擇相應的ECC操作。
2 高速存儲技術
    NAND Flash器件屬于低速設備。以K9WBG08U1M為例,芯片的寫入時間分為加載時間和編程時間兩部分,寫滿一頁所需的命令、地址和數據的加載時間約為102.5 ?滋s,最大編程時間約為700 μs。在寫入過程中,因還要進行BCH編碼等操作,也會消耗一些時間,所以設計中,使用最大的編程時間進行計算,而單片Flash其寫入速度最高也只有5.1 MB/s,NAND Flash的讀寫速度也會成為系統性能的瓶頸。為了解決這個問題,可以采用如下技術。
2.1 數據并行處理技術
    因Flash的數據位寬一般為8 bit,如果按傳統的操作方法對Flash進行讀寫,即寫完一片NAND Flash之后再寫下一片,其最高的存儲速度只有5.1 MB/s,無法適用于高速數據傳輸的要求。為此,本文設計的NAND Flash控制器將I/O數據線設為16 bit,主控制可以通過配置來選擇數據線的位數。當需要對數據進行并行處理時,將兩片低速Flash芯片并聯起來,使用相同的控制線、片選和讀寫信號線,組成一個多位寬的Flash組;兩片Flash并行工作時,一片存儲數據的高8 bit,一片存儲數據的低8 bit,這樣,存儲容量和存儲速度都是單片Flash的2倍。
2.2 流水線技術
    流水線技術在計算機領域得到廣泛運用,它是提高硬件資源利用率和執行效率的有效手段,該技術可以有效提高存儲系統的性能。本文設計的NAND Flash控制器中只有一個讀數據FIFO和一個寫數據FIFO,大小均為4 KB。當對一片NAND Flash進行操作時,在命令或數據加載完成后,該片NAND Flash會處于忙狀態,此時讀或寫數據FIFO由于處于空閑或等待狀態未被使用,因此控制器可以繼續對處于空閑狀態的NAND Flash進行操作,如此便形成流水線操作。還可以把兩片NAND Flash作為一組進行數據并行處理,共4組進行流水線操作,以達到最大的數據吞吐率。其流水寫操作時序如圖4所示。

3 功能驗證與性能分析
    本文采用兩塊FPGA開發板完成SoC平臺的驗證,FPGA型號均為Xilinx Virtex5-xc5vlx85,兩者之間通過自制的電路板進行通信驗證流程:首先通過JTAG接口向EFlash中下載一個boot-loader程序,用于SoC系統的啟動和測試向量的下載;SoC系統的硬件驅動和安全協處理器程序通過UART接口下載到系統中;PC端通過UART接口給出控制命令,選擇NAND Flash控制器和安全協處理的工作模式;PC端通過USB接口對NAND Flash進行數據讀寫的測試。系統工作時鐘為80 MHz,選擇K9WBG08U1M作為實體NAND Flash器件對SoC進行測試。單片K9WBG08U1M的情況下,讀速度可以達到19.3 MB/s,寫速度可以達到9.6 MB/s;兩片K9F1208UOB并行連接時,讀速度可達37.5 MB/s,寫速度可達18.4 MB/s。
    安全協處理器性能、面積與參考文獻中的設計比較結果如表2所示。

    經過SMIC 0.18 μm工藝庫的綜合,整個平臺的面積約為250萬門,最高工作頻率為100 MHz。
    本文設計的面向大安全存儲的密碼SoC集成了多個高性能安全協處理器,極大地提高了系統的密碼處理性能。設計的NAND Flash可支持外接多種類型(如SLC、MLC和TLC)的NAND Flash芯片,并且支持多片NAND Flash的并行讀寫和流水線讀寫操作,最大支持160 GB存儲容量。基于FPGA的驗證表明,其能夠靈活支持多種密碼算法的實現,具有較高的NAND Flash訪問速度。
該設計可應用于加密U盤、加密U盤KEY、加密移動硬盤、高速加密流轉接器等設備中。
參考文獻
[1] Chen Hanlin.The single-chip solution of embedded USB encryptor[C].Information Theory and Information Security,2010:42-45.
[2] 寧超.基于SOC存儲控制器的研究與開發[D].西安:電子科技大學,2008:50-53.
[3] Huang Wei,Han Jun,Wang Shuai.The design and implement of a mobile security SoC[C].Conference on Solid-State and Integrated Circuit Technology,2010:96-98.
[4] 胡偉,慕德俊,劉航,等.移動硬盤硬件加密的設計與實現[J].計算機工程與應用,2010,46(22).
[5] 沈弼龍.基于應用程序特征分析的SoC任務分配技術研究與實現[D].長沙:國防科學技術大學,2009:31-33.
[6] AIGNER G,DIWAN A,HEINE D L,et al.An over- view  of the SUIF2 compiler infrastructure[R].Computer Systems  Laboratory,Stanford University,1999.
[7] 李璐,周海燕.一種含BCH編解碼器的SLC/MLC NAND Flash控制器的VLSI設計[J].現代電子技術,2009,32(7).
[8] Wang Chenhsing,YEH J C,HUANG C T,et al.Scalable  security processor design and its implementation[C].ASSCC,2005:513-516.
[9] SREEDHARAN D,AKOGLU A.A hybrid processing element based reconfigurable architecture for hashing  algorithms[C].Parallel and Distributed Processing,2008:1-8.
[10] BERTONI G B,VENTURI L.ECC hardware coprocessor  for 8-bit systems and power consumption considerations[C].  ITNG,2006:573-574.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲永久免费视频| 欧美淫片网站| 狠狠干综合网| 国产精品免费电影| 欧美色视频在线| 欧美精品粉嫩高潮一区二区| 久久综合成人精品亚洲另类欧美| 午夜精品一区二区三区在线| 一区二区免费看| 91久久精品国产91性色| 久久福利毛片| 香蕉久久国产| 欧美一二三区在线观看| 亚洲欧美日韩在线观看a三区| 一区二区三区.www| 日韩小视频在线观看专区| 亚洲欧洲三级| 亚洲欧洲日产国产综合网| 亚洲欧洲综合| 亚洲精品日产精品乱码不卡| 91久久久亚洲精品| 亚洲激情小视频| 91久久夜色精品国产九色| 亚洲国产精品成人一区二区 | 91久久中文字幕| 亚洲国产婷婷香蕉久久久久久99| 亚洲第一中文字幕| 亚洲高清二区| 亚洲国产高清在线| 亚洲精品一区二区三区不| 亚洲精品女av网站| 在线视频欧美日韩精品| 一区二区欧美激情| 亚洲永久在线| 性色av一区二区三区在线观看| 亚洲综合视频1区| 亚洲综合色噜噜狠狠| 欧美亚洲在线观看| 亚洲黄色成人久久久| 一区二区成人精品| 亚洲综合色网站| 久久国产一区| 久久蜜臀精品av| 美日韩免费视频| 欧美日韩国产欧| 国产精品久久久久久久7电影| 国产精品一区二区在线观看不卡| 国产女人18毛片水18精品| 国产一区二区三区在线免费观看| 在线欧美福利| 99在线精品观看| 亚洲天堂偷拍| 欧美在线黄色| 99在线精品视频| 亚洲欧美在线磁力| 久久香蕉国产线看观看网| 欧美高清视频| 国产精品看片资源| 激情综合色综合久久| 亚洲精品免费一区二区三区| 亚洲一区精品视频| 久久精品99久久香蕉国产色戒| 亚洲伦伦在线| 午夜欧美大片免费观看| 中文精品视频| 欧美在线视频全部完| 美女国产一区| 国产精品久久久久久久久久久久 | 欧美日韩在线一区二区| 国产精品一二一区| 亚洲高清自拍| 亚洲一区二区欧美| 最近中文字幕日韩精品| 羞羞漫画18久久大片| 欧美激情一区二区三级高清视频 | 一区二区高清在线观看| 久久精品视频免费播放| 亚洲一区精彩视频| 另类成人小视频在线| 国产精品久久久久免费a∨大胸| 尤物在线精品| 亚洲欧美日韩精品久久奇米色影视| 亚洲精品久久久久久下一站| 午夜伦欧美伦电影理论片| 欧美激情亚洲激情| 国产一区二区中文| 亚洲一区二区三区色| 最新国产成人av网站网址麻豆| 性欧美xxxx大乳国产app| 欧美精品1区| 黄色日韩网站| 亚洲视频在线视频| 亚洲美女精品成人在线视频| 久久久久久久网站| 国产伦精品一区二区三区照片91| 亚洲精品国产无天堂网2021| 久久精品国产77777蜜臀| 午夜精品成人在线| 欧美日韩理论| 影音欧美亚洲| 亚洲免费伊人电影在线观看av| 亚洲最新在线视频| 免费欧美电影| 国产一区二区丝袜高跟鞋图片| 亚洲系列中文字幕| 一区二区日本视频| 欧美韩国在线| 精品9999| 久久aⅴ国产欧美74aaa| 欧美伊人久久久久久午夜久久久久| 欧美日精品一区视频| 亚洲国产精品一区二区久 | 欧美一级黄色网| 午夜精品一区二区三区四区 | 亚洲永久免费观看| 欧美日韩精品久久久| 亚洲第一伊人| 91久久久在线| 另类成人小视频在线| 精品91在线| 亚洲第一精品夜夜躁人人爽| 久久精品一本| 国产日韩在线视频| 欧美亚洲视频一区二区| 欧美一区二区在线播放| 国产视频精品va久久久久久| 午夜在线观看免费一区| 欧美一级免费视频| 国产精品尤物| 亚洲欧美日韩电影| 欧美一区二区三区视频在线| 国产精品婷婷| 性做久久久久久久免费看| 欧美一区激情| 国产日韩精品一区二区三区在线| 亚洲欧美国产精品va在线观看| 性18欧美另类| 国产一区二区日韩精品| 久久成人精品视频| 久久亚洲精品一区二区| 一区视频在线播放| 亚洲区免费影片| 美女诱惑一区| 亚洲日韩视频| 亚洲视频碰碰| 国产精品老牛| 欧美一级片一区| 久久综合九色综合欧美就去吻| 亚洲第一伊人| 亚洲四色影视在线观看| 国产精品av一区二区| 亚洲欧美乱综合| 久久影院亚洲| 亚洲欧洲精品成人久久奇米网| 一区二区三区精品视频| 国产精品青草综合久久久久99| 小黄鸭精品aⅴ导航网站入口| 久久夜色精品亚洲噜噜国产mv| 亚洲娇小video精品| 亚洲女女女同性video| 国产午夜精品久久| 最新国产乱人伦偷精品免费网站| 欧美理论视频| 亚洲一区二区成人| 久久视频精品在线| 亚洲伦理一区| 久久久99精品免费观看不卡| 雨宫琴音一区二区在线| 亚洲视频一区二区| 国产亚洲日本欧美韩国| 日韩一级不卡| 国产精品一区免费在线观看| 亚洲第一伊人| 国产精品电影网站| 亚洲国产合集| 欧美日韩中文字幕在线| 欧美一级淫片aaaaaaa视频| 欧美va天堂在线| 亚洲图片欧美午夜| 免费亚洲电影在线| 亚洲天堂av在线免费观看| 久久伊人一区二区| 中文在线不卡| 美国十次了思思久久精品导航| 日韩一级在线观看| 久久精品网址| 一本久道久久综合中文字幕 | 国产精品家教| 亚洲国产老妈| 国产精品毛片va一区二区三区 | 这里只有精品视频| 国产一区自拍视频| 在线一区二区三区做爰视频网站 | 99精品欧美一区二区三区| 国产九九精品| 亚洲人妖在线| 国产欧美日韩综合一区在线播放 | 欧美日韩免费| 久久www成人_看片免费不卡| 欧美日韩中文另类|