《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于MPC8379E加密NAS的設(shè)計
基于MPC8379E加密NAS的設(shè)計
來源:電子技術(shù)應(yīng)用2011年第10期
楊瑞霞
(山東政法學(xué)院 信息科學(xué)技術(shù)系, 山東 濟南 250014)
摘要: 介紹了NAS的工作原理與優(yōu)點,根據(jù)網(wǎng)絡(luò)存儲實際應(yīng)用中的安全隱患,提出了加密NAS的應(yīng)用需求。研究了以MPC8379E為主控芯片的AES加密NAS的解決方案,并詳細論述了NAS加密密鑰管理的實現(xiàn)方法。該方案能夠很好地實現(xiàn)加密NAS的訪問控制與算法密鑰管理,保證了數(shù)據(jù)加密存儲的安全性。
中圖分類號: TP309.8
文獻標(biāo)識碼: B
文章編號: 0258-7998(2011)10-0134-03
Design of secure NAS based on MPC8379E
Yang Ruixia
Department of Information Science & Technology, Shandong University of Political Science and Law, Ji′nan 250014, China
Abstract: Introduce the working theory and advantage of NAS, and present the request of security based on analysis of the actual attack to network storage. Study a secure NAS which uses MPC8379E as CPU, and encrypt data with AES arithmetic. Also discuss the implementary method of managing the arithmetic key of encrypt NAS in detail. This scheme is good in controling the NAS accessing and managing the key of AES, can protect the storage of encrypt data.
Key words : network attached storage; AES arithmetic; identity authentication; key management


    隨著計算機技術(shù)的發(fā)展,數(shù)字信息呈現(xiàn)爆炸式增長,網(wǎng)絡(luò)存儲技術(shù)得到了廣泛應(yīng)用。網(wǎng)絡(luò)存儲支持網(wǎng)絡(luò)協(xié)議和存儲設(shè)備協(xié)議,采用面向網(wǎng)絡(luò)的存儲體系結(jié)構(gòu),具有超大存儲容量、大數(shù)據(jù)傳輸率和高可用性等優(yōu)勢。由于網(wǎng)絡(luò)存儲的數(shù)據(jù)是可以通過網(wǎng)絡(luò)訪問的,在實現(xiàn)海量數(shù)據(jù)存取方便的同時,還需要確保數(shù)據(jù)的安全,因而對網(wǎng)絡(luò)存儲的安全提出了新的要求。
1 網(wǎng)絡(luò)存儲與加密NAS
    目前市場上主流的幾種網(wǎng)絡(luò)存儲模式有:直連式存儲DAS(Direct Attached Storage)、網(wǎng)絡(luò)附加存儲NAS(Network Attached Storage)、存儲區(qū)域網(wǎng)絡(luò)SAN(Storage Area Network)和IP 存儲[1]。在這幾種網(wǎng)絡(luò)存儲結(jié)構(gòu)中,NAS具有高容量、高效能、高可靠性能的特性,是一種網(wǎng)絡(luò)直連存儲設(shè)備,通過網(wǎng)絡(luò)接口與網(wǎng)絡(luò)直接相連,用戶通過網(wǎng)絡(luò)訪問存儲介質(zhì),不需要服務(wù)器就能直接上網(wǎng),可以在網(wǎng)絡(luò)的任何位置建立存儲,經(jīng)濟地解決了存儲容量不足的問題,且設(shè)備易于安裝、使用和管理。此外,NAS還有獨立的操作平臺,各類文件可共享,具備交叉協(xié)議用戶安全性/許可性和瀏覽器界面的操作/管理,且服務(wù)器的增減不影響網(wǎng)絡(luò)正常工作等。NAS 系統(tǒng)的關(guān)鍵是文件服務(wù)器,它提供文件系統(tǒng)功能,支持多種TCP/IP網(wǎng)絡(luò)協(xié)議,可以利用NFS、CIFS等文件訪問,共享小文件級間的存儲。在NAS設(shè)備中裝備的文件服務(wù)器,使用Web管理界面,完成系統(tǒng)資源配置、用戶配置管理和用戶訪問登錄等。NAS存儲技術(shù)優(yōu)化了系統(tǒng)的軟、硬件結(jié)構(gòu),在存儲設(shè)備和網(wǎng)絡(luò)之間高效、便捷地傳遞數(shù)據(jù)。它支持多線路、多任務(wù)的操作系統(tǒng)內(nèi)核,特別適合處理用戶通過網(wǎng)絡(luò)的I/O請求,響應(yīng)速度快,傳輸速率高。因此,NAS的應(yīng)用范圍非常廣。
    相對于傳統(tǒng)的存儲方式,網(wǎng)絡(luò)附加存儲有更高的靈活性、可擴展性和安全性,但這并不意味著網(wǎng)絡(luò)附加存儲系統(tǒng)不需要考慮安全性的問題。網(wǎng)絡(luò)存儲中的數(shù)據(jù)主要面臨的安全隱患有“Sniffer 攻擊”、訪問的合法性、數(shù)據(jù)傳輸?shù)恼_性、完整性等。因此,對于網(wǎng)絡(luò)存儲產(chǎn)品也需要采取相應(yīng)的措施對數(shù)據(jù)進行保護,保護措施可分為3個層次:網(wǎng)絡(luò)防護,身份認證和加密儲存。加密儲存是對寫入儲存介質(zhì)的數(shù)據(jù)進行加密編碼,就算數(shù)據(jù)遺失也無法被解讀出有意義的內(nèi)容,也可以說是數(shù)據(jù)安全的最后一道關(guān)卡。對于NAS系統(tǒng)來說,加密儲存也就是加密NAS。因為NAS產(chǎn)品很多基于嵌入式系統(tǒng),因此實現(xiàn)數(shù)據(jù)的加密存儲也相對容易一些。
2 基于MPC8379E的NAS硬件實現(xiàn)    
    Freescale公司推出的MPC8379E芯片功能非常強大,集成了豐富的資源,其內(nèi)核是e300,主頻最高可以達到667 MHz,并帶有32 KB的指令緩沖與32 KB的數(shù)據(jù)緩沖,用于實現(xiàn)用戶指令結(jié)構(gòu)和軟硬件的調(diào)試。此外,MPC8379E擁有兩個支持100 M/1 000 M網(wǎng)絡(luò)控制器,一個DDR1/DDR2控制器,一個增強型局部總路線控制器,四個SATA控制器,一個32 bit的PCI接口,一個加密控制器,兩個I2C控制器,一個4通道的DMA控制器,一個通用I/O控制器,一個USB2.0主/從控制器。MPC8379E還擁有非常強大的安全算法模塊,可以實現(xiàn)RSA、ECC、AES、SHA等常用算法,并可以產(chǎn)生偽隨機數(shù)用于安全運算。其高速的算法功能為通信安全提供了有力的幫助。MPC8379E這些豐富的芯片資源能夠很容易就滿足用戶的需求,其高集成、高性價比的特點非常適合用于NAS、網(wǎng)關(guān)、無線LAN、VPN路由器等產(chǎn)品開發(fā)[2]。使用MPC8379E作為核心控制器的NAS硬件系統(tǒng)原理框圖如圖1所示。

    圖1所示的NAS系統(tǒng)使用MPC8379E作為CPU,內(nèi)存使用256 MB的DDR SDRAM,外接1 GB的NandFlash存儲NAS系統(tǒng)代碼,而4個SATA口連接外部硬盤作為NAS用戶資料的存儲空間。在人機界面方面,系統(tǒng)使用一個128×64的點陣LCD顯示用戶狀態(tài),并使用GPIO設(shè)計4個功能按鍵。MPC8379E的USB口用來連接USB KEY,從而對NAS管理員進行身份認。只有使用正確的USB KEY登陸,NAS系統(tǒng)才能正常啟動。
    AES(Advanced Encryption Standard)算法是一種分組算法,它于2001年取代DES成為美國政府的新加密標(biāo)準(zhǔn),其明文和密文的長度都是128 bit,密鑰長度可以為128 bit、192 bit、256 bit,密鑰經(jīng)過擴展后與數(shù)據(jù)進行4層的轉(zhuǎn)換與混合[3]。因為MPC8379E內(nèi)部的安全算法模塊能夠?qū)崿F(xiàn)AES算法,可以通過程序調(diào)用輕松實現(xiàn)數(shù)據(jù)的AES加密運算。

 


3 加密NAS軟件系統(tǒng)的實現(xiàn)
3.1 NAS的軟件系統(tǒng)

    NAS的主要功能是通過網(wǎng)絡(luò)實現(xiàn)存儲,對于使用嵌入式系統(tǒng)實現(xiàn)的NAS,一般采用Linux作為操作系統(tǒng),這樣可以方便地進行二次研發(fā),加強NAS的存儲及管理功能,并對外提供多種文件存儲及共享協(xié)議的支持。作為自主開發(fā)的NAS產(chǎn)品,要想使操作系統(tǒng)能夠運行起來,還需要進行Linux的移植,并開發(fā)一些基于硬件的驅(qū)動,如網(wǎng)絡(luò)訪問、LCD顯示等。基于設(shè)備驅(qū)動模塊之上的則是基本網(wǎng)絡(luò)協(xié)議(TCP/IP)和文件共享協(xié)議(如服務(wù)器消息塊(SMB)等)。應(yīng)用管理模塊是面向用戶部分應(yīng)用程序,包括遠程管理、用戶驗證在內(nèi)的諸多應(yīng)用服務(wù)。由于文件格式的不同,Linux系統(tǒng)通常借助Samba工具來實現(xiàn)與Windows的資源共享。Samba的工作原理是讓SMB和NetBIOS兩個協(xié)議運行于TCP/IP通信協(xié)議之上,進而實現(xiàn)跨平臺的資源共享。NAS的數(shù)據(jù)訪問通常是在網(wǎng)絡(luò)上進行的,因此設(shè)備的管理與配置一般采用基于Web的管理方式來完成,即用戶在瀏覽器中對NAS設(shè)備進行管理。而AES算法及訪問控制的實現(xiàn)需要嵌入到Linux系統(tǒng)中,整個NAS軟件結(jié)構(gòu)框圖如圖2所示。

3.2 軟件安全模塊的實現(xiàn)
    對數(shù)據(jù)的安全保護可以在網(wǎng)絡(luò)通道上使用IPSec等策略配置整個NAS系統(tǒng),但是對于底層存儲介質(zhì)中數(shù)據(jù)的加密,還是需要在NAS的Linux軟件系統(tǒng)中完成。但是,如何管理數(shù)據(jù)的加密密鑰是加密NAS系統(tǒng)中非常重要的一部分。采用在實現(xiàn)文件數(shù)據(jù)訪問操作之前增加一個軟件安全模塊的方法來解決這個問題。這個安全模塊主要實現(xiàn)數(shù)據(jù)的AES算法以及用戶及密鑰管理功能。
    在NAS系統(tǒng)的安全模塊中,需要借助PKI技術(shù)的加密與簽名功能[4]對文件的加密密鑰進行訪問控制,以達到控制用戶對文件讀寫的目的。這需要對NAS中的文件結(jié)構(gòu)進行改造,如圖3所示,在每個目錄下都會生成一個訪問列表,列表包括允許訪問該目錄的用戶標(biāo)識、使用用戶RSA公鑰加密的算法密鑰,還有目錄所有者對列表的數(shù)據(jù)簽名。NAS存儲空間的訪問管理詳細描述如下:

    (1)用戶注冊。當(dāng)一個新用戶注冊時,需要創(chuàng)建一個唯一的用戶標(biāo)識,同時需要產(chǎn)生一對RSA密鑰,以作為登錄系統(tǒng)以及訪問相關(guān)數(shù)據(jù)使用。用戶公鑰通過企業(yè)級CA發(fā)布,方便系統(tǒng)使用。
    (2)目錄的創(chuàng)建。為了管理方便,加密NAS每個目錄所使用的AES算法密鑰是不相同的。當(dāng)一個新的目錄建立時,會相應(yīng)地產(chǎn)生一組新的AES算法密鑰。在使用AES進行加密存儲后,為了滿足密鑰管理的需求,在每個用戶目錄中增加一個用戶的訪問列表。在訪問列表中,存儲可以訪問該目錄的用戶名和該目錄所使用的AES算法密鑰的加密值。密鑰加密值是使用與用戶名對應(yīng)的用戶RSA公鑰加密的結(jié)果,用戶訪問該存儲空間時,需要使用自己的RSA私鑰來解密獲得AES算法密鑰。最后,目錄的所有者會使用其私鑰對訪問列表進行數(shù)字簽名,以保證列表的正確性。
    (3)存儲空間的共享。當(dāng)用戶A創(chuàng)建自己的存儲目錄時,使用真隨機數(shù)產(chǎn)生一個AES算法密鑰。此時,只有該目錄的所有者擁有該密鑰。當(dāng)用戶A需要與用戶B共享目錄時,使用用戶B的RSA公鑰加密AES算法密鑰,與用戶B的標(biāo)識一起添加到用戶列表中。用戶B通過自己的私鑰,就可以獲得共享空間的AES算法密鑰,從而可以讀取到正確的數(shù)據(jù)。
    (4)用戶對存儲空間的訪問過程。當(dāng)某個用戶訪問一個存儲目錄時,管理程序先查看用戶列表,確定列表中是否存在該用戶名,以確定用戶是否享有訪問權(quán)限。然后驗證訪問列表的簽名是否有效,在確定訪問列表正確后,找到相應(yīng)的用戶名,用戶再使用RSA私鑰解密AES算法密鑰的加密值,獲取數(shù)據(jù)加密密鑰,對存儲內(nèi)容進行讀寫。
    用戶的RSA公鑰可以通過類似CA的方法進行公布,以方便系統(tǒng)使用。存儲空間的所有者通過RSA算法實現(xiàn)AES算法密鑰共享,以達到存儲共享的目的。
    以上討論的方案使用MPC8379E構(gòu)建NAS的硬件系統(tǒng),然后在其Linux操作系統(tǒng)中實現(xiàn)AES算法,對SATA硬盤中的數(shù)據(jù)進行加密存儲,使用企業(yè)級CA對用戶進行身份認證以及算法密鑰的管理,使整個系統(tǒng)能夠很好地解決網(wǎng)絡(luò)存儲的安全問題。
參考文獻
[1] 趙文輝.網(wǎng)絡(luò)存儲技術(shù)[M].北京:清華大學(xué)出版社,2005.
[2] Freescale Semiconductor Literature Distribution Center.MPC8379E PowerQUICCTM II Pro Integrated Host Processor Family Reference Manual[EB/OL]. http://cache.freescale.com/files/32bit/doc/data_sheet/MPC8379EEC.pdf. 2009.
[3] 孫淑玲. 應(yīng)用密碼學(xué)[M]. 北京:清華大學(xué)出版社,2004.
[4] NASH A, DUANE W, JOSEPH C,et al. 公鑰基礎(chǔ)設(shè)施實現(xiàn)和管理電子安全[M]. 北京:清華大學(xué)出版社,2002.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。