馮志華,張宇軒,羅重,王佳寧
面向分布式存儲(chǔ)的高性能可重構(gòu)加密方案
馮志華,張宇軒,羅重,王佳寧
(北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所,北京 100854)
全球進(jìn)入以數(shù)字經(jīng)濟(jì)為主導(dǎo)的信息社會(huì),數(shù)據(jù)成為關(guān)鍵生產(chǎn)要素,當(dāng)今越來(lái)越多的數(shù)據(jù)被收集、處理和存儲(chǔ),分布式存儲(chǔ)系統(tǒng)作為一種高效的存儲(chǔ)架構(gòu)在各數(shù)據(jù)領(lǐng)域得到廣泛應(yīng)用。然而,隨著數(shù)據(jù)存儲(chǔ)規(guī)模的不斷擴(kuò)大,分布式存儲(chǔ)面臨著信息泄露、數(shù)據(jù)破壞等更深層次的安全風(fēng)險(xiǎn)挑戰(zhàn)。這些挑戰(zhàn)將推動(dòng)大數(shù)據(jù)分布式存儲(chǔ)安全技術(shù)的創(chuàng)新變革,促進(jìn)了國(guó)產(chǎn)密碼技術(shù)和計(jì)算存儲(chǔ)技術(shù)的融合。針對(duì)分布式存儲(chǔ)節(jié)點(diǎn)數(shù)據(jù)信息泄露等安全問(wèn)題,考慮到分布式存儲(chǔ)加密性能與靈活性等需求,提出一種動(dòng)態(tài)可重構(gòu)加密存儲(chǔ)解決方案。該方案設(shè)計(jì)了基于bio映射框架的高性能可重構(gòu)密碼模塊,在此基礎(chǔ)上構(gòu)建多個(gè)配用不同密碼算法的存儲(chǔ)池,實(shí)現(xiàn)高性能硬盤(pán)數(shù)據(jù)加解密操作和存儲(chǔ)池密碼算法動(dòng)態(tài)切換,并開(kāi)發(fā)了具有密碼算法和密鑰遠(yuǎn)程在線加載功能的密碼協(xié)議,滿足各存儲(chǔ)節(jié)點(diǎn)可重構(gòu)密碼模塊統(tǒng)一管理與便捷安全更新需求,實(shí)現(xiàn)基于密碼重構(gòu)技術(shù)的數(shù)據(jù)細(xì)粒度加密保護(hù)和邏輯安全隔離功能。實(shí)驗(yàn)結(jié)果表明,該方案對(duì)存儲(chǔ)數(shù)據(jù)進(jìn)行加密保護(hù)與安全隔離的性能損耗約10%,可為分布式存儲(chǔ)系統(tǒng)達(dá)到GB/T 39786-2021《信息安全技術(shù)信息系統(tǒng)密碼應(yīng)用基本要求》第三級(jí)及以上在設(shè)備和計(jì)算安全、應(yīng)用和數(shù)據(jù)安全等方面提出的密碼應(yīng)用技術(shù)要求提供技術(shù)途徑。
分布式存儲(chǔ)加密;可重構(gòu)加密技術(shù);塊設(shè)備加密;算法在線加載;邏輯安全隔離
作為云存儲(chǔ)中使用的重要技術(shù)之一,分布式存儲(chǔ)技術(shù)通過(guò)存儲(chǔ)即服務(wù)模型實(shí)現(xiàn)了大批量數(shù)據(jù)的遠(yuǎn)程存儲(chǔ)[1-2],使用此技術(shù)的分布式存儲(chǔ)系統(tǒng)的可靠性、可用性和存取效率得到了提升,并易于擴(kuò)展。然而,當(dāng)前的分布式存儲(chǔ)系統(tǒng)在安全方面仍存在問(wèn)題,在醫(yī)療、金融等重要領(lǐng)域中都曾出現(xiàn)數(shù)據(jù)泄露事件,造成重大經(jīng)濟(jì)損失和不良社會(huì)影響。如何同時(shí)兼顧分布式存儲(chǔ)系統(tǒng)的安全與性能,確保存儲(chǔ)數(shù)據(jù)不可泄露與安全隔離是當(dāng)前亟待解決的問(wèn)題[3]。
在分布式存儲(chǔ)環(huán)境下,保證數(shù)據(jù)存儲(chǔ)的安全性主要是保證數(shù)據(jù)自身的隱私性、機(jī)密性、完整性和可用性,針對(duì)這些方面,使用密碼技術(shù)對(duì)數(shù)據(jù)存儲(chǔ)安全進(jìn)行保障是最合適且滿足要求的方法。為對(duì)應(yīng)用密碼技術(shù)的分布式存儲(chǔ)系統(tǒng)進(jìn)行定性分析,標(biāo)準(zhǔn)GB/T 39786—2021《信息安全技術(shù)信息系統(tǒng)密碼應(yīng)用基本要求》從物理和環(huán)境安全、網(wǎng)絡(luò)和通信安全、設(shè)備和計(jì)算安全、應(yīng)用和數(shù)據(jù)安全4個(gè)方面提出了密碼應(yīng)用技術(shù)要求,標(biāo)準(zhǔn)GB/T 37939—2019《信息安全技術(shù)網(wǎng)絡(luò)存儲(chǔ)安全技術(shù)要求》從訪問(wèn)安全、系統(tǒng)安全、數(shù)據(jù)安全及管理安全等方面對(duì)網(wǎng)絡(luò)存儲(chǔ)提出了安全功能要求和安全保障要求。根據(jù)以上需求,結(jié)合分布式存儲(chǔ)系統(tǒng)在應(yīng)用場(chǎng)景及性能等方面對(duì)數(shù)據(jù)存儲(chǔ)安全的需求,具體總結(jié)如下。
1) 海量數(shù)據(jù)安全存儲(chǔ)對(duì)高性能密碼運(yùn)算的需求。隨著近些年數(shù)據(jù)量的不斷增長(zhǎng),大量數(shù)據(jù)的高性能計(jì)算和存儲(chǔ)對(duì)分布式存儲(chǔ)的性能提出了超高需求。同時(shí),標(biāo)準(zhǔn)GB/T 40879-2021《數(shù)據(jù)中心能效限定值及能效等級(jí)》提出了對(duì)數(shù)據(jù)中心能效等級(jí)的技術(shù)要求,隨著綠色計(jì)算被業(yè)界廣泛提及與推廣,對(duì)分布式存儲(chǔ)系統(tǒng)提出了高性能、低功耗、低時(shí)延的需求,數(shù)據(jù)的安全存儲(chǔ)對(duì)高性能密碼運(yùn)算提出了需求。
2) 不同安全等級(jí)、不同用戶對(duì)云端數(shù)據(jù)存儲(chǔ)安全隔離需求。為了確保數(shù)據(jù)存儲(chǔ)安全,標(biāo)準(zhǔn)GB/T 37973—2019《信息安全技術(shù)大數(shù)據(jù)安全管理指南》中提出在系統(tǒng)安全性設(shè)計(jì)時(shí)需要考慮將不同類別和級(jí)別的數(shù)據(jù)分開(kāi)存儲(chǔ),采取物理或邏輯隔離機(jī)制。并且,分布式存儲(chǔ)系統(tǒng)需要為多種用戶提供數(shù)據(jù)存儲(chǔ)服務(wù),需要使用多種密碼算法來(lái)保障不同用戶數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù)的安全隔離,這對(duì)密碼算法的快速靈活切換提出了需求。
3) 密碼資源(密碼算法參數(shù)及密鑰等)統(tǒng)一管理、便捷更新[4]需求。部分涉及國(guó)家安全的重要領(lǐng)域,往往對(duì)密碼算法有特殊需求,會(huì)使用區(qū)別于標(biāo)準(zhǔn)算法的非公開(kāi)特定密碼算法。這種背景下算法更新和升級(jí)的速度快,需要對(duì)算法信息等關(guān)鍵密碼資源進(jìn)行統(tǒng)一管控,保證其本地存儲(chǔ)及外部配置的保密性和安全性。
有許多學(xué)者對(duì)分布式存儲(chǔ)系統(tǒng)的數(shù)據(jù)安全性提升問(wèn)題進(jìn)行了研究。文獻(xiàn)[5]提出一種應(yīng)用于云計(jì)算場(chǎng)景的輕量級(jí)加密算法,用以提升安全性和降低性能損耗;文獻(xiàn)[6]對(duì)Ceph分布式存儲(chǔ)系統(tǒng)進(jìn)行了改進(jìn),提出將加解密操作放置于各個(gè)客戶端的網(wǎng)關(guān),從而緩解加解密操作帶來(lái)的性能瓶頸;文獻(xiàn)[7]提出將存儲(chǔ)文件數(shù)據(jù)分為兩部分,每部分進(jìn)行混淆加密后分割存儲(chǔ),可以實(shí)現(xiàn)更低的存儲(chǔ)開(kāi)銷(xiāo);文獻(xiàn)[8]基于遺傳算法,提出了一種應(yīng)用于分布式存儲(chǔ)系統(tǒng)的隱私數(shù)據(jù)保護(hù)框架;文獻(xiàn)[9]提出一種加密數(shù)據(jù)的云存儲(chǔ)方案,在封閉計(jì)算環(huán)境中對(duì)數(shù)據(jù)安全加密后再存儲(chǔ)至分布式文件系統(tǒng)。以上提出的安全存儲(chǔ)方案中均采用密鑰變更的方式對(duì)數(shù)據(jù)進(jìn)行保護(hù),且沒(méi)有做到對(duì)密碼資源的統(tǒng)一管理和配置更新。
針對(duì)以上分布式存儲(chǔ)系統(tǒng)的數(shù)據(jù)存儲(chǔ)安全問(wèn)題與需求,本文提出一種動(dòng)態(tài)可重構(gòu)加密存儲(chǔ)解決方案,對(duì)存儲(chǔ)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行細(xì)粒度加密和安全隔離。本文方案將存儲(chǔ)空間劃分為配用不同加密算法的存儲(chǔ)池,采用可重構(gòu)密碼模塊為存儲(chǔ)池靈活快速地切換密碼算法,提供數(shù)據(jù)細(xì)粒度加解密服務(wù),并使用密鑰管理系統(tǒng)為可重構(gòu)密碼模塊提供密碼算法和密鑰遠(yuǎn)程在線加載配置和管理,實(shí)現(xiàn)對(duì)密碼資源的統(tǒng)一管理與便捷更新。
相較于使用通用處理器架構(gòu)以及專用集成電路架構(gòu)的密碼芯片,可重構(gòu)密碼芯片具有較高靈活性和性能,并且可以將算法信息進(jìn)行隔離,在設(shè)計(jì)制造過(guò)程中不包含密碼算法的信息,具有“安全白片”的特征[10]。
本文使用的可重構(gòu)密碼芯片架構(gòu)為粗粒度可重構(gòu)架構(gòu)(CGRA,coarse-grained reconfigurable architecture),其對(duì)稱加密算法性能可達(dá)25 Gbit/s,符合大規(guī)模數(shù)據(jù)的加解密性能要求。此芯片支持外部配置算法資源,算法及協(xié)議配置信息可通過(guò)映射工具編譯完成后外部配置到可重構(gòu)密碼芯片中[4]。不同密碼芯片的性能對(duì)比如表1所示,測(cè)試算法為AES(advanced encryption standard)對(duì)稱加密算法。相較于其他架構(gòu)的密碼芯片,本文使用的密碼芯片靈活性高,可以靈活快速配置和切換算法,與同架構(gòu)的密碼芯片相比,本文使用的密碼芯片功耗較低,可以較好地滿足高性能和低功耗的使用需求。
同時(shí),可重構(gòu)密碼芯片作為一個(gè)獨(dú)立的功能模塊集成在系統(tǒng)中,可重構(gòu)計(jì)算通路的重構(gòu)功能由其配置通路完成,其功能實(shí)現(xiàn)和規(guī)模不受主控處理器的影響,具有較高的靈活度[18]。并且,此可重構(gòu)密碼芯片支持物理不可復(fù)制函數(shù)(PUF,physical unclonable function),依據(jù)PUF對(duì)配置信息及密鑰等進(jìn)行保護(hù),可以做到配置信息明文不出芯片、密碼運(yùn)算不出芯片,保證外部配置過(guò)程的安全性。
表1 不同密碼芯片的性能對(duì)比
注:文獻(xiàn)中未說(shuō)明的密碼芯片的相關(guān)數(shù)據(jù)在表格中用“—”標(biāo)明。
根據(jù)前文對(duì)分布式存儲(chǔ)系統(tǒng)存儲(chǔ)數(shù)據(jù)的加密需求分析,本文設(shè)計(jì)一種面向分布式存儲(chǔ)的動(dòng)態(tài)可重構(gòu)加密存儲(chǔ)模型,通過(guò)使用支持多種算法靈活重構(gòu)的可重構(gòu)密碼芯片來(lái)實(shí)現(xiàn)可重構(gòu)密碼模塊,為存儲(chǔ)數(shù)據(jù)提供密碼服務(wù)和安全保障,并使用密鑰管理系統(tǒng)為可重構(gòu)密碼模塊提供密碼資源的安全配置和安全更新,滿足標(biāo)準(zhǔn)GB/T 39786—2021《信息安全技術(shù)信息系統(tǒng)密碼應(yīng)用基本要求》第三級(jí)及以上對(duì)應(yīng)用密碼技術(shù)的分布式加密存儲(chǔ)系統(tǒng)的部分要求:首先,使用密碼技術(shù)對(duì)登錄設(shè)備的用戶進(jìn)行身份鑒別,保證用戶身份的真實(shí)性;其次,在遠(yuǎn)程管理設(shè)備時(shí)應(yīng)采用密碼技術(shù)建立安全的信息傳輸通道;最后,采用密碼技術(shù)保證重要數(shù)據(jù)在傳輸和存儲(chǔ)過(guò)程中的機(jī)密性。根據(jù)以上設(shè)計(jì)原則,本文主要研究?jī)?nèi)容分為以下3點(diǎn)。
1) 本文選擇在存儲(chǔ)服務(wù)器端調(diào)用可重構(gòu)密碼模塊對(duì)塊存儲(chǔ)數(shù)據(jù)進(jìn)行加解密,此過(guò)程對(duì)上層用戶是無(wú)感知的,用戶不必考慮如何管理數(shù)據(jù)加密相關(guān)的密鑰及算法信息,并且為上層用戶提供不同安全等級(jí)的數(shù)據(jù)資源讀寫(xiě),實(shí)現(xiàn)數(shù)據(jù)安全隔離,本文設(shè)計(jì)使用不同算法的加密存儲(chǔ)池,并實(shí)現(xiàn)與用戶的綁定,后續(xù)如果考慮應(yīng)用系統(tǒng)細(xì)粒度安全需求,可以增加應(yīng)用層安全防護(hù)措施。
2) 在服務(wù)器端調(diào)用可重構(gòu)密碼模塊對(duì)數(shù)據(jù)進(jìn)行加解密操作需要考慮降低數(shù)據(jù)加解密所帶來(lái)的性能損耗問(wèn)題,而在服務(wù)器端的應(yīng)用層進(jìn)行加解密,數(shù)據(jù)需要從應(yīng)用層流轉(zhuǎn)至可重構(gòu)密碼芯片中進(jìn)行加解密,在流轉(zhuǎn)時(shí)的損耗較大,會(huì)影響到最終的整體性能。因此,為實(shí)現(xiàn)對(duì)數(shù)據(jù)的較高性能加密存儲(chǔ),減少數(shù)據(jù)傳輸損耗,本文選擇在服務(wù)器端文件系統(tǒng)級(jí)做改進(jìn),通過(guò)在塊設(shè)備層更改數(shù)據(jù)流傳輸,調(diào)用可重構(gòu)密碼芯片對(duì)數(shù)據(jù)做加解密操作。
圖1 分布式加密存儲(chǔ)系統(tǒng)層次架構(gòu)
Figure 1 Distributed encrypted storage system hierarchy architecture
3) 為了對(duì)密碼資源進(jìn)行統(tǒng)一配置管理,本文使用密鑰管理系統(tǒng)對(duì)密碼資源進(jìn)行管理,并設(shè)計(jì)對(duì)應(yīng)的密碼資源遠(yuǎn)程在線加載協(xié)議,實(shí)現(xiàn)安全遠(yuǎn)程配置密碼資源。
本文所設(shè)計(jì)的分布式加密存儲(chǔ)系統(tǒng)層次架構(gòu)如圖1所示。圖中安全層功能的主要實(shí)現(xiàn)形式為存儲(chǔ)網(wǎng)關(guān),不在本文的研究范圍內(nèi),本文主要在分布式存儲(chǔ)的存儲(chǔ)資源層進(jìn)行研究,增加了可重構(gòu)加密存儲(chǔ)服務(wù),包括可重構(gòu)密碼模塊和加密存儲(chǔ)池,為用戶提供數(shù)據(jù)高性能加密存儲(chǔ)和邏輯安全隔離服務(wù),并在當(dāng)前通用的密鑰管理系統(tǒng)上增加了算法配置管理功能,用于對(duì)可重構(gòu)密碼模塊中的密碼資源進(jìn)行統(tǒng)一安全配置和管理。
根據(jù)以上層次框架,本文提出分布式加密存儲(chǔ)系統(tǒng)架構(gòu)如圖2所示。
其中,可重構(gòu)密碼芯片部署在加密存儲(chǔ)服務(wù)器中,可以對(duì)加密算法進(jìn)行快速、靈活地重構(gòu),滿足方案中需要靈活切換密碼算法的需求。它可以通過(guò)部署于應(yīng)用層的管理代理服務(wù)與密鑰管理系統(tǒng)進(jìn)行雙向認(rèn)證,構(gòu)建安全會(huì)話通路,并向密鑰管理系統(tǒng)發(fā)起請(qǐng)求進(jìn)行密碼資源的更新配置,之后可以依據(jù)存儲(chǔ)池的劃分重構(gòu)得到對(duì)應(yīng)的密碼算法和加密密鑰對(duì)數(shù)據(jù)進(jìn)行加解密操作。
圖2 分布式加密存儲(chǔ)系統(tǒng)架構(gòu)
Figure 2 Distributed encrypted storage system architecture
管理代理服務(wù)軟件部署在加密存儲(chǔ)服務(wù)器的用戶層中,可以通過(guò)調(diào)用可重構(gòu)密碼模塊,實(shí)現(xiàn)與密鑰管理系統(tǒng)間的雙向認(rèn)證、密鑰協(xié)商、密碼資源下發(fā)配置及更新等功能。
密鑰管理系統(tǒng)支持對(duì)稱及非對(duì)稱密碼算法,對(duì)密碼資源進(jìn)行安全存儲(chǔ)與統(tǒng)一管理,基于多級(jí)密鑰管理體系對(duì)密鑰的生成、激活、撤銷(xiāo)、輪換、銷(xiāo)毀、歸檔、恢復(fù)等全生命周期進(jìn)行管理。在方案中,與管理代理服務(wù)建立安全會(huì)話通道后,系統(tǒng)為可重構(gòu)密碼模塊使用的密碼資源進(jìn)行統(tǒng)一配置管理,底層使用硬件安全模塊來(lái)確保密碼資源的保密性、完整性和可用性。
可重構(gòu)密碼模塊的實(shí)現(xiàn)主要基于Device Mapper(Device Mapper是Linux系統(tǒng)內(nèi)核中用來(lái)將塊設(shè)備映射到虛擬塊設(shè)備的架構(gòu))下的dm-crypt加密模塊,將設(shè)備映射模塊定義在Linux內(nèi)核I/O體系結(jié)構(gòu)中的通用塊層和I/O調(diào)度層之間,對(duì)于bio讀寫(xiě)請(qǐng)求進(jìn)行重定向處理。
在Linux數(shù)據(jù)讀寫(xiě)架構(gòu)中,內(nèi)核層中的通用塊層起到承上啟下的作用,包含一系列與硬盤(pán)數(shù)據(jù)讀寫(xiě)緊密相關(guān)的結(jié)構(gòu)體,如請(qǐng)求(request)、請(qǐng)求隊(duì)列(request_queue)、硬盤(pán)(gendisk)等[19]。其中,bio為通用塊層的關(guān)鍵數(shù)據(jù)結(jié)構(gòu),它在Linux數(shù)據(jù)讀寫(xiě)模型中承擔(dān)著實(shí)際文件數(shù)據(jù)的邏輯地址和物理地址的映射與傳輸作用,描述了讀寫(xiě)操作中硬盤(pán)數(shù)據(jù)的定位(硬盤(pán)中起始扇區(qū)號(hào)和扇區(qū)數(shù))。
在Device Mapper架構(gòu)下,可以將實(shí)際的物理設(shè)備抽象為統(tǒng)一的邏輯設(shè)備后向系統(tǒng)內(nèi)核提供服務(wù)[20],而在邏輯設(shè)備內(nèi)部,則可根據(jù)需求構(gòu)建原設(shè)備所不具有的功能,如磁盤(pán)陣列(raid)、加密(dm-crypt)、鏡像(mirror)、快照(snapshot)等[21]。其中,Device Mapper架構(gòu)的加密功能通過(guò)虛擬出一個(gè)塊設(shè)備,對(duì)轉(zhuǎn)發(fā)的bio請(qǐng)求進(jìn)行數(shù)據(jù)加密。因此,為實(shí)現(xiàn)較高性能的數(shù)據(jù)安全加密存儲(chǔ),在減少對(duì)操作系統(tǒng)內(nèi)核修改的設(shè)計(jì)背景下,通過(guò)對(duì)Device Mapper架構(gòu)下的dm-crypt模塊進(jìn)行設(shè)計(jì),改變bio的傳輸流,即可實(shí)現(xiàn)主機(jī)、可重構(gòu)密碼芯片與存儲(chǔ)硬盤(pán)三者之間數(shù)據(jù)的傳輸。
可重構(gòu)密碼模塊設(shè)計(jì)如圖3所示,圖中密鑰管理系統(tǒng)主要對(duì)可重構(gòu)密碼模塊中的密碼資源進(jìn)行遠(yuǎn)程配置管理。在常規(guī)塊設(shè)備讀寫(xiě)體系下,bio請(qǐng)求到達(dá)通用塊層時(shí),已經(jīng)建立起底層存儲(chǔ)設(shè)備扇區(qū)與內(nèi)存頁(yè)之間的映射關(guān)系,通用塊層根據(jù)bio中存儲(chǔ)設(shè)備信息尋找與之對(duì)應(yīng)的請(qǐng)求隊(duì)列,并根據(jù)隊(duì)列信息傳遞bio請(qǐng)求。在通用塊層和I/O調(diào)度層間建立起加密模塊后,映射設(shè)備會(huì)作為虛擬塊設(shè)備取代實(shí)際物理塊設(shè)備來(lái)接收通用塊層傳來(lái)的bio,并將bio傳遞至映射設(shè)備虛擬塊設(shè)備的請(qǐng)求隊(duì)列,映射設(shè)備的虛擬塊設(shè)備會(huì)向內(nèi)核申請(qǐng)必要的內(nèi)存資源以完成讀寫(xiě)操作。目標(biāo)驅(qū)動(dòng)負(fù)責(zé)具體的讀寫(xiě)調(diào)度操作,當(dāng)接收到映射設(shè)備轉(zhuǎn)發(fā)來(lái)的bio后,會(huì)確定實(shí)際目標(biāo)設(shè)備扇區(qū)物理地址和bio讀寫(xiě)信息,并根據(jù)讀寫(xiě)請(qǐng)求調(diào)用驅(qū)動(dòng),將相應(yīng)數(shù)據(jù)及地址信息轉(zhuǎn)發(fā)至可重構(gòu)密碼芯片,可重構(gòu)密碼芯片調(diào)用相應(yīng)加密算法,選擇對(duì)應(yīng)的加密密鑰分量,并與地址信息進(jìn)行異或計(jì)算組合得到數(shù)據(jù)塊對(duì)應(yīng)的加密密鑰,實(shí)現(xiàn)對(duì)數(shù)據(jù)的細(xì)粒度加解密操作。
相較于原Device Mapper架構(gòu),本文可重構(gòu)密碼模塊設(shè)計(jì)主要在dm-crypt模塊下對(duì)bio的轉(zhuǎn)發(fā)流程進(jìn)行了修改,在目標(biāo)驅(qū)動(dòng)中解析bio并將數(shù)據(jù)轉(zhuǎn)發(fā)至可重構(gòu)密碼芯片進(jìn)行加解密操作??芍貥?gòu)密碼模塊讀/寫(xiě)請(qǐng)求處理流程如圖4所示,當(dāng)目標(biāo)驅(qū)動(dòng)接收到映射設(shè)備轉(zhuǎn)發(fā)來(lái)的bio后,會(huì)根據(jù)bio結(jié)構(gòu)體確定實(shí)際目標(biāo)設(shè)備扇區(qū)物理地址和bio讀寫(xiě)信息,并為bio的重定向與轉(zhuǎn)發(fā)操作申請(qǐng)對(duì)應(yīng)的內(nèi)存資源。目標(biāo)驅(qū)動(dòng)根據(jù)bio是否為讀/寫(xiě)請(qǐng)求,調(diào)用可重構(gòu)密碼芯片來(lái)對(duì)數(shù)據(jù)進(jìn)行解密讀出或加密存儲(chǔ)操作。
圖3 可重構(gòu)密碼模塊設(shè)計(jì)
Figure 3 Design of reconfigurable encryption module
圖4 可重構(gòu)密碼模塊讀/寫(xiě)請(qǐng)求處理流程
Figure 4 Reconfigurable encryption module read/write request processing
方案中設(shè)計(jì)的可重構(gòu)密碼模塊主體在操作系統(tǒng)內(nèi)核的塊設(shè)備層實(shí)現(xiàn),通過(guò)使用Device Mapper架構(gòu),可以使此模塊較為便捷地應(yīng)用到其他Linux系統(tǒng)中,具有較高的可移植性。與Linux內(nèi)核中已存在的dm-crypt加密模塊相比,方案重新定義了加解密模塊的映射表,調(diào)用可重構(gòu)密碼芯片實(shí)現(xiàn)更為高性能的數(shù)據(jù)加解密。
為實(shí)現(xiàn)對(duì)密碼資源(加密算法參數(shù)及密鑰等)的統(tǒng)一管理,滿足對(duì)密碼資源的更新配置操作,本文方案基于可重構(gòu)密碼芯片的可動(dòng)態(tài)配置特性,設(shè)計(jì)了密鑰管理系統(tǒng)與可重構(gòu)密碼模塊間的算法資源遠(yuǎn)程在線加載協(xié)議。密鑰管理系統(tǒng)安全保存對(duì)應(yīng)可重構(gòu)密碼芯片使用的算法資源數(shù)據(jù)(包括加密密鑰及算法配置參數(shù)等),密碼資源遠(yuǎn)程在線加載流程如圖5所示,包括如下步驟。
圖5 密碼資源遠(yuǎn)程在線加載流程
Figure 5 Remote online loading process of cryptographic resources
1) 存儲(chǔ)服務(wù)器啟動(dòng)后,管理代理服務(wù)調(diào)用可重構(gòu)密碼模塊與密鑰管理系統(tǒng)進(jìn)行安全認(rèn)證和密鑰協(xié)商,身份認(rèn)證與密鑰協(xié)商過(guò)程遵循GM/T 0050—2016《密碼設(shè)備管理設(shè)備管理技術(shù)規(guī)范》,在密鑰協(xié)商完成后構(gòu)建安全會(huì)話通道,通道傳輸?shù)臄?shù)據(jù)使用協(xié)商的會(huì)話密鑰keysess和對(duì)稱加密算法SM4進(jìn)行保護(hù)。
2) 雙向認(rèn)證成功并構(gòu)建安全會(huì)話通路后,管理代理服務(wù)調(diào)用可重構(gòu)密碼模塊對(duì)應(yīng)API接口得到需要進(jìn)行參數(shù)及密鑰配置的密碼算法標(biāo)識(shí)alg,并通過(guò)安全會(huì)話通路向密鑰管理系統(tǒng)發(fā)送配置請(qǐng)求,請(qǐng)求分發(fā)對(duì)應(yīng)的密碼資源。
3) 密鑰管理系統(tǒng)接收解析密碼算法標(biāo)識(shí)alg,并從存儲(chǔ)庫(kù)中查詢是否存在對(duì)應(yīng)算法標(biāo)識(shí)alg的密碼資源信息,若存在,則與管理代理服務(wù)協(xié)商對(duì)密碼資源信息進(jìn)行保護(hù)的一次性的分發(fā)保護(hù)密鑰keypro,協(xié)商分發(fā)保護(hù)密鑰過(guò)程與數(shù)據(jù)結(jié)構(gòu)遵循GM/T 0051—2016《密碼設(shè)備管理對(duì)稱密鑰管理技術(shù)規(guī)范》。
4) 密鑰管理系統(tǒng)利用協(xié)商的分發(fā)保護(hù)密鑰keypro以及對(duì)稱加密算法SM4對(duì)密碼資源信息進(jìn)行加密保護(hù),得到密文后通過(guò)安全會(huì)話通道傳輸給管理代理服務(wù)。
5) 管理代理服務(wù)調(diào)用可重構(gòu)密碼模塊,使用分發(fā)保護(hù)密鑰keypro以及對(duì)稱加密算法SM4解密密文得到密碼資源信息,將密碼資源信息安全配置到模塊內(nèi)。
存儲(chǔ)池是分布式存儲(chǔ)系統(tǒng)和云平臺(tái)的主要構(gòu)成部分,分布式存儲(chǔ)系統(tǒng)管理員可以為特定數(shù)據(jù)類型創(chuàng)建存儲(chǔ)池,或者使用存儲(chǔ)池將一組用戶與另一組用戶隔離。存儲(chǔ)池需要在系統(tǒng)進(jìn)行實(shí)施時(shí)對(duì)節(jié)點(diǎn)數(shù)量、磁盤(pán)配比以及用戶角色劃分等進(jìn)行良好的規(guī)劃,以更好地支撐業(yè)務(wù)發(fā)展。
在設(shè)計(jì)實(shí)現(xiàn)可重構(gòu)密碼模塊后,每臺(tái)加密存儲(chǔ)服務(wù)器可在操作系統(tǒng)內(nèi)核的塊設(shè)備層調(diào)用可重構(gòu)密碼芯片對(duì)存儲(chǔ)數(shù)據(jù)進(jìn)行加密保護(hù),并且將對(duì)數(shù)據(jù)進(jìn)行加密的加密密鑰與數(shù)據(jù)塊的塊地址相關(guān)聯(lián),實(shí)現(xiàn)對(duì)數(shù)據(jù)的細(xì)粒度加密保護(hù)。然而,在當(dāng)前分布式存儲(chǔ)系統(tǒng)中,服務(wù)需求差異較大、業(yè)務(wù)范圍復(fù)雜、用戶類型繁雜,具有對(duì)不同用戶、不同業(yè)務(wù)存儲(chǔ)數(shù)據(jù)進(jìn)行安全隔離的需求,需要考慮將該加密模塊應(yīng)用于以下場(chǎng)景。
1) 系統(tǒng)中用戶類型繁雜,分為多種安全等級(jí),需要對(duì)不同等級(jí)的用戶存儲(chǔ)數(shù)據(jù)進(jìn)行安全隔離。
2) 系統(tǒng)中業(yè)務(wù)范圍多,數(shù)據(jù)分為不同安全等級(jí),需要將不同安全等級(jí)的數(shù)據(jù)進(jìn)行隔離存儲(chǔ)。
為了對(duì)數(shù)據(jù)進(jìn)行安全隔離,保障數(shù)據(jù)的安全性,本文依據(jù)所設(shè)計(jì)高性能可重構(gòu)密碼模塊的算法可快速切換、動(dòng)態(tài)重構(gòu)特性,結(jié)合分布式存儲(chǔ)系統(tǒng)的存儲(chǔ)池設(shè)計(jì)一種存儲(chǔ)數(shù)據(jù)邏輯隔離方法。通過(guò)定義配用不同加密算法的可重構(gòu)加密存儲(chǔ)池,對(duì)用戶或業(yè)務(wù)存儲(chǔ)數(shù)據(jù)時(shí)進(jìn)行隔離約束,保證不同等級(jí)數(shù)據(jù)的安全隔離存儲(chǔ)。
為了將存儲(chǔ)服務(wù)器上的數(shù)據(jù)隔離應(yīng)用至整個(gè)分布式存儲(chǔ)系統(tǒng),為不同等級(jí)的用戶或業(yè)務(wù)提供服務(wù),需要在分布式存儲(chǔ)系統(tǒng)中提出加密存儲(chǔ)池的概念,即分布式存儲(chǔ)系統(tǒng)為一組用戶分配的存儲(chǔ)區(qū)域,包括其自身存儲(chǔ)數(shù)據(jù)及所占有的存儲(chǔ)資源,多個(gè)用戶可以將數(shù)據(jù)存儲(chǔ)于同一個(gè)加密存儲(chǔ)池,但用戶只能對(duì)自身存儲(chǔ)區(qū)域進(jìn)行訪問(wèn)。
根據(jù)以上規(guī)則結(jié)合可重構(gòu)密碼模塊進(jìn)行加密存儲(chǔ)池設(shè)計(jì),如圖6所示,本文并未深入研究存儲(chǔ)網(wǎng)關(guān),后續(xù)可通過(guò)網(wǎng)關(guān)實(shí)現(xiàn)用戶身份認(rèn)證和訪問(wèn)控制等功能。將每臺(tái)加密存儲(chǔ)服務(wù)器的存儲(chǔ)空間進(jìn)行劃分后,得到多個(gè)加密存儲(chǔ)分區(qū),并規(guī)定存儲(chǔ)服務(wù)器中劃分的多個(gè)存儲(chǔ)分區(qū)使用不同的對(duì)稱加密算法和加密密鑰對(duì)存儲(chǔ)數(shù)據(jù)進(jìn)行加密保護(hù)。在加密存儲(chǔ)分區(qū)劃分完成后,為在分布式存儲(chǔ)系統(tǒng)中對(duì)其進(jìn)行統(tǒng)一管理,本文方案設(shè)計(jì)將多臺(tái)存儲(chǔ)服務(wù)器使用同一種加密算法的存儲(chǔ)分區(qū)進(jìn)行劃分映射,規(guī)劃得到多個(gè)加密硬盤(pán)域,每個(gè)加密硬盤(pán)域由多個(gè)存儲(chǔ)分區(qū)組成,并且使用同一種加密算法對(duì)數(shù)據(jù)進(jìn)行保護(hù),這樣就能夠?qū)⒉煌脖P(pán)域的故障、存儲(chǔ)資源進(jìn)行隔離。最終基于加密硬盤(pán)域設(shè)計(jì)得到對(duì)應(yīng)的加密存儲(chǔ)池,每個(gè)加密存儲(chǔ)池內(nèi)部規(guī)定使用多副本方式或糾刪碼方式對(duì)數(shù)據(jù)進(jìn)行保護(hù),并為對(duì)應(yīng)的一組用戶提供數(shù)據(jù)安全存儲(chǔ)服務(wù),可以實(shí)現(xiàn)不同等級(jí)用戶的數(shù)據(jù)安全隔離。
本節(jié)對(duì)所設(shè)計(jì)的分布式加密存儲(chǔ)系統(tǒng)的安全性進(jìn)行分析,系統(tǒng)的安全性應(yīng)滿足標(biāo)準(zhǔn)GB/T 39786—2021《信息安全技術(shù)信息系統(tǒng)密碼應(yīng)用基本要求》中提出的4個(gè)基本安全要求:機(jī)密性、完整性、真實(shí)性以及不可否認(rèn)性。機(jī)密性指只有授權(quán)用戶可以獲取信息;完整性指信息在輸入和傳輸?shù)倪^(guò)程中,不被非法授權(quán)修改和破壞,保證數(shù)據(jù)的一致性;真實(shí)性指保證合法用戶對(duì)信息和資源的使用不會(huì)被不正當(dāng)?shù)鼐芙^;不可否認(rèn)性指通信雙方在信息交互過(guò)程中,確信參與者本身,以及參與者所提供信息的真實(shí)同一性,即所有參與者都不可能否認(rèn)或抵賴本人的真實(shí)身份。
圖6 加密存儲(chǔ)池設(shè)計(jì)
Figure 6 Encrypted storage pool design
根據(jù)以上4個(gè)基本安全要求對(duì)所設(shè)計(jì)的分布式加密存儲(chǔ)系統(tǒng)進(jìn)行分析。
1) 系統(tǒng)的機(jī)密性:系統(tǒng)中的用戶需要與加密存儲(chǔ)池進(jìn)行綁定,通過(guò)訪問(wèn)對(duì)應(yīng)的加密存儲(chǔ)池來(lái)上傳或獲取對(duì)應(yīng)的數(shù)據(jù),此時(shí)只有授權(quán)的系統(tǒng)用戶才能訪問(wèn)使用對(duì)應(yīng)加密存儲(chǔ)池中的數(shù)據(jù),保障系統(tǒng)中數(shù)據(jù)的機(jī)密性。
2) 系統(tǒng)的完整性:分布式存儲(chǔ)系統(tǒng)都會(huì)使用完整性保護(hù)措施來(lái)保證數(shù)據(jù)傳遞和存儲(chǔ)的完整性,且系統(tǒng)中所涉及密鑰及算法傳輸?shù)男畔⒍紩?huì)使用對(duì)應(yīng)密鑰進(jìn)行加密保護(hù),防止被攻擊者獲取或破壞,保障系統(tǒng)中數(shù)據(jù)和密碼資源的完整性。
3) 系統(tǒng)的真實(shí)性:一方面,用戶通過(guò)存儲(chǔ)網(wǎng)關(guān)才能獲得訪問(wèn)存儲(chǔ)系統(tǒng)的權(quán)限;另一方面,只有加密存儲(chǔ)服務(wù)器通過(guò)與密鑰管理系統(tǒng)間的雙向認(rèn)證,密鑰管理系統(tǒng)才能正常進(jìn)行密碼模塊密碼資源的下發(fā)配置,進(jìn)而為用戶提供密碼服務(wù),保障系統(tǒng)的真實(shí)性。
4) 系統(tǒng)的不可否認(rèn)性:本文主要集中在存儲(chǔ)服務(wù)器上的數(shù)據(jù)加密存儲(chǔ)研究,計(jì)劃下一步在系統(tǒng)中使用數(shù)字簽名和時(shí)間戳等技術(shù)來(lái)保證用戶與存儲(chǔ)系統(tǒng)間通信行為的不可抵賴性。
在對(duì)系統(tǒng)的整體安全性進(jìn)行分析后,還需對(duì)系統(tǒng)中的密碼資源安全進(jìn)行分析。在本文方案中,密鑰及算法參數(shù)的存儲(chǔ)基于三級(jí)密鑰保護(hù)體制,由密鑰管理系統(tǒng)的硬件安全模塊及可重構(gòu)加密卡進(jìn)行安全存儲(chǔ)。所設(shè)計(jì)的密碼資源遠(yuǎn)程在線加載協(xié)議具體數(shù)據(jù)結(jié)構(gòu)等規(guī)則遵循GM/T 0050—2016《密碼設(shè)備管理設(shè)備管理技術(shù)規(guī)范》以及GM/T 0051—2016《密碼設(shè)備管理對(duì)稱密鑰管理技術(shù)規(guī)范》,在將密鑰或算法參數(shù)通過(guò)網(wǎng)絡(luò)通道進(jìn)行通信傳輸時(shí)需要先協(xié)商一次性的分發(fā)保護(hù)密鑰來(lái)對(duì)其進(jìn)行安全保護(hù),實(shí)現(xiàn)通信過(guò)程的機(jī)密性,保障密鑰及算法參數(shù)傳輸過(guò)程的安全性。
因此,本文方案在數(shù)據(jù)安全和密碼資源安全兩方面都提供了可靠的安全性保護(hù)。
為驗(yàn)證可行性,本節(jié)將所設(shè)計(jì)方案應(yīng)用于Ceph分布式存儲(chǔ)系統(tǒng),并且基于實(shí)現(xiàn)的系統(tǒng)完成相關(guān)性能測(cè)試。系統(tǒng)架構(gòu)如2.2節(jié)所述,每臺(tái)服務(wù)器配置好軟硬件后,需要對(duì)存儲(chǔ)空間進(jìn)行劃分,每個(gè)分區(qū)使用不同的算法對(duì)數(shù)據(jù)進(jìn)行加密。本文系統(tǒng)中將整體存儲(chǔ)空間劃分為使用SM4算法、AES算法以及TEA(tiny encryption algorithm)加解密的加密存儲(chǔ)池。
系統(tǒng)部署如圖7所示,測(cè)試環(huán)境中服務(wù)器型號(hào)為t1800-24s,CPU型號(hào)為Intel Pentium CPU D1508 @ 2.20 GHz,硬盤(pán)為HGST 960 G SSD, Ceph存儲(chǔ)系統(tǒng)的存儲(chǔ)節(jié)點(diǎn)為3臺(tái)物理機(jī),并部署獨(dú)立的可重構(gòu)密碼模塊(考慮到存儲(chǔ)加密容錯(cuò)需求,可以每臺(tái)物理機(jī)部署多個(gè)密碼模塊進(jìn)行冗余設(shè)計(jì)),物理機(jī)部署的操作系統(tǒng)為L(zhǎng)inux系統(tǒng),同時(shí)配置對(duì)應(yīng)的密鑰管理系統(tǒng)。
圖7 系統(tǒng)部署
Figure 7 System deployment
使用fio工具以及vdbench工具[22]對(duì)應(yīng)用本文方案實(shí)現(xiàn)的加密Ceph分布式存儲(chǔ)系統(tǒng)以及未應(yīng)用本文方案的Ceph分布式存儲(chǔ)系統(tǒng)的性能進(jìn)行測(cè)試,測(cè)試中選擇測(cè)試數(shù)據(jù)塊大小為4 kB到1 MB之間,測(cè)試其I/O時(shí)延以及讀寫(xiě)性能。
測(cè)試I/O時(shí)延統(tǒng)計(jì)結(jié)果如圖8所示,加密系統(tǒng)的一次I/O任務(wù)被劃分為數(shù)據(jù)加密時(shí)延、數(shù)據(jù)I/O時(shí)延和其他3部分操作。
圖8 時(shí)延統(tǒng)計(jì)結(jié)果
Figure 8 Delay statistics result
根據(jù)前文設(shè)計(jì)以及測(cè)試結(jié)果分析,引入可重構(gòu)密碼模塊后,增加的系統(tǒng)開(kāi)銷(xiāo)主要來(lái)源為:數(shù)據(jù)轉(zhuǎn)發(fā)開(kāi)銷(xiāo)、加解密開(kāi)銷(xiāo)以及算法重構(gòu)開(kāi)銷(xiāo)等。其中,數(shù)據(jù)轉(zhuǎn)發(fā)開(kāi)銷(xiāo)主要為在系統(tǒng)內(nèi)核解析數(shù)據(jù)并將其轉(zhuǎn)發(fā)至可重構(gòu)密碼芯片的時(shí)延開(kāi)銷(xiāo);加解密開(kāi)銷(xiāo)則是密碼模塊的主要性能損耗因素;算法重構(gòu)開(kāi)銷(xiāo)是可重構(gòu)密碼芯片一次動(dòng)態(tài)切換加密算法導(dǎo)致的開(kāi)銷(xiāo),實(shí)際使用時(shí)可以忽略不計(jì)。
對(duì)系統(tǒng)的讀、寫(xiě)性能測(cè)試結(jié)果如圖9與圖10所示,由測(cè)試結(jié)果可知,引入可重構(gòu)密碼模塊后系統(tǒng)的讀寫(xiě)性能有所下降,分布式存儲(chǔ)系統(tǒng)單個(gè)存儲(chǔ)節(jié)點(diǎn)的讀寫(xiě)性能在原系統(tǒng)讀性能的90%左右。
圖9 讀性能測(cè)試結(jié)果
Figure 9 Read performance test result
圖10 寫(xiě)性能測(cè)試結(jié)果
Figure 10 Write performance test result
為提升分布式存儲(chǔ)系統(tǒng)的安全性,完成對(duì)存儲(chǔ)數(shù)據(jù)的高性能加密保護(hù)和安全隔離,本文提出一種動(dòng)態(tài)可重構(gòu)加密存儲(chǔ)解決方案。方案基于bio映射框架,設(shè)計(jì)了具有較高可移植性和高性能的可重構(gòu)密碼模塊,并在此基礎(chǔ)上構(gòu)建多個(gè)配用不同密碼算法的存儲(chǔ)池,實(shí)現(xiàn)高性能硬盤(pán)數(shù)據(jù)加解密操作和存儲(chǔ)池密碼算法動(dòng)態(tài)切換;本文還設(shè)計(jì)了具有密碼算法和密鑰遠(yuǎn)程在線加載功能的密碼協(xié)議,滿足各存儲(chǔ)節(jié)點(diǎn)可重構(gòu)密碼模塊統(tǒng)一管理與便捷安全更新需求,實(shí)現(xiàn)基于密碼重構(gòu)技術(shù)的數(shù)據(jù)細(xì)粒度加密保護(hù)和邏輯安全隔離功能,并對(duì)每臺(tái)存儲(chǔ)服務(wù)器中嵌入高性能可重構(gòu)密碼模塊的分布式存儲(chǔ)系統(tǒng)進(jìn)行測(cè)試,加密后性能滿足預(yù)期需求。該方法可為分布式存儲(chǔ)系統(tǒng)達(dá)到GB/T 39786—2021《信息安全技術(shù)信息系統(tǒng)密碼應(yīng)用基本要求》第三級(jí)及以上在設(shè)備和計(jì)算安全、應(yīng)用和數(shù)據(jù)安全等方面提出的密碼應(yīng)用技術(shù)要求提供技術(shù)途徑。
[1] LI Y. Intelligent cryptography approach for secure distributed big data storage in cloud computing[J]. Information Ences, 2016: 103-115.
[2] KAPUSTA K, MEMMI G. Enhancing data protection in a distributed storage environment using structure-wise fragmentation and dispersal of encrypted data[C]//IEEE International Conference on Big Data Science and Engineering; IEEE International Conference on Trust, Security and Privacy In Computing and Communications. 2017.
[3] 桑杰, 許雪姣, 劉碩, 等. 基于國(guó)密算法的分布式加密存儲(chǔ)研究[J]. 數(shù)據(jù)通信, 2020, (1): 4.
SANG J, XU X J, LIU S, et al. Research on distributed encrypted storage based on national security algorithm[J]. Data Communication, 2020, (1): 4.
[4] 楊錦江. 基于可重構(gòu)計(jì)算的密碼處理器關(guān)鍵技術(shù)研究[D]. 南京: 東南大學(xué), 2018.
YANG J J. Research on key technologies of reconfigurable cryptographic processors[D]. Nanjing: Southeast University, 2018.
[5] FT A, ASA B, AA C, et al. A new lightweight cryptographic algorithm for enhancing data security in cloud computing-sciencedirect[J]. Global Transitions Proceedings, 2021.
[6] SMITH A, RILEY J, SYED M, et al. Exploring untrusted distributed storage for high performance computing[C]//The Practice and Experience in Advanced Research Computing. 2019.
[7] ABDEL-KADER R F, EL-SHERIF S H, RIZK R Y. Efficient two-stage cryptography scheme for secure distributed data storage in cloud computing[J]. International Journal of Electrical and Computer Engineering, 2020(3).
[8] MARYAM K, SHAHZAD A, FARIA F, et al. Privacy-aware genetic algorithm based data security framework for distributed cloud storage[J]. Microprocessors and Microsystems,2022(94).
[9] 杜瑞忠, 王少泫, 田俊峰. 基于封閉環(huán)境加密的云存儲(chǔ)方案[J]. 通信學(xué)報(bào), 2017, 38(7): 10.
DU R Z, WANG S X, TIAN J F. Cloud storage scheme based on closed-box encryption[J]. Journal on Communications, 2017, 38(7): 10.
[10] 袁航. 動(dòng)態(tài)可重構(gòu)密碼芯片關(guān)鍵技術(shù)研究[D]. 北京: 清華大學(xué), 2019.
YUAN H. Research on key technologies of dynamic reconfigurable cryptographic chip[D]. Beijing: Tsinghua University, 2019.
[11] SAYILAR G, CHIOU D. Cryptoraptor: high throughput reconfigurable cryptographic processor[C]//IEEE/ACM International Conference on Computer-aided Design. 2014.
[12] BULENS P, STANDAERT F X, QUISQUATER J J, et al. Implementation of the AES-128 on Virtex-5 FPGAs[C]//DBLP. 2008.
[13] LI X, CAO C, LI P, et al. Energy-efficient hardware implementation of LUKS PBKDF2 with AES on FPGA[C]//Trustcom/Bigdat- ase/Ispa. 2017.
[14] SMEKAL D, HAJNY J, MARTINASEK Z. Comparative analysis of different implementations of encryption algorithms on FPGA network cards[C]//IFAC Conference on Programmable Devices and Embedded Systems. 2018.
[15] NISHIKAWA N, IWAI K, KUROKAWA T. High-performance symmetric block ciphers on multicore CPU and GPU[J]. International Journal of Networking & Computing, 2012, 2(2): 251-268.
[16] RAHIMUNNISA K, KARTHIGAIKUMAR P, CHRISTY N, et al. PSP: parallel sub-pipelined architecture for high throughput AES on FPGA and ASIC[J]. Central European Journal of Computer Science, 2013, 3(4):173-186.
[17] BOS J W, OSVIK D A, STEFAN D. Fast implementations of AES on various platforms[J]. IACR Cryptology Eprint Archive, 2009: 501.
[18] 王博. 高能效可重構(gòu)密碼芯片架構(gòu)及其抗物理攻擊技術(shù)研究[D]. 北京: 清華大學(xué), 2018.
WANG B. Energy efficient architecture and physical attack countermeasures for reconfigurable cryptographic processors[D]. Beijing: Tsinghua University, 2018.
[19] 張包銓. 內(nèi)核態(tài)時(shí)序數(shù)據(jù)存儲(chǔ)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 成都: 電子科技大學(xué), 2022.
ZHANG B S. Design and implementation of time series data storage system in kernel space [D]. Chengdu: University of Electronic Science and Technology of China, 2022.
[20] 趙南雨, 陳莉君. 一種面向Hadoop中間數(shù)據(jù)存儲(chǔ)的混合存儲(chǔ)系統(tǒng)[J].信息技術(shù), 2017(11): 161-166.
ZHAO N Y, CHEN L J. Hybrid storage system focus on Hadoop intermediate storing[J]. Information Technology, 2017(11): 161-166.
[21] 周山東, 宋新芳, 金波, 等. 基于TCM的全盤(pán)加密系統(tǒng)的研究與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2012, 33(9): 6.
ZHOU S D, SONG X F, JIN B, et al. Research and implementation of trusted full disk encryption system based on TCM[J]. Computer Engineering and Design, 2012, 33(9): 6.
[22] BERRYMAN A, CALYAM P, HONIGFORD M, et al. VDBench: a benchmarking toolkit for thin-client based virtual desktop environments[C]//IEEE Second International Conference on Cloud Computing Technology & Science. 2010.
High-performance reconfigurable encryption scheme for distributed storage
FENG Zhihua, ZHANG Yuxuan, LUO Chong, WANG Jianing
Beijing Institute of Computer Technology and Applications, Beijing 100854, China
As the world embraces the digital economy and enters an information society, data has emerged as a critical production factor. The collection, processing, and storage of data have become increasingly prevalent. Distributed storage systems, known for their efficiency, are widely used in various data fields. However, as the scale of data storage continues to expand, distributed storage faces more significant security risks, such as information leakage and data destruction. These challenges drive the need for innovative advancements in big data distributed storage security technology and foster the integration of domestic cryptographic technology with computing storage technology. This work focused on addressing security issues, particularly information leakage, in distributed storage nodes. A dynamic and reconfigurable encryption storage solution was proposed, which considered the requirements for encryption performance and flexibility.A high-performance reconfigurable cryptographic module was designed based on the bio mapping framework. Based on this module, multiple storage pools equipped with different cryptographic algorithms were constructed to facilitate high-performance encryption and decryption operations on hard disk data. The scheme also enabled dynamic switching of cryptographic algorithms within the storage pools. A cryptographic protocol with remote online loading functions for cryptographic algorithms and keys was developed to meet the unified management and convenient security update requirements of reconfigurable cryptographic modules in various storage nodes. Furthermore, the scheme implemented fine-grained data encryption protection and logical security isolation functions based on cryptographic reconstruction technology. Experimental results demonstrate that the performance loss of this scheme for encryption protection and security isolation of stored data is approximately 10%. It provides a technical approach for distributed storage systems to meet the cryptographic application technology requirements outlined in GB/T 39786-2021 “Information Security Technology-Basic Requirements for Cryptography Applications” Level 3 and above in terms of device and computing security, application and data security.
distributed storage encryption, reconfigurable encryption technology, block device encryption, algorithm online loading, logical safety isolation
The National Key R&D Program of China (2018YFB220030), Key R&D Program of Shandong Province, China(2022CXGC010108)
馮志華, 張宇軒, 羅重, 等. 面向分布式存儲(chǔ)的高性能可重構(gòu)加密方案[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2023, 9(5): 59-70.
TP309
A
10.11959/j.issn.2096?109x.2023072
馮志華(1979? ),男,湖北孝感人,博士,北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所研究員,主要研究方向?yàn)橛?jì)算機(jī)及信息系統(tǒng)安全。
張宇軒(1998? ),男,河北石家莊人,北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所助理工程師,主要研究方向?yàn)橛?jì)算機(jī)應(yīng)用技術(shù)。
羅重(1994? ),男,湖北孝感人,北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所工程師,主要研究方向?yàn)橛?jì)算機(jī)應(yīng)用技術(shù)。
王佳寧(1980?),男,河北安平人,北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所高級(jí)工程師,主要研究方向?yàn)槊艽a管理理論、密碼應(yīng)用理論、密碼工程。
2022?12?06;
2023?03?21
張宇軒,759464216@qq.com
國(guó)家重點(diǎn)研發(fā)計(jì)劃(2018YFB220030);山東省重點(diǎn)研發(fā)計(jì)劃(2022CXGC010108)
FENG Z H, ZHANG Y X, LUO C, et al. High-performance reconfigurable encryption scheme for distributed storage[J]. Chinese Journal of Network and Information Security, 2023, 9(5): 59-70.