毛志芹,程元元
(華北水利水電大學(xué) 信息工程系,河南 鄭州 450011)
基于RSA體制的分布式秘鑰托管方案研究
毛志芹,程元元
(華北水利水電大學(xué) 信息工程系,河南 鄭州 450011)
基于RSA密碼體制對秘鑰托管方案進(jìn)行了進(jìn)一步的研究和優(yōu)化實(shí)現(xiàn)——多素?cái)?shù)RSA密碼體制。該優(yōu)化方案滿足了對用戶秘鑰安全管理與司法部門調(diào)查取證之間的協(xié)調(diào),有效的解決了“一次監(jiān)聽,永久監(jiān)聽”問題,而且每個(gè)托管代理能夠驗(yàn)證他所托管的子密鑰的有效性,實(shí)現(xiàn)分布式托管的優(yōu)化,規(guī)避了“閾下攻擊”和托管部門權(quán)力濫用等問題。
秘鑰托管;多素?cái)?shù)RSA體制;分布式托管;監(jiān)聽
近年,計(jì)算機(jī)密碼學(xué)不斷進(jìn)展,人們在使用密碼算法獲得保密消息方面有了可靠的保證,但同時(shí),這也給犯罪提供了條件。如何在用戶隱私權(quán)和法律授權(quán)下的政府機(jī)構(gòu)監(jiān)聽權(quán)之間尋找出一種折中方法是近年來密碼學(xué)界研究的熱點(diǎn)課題之一。一方面,為了保護(hù)用戶的隱私權(quán),密碼強(qiáng)度不應(yīng)減弱;另一方面,為了打擊犯罪分子的非法活動(dòng),法律授權(quán)下的政府機(jī)構(gòu)監(jiān)聽權(quán)也應(yīng)得到保證。
美國政府1993年頒布了EES(Escrow Encryption Standard)[1]體現(xiàn)了對密鑰實(shí)行法定托管代理的新思路。1995年Shamir[2]提出了部分密鑰托管思想,Lenstra等[3]提出時(shí)間約束下的托管加密方案,Micali[4-5]提出了公正密鑰托管方案和共享偽隨機(jī)函數(shù)密鑰托管方案等。但這些方案由于秘鑰產(chǎn)生機(jī)構(gòu)和秘鑰托管機(jī)構(gòu)獨(dú)立和單一,都沒有很好地解決個(gè)權(quán)力濫用和“閾下攻擊”問題。
為了防止托管機(jī)構(gòu)濫用權(quán)力,人們開始將門限密碼體制應(yīng)用于私鑰托管,進(jìn)而提出了門限密鑰托管思想。但這些利用門限方案得到的托管方案[6-8]存在很多缺點(diǎn),一方面,不能及時(shí)準(zhǔn)確地得知不能正常工作或不愿合作的托管代理,導(dǎo)致密鑰恢復(fù)時(shí)判斷重構(gòu)的密鑰是否正確需要試湊解密,影響實(shí)時(shí)性;另一方面,防止托管機(jī)構(gòu)非法合作恢復(fù)密鑰而必須保證各個(gè)托管機(jī)構(gòu)相互獨(dú)立,這樣很難驗(yàn)證各托管代理保存的子密鑰的正確性,而使用戶有可能逃避托管,都沒有很好地解決“一次監(jiān)聽,永久監(jiān)聽”問題。
鑒于秘鑰拖管方面的研究,莊涌提出的基于RSA密碼體制的可驗(yàn)證部分秘鑰托管方案[9],密鑰在產(chǎn)生過程中,每個(gè)托管機(jī)構(gòu)分別托管N的分解因子p和q的部分信息(piqi),然后通過用戶的通信加密公鑰ke加密后傳輸?shù)接脩舳艘员阌脩粲?jì)算私鑰d。該過程是其托管方案的瓶頸,因而無法應(yīng)用于實(shí)際,因此本文改進(jìn)了該算法,把(piqi)改成N的分解因子p1、p2、p3…。
1.1 系統(tǒng)描述
在本文討論的秘鑰托管方案中,采用改進(jìn)的多素?cái)?shù)RSA算法,整個(gè)方案大致分為4個(gè)步驟:(1)t個(gè)密鑰托管機(jī)構(gòu)分別產(chǎn)生公鑰N的素?cái)?shù)分解因子p1、p2、…、Pt,驗(yàn)證是否為不同的素?cái)?shù),并將這些分解因子經(jīng)過Tb、CAb的傳輸?shù)接脩舳恕?2)用戶端自己合成公鑰N=p1,p2,p3,…pi和私鑰d,并把公鑰(e,N)傳輸?shù)絋b端和CAb端。(3)Tb端T1、T2、…、Tt一起驗(yàn)證用戶傳過來的公鑰N是否由各托管機(jī)構(gòu)共同生成,然后驗(yàn)證結(jié)果發(fā)送給CAb端。(4)CAb端為用戶制作加密公鑰證書。
具體托管方案原理如圖1所示。
圖1 分布式密鑰托管方案原理圖
1.2 方案分析
1.2.1 算法正確性分析
方案中,托管機(jī)構(gòu)托管公鑰N的素?cái)?shù)分解因子p1,p2,…,pt,公鑰(e,N)中,e由系統(tǒng)指定,N是用戶收到p1,p2,…,pt后自己計(jì)算的。所以在e,N,N的分解因子確定的情況下,求解同余方程
eN≡1(modφ(N))
(1)
由于gcd(e,φ(N))=1根據(jù)一次同余方程的有關(guān)定理,知其解為
(e,φ(N))=1
(2)
即存在唯一私鑰d。
這樣對于明文m∈ZN,應(yīng)用歐拉定理有
D(E(m))=D(c)=cd(modN)≡med(modN)≡mkφ(N)+1(modN)≡m(modN)
(3)
同理可證E(D(m))=m,因此E(D(m)=D(E(m))=m,這說明無論用于加密還是數(shù)字簽名,該方案都遵循多素?cái)?shù)RSA加密體制的原理,因此都是正確的。
1.2.2 公鑰的可驗(yàn)證性分析
為防止“閾下攻擊”用戶惡意修改N值,需要驗(yàn)證用戶傳輸過來的(e,N)是否是按秘鑰托管機(jī)構(gòu)要求產(chǎn)生的。對于N的正確性,可以通過下面的定理證明。
證明 假設(shè)各密鑰托管機(jī)構(gòu)托管的安全素?cái)?shù)是p1、p2、…、pt,則需證明用戶傳輸過來的N′是否等于各密鑰托管機(jī)構(gòu)想產(chǎn)生的N=p1,p2,p3,…,pt。
1.2.3 安全性分析
此方案依據(jù)的仍是標(biāo)準(zhǔn)RSA體制數(shù)學(xué)難題,并沒有引入其他問題,沒有擴(kuò)大RSA密碼體制的安全性基礎(chǔ)。
首先,素?cái)?shù)p1,p2,…,pt的產(chǎn)生和存儲階段,都經(jīng)過了加密機(jī)的秘鑰加密,因此產(chǎn)生和存儲階段是安全的。其次,傳輸階段,傳輸前要用用戶的通信加密秘鑰的公鑰進(jìn)行加密,然后傳輸給用戶,根據(jù)共鑰密碼學(xué)的相關(guān)知識,只有用戶通過私鑰才能解密,因此,傳輸安全。第三,私鑰的安全性,當(dāng)用戶收到加密后的p1,p2,…,pt時(shí),公鑰的計(jì)算N=p1,p2,p3,…,pt和求解同余方程e d≡1(modφ(N))的過程都是用戶在客戶端單獨(dú)計(jì)算的,因此私鑰d的計(jì)算過程安全。第四,在多素?cái)?shù)RSA密碼體制下,各密鑰托管機(jī)構(gòu)Ti只擁有pi的信息,而無法獲得N的完全分解信息。進(jìn)而解決了托管機(jī)構(gòu)權(quán)利濫用問題,這可以通過定理2得到證明。
定理2 如果IF問題是困難的,則無法獲得N的完全分解信息。
最后,每個(gè)密鑰托管機(jī)構(gòu)Ti維護(hù)著素?cái)?shù)備用數(shù)據(jù)庫和素?cái)?shù)正用數(shù)據(jù)庫、素?cái)?shù)歸檔數(shù)據(jù)庫,分別管理未使用、正在使用的和已經(jīng)使用過的公鑰N的素因子pi,(i=1,2,…,t)的信息。如果想恢復(fù)用戶的私鑰d,至少需要t-1個(gè)密鑰托管機(jī)構(gòu)聯(lián)合計(jì)算N。同時(shí),一次司法監(jiān)聽之后素?cái)?shù)數(shù)據(jù)庫就會更新一次,有效預(yù)防了“一次監(jiān)聽,永久監(jiān)聽”的問題,使用戶通信的安全性得到保障。
綜上,分布式密鑰托管方案基于多素?cái)?shù)RSA密碼體制,其托管對象不再是用戶的私鑰d,而是與計(jì)算用戶私鑰d直接相關(guān)的模N的安全素?cái)?shù)分解因子pi。方案把目前獨(dú)立的密鑰托管機(jī)構(gòu)聯(lián)合起來,實(shí)現(xiàn)聯(lián)合托管;托管機(jī)構(gòu)和用戶共同產(chǎn)生用戶密鑰,從而防止了用戶的“閾下攻擊”,托管過程中;用戶不會向托管機(jī)構(gòu)泄漏未托管的部分私鑰的任何信息,從而避免了“早期恢復(fù)”問題;具有一定的門限能力,即對于由個(gè)密鑰托管機(jī)構(gòu)共同生成用戶的公鑰N,只有t-1個(gè)托管機(jī)構(gòu)的聯(lián)合才能恢復(fù)出用戶的私鑰來;監(jiān)聽過程中沒有泄露加密會話密鑰的密鑰和托管代理所托管的子密鑰的任何信息,監(jiān)聽機(jī)構(gòu)只能獲得用戶某一次通信的會話密鑰。
當(dāng)然在密鑰托管等方面,相比國外,國內(nèi)的理論研究水平還是有一定的差距,有很多新概念和新技術(shù)是由國外的專家研究率先提出的,后來國內(nèi)的學(xué)者也針對這些技術(shù)提出了新的改進(jìn)。雖然在理論研究方面基本能夠跟上國際水平的腳步,但對于信息安全技術(shù)來說,在技術(shù)和產(chǎn)品實(shí)現(xiàn)方面還要依賴其它的技術(shù),如集成電路等技術(shù)的進(jìn)步。
[1] Denning D E,Sm Id M.Key escrow ing today[J].IEEE Communications Magazine,1994,32(9):58-68.
[2] Shamir A.Partial key escrow:A new approach to software key escrow[M].Washington:Proceeding of Key Escrow Conference,1995.
[3] Len Stra A K,Winkler P,Yacobi Y.A key escrow system with W arrant bound[C].In:ProcCrypto’95,1995:197-207.
[4] Micali S.Fair cryptosystems[M].Cambridge,Massachusetts:Massachusetts Institute of Technology,1994.
[5] Micali S,Ney R.A simple method for generating and sharing pseudo-random functions with application to clipper-like key escrow system[C].In:ProcCrypto’95,1995:184-196.
[6] 楊波,馬文平,王育民.一種新的密鑰分割門限方案及密鑰托管體制[J].電子學(xué)報(bào),1998,26(10):1-3.
[7] Nechvatal J.A public-key-based key escrow system[J].Journal of Systems Software,1996,35(1):73-83.
[8] Denning D E,Branstad D K.A taxonomy of key escrow encryption systems[J].Communications of the ACM,1996,39(3):34-40
[9] 莊涌.PKI中的可驗(yàn)證部分密鑰托管[J].計(jì)算機(jī)學(xué)報(bào),2006,29(9):1584-155.
Research on the Distributed Key Escrow Scheme Based on RSA
MAO Zhiqin,CHENG Yuanyuan
(Department of Information Engineering,North China University of Water Resources and Electric Power,Zhengzhou 450011,China)
Based on RSA cryptography system,this paper carries out a further research on and optimization of the secret key escrow scheme,called Multi-prime RSA Cryptosystem.This optimization scheme satisfies the coordination between the user secret key security management and the judicial department’s investigation and evidence collection,effectively solving the problem of “once monitoring,permanent monitoring”.And each escrow agent can verify the validity of the sub-key it manages to realize the optimization of distributed hosting,and avoid such troubles as “subliminal channel attack” and abuse of power by the hosting department.
secret key escrow;multi-prime RSA cryptosystem
2014- 07- 23
毛志芹(1986—),女,碩士研究生。研究方向:密碼學(xué)信息安全。E-mali:523339560@qq.com。程元元(1987—),女,碩士研究生。研究方向:代理簽名。
10.16180/j.cnki.issn1007-7820.2015.04.042
TP309
A
1007-7820(2015)04-158-03