国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于服務(wù)器密碼機的數(shù)據(jù)加密保護技術(shù)研究

2022-09-09 03:15王森
電子技術(shù)與軟件工程 2022年13期
關(guān)鍵詞:句柄密鑰密碼

王森

(國家信息中心 信息與網(wǎng)絡(luò)安全部 北京市 100045)

數(shù)據(jù)是重要的戰(zhàn)略資源,做好數(shù)據(jù)安全的意義重大。數(shù)據(jù)安全涉及國家安全及高價值數(shù)字資產(chǎn)保護,同時數(shù)據(jù)管理面臨篡改、竊取、破獲等安全威脅,與拒絕服務(wù)攻擊、漏洞攻擊等網(wǎng)絡(luò)攻擊表現(xiàn)形式不同,數(shù)據(jù)安全事件破壞性不那么強烈,但導致的不良后果及負面影響巨大而且長遠,重要數(shù)據(jù)泄露后便無法徹底清除回收,涉及敏感個人信息的數(shù)據(jù)泄露往往對現(xiàn)實生活安全產(chǎn)生影響。

數(shù)據(jù)保護面臨的主要威脅源于惡意攻擊者實施的數(shù)據(jù)竊取和篡改,數(shù)據(jù)泄露產(chǎn)生的不良后果和負面影響通常巨大并且長遠。泄露的重要數(shù)據(jù)無法徹底清除回收,包括敏感個人信息的數(shù)據(jù)泄露往往會對人們現(xiàn)實生活安全產(chǎn)生影響。目前各方面在建設(shè)有效的數(shù)據(jù)安全保障體系方面開展了積極探索,數(shù)據(jù)安全保護的措施包括數(shù)據(jù)分類分級保護、數(shù)據(jù)安全風險評估及監(jiān)測預警、數(shù)據(jù)安全應(yīng)急處置、數(shù)據(jù)安全審查等方面方法,但相關(guān)技術(shù)標準和實施方案仍不成熟,各方面在建設(shè)有效的數(shù)據(jù)安全保障體系方面開展了積極探索。相較之下,采用密碼保護是公認的最有效、最可靠、最經(jīng)濟的保障方案,通過密碼技術(shù)加密將保護數(shù)據(jù)加密成密文,即使發(fā)生數(shù)據(jù)泄露,敵手也無法還原出有意義的明文信息原文。

近年來制定實施的出臺的多項網(wǎng)絡(luò)安全政策文件、規(guī)范標準在對數(shù)據(jù)加密或數(shù)據(jù)保密性方面提出要求?!吨腥A人民共和國網(wǎng)絡(luò)安全法》(2017年6月1日施行),對網(wǎng)絡(luò)運行安全進行規(guī)范,提出“防止網(wǎng)絡(luò)數(shù)據(jù)泄露或者被竊取、篡改”,應(yīng)“采取數(shù)據(jù)分類、重要數(shù)據(jù)備份和加密等措施”(第二十一條)?!蛾P(guān)鍵信息基礎(chǔ)設(shè)施保護條例》中關(guān)于數(shù)據(jù)加密要求進行規(guī)范,“采取技術(shù)保護措施和其他必要措施,應(yīng)對網(wǎng)絡(luò)安全事件,防范網(wǎng)絡(luò)攻擊和違法犯罪活動,保障關(guān)鍵信息基礎(chǔ)設(shè)施安全穩(wěn)定運行,維護數(shù)據(jù)的完整性、保密性和可用性”(第六條)?!秱€人信息保護法》中提出在個人信息處理過程中,應(yīng)“采取相應(yīng)的加密、去標識化等安全技術(shù)措施”(第五十一條)?!禛B/T 22239-2019 信息安全技術(shù)網(wǎng)絡(luò)安全等級保護基本要求》對于等級保護第三級及以上安全要求對象,在“安全計算環(huán)境”安全計算環(huán)境方面要求中“應(yīng)采用密碼技術(shù)保證重要數(shù)據(jù)在存儲過程中的保密性,包括但不限于鑒別數(shù)據(jù)、重要業(yè)務(wù)數(shù)據(jù)和重要個人信息等”(位于8.1.4.8 條)?!禛B/T 41479-2022 信息安全技術(shù) 網(wǎng)絡(luò)數(shù)據(jù)處理安全要求》在數(shù)據(jù)存儲方面提出相關(guān)要求“存儲重要數(shù)據(jù)和個人信息等敏感網(wǎng)絡(luò)數(shù)據(jù),應(yīng)采用加密、安全存儲、訪問控制、安全審計等安全措施”(位于5.3 條)。

使用密碼對數(shù)據(jù)進行保護時,密碼本身安全性同樣應(yīng)予以重視。因為只有密碼技術(shù)只有得到合規(guī)、正確、有效應(yīng)用,才能發(fā)揮支撐作用,亂用、誤用密碼技術(shù),使用了不合規(guī)、不安全的密碼產(chǎn)品會造成比不用密碼技術(shù)更廣泛、更嚴重的安全問題。為了規(guī)范密碼應(yīng)用和管理,《中華人民共和國密碼法》制定實施。配套的密碼技術(shù)標準和應(yīng)用標準也在不斷豐富完善,目前在密標委已制定119 項密碼行業(yè)標準,并通過網(wǎng)站進行發(fā)布,多項已上升為國家標準,如《信息系統(tǒng)密碼應(yīng)用基本要求》信息系統(tǒng)密碼應(yīng)用基本要求、《密碼模塊安全要求》密碼模塊安全要求等。在使用密碼進行技術(shù)實現(xiàn)數(shù)據(jù)安全保護過程中應(yīng)充分遵從以上密碼安全標準。

從數(shù)據(jù)安全需求入手,本文介紹了在我國現(xiàn)有規(guī)章制度和技術(shù)標準體系下的密碼加密數(shù)據(jù)保護相關(guān)技術(shù),完成了對相關(guān)實踐總結(jié)。

1 基于服務(wù)器密碼機的數(shù)據(jù)保護

在信息系統(tǒng)應(yīng)用安全中,一直重視采用加密技術(shù)進行防護。例如,在早期互聯(lián)網(wǎng)應(yīng)用登錄中,數(shù)據(jù)庫用MD5 存儲登錄口令(password)的哈希值,用戶登錄認證時計算用戶提交的口令MD5 結(jié)果,比對數(shù)據(jù)庫進行判斷,當哈希值相等時完成身份認證判斷。采用口令MD5 方式,實際上保護了口令的明文,對數(shù)據(jù)泄露后數(shù)據(jù)保護具有一定的作用,但目前有很多攻擊方法可以通過MD5 值破解相應(yīng)原文,在現(xiàn)有密碼管理政策中,使用MD5 已經(jīng)屬于使用不合規(guī)的密碼算法了。

針對數(shù)據(jù)庫中大量的敏感信息,應(yīng)該采用更安全的加密方案?!禛B/T 39786-2021 信息安全技術(shù) 信息系統(tǒng)密碼應(yīng)用基本要求》是開展信息系統(tǒng)建設(shè)應(yīng)用密碼技術(shù)的主要依據(jù)。目前有三種方式,一是存儲在具有商用密碼產(chǎn)品型號的加密硬盤中;二是存儲在外部具有商用密碼產(chǎn)品型號的存儲加密設(shè)備中;三是利用外部服務(wù)器密碼機加密后再進行存儲。第一種、第二種方式雖然使用比較最方便,數(shù)據(jù)加密存儲和解密讀取對應(yīng)用都是“透明”的,不需要修改現(xiàn)有應(yīng)用,但缺點也比較明顯,價格較高不適用于低成本的應(yīng)用場景。采用第三種部署服務(wù)器密碼機的方式,需要在代碼上進行調(diào)整,并且要改變原有拓撲結(jié)構(gòu)。優(yōu)勢是價格相對便宜,方案比較成熟,數(shù)據(jù)加密由業(yè)務(wù)控制,可以防止防止數(shù)據(jù)庫或存儲管理員竊取數(shù)據(jù)等安全事件威脅發(fā)生。

在實踐工作中,主要采用部署服務(wù)器密碼機,通過在應(yīng)用中調(diào)用服務(wù)器密碼機的加/解密接口,將數(shù)據(jù)傳遞給密碼機,獲取計算結(jié)果后透傳給數(shù)據(jù)庫進行存儲。

2 服務(wù)器密碼機部署

服務(wù)器密碼機是以整機形態(tài)出現(xiàn),具備完整密碼功能的產(chǎn)品,通常實現(xiàn)數(shù)據(jù)加解密、簽名/驗證、密鑰管理、隨機數(shù)生成等功能。(除服務(wù)器密碼機外,還有鏈路密碼機、簽名驗簽密碼機、金融密碼機等,本文以下用密碼機特指服務(wù)器密碼機)。應(yīng)用密碼機滿足了密碼應(yīng)用的多種安全性要求,一是密碼機本身具有較高的安全性,自身能夠抵御黑客遠程控制或物理拆卸等攻擊。二是密碼機提供了符合政策標準要求的密碼算法。三是密碼機實現(xiàn)了安全的密鑰管理,能夠防止用戶密鑰泄漏。四是密碼機是支持密碼運算的特定部件,運算速度較高。目前我國服務(wù)器密碼機運算速度能夠滿足應(yīng)用需求,SM3、SM4 處理速率可達10Gb/秒,SM2簽名速率可達150 萬次/秒。

密碼機的硬件架構(gòu)分成兩類型。一是采用工控機+密碼卡(PCI 接口),密碼卡負責執(zhí)行密鑰管理和密碼運算,在工控機上提供對外服務(wù)接口。另一類密碼機采取自主設(shè)計芯片的技術(shù)路線,將密碼芯片集成到計算機主板上。如圖1 所示,從外觀上看密碼機和普通服務(wù)器相似,可以放置在機房機架中。

圖1 :某廠商密碼機外觀

2.1 密碼機的部署方式

按照相關(guān)技術(shù)規(guī)范要求,通常密碼機和應(yīng)用服務(wù)器應(yīng)采用直連方式,即應(yīng)用服務(wù)器的一個網(wǎng)口與服務(wù)密碼機服務(wù)網(wǎng)口連接(服務(wù)密碼機通常具有多個服務(wù)網(wǎng)口及一個管理網(wǎng)口)。

如果不能滿足應(yīng)用服務(wù)器與密碼機直連要求,在同一個機房中可以通過交換機設(shè)置Vlan 或進行訪問控制的方式,保護密碼機訪問。

有時密碼機部署在安全管理區(qū)或密碼設(shè)備管理區(qū),這種分區(qū)劃分便于統(tǒng)一進行訪問控制,也可以實現(xiàn)密碼設(shè)備和安全設(shè)備的集中管理。此時如果應(yīng)用服務(wù)器和密碼機采用跨區(qū)方式部署,必須采用通信信道保護。因為應(yīng)用服務(wù)調(diào)用密碼機服務(wù)時,需要將明文等信息傳遞至密碼機進行運算,在通信信道上傳遞的數(shù)據(jù)是明文形式,如果通信不采用身份認證、加密等保護措施,系統(tǒng)將產(chǎn)生新的數(shù)據(jù)泄露風險點。密碼機部署架構(gòu)如圖2、圖3 所示。

圖2 :直連模式和交換機連接模式

圖3 :跨網(wǎng)段訪問模式

2.2 密碼機配置管理

應(yīng)用服務(wù)器通過密碼機廠商提供的配套驅(qū)動程序,設(shè)置密碼機IP 地址、認證口令等,配置成功后可以實現(xiàn)像本地函數(shù)一樣的調(diào)用方式。

可以通過密碼機的服務(wù)接口對其狀態(tài)進行檢查,密碼機采用《GM/T 0018 密碼設(shè)備應(yīng)用接口規(guī)范》中設(shè)備狀態(tài)結(jié)構(gòu)體,返回的設(shè)備相關(guān)信息,結(jié)構(gòu)體各字段如下所示。

為獲取密碼機支持的對稱加密算法,詳細介紹SymAlgAbility 含義,該字段長度為4 字節(jié),該值代表為對稱加密算法標識按位“或”運算結(jié)果。對稱加密算法標識的編碼規(guī)則為:從低位到高位,第0 位到到第7 位表示分組密碼工作模式,第8 位到第31 位按位表示分組密碼算法,例如:

SGD_SM1_ECB:0000 0000 0000 0000 0000 0001 0000 0001(0x00 00 01 01)

SGD_SM4_ECB:0000 0000 0000 0000 0000 0100 0000 0001(0x00 00 04 01)

SGD_SM4_CBC:0000 0000 0000 0000 0000 0100 0000 0010(0x00 00 04 02)、

國密對稱加密算法包括SM1、SSF33、SM4、ZUC,工作模式包括ECB( Electronic Code Book 電碼本模式)、CBC(Cipher Block Chaining 密碼分組鏈接模式)、CFB(Ciphertext Feedback 密 文 反 饋 模 式)、OFB(Output Feedback 輸出反饋模式)等。ECB、CBC、CFB、OFB的編碼為01、02、04、08。

2.3 密碼機的調(diào)用

以典型Web 應(yīng)用將密文存儲到數(shù)據(jù)庫為例,系統(tǒng)結(jié)構(gòu)如圖4 所示。密碼機完成初始化后,進入就緒狀態(tài),應(yīng)用服務(wù)器可以通過接口調(diào)用密碼機服務(wù)。

圖4 :部署服務(wù)器密碼機的系統(tǒng)架構(gòu)圖

2.3.1 數(shù)據(jù)加密

當應(yīng)用中產(chǎn)生需要寫入數(shù)據(jù)庫的數(shù)據(jù)時,在調(diào)用數(shù)據(jù)庫應(yīng)用接口執(zhí)行Insert 命令前,調(diào)用密碼機服務(wù)器的對稱加密服務(wù),根據(jù)密碼設(shè)備接口標準,對稱加密函數(shù)名聲明應(yīng)為SDF_Encrypt,并根據(jù)函數(shù)聲明設(shè)置明文數(shù)據(jù)、密鑰句柄等參數(shù)等,根據(jù)接口函數(shù)返回值,獲得加密后的密文,并將密文存儲到數(shù)據(jù)庫中。當應(yīng)用從數(shù)據(jù)庫中讀取數(shù)據(jù)時,應(yīng)首先解密密文,密碼設(shè)備解密函數(shù)的聲明為SDF_Decrypt。如圖5 所示。

圖5 :數(shù)據(jù)加密及存儲到數(shù)據(jù)庫流程

服務(wù)器密碼機的接口使用是一個有狀態(tài)的過程,需要遵循一定的順序,并且需要維持上下文,包括打開設(shè)備、創(chuàng)建會話、加密、關(guān)閉會話、關(guān)閉設(shè)備等流程,每個過程的函數(shù)聲明和作用如下:

0.SDF_GenerateKeyWithKEK:創(chuàng)建加密密鑰,獲得加密密鑰句柄;

1.SDF_OpenDevice: 打開設(shè)備,獲得設(shè)備句柄;

2.SDF_OpenSession: 創(chuàng)建會話,獲得會話句柄;

3.SDF_Encrypt: 利用會話密鑰加密數(shù)據(jù);

4.SDF_CloseSession: 關(guān)閉會話,銷毀會話句柄;

5.SDF_CloseDevice: 關(guān)閉設(shè)備,銷毀設(shè)備句柄。

創(chuàng)建加密的密鑰,函數(shù)聲明如下,

uiKeyBits 指定生成加密密鑰的長度,SM4需要密鑰長度為16 字節(jié);uiAlgID 是算法標識,SM4 算法標識為0x00 00 04 01;uiKEKIndex 為密碼機內(nèi)部存儲密鑰加密密鑰的索引值,加密密鑰在密碼機中必須不能以明文方式存儲,因此在密碼機中密鑰的存儲應(yīng)采用相應(yīng)的密鑰加密密鑰,加密后進行存儲,密鑰加密密鑰KEK 在采用索引方式引用;phKeyHandle 為返回的密鑰句柄,應(yīng)用于加密、解密函數(shù)。

2.3.2 完整性保護

完整性保護的目的是為了防止數(shù)據(jù)被篡改,因此數(shù)據(jù)的完整性保護與機密性保護同樣重要。數(shù)據(jù)完整性保護機制是在數(shù)據(jù)存儲時計算敏感數(shù)據(jù)的雜湊值,并一起保存在數(shù)據(jù)庫中。讀取數(shù)據(jù)庫時獲得數(shù)據(jù)后,應(yīng)采用相同的哈希算法計算雜湊值,通過比較計算雜湊結(jié)果和數(shù)據(jù)存儲時的雜湊值,當兩值相同時可以證明數(shù)據(jù)記錄沒有被篡改。這里必須注意的是,如果攻擊者能夠修改存儲數(shù)據(jù),可以將數(shù)據(jù)和雜湊值一同修改,即替換修改后數(shù)據(jù)的雜湊值。因此,用于完整性保護時,雜湊算法與密鑰一同使用,生產(chǎn)的雜湊值稱為MAC,這樣的雜湊算法稱為帶密鑰的雜湊算法(Keyed-hash Message Authentication Code,HMAC)。采用SM3 雜湊算法,密鑰K、消息D,計算HMAC 的公式如下:

密碼機計算MAC 接口函數(shù)原型為

hSessionHandle 代表建立的密碼機會話句柄,hKeyHandle 代表計算HMAC 需要的密碼句柄,uiAlgID 代表制定的MAC 算法,SM3 算法標識為SGD_SM3(0x00 00 00 01),pucData 代表需要進行MAC 計算的明文。

以如下的數(shù)據(jù)庫模型為例,表設(shè)計為(id,姓名,手機號),進行加密安全性保護之后表結(jié)構(gòu)(id,姓名,加密[手機號],MAC)。手機號涉及個人敏感信息,采用SM4 加密保護,并將一條數(shù)據(jù)記錄中字段拼接成整體計算MAC,保存在字段MAC 中。讀取數(shù)據(jù)時,首先解密手機號,再拼接計算MAC`,計算MAC 與MAC`是否相等,判斷記錄的完整性是否被破壞。如圖6 所示。

圖6 :數(shù)據(jù)加密保護示例

3 云服務(wù)器密碼機

隨著大部分應(yīng)用采用云的方式部署,部署獨立的密碼機問題越來越多。首先,在云環(huán)境下用戶無法自行部署,密碼機不能放在云服務(wù)的機房中;其次,云環(huán)境下服務(wù)器的拓撲結(jié)構(gòu)超出了簡單的架構(gòu),必須為了實體服務(wù)器做好網(wǎng)絡(luò)上的訪問控制,才能滿足應(yīng)用服務(wù)器和密碼機之間的通信保護;第三,云環(huán)境下應(yīng)用服務(wù)器數(shù)量多,對密碼機數(shù)服務(wù)能力、運算速度、密鑰管理數(shù)量等要求較高,使用獨立的密碼機管理復雜度較大。

為了滿足云環(huán)境下的密碼機使用需求,云服務(wù)商與密碼機設(shè)備廠商合作開發(fā)了云服務(wù)器密碼機(cloud cryptographic server),可以在云計算環(huán)境下,采用虛擬化技術(shù),以網(wǎng)絡(luò)形式,能夠為多個租戶的應(yīng)用系統(tǒng)提供密碼服務(wù)的密碼設(shè)備。虛擬密碼機(virtual cryptographic server)云服務(wù)器密碼機上,采用虛擬化技術(shù)創(chuàng)建出來的提供類同實體密碼機服務(wù)的密碼服務(wù)實例。云服務(wù)器密碼機和虛擬密碼機由被稱作cloud-hosted hardware security module(CHSM)和virtual security module(VSM)。

云服務(wù)器密碼機提供了管理對接API,并支持創(chuàng)建多個虛擬密碼機,系統(tǒng)架構(gòu)如圖7。從系統(tǒng)架構(gòu)可以看出,將實體的密碼機進行虛擬化后,使一臺實體密碼機能夠提供多臺獨立服務(wù)的虛擬密碼機(VSM),提高了密碼機的使用效率。云平臺通過CHSM 的管理接口,并對底層硬件設(shè)備進行高度抽象,屏蔽了硬件差異,為上層應(yīng)用提供統(tǒng)一服務(wù)。

圖7 :云服務(wù)器密碼機系統(tǒng)架構(gòu)

目前并不是所有的密碼機都可以支持在云環(huán)境部署,并且能夠進行云化部署的密碼機,應(yīng)符合《GM/T 0088-2020云服務(wù)器密碼機管理接口規(guī)范》。除公有云平臺外,在政務(wù)云中建設(shè)云服務(wù)密碼管理或云密碼資源池,還應(yīng)該遵守相關(guān)要求,一是云平臺自身使用的密碼資源池應(yīng)當與供租戶使用的密碼資源池分開;二是一個密碼資源池的服務(wù)范圍最大為一個機房;三是基于云平臺建設(shè)的基礎(chǔ)設(shè)施安全支撐平臺應(yīng)當使用獨立的密碼資源池。以上密碼機的資質(zhì)及云平臺密碼資源池要求,應(yīng)被作為云環(huán)境下密碼安全性評估的重要要求。

4 結(jié)束語

近年來,數(shù)據(jù)加密存儲越來越被重視,相較于只用哈希算法進行簡單加密,應(yīng)用中使用的算法強度、密鑰管理、密碼模塊等方面及國產(chǎn)化適配性在更多政策文件、規(guī)范標準中提出要求。越來越多的應(yīng)用場景按要求使用了服務(wù)器密碼機,但是仍然存在沒有使用、使用不規(guī)范等問題,存在只有機密性等級高的數(shù)據(jù)信息才需要使用密碼機等認識偏差。本文從詳細介紹了有關(guān)服務(wù)器密碼機部署模式、調(diào)用方法、密鑰管理等相關(guān)技術(shù),并對云環(huán)境上服務(wù)器密碼機的管理和使用詳細進行了介紹,能夠?qū)?yīng)用系統(tǒng)中數(shù)據(jù)加密保護起到促進作用。

猜你喜歡
句柄密鑰密碼
探索企業(yè)創(chuàng)新密鑰
密碼里的愛
密碼系統(tǒng)中密鑰的狀態(tài)與保護*
密碼抗倭立奇功
一種對稱密鑰的密鑰管理方法及系統(tǒng)
基于ECC的智能家居密鑰管理機制的實現(xiàn)
編譯程序語法分析句柄問題分析與探討
奪命密碼
白银市| 汽车| 英山县| 垫江县| 黄浦区| 庆安县| 阿鲁科尔沁旗| 泉州市| 桐梓县| 满洲里市| 琼结县| 河间市| 乐清市| 信阳市| 巴南区| 加查县| 哈巴河县| 桐庐县| 延津县| 河池市| 河源市| 平度市| 安溪县| 嘉义市| 德庆县| 泊头市| 威远县| 庆元县| 伊吾县| 龙山县| 墨玉县| 曲阳县| 义马市| 新竹县| 松江区| 新乡市| 志丹县| 海淀区| 庆城县| 左贡县| 元谋县|