李 文 李忠獻 崔 軍(中國民航大學(xué)電子信息與自動化學(xué)院 天津 0000)(北京郵電大學(xué)計算機學(xué)院 北京 00876)(天津靈創(chuàng)智恒軟件有限公司 天津 0050)
目前公司企業(yè)信息、商業(yè)機密和個人敏感信息大多數(shù)是以電子文檔的形式進行存儲、轉(zhuǎn)發(fā)和流通的,文件密級標簽的安全問題也隨之出現(xiàn),標簽易被篡改、易分離、標簽和文件主體不對應(yīng)關(guān)系等安全隱患問題非常突出。根據(jù)相關(guān)國家安全標準規(guī)定[1-2],對安全信息系統(tǒng)中產(chǎn)生、傳輸、存儲、歸檔和輸出的信息均需要進行標識,密級標簽應(yīng)與電子文件主體不可分離,而標簽自身不可篡改[3]。隨著涉密信息系統(tǒng)分級保護標準和信息系統(tǒng)等級保護標準以及涉密電子文件管理辦法工作的開展,對電子文件進行標簽標識,有效地解決了涉密文件主體的面臨的安全問題,但就密級標簽自身而言,還存在標簽自身易被篡改、標簽和文件主體不存在一一對應(yīng)關(guān)系等諸多隱患。此外對電子文檔的保護并不僅僅是利用安全標簽對文檔進行控制,重點在于結(jié)合現(xiàn)有密碼技術(shù),實現(xiàn)安全標簽自身的全方位、立體化的監(jiān)控,達到對電子文件全生命周期安全管理的目的[4]。
為了實現(xiàn)密級標簽和電子文件不可分離,自身不可篡改的目標,當前系統(tǒng)通過可信賴的第三方CA(Certificate Authority)向系統(tǒng)中的各個用戶發(fā)行公鑰證書來實現(xiàn)對文件和標簽進行安全性保護。然而這種需要證書的公鑰密碼體制(PKI)證書管理復(fù)雜,需要建造復(fù)雜的CA系統(tǒng),且證書發(fā)布、吊銷、驗證和保存需要占用較多資源。為了簡化PKI公鑰體系架構(gòu)中CA對用戶證書的管理,Shamir[5]于1984年提出了基于身份標識的密碼學(xué)(IBC)思想。2016年3月28號國家頒布了GM/T 0044-2016 《SM9標識密碼算法》標準[6],使基于身份標識的公鑰密碼體制得到更為廣泛地應(yīng)用和實施。標識密碼體系不需要通過第三方保證其公鑰的真實性,與基于證書的公鑰密碼系統(tǒng)相比,系統(tǒng)中的密鑰管理環(huán)節(jié)可以得到適當簡化。因此將基于標識的公鑰密碼技術(shù)引入到密級標簽的設(shè)計體系中,具有安全性高、體系結(jié)構(gòu)簡單和系統(tǒng)成本低的優(yōu)點,并具有重大的理論意義和廣闊的應(yīng)用前景。
本文針對傳統(tǒng)的PKI系統(tǒng)證書頒發(fā)和管理復(fù)雜性問題,討論了涉密文件的密級標簽控制模型。該模型是在文件密級標簽的基礎(chǔ)上,利用基于身份標識的公鑰密碼體制,應(yīng)用數(shù)字簽名實現(xiàn)對標簽和電子文檔的不可分離、不可篡改和完整性,利用數(shù)字信封保證文件和標簽的安全性,并極大地簡化了管理密碼系統(tǒng)的復(fù)雜性。
標識密碼系統(tǒng)IBC(Identity-Based Cryptograph),又稱基于身份的密碼系統(tǒng),是著名以色列密碼學(xué)家Shamir于1984年提出的概念。SM9標識密碼算法是一種基于雙線相對的標識密碼算法,利用用戶的身份標識生成用戶的公、私密鑰對。SM9密碼算法的密鑰長度為256位。SM9密碼算法的應(yīng)用與管理不需要數(shù)字證書、證書庫或密鑰庫。標識密碼算法選用了安全性好、運算速率高的R-ate對[7]。設(shè)(G1,+)、(G2,+)、(GT,·)是三個循環(huán)群[8],G1、G2、GT的階均為素數(shù)N,P1是G1的生成元,P2是G2的生成元,存在G2到G1的同態(tài)映射φ,使得φ(P2)=P1;雙線性對e是G1×G2→GT的映射,滿足如下條件:
(1) 雙線性。對任意的P∈G1,Q∈G2,a,b∈ZN,有e([a]P,[b]Q)=e(P,Q)ab。
(2) 非退化性。e(P1,P2)≠1GT。
(3) 可計算性。對任意的P∈G1,Q∈G2,存在有效的算法計算e(P,Q)[9]。
標簽由標簽頭和標簽體組成,標簽體可加密。標簽的整體結(jié)構(gòu)如圖1所示。
圖1 標簽的整體結(jié)構(gòu)
其中標簽頭描述標識自身信息。標簽體描述與標簽相對應(yīng)的涉密文件實體的內(nèi)容、安全、日志以及擴展屬性信息[8]。
基于SM9標識密碼體制可以用在電子文件密級標簽系統(tǒng)中,基于標識密碼的電子文檔密級標簽管理系統(tǒng)將用戶具有身份標識的e-mail地址作為公鑰,用戶私鑰由KGC生成,避免數(shù)字證書的頒發(fā)及管理等操作,系統(tǒng)結(jié)構(gòu)得到了簡化[10]。下面給出了基于標識密碼的密級標簽控制模型,該模型將基于SM9標識密碼算法的加密、簽名和私鑰分發(fā)相結(jié)合,保證涉密文件的安全管理。從客戶端角度看,主要跟KGC和標簽服務(wù)器交互,通過與KGC交互獲得私鑰,與標簽服務(wù)器交互實現(xiàn)電子文件的上傳和訪問。
系統(tǒng)主要由涉密客戶端、標簽服務(wù)器和KGC三部分組成,具體架構(gòu)如圖2所示。
圖2 基于標識密碼的電子文件密級標簽管理系統(tǒng)
(1) 涉密客戶端 為了確保密級標簽和文件的安全,應(yīng)采用密碼技術(shù)實現(xiàn)電子文件和密級標簽在全生命周期的真實性、完整性和不可否認性。用戶通過涉密客戶端進行涉密文件的上傳和訪問標簽服務(wù)器。涉密客戶端相應(yīng)密碼模塊應(yīng)包括數(shù)字簽名驗簽?zāi)K、對稱加密解密模塊、基于標識密碼的加密解密模塊。
(2) 標簽服務(wù)器 標簽服務(wù)器接收涉密客戶端上傳的涉密文件并提供用戶涉密文件的訪問功能,還能保證涉密文件的安全存儲。
(3) KGC(密鑰生成中心) KGC是私鑰生成中心,用戶從KGC完成注冊及私鑰的下載,才能進行計算機上文件的安全管控。實現(xiàn)用戶SM9 密鑰的注冊、生成、分配、存儲、保護、恢復(fù)、注銷和歸檔,以及對密鑰申請的授權(quán)、歸檔密鑰的恢復(fù)、密鑰管理的審計和跟蹤、密鑰管理系統(tǒng)的訪問控制等功能[11]。
工作流程如圖3所示。
圖3 密級標簽控制模型工作流程
具體流程如下:
(3) 為涉密文檔添加標簽。用戶在涉密客戶端A選擇涉密文檔,并為該涉密文檔添加密級標簽,包括涉密文檔的密級信息、權(quán)限信息以及自身屬性信息,用戶A根據(jù)涉密文檔內(nèi)容制定密級,保密性級別分為絕密、機密、秘密三種類型,將密級屬性置于標簽頭中[12]。
(4) 簽名/加密。為了確保文件和標簽的完整性和不可篡改性,涉密客戶端A分別計算文件摘要和除標簽完整性簽名以外的所有內(nèi)容的摘要,利用其私鑰dsA結(jié)合SM9標識密碼數(shù)字簽名生成算法對涉密文檔和其標簽進行簽名,將文件的簽名添加到標簽體中,標簽完整性簽名置于標簽頭中。然后A隨機選擇會話密鑰,通過用SM4對稱算法加密文檔和標簽生成密文。最后用訪問者B的公鑰IDB結(jié)合SM9標識密碼公鑰加密算法加密會話密鑰形成數(shù)字信封,存放于解密者列表。
(5) 上傳涉密文檔。用戶A在涉密客戶端將簽名/加密后的涉密文檔和密級標簽上傳至標簽服務(wù)器。
(6) 訪問涉密文檔。當用戶B登錄涉密客戶端,若未申請私鑰,則采用步驟2的方式從KGC獲得私鑰。首先用戶B用私鑰解密數(shù)字信封,得到會話密鑰,然后再用會話密鑰解密涉密文檔和密級標簽密文,之后用A的公鑰IDA驗證簽名,如果簽名正確,則說明文件和標簽是完整的,未被篡改[13]。
假設(shè)系統(tǒng)的所有初始化工作均已完成,則上傳和訪問用戶均已獲得了自己的公私鑰。
(1) 用戶A選擇待加密消息M上傳標簽服務(wù)器。K為SM4分組算法中的密鑰,為加密消息M用于用戶B訪問,用戶A產(chǎn)生隨機數(shù)r∈[1,N-1],計算:
where the diagonal terms r1,r2,...,r6are the singular values of the degraded Jacobian matrix Jf,and r1?r2?...?r6,in which r6represents the minimum singular value.
QB=[H1(IDB‖hid,N)]P1+Ppub
C1=[r]QB,g=e(Ppub,P2),w=gr
(2)A用B的公鑰QB封裝會話密鑰K。計算K=KDF(C1‖w‖IDB,K_len),K_len為K的比特長度,KDF為密鑰派生函數(shù)。
(3) 隨機生成的SM4算法的密鑰K加密消息M。C2=SM4(K,M)。
(4) 密文C上傳標簽服務(wù)器。C=C1‖C2。
(5) 用戶B通過標簽服務(wù)器訪問M。用戶B從C中取出C1,將C1的數(shù)據(jù)類型裝換為橢圓曲線上的點,驗證C1∈G1是否成立,若不成立則訪問失??;若成立計算:w′=e(C,dsB),K′=KDF(C‖w′‖IDB,K_len)[14]。
(6) 用K′解密C2,得到M′=SM4-1(K′,C2)[7]。
假設(shè)系統(tǒng)的所有初始化工作均已完成,則上傳和訪問用戶均已獲得了自己的公私鑰。
(1) 用戶A產(chǎn)生隨機數(shù)r∈[1,N-1],計算g=e(P1,Ppub),w=gr。
(2) 用戶A計算消息M的摘要h=SM3(M‖w,N)計算L=(r-h)modN。
(3)A用私鑰dsA簽名。計算S=[L]dsA,得到簽名消息(h,S)。
(4) 用戶B訪問消息M′并驗證數(shù)字簽名(h′,S′) 計算h1=SM3(IDA‖hid,N),P=[h1]P2+Ppub,e′=(S′,P),w′=u·t,h2=SM3(M′‖w′,N)。
驗證h2=h是否成立,若成立則驗證通過,否則驗證不通過。
通過基于標識密碼建立密級標簽控制模型從機密性、完整性、有效性和抗抵賴性四個方面提升了系統(tǒng)的安全性需求。
涉密文件被會話密鑰加密后,以密文的方式存放于本地磁盤,并上傳至標簽服務(wù)器,利用訪問者公鑰ID加密會話密鑰形成數(shù)字信封,只有解密者本人擁有私鑰ds方可解密數(shù)字信封進而獲得文件明文。安全電子文件存儲在涉密客戶端(用戶)和標簽服務(wù)器端,而且都是以密文形式加密存儲,實現(xiàn)了端到端全程加密,保證電子文件的機密性。
模型中涉密電子文件和密級標簽使用SM3密碼雜湊算法保證數(shù)據(jù)的完整性,一旦涉密主體在上傳和下載過程中被攻擊者篡改,當接收者再進行涉密主體的完整性校驗時,首先計算涉密主體的HASH值,然后與接收到的HASH值比較,根據(jù)兩者是否一致即可確定涉密主體是否完整。
訪問涉密文件時需要驗證標簽體中的內(nèi)容屬性中的失效日期和廢止時間,確定涉密文件的有效性,只有在涉密文件有效期內(nèi)才能正常的訪問文件,否則不能訪問文件。
該模型中密級標簽在涉密客戶端生成,包括標簽頭和標簽體,與涉密文檔一一對應(yīng),利用創(chuàng)建者的私鑰ds對其簽名,驗簽時利用創(chuàng)建者的具有身份標識的公鑰ID進行驗證。由于私鑰只有創(chuàng)建者擁有,即使攻擊者截獲簽名信息,因為不擁有創(chuàng)建者的私鑰而無法重新進行簽名,因此簽名具有不可否認性[15]。
在簽名驗簽速度上,密鑰長度為256位的SM9算法與256位的SM2算法、2 048位的RSA算法相比表現(xiàn)出明顯的優(yōu)勢。如圖4所示。
圖4 算法性能對比
256位的SM2算法和3 072位的RSA算法攻破時間大約為2040年[16],而SM9算法密鑰長度僅為256位,攻破時間卻大約為10億年,有較高的安全性。具體對比如圖5所示。
圖5 密鑰強度與攻破時間
對于傳統(tǒng)的PKI體制和標識密碼體制,分別從軟件成本、軟件授權(quán)、安裝成本、軟件操作、平臺使用、技術(shù)支持、學(xué)習(xí)成本幾個方面做了分析,表明標識密碼體制總成本耗費以為20$,僅占PKI體制總耗費成本的1/3,存在明顯的優(yōu)勢[17]。對比如圖6所示。
圖6 SM9/PKI總體成本對比圖
通過對比分析,可以看出SM9算法在安全性、算法性能以及投入成本上具有明顯的優(yōu)勢。具體體現(xiàn)在以下幾個方面:
? 密鑰短,抗攻擊性強。SM9算法的密鑰長度僅為256位,相當于RSA-3072 位安全強度,理論上破解系統(tǒng)的復(fù)雜度相當于2 500臺電腦10億年的計算量[17]。
? 算法性能強。相比RSA、SM2算法,在公鑰簽名驗簽體制中,SM9簽名驗簽速度較快。
? 不需要證書,易部署。在PKI體系中,通過證書機構(gòu)發(fā)放的公鑰證書來實現(xiàn)公鑰與實體身份之間的關(guān)聯(lián)。標識密碼體制使用戶的公鑰能夠通過用戶的身份信息直接計算出來,不需要保存用戶的公鑰證書,避免了使用證書帶來的存儲和管理開銷成本問題,使得系統(tǒng)體系結(jié)構(gòu)簡單。
本文提出了一種身份標識的公鑰密碼體制的密級標簽信息控制模型,實現(xiàn)了涉密文檔的安全性控制。通過對文件密級標簽實體、涉密客戶端、標簽服務(wù)器、密鑰生成中心建模,保證了涉密文檔和標簽在系統(tǒng)中安全性流轉(zhuǎn)。該模型將標識密碼運用于電子文件標簽中具有創(chuàng)新性,基于標識密碼的密級標簽系統(tǒng)不采用數(shù)字證書的概念,簡化了傳統(tǒng)的PKI公鑰體系架構(gòu)中CA對用戶證書的管理,具有易于實施、方便易用的特點,并且SM9算法在算法性能、安全性能方面與SM2算法、RSA算法相比具有明顯的優(yōu)勢。因此將標識密碼運用于電子文件標簽中對當前的電子文件安全管理體系中具有重大的推動作用。
參 考 文 獻
[1] BMB20-2007涉及國家秘密的信息系統(tǒng)分級保護管理規(guī)范[S].2007.
[2] BM22-2007涉及國家秘密的信息系統(tǒng)分級保護測評指南[S].2007.
[3] 武越,劉向東,石兆軍.文件密級標識全程管控系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2013,34(10):37- 41.
[4] 邊力,陳性元,汪永偉.基于多維標識的文件分級保護模型[J].計算機工程,2011,37(13):132- 138.
[5] Shamir A.Identity-Based Cryptosystems and Signature Schemes[C]//The Workshop on the Theory and Application of Cryptographic Techniques.Springer,Berlin,Heidelberg,1984:47- 53.
[6] GM/T 0044-2016 SM9標識密碼算法[S].2016.
[7] 袁峰,程朝輝.SM9標識密碼算法綜述[J].信息安全研究,2016,2(11):1008- 1027.
[8] 許盛偉,張曉帥,秦曉磊,等.電子文檔的安全標簽設(shè)計與實現(xiàn)[J].北京電子科技學(xué)院學(xué)報,2013(4):56- 59.
[9] Boneh D,Franklin M K.Identity-Based Encryption from the Weil Pairing[C]//International Cryptology Conference.Springer,Berlin,Heidelberg,2001:213- 229.
[10] 劉鏹,王勝男.基于身份標識的密碼體制及其在安全電子郵件的應(yīng)用[J].信息安全與技術(shù),2014(6):70- 72.
[11] 李成華.基于標識密碼體制的電子護照安全技術(shù)研究[D].武漢:華中科技大學(xué),2008.
[12] 鄧子建,譚興烈,董貴山.基于可信計算的密級標識信息控制模型[J].信息安全與保密通信,2011(11):83- 85.
[13] Naccache D.Secure and practical identity-based encryption[J].Information Security Iet,2007,1(2):59- 64.
[14] Boyen X.General Ad Hoc Encryption from Exponent Inversion IBE[C]//International Conference on the Theory and Applications of Cryptographic Techniques.Springer Berlin Heidelberg,2007:394- 411.
[15] 聞慶峰,楊文捷,張永強.SM9及其PKI在電子政務(wù)郵件系統(tǒng)中的應(yīng)用[J].計算機應(yīng)用與軟件,2017,34(4):105- 109.
[16] 方言.更加安全易用的國產(chǎn)密碼體系——SM9算法——訪深圳奧聯(lián)信息安全技術(shù)有限公司首席技術(shù)官密碼學(xué)博士程朝輝[J].中國信息安全,2016(6):85- 86.
[17] 程朝輝.加密算法的新發(fā)展基于Pairing的密碼技術(shù)(SM9算法)研究與應(yīng)用[R].2013.