杜 彪,王蘇靈,王運兵,王 堅
(中國電子科技集團公司第三十研究所,四川 成都 610041)
一種基于第三方密碼服務的信息安全通用解決方案
杜 彪,王蘇靈,王運兵,王 堅
(中國電子科技集團公司第三十研究所,四川 成都 610041)
分析當前互聯網主流的業務架構和安全架構,發現大部分業務服務和安全服務由同一提供者提供,存在用戶信息不安全問題。于是,提出一種基于第三方密碼服務的信息安全通用解決方案。方案通過引入第三方密碼安全服務,使業務服務和安全服務相隔離,保證業務服務和安全服務提供者都無法單獨解析、篡改或偽造用戶數據,提升了用戶數據安全性。方案重點對系統結構設計、典型工作流程、應用業務適配、密碼模塊和互通密碼配置等內容進行描述,模擬實現結果表明,該方案具備可行性,用戶數據安全得到了有效增強。
第三方密碼;信息安全;安全架構;安全服務
本文主要對互聯網用戶信息安全展開研究。對于大部分互聯網應用,業務服務和安全服務均由應用提供者一體提供,使得應用提供者具備解析用戶數據的全部資源,從而無法有效確保用戶數據安全的問題。例如,云存儲系統提供者既提供了數據存儲服務又提供了數據安全服務,系統提供者擁有解析、篡改或偽造用戶數據的全部資源。因此,該模式并不能有效確保用戶數據的安全。針對存在這種“防外不防內”的用戶信息安全問題,提出一種基于第三方密碼服務的信息安全通用解決方案。通過引入第三方密碼安全服務提供者,使業務服務和安全服務提供者分離,保證業務服務和安全服務提供者都無法單獨解析、篡改或偽造用戶數據。
目前,互聯網用戶信息安全需求主要集中在用戶數據安全方面,主要包含數據存儲和數據傳輸兩方面安全,以確保數據在存儲和傳輸中的機密性和完整性。
現代密碼技術運用了數論、概率論、統計學等數學知識,并涉及信息論、計算復雜性、編碼理論等學科知識,為解決信息安全問題提供了可靠保障。它可用來對消息提供保密性,保障數據的完整性和真實性,對發送者的身份進行認證等[1]。
密碼學廣泛采用的密碼技術有三種。(1)加密算法。保密性主要通過一系列的加密算法來完成,如DES、AES、RSA等,主要用來保護在公開信道上傳輸的敏感信息不被竊取[1]。(2)Hash函數。通過Hash函數為網上傳輸的信息進行認證,保證數據的完整性和真實性[1]。(3)消息認證碼。消息認證碼是滿足某種安全性質的帶密鑰的Hash函數,也能有效保障數據的完整性和真實性。除此之外,密碼學還提供諸如數字簽名、密碼協議、身份認證、密胡分配與密銷管理等核心技術[1]。
2.1 方案的系統結構
該方案系統結構由應用服務、第三方密碼服務、應用終端和密碼模塊四部分實體組成,如圖1所示。應用服務和應用終端為業務提供方,第三方密碼服務和密碼模塊提供密碼服務。用戶通過應用終端使用應用服務時,業務執行中調用密碼模塊使用第三方密碼服務,從而保證用戶數據的存儲和傳輸安全。用戶密碼模塊可與各類型應用終端適配,使得第三方密碼服務可為與其適配后的各類應用服務提供密碼服務。

圖1 基于第三方密碼服務的系統架構
應用服務指的是各類型應用所提供的業務服務。該方案不會改變應用服務自身體系架構,只需在需要密碼服務的應用處,適配密碼模塊并調用密碼服務即可。適配到應用服務端的密碼模塊,既可以為應用服務自身配置等運維信息存儲提供密碼服務,也可以為應用服務器和應用終端間傳輸數據或身份認證數據提供密碼服務。
第三方密碼服務主要完成密碼模塊管理,包含密碼模塊注冊、密碼資源分發與更換、遠程管控和注銷等功能。
應用終端為應用服務的客戶端,需調用密碼模塊。密碼模塊形態上可隨應用終端適配和調用需求呈現出多樣化,可為軟件、硬件或者軟硬結合。當應用服務需要第三方密碼服務時,可視作應用終端,配置一個密碼模塊。
2.2 典型工作流程
基于第三方密碼服務的典型工作流程,如圖2所示。

圖2 基于第三方密碼服務的典型工作流程
結合圖2,以用戶使用基于第三方密碼的云存儲服務為例。用戶(應用終端)或應用服務先向第三方密碼安全服務申領密碼模塊;隨后發起存儲應用請求;根據需要,應用終端和應用服務之間可協商數據傳輸加密密鑰;協商完成后,上傳文件交互開始;用戶使用密碼模塊加密數據后,根據需要可使用傳輸加解密功能,將密態數據上傳至云存儲服務器上;最后,結束任務。
2.3 密碼模塊與應用業務適配
應用業務主要包括用戶數據的安全存儲和安全傳輸兩部分。用戶數據安全存儲是指當用戶將數據存儲在應用服務器上時,采用了第三方密碼進行數據加密存儲保護;用戶數據安全傳輸是指當數據傳輸給應用服務器或其他終端時,采用了第三方密碼進行數據加密傳輸保護。

圖3 應用業務適配示意
2.4 密碼模塊
密碼形態可分為“硬件+軟件庫”和純軟件兩大類。“硬件+軟件庫”中的硬件可采用PCI、PCI-E、USB三類接口,軟件庫可依據應用終端操作系統進行適配;純軟件則完全依據應用終端操作系統進行適配,但具備被拷貝風險。實際中,兩種形態需根據應用和用戶實際情況進行選擇。
密碼模塊需為應用提供密碼服務功能,應具備以下主要接口。
(1)密碼管理接口:載入密碼服務設施分發的密碼資源,boolean loadCipher(byte[]ciphers);
(2)加密接口:用于加密用戶數據data encrypt(byte[]key,byte[]data);
(3)解密接口:用于解密用戶數據data decrypt(byte[]key,byte[]data);
(4)密鑰協商接口:用于終端到終端互通時,協商互通密鑰keyNegotiate(byte[]thisID,byte[] thisKey,byte[]anotherID,byte[]anotherKey)。
2.5 互通密碼配置
數據通信是應用的基本功能需求之一。為實現安全互通,必須配置可支持互通的密碼。互通密碼配置主要包括應用兩兩互通和應用群組互通兩類配置需求。
2.5.1 應用兩兩互通密碼配置
應用兩兩互通主要采用密鑰協商機制產生互通密鑰,互通雙方根據配置的密碼和協商協議,動態產生互通密鑰。數據通信采用該互通密鑰進行加解密。密鑰協商協議主要參照公開的Diffie-Hellman協議進行改造[2],改造協議描述如下。例如,對Alice和Bob,他們的密鑰協商協議過程如下。
(1)Alice選擇a∈[1,p-1],計算Kba=gb(modp),并發送給Bob;
(2)Bob選擇b∈[1,p-1],計算Kba=gb(modp),并發送給Alice;
(3)Alice計算K=gab||R,R為預置的隨機數,全密碼模塊一致;
(4)Bob計算K=gab||R,R為預置的隨機數,全密碼模塊一致。
協議完成后,Alice和Bob共享密鑰K[3-5]。
互通雙方使用協商好的密鑰對相關業務進行加解密。協商密鑰在無業務互通操作半小時后失效,失效后需重新進行協商。
2.5.2 應用群組互通密碼配置
應用群組互通主要采用由第三方密碼服務分發互通密鑰方式解決。考慮到使用的便捷性,避免頻繁進行密鑰分發,密碼模塊預置兩類互通密鑰:全應用級互通密鑰和應用級互通密鑰。全應用級互通密鑰是指所有應用包括應用之間配置相同互通密鑰,可以實現群組任意互通;應用級互通密鑰是指具體某個應用內部可以實現群組任意互通。
當應用內部繼續分組互通時,需要由第三方密碼服務規劃并分發應用分組互通密鑰。分組互通密鑰應包含“應用ID+分組ID+分組互通密鑰數據”,應用根據業務需要使用該密鑰。
2.6 標準規范
由于應用服務產品種類較多,為避免出現繁多的適配方式及標準,避免行業混亂或壟斷,得不到有效發展,需制定工業標準,使應用服務產品和第三方密碼產品自由靈活適配,促進行業健康發展[6]。
根據適配需求分析,需要制定《應用與密碼模塊適配接口及調用標準》。該標準主要描述密碼模塊與應用適配接口形態及供其調用接口。受篇幅所限,該標準的制定將在后續研究中進一步細化。
按照本文方案,通過模擬實現云存儲服務并使用基于第三方密碼的安全服務,驗證方案的可行性。依據實驗進展情況和結果,得出可行性驗證結論。
3.1 模擬實現方案
模擬方案與本文方案架構保持一致,主體包括云存儲服務模擬軟件、密碼服務模擬軟件、云存儲終端模擬軟件和密碼模塊模擬動態庫軟件,模擬系統結構如圖4所示。

圖4 基于第三方密碼服務的云存儲服務架構
3.1.1 驗證功能及過程
驗證基于第三方密碼服務的用戶數據云存儲加密是否可行及其安全性分析,驗證過程如下。
(1)首先由密碼服務模擬軟件向密碼模塊分發含密碼資源的模擬動態庫;
(2)云存儲終端模擬軟件調用密碼模塊,模擬動態庫對用戶數據加密;
(3)云存儲終端模擬軟件將加密數據傳輸到云存儲服務模擬軟件處,使用云存儲服務;
(4)云存儲服務模擬軟件嘗試打開用戶加密數據,并記錄打開結果;
(5)云存儲終端模擬軟件從云存儲服務模擬軟件處,獲取用戶加密數據;
(6)云存儲終端模擬軟件嘗試打開用戶解密數據并記錄結果;
(7)第三方密碼服務嘗試打開用戶數據,并記錄結果。
3.1.2 預期結果
(1)云存儲終端調用密碼模塊加密功能,實現用戶數據加密;
(2)云存儲服務收到用戶數據文件后,無法查看用戶數據;
(3)云存儲終端從云存儲服務獲取用戶數據文件,可以調用密碼模塊解密功能后,正常打開文件并查看數據;
(4)第三方密碼服務因沒有用戶數據文件而無法查看用戶數據。
3.2 模擬實現結果
經過模擬實現,依據驗證過程,實現結果記錄如下。
(1)云存儲終端模擬軟件及加密用戶數據文件如圖5所示。顯示調用第三方密碼服務后的加密數據文件數據為亂碼,起到了數據存儲加密作用。

圖5 云存儲終端模擬軟件及加密文件截圖
(2)云存儲服務提供存儲服務時,收到并打開用戶數據文件如圖6所示。顯示云存儲服務打開用戶數據文件數據為亂碼,無法查看用戶數據,起到了數據加密保護作用。

圖6 云存儲服務模擬軟件及加密文件截圖
(3)用戶使用云存儲終端獲取用戶數據文件后,調用密碼模塊解密功能解密用戶數據文件如圖7所示。顯示用戶使用解密功能可以正常打開文件查看數據,表明方案具備可行性。

圖7 云存儲終端模擬軟件及解密文件截圖
第三方密碼服務嘗試打開用戶數據,但因無用戶數據文件查看用戶數據失敗,如圖8所示。

圖8 密碼服務模擬軟件截圖
該模擬方案結果與預期結果一致,證明了本文方案具有可行性,同時也驗證了用戶業務和基于第三方密碼安全相隔離方案天然的安全性。
近年來,信息安全的重要性越來越突顯。在廣泛吸收信息安全相關研究成果后,本文設計了一種基于第三方密碼服務的信息安全通用解決方案,并通過模擬實現驗證了其可行性和安全性。業務和安全相分離的設計不僅有利于安全的獨立性,也必然會增強安全的專業性,進一步增強用戶數據的安全。后期將對密碼模塊的普適性及便捷性、密鑰管理的安全性、群組互通密鑰更換期間業務不影響性等進一步展開深入研究[7-8]。總體來說,基于第三方密碼服務的信息安全,將業務和安全相隔離,具有天然的安全基因,也必將會在重要信息領域不斷得到應用,值得進一步深入研究和提升。
[1] 張紹蘭.幾類密碼Hash函數的設計和安全性分析[D].北京:北京郵電大學,2011. ZHANG Shao-lan.Design And Security Analysis on Several Cryptography Hash Functions [D]. Beijing: Beijing University of Posts and Telecommunications Technology,2011.
[2] 趙婷.基于身份的可認證密鑰協商協議研究[D].西安:西安理工大學,2008. ZHAO Ting.Research on ID-Based Authenticated [D]. Xi’An:Xi’An University of Technology,2008.
[3] Diffe W,Hellman M.New Directions in Cryptography [J].IEEE Transaetions On Information Theory, 1976,22(06):644-654.
[4] Joux A.A One Round Protocol for Tripartite Diffie-Hellman.ANTS IV,LNCS 1838[C].Springer-Verlag, 2000,17(04):385-394.
[5] 劉成林.關于密鑰協商協議的相關研究[D].濟南:山東大學,2007. LIU Cheng-lin.Research on The Key Agreement Protocol[D].Jinan:Shandong University,2007.
[6] 景旭.管理型SaaS信息安全關鍵技術研究[D].楊凌:西北農林科技大學,2013. JING Xu.Research on Key Technology of Information Security In Management-Type SAAS[D].Yangling: Northwest A&F University,2013.
[7] 何明星.面向群的分布式網絡密鑰管理[D].成都:西南交通大學,2003. HE Ming-xing.Group-Oriented Key Management In Distributed Networks[D].ChengDu:Southwest Jiaotong University,2003.
[8] 黃鼎隆.信息安全感知模型及其應用[D].北京:清華大學,2008. HUANG Ding-long.Perception Model Of Information Security and Its Applications[D].Beijing:TsingHua University,2008.

杜 彪(1982—),男,碩士,工程師,主要研究方向為信息安全與通信保密;
王蘇靈(1982—),女,碩士,工程師,主要研究方向為信息安全與通信保密;
王運兵(1980—),男,碩士,高級工程師,主要研究方向為密碼學及其應用;
王 堅(1975—),男,碩士,高級工程師,主要研究方向為信息安全與通信保密。
A General Solution for Information Security based on Third Party Cryptographic Service
DU Biao, WANG Su-ling, WANG Yun-bing, WANG Jian
(No.30 Institute of CETC, Chengdu Sichuan 610041, China)
The current mainstream business architecture and security architecture of the Internet are analyzed, finding that most of the business services and security services are provided by the same provider, and that there exist security problem of user information. In light of this situation, a general solution for information security based on third party cryptographic service is proposed. By introducing the third party password security services into the scheme, the business services are separated from the security services, thus to ensure the business services and security services providers unable to make independent analysis, tampering or forgery of user data, and enhance the security of user data. The program focuses on descriptions of system structure design, typical workflow, application service adapter, cipher module and interworking cipher configuration etc., and the simulation results indicate that the scheme is feasible, and the user data security effectively enhanced.
third party cipher; information safety; security architecture; security service
TN918.1
A
1002-0802(2016)-12-1686-05
10.3969/j.issn.1002-0802.2016.12.021
2016-08-13
2016-11-21 Received date:2016-08-13;Revised date:2016-11-21