《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于MPC8379E加密NAS的設(shè)計(jì)
基于MPC8379E加密NAS的設(shè)計(jì)
來(lái)源:電子技術(shù)應(yīng)用2011年第10期
楊瑞霞
(山東政法學(xué)院 信息科學(xué)技術(shù)系, 山東 濟(jì)南 250014)
摘要: 介紹了NAS的工作原理與優(yōu)點(diǎn),根據(jù)網(wǎng)絡(luò)存儲(chǔ)實(shí)際應(yīng)用中的安全隱患,提出了加密NAS的應(yīng)用需求。研究了以MPC8379E為主控芯片的AES加密NAS的解決方案,并詳細(xì)論述了NAS加密密鑰管理的實(shí)現(xiàn)方法。該方案能夠很好地實(shí)現(xiàn)加密NAS的訪問(wèn)控制與算法密鑰管理,保證了數(shù)據(jù)加密存儲(chǔ)的安全性。
中圖分類(lèi)號(hào): TP309.8
文獻(xiàn)標(biāo)識(shí)碼: B
文章編號(hào): 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


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

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

 


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

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

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

    (1)用戶(hù)注冊(cè)。當(dāng)一個(gè)新用戶(hù)注冊(cè)時(shí),需要?jiǎng)?chuàng)建一個(gè)唯一的用戶(hù)標(biāo)識(shí),同時(shí)需要產(chǎn)生一對(duì)RSA密鑰,以作為登錄系統(tǒng)以及訪問(wèn)相關(guān)數(shù)據(jù)使用。用戶(hù)公鑰通過(guò)企業(yè)級(jí)CA發(fā)布,方便系統(tǒng)使用。
    (2)目錄的創(chuàng)建。為了管理方便,加密NAS每個(gè)目錄所使用的AES算法密鑰是不相同的。當(dāng)一個(gè)新的目錄建立時(shí),會(huì)相應(yīng)地產(chǎn)生一組新的AES算法密鑰。在使用AES進(jìn)行加密存儲(chǔ)后,為了滿(mǎn)足密鑰管理的需求,在每個(gè)用戶(hù)目錄中增加一個(gè)用戶(hù)的訪問(wèn)列表。在訪問(wèn)列表中,存儲(chǔ)可以訪問(wèn)該目錄的用戶(hù)名和該目錄所使用的AES算法密鑰的加密值。密鑰加密值是使用與用戶(hù)名對(duì)應(yīng)的用戶(hù)RSA公鑰加密的結(jié)果,用戶(hù)訪問(wèn)該存儲(chǔ)空間時(shí),需要使用自己的RSA私鑰來(lái)解密獲得AES算法密鑰。最后,目錄的所有者會(huì)使用其私鑰對(duì)訪問(wèn)列表進(jìn)行數(shù)字簽名,以保證列表的正確性。
    (3)存儲(chǔ)空間的共享。當(dāng)用戶(hù)A創(chuàng)建自己的存儲(chǔ)目錄時(shí),使用真隨機(jī)數(shù)產(chǎn)生一個(gè)AES算法密鑰。此時(shí),只有該目錄的所有者擁有該密鑰。當(dāng)用戶(hù)A需要與用戶(hù)B共享目錄時(shí),使用用戶(hù)B的RSA公鑰加密AES算法密鑰,與用戶(hù)B的標(biāo)識(shí)一起添加到用戶(hù)列表中。用戶(hù)B通過(guò)自己的私鑰,就可以獲得共享空間的AES算法密鑰,從而可以讀取到正確的數(shù)據(jù)。
    (4)用戶(hù)對(duì)存儲(chǔ)空間的訪問(wèn)過(guò)程。當(dāng)某個(gè)用戶(hù)訪問(wèn)一個(gè)存儲(chǔ)目錄時(shí),管理程序先查看用戶(hù)列表,確定列表中是否存在該用戶(hù)名,以確定用戶(hù)是否享有訪問(wèn)權(quán)限。然后驗(yàn)證訪問(wèn)列表的簽名是否有效,在確定訪問(wèn)列表正確后,找到相應(yīng)的用戶(hù)名,用戶(hù)再使用RSA私鑰解密AES算法密鑰的加密值,獲取數(shù)據(jù)加密密鑰,對(duì)存儲(chǔ)內(nèi)容進(jìn)行讀寫(xiě)。
    用戶(hù)的RSA公鑰可以通過(guò)類(lèi)似CA的方法進(jìn)行公布,以方便系統(tǒng)使用。存儲(chǔ)空間的所有者通過(guò)RSA算法實(shí)現(xiàn)AES算法密鑰共享,以達(dá)到存儲(chǔ)共享的目的。
    以上討論的方案使用MPC8379E構(gòu)建NAS的硬件系統(tǒng),然后在其Linux操作系統(tǒng)中實(shí)現(xiàn)AES算法,對(duì)SATA硬盤(pán)中的數(shù)據(jù)進(jìn)行加密存儲(chǔ),使用企業(yè)級(jí)CA對(duì)用戶(hù)進(jìn)行身份認(rèn)證以及算法密鑰的管理,使整個(gè)系統(tǒng)能夠很好地解決網(wǎng)絡(luò)存儲(chǔ)的安全問(wèn)題。
參考文獻(xiàn)
[1] 趙文輝.網(wǎng)絡(luò)存儲(chǔ)技術(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è)施實(shí)現(xiàn)和管理電子安全[M]. 北京:清華大學(xué)出版社,2002.

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