亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

可延展偽名證書系統(tǒng)和方法

文檔序號(hào):1358987閱讀:145來源:國(guó)知局
專利名稱:可延展偽名證書系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明一般地涉及計(jì)算機(jī)通信網(wǎng)絡(luò)安全,更具體地,涉及通信系統(tǒng)隱私保護(hù)。
背景技術(shù)
目前,公鑰密碼系統(tǒng)被廣泛使用。通常可以容易地獲得許多公鑰密碼編碼和解碼技術(shù),來提供一定程度的安全性以及隱私性。例如,授權(quán)給Rivest等的美國(guó)專利No.4,405,829以及El Gamal(Tahir ElGamal,A public-key cryptosystem and a signature scheme based on discrete logarithms,Advances in Cryptology Proceedings;CRYPTO 84,pages 10-18,1985)是本領(lǐng)域公知的技術(shù)。Rivest專利和El Gamal的教導(dǎo)通過引用結(jié)合于此。
利用諸如RSA和El Gamal之類的傳統(tǒng)公鑰密碼系統(tǒng),為了與其他方安全地通信,用戶需要向外界公開他/她的公鑰。然而,在大多數(shù)情形下,用戶只擁有一對(duì)公/私鑰對(duì),即一個(gè)公鑰和其對(duì)應(yīng)的唯一的私鑰。公鑰密碼系統(tǒng)這一典型的使用方式存在一個(gè)不希望出現(xiàn)的后果,即使得用戶的公鑰完全成為了他/她的標(biāo)識(shí)。這意味著即使擔(dān)心隱私的用戶受到這類公鑰密碼系統(tǒng)以及其他設(shè)計(jì)得很好的隱私保護(hù)措施的保護(hù),對(duì)手仍能夠基于該唯一公鑰的使用模式,通過收集和觀察該用戶公開的信息,關(guān)聯(lián)出受保護(hù)的用戶的活動(dòng)。
在例如RSA和El Gamal所公開的傳統(tǒng)的公鑰密碼系統(tǒng)中,如果用戶擔(dān)心他/她的單個(gè)公鑰可能會(huì)危害他/她的隱私,一種可能的辦法是要求有所擔(dān)心的個(gè)體擁有若干不同的公鑰,并慎重地向不同的對(duì)方公開各個(gè)公鑰。
除了擁有許多公鑰對(duì)之外,Waters等已提出了一種方法,其利用ElGamal密碼系統(tǒng)來實(shí)現(xiàn)了一種不可比公鑰(Incomparable Public Key)方案,借此用戶可以同時(shí)擁有若干公鑰,其中所有這些公鑰都對(duì)應(yīng)于單個(gè)私鑰。參見B.R.Waters,E.W.Felten,A.Sahai,Receiver Anonymity viaIncomparable Public keys,CCS’03,Washington,DC,USA,pp.112~121。Waters等人的教導(dǎo)也通過引用結(jié)合于此。
如上所述,用戶可以擁有若干公鑰。但是,在大多數(shù)情形中,當(dāng)個(gè)人A獲得一個(gè)公鑰時(shí),該公鑰必須被另外的某方認(rèn)證。例如,公鑰可以被公知的認(rèn)證機(jī)構(gòu)(Certificate Authority,CA)認(rèn)證,或者,公鑰可以被該個(gè)人的朋友C認(rèn)證。如果第三人B看到該公鑰及其證書,則因?yàn)锽信任CA或者B信任C,該第三人B可以信任該公鑰。
在用戶擁有若干公鑰的情況下,一種認(rèn)證這些公鑰的可能的方法是請(qǐng)求CA認(rèn)證每個(gè)公鑰,如圖25所示。因?yàn)镃A必須在線處理所有證書請(qǐng)求,所以需要非常強(qiáng)大的CA,這增加了擁有和維護(hù)的成本。當(dāng)網(wǎng)絡(luò)中的每個(gè)用戶擁有大量公鑰時(shí),這種成本被擴(kuò)大了。
另一種可能是請(qǐng)求某個(gè)朋友認(rèn)證每個(gè)公鑰,如圖26所示。但是,這與用戶的隱私擔(dān)心相矛盾。不僅這樣,請(qǐng)求朋友認(rèn)證公鑰不僅效率低并且可能是無效的,而且在許多商務(wù)場(chǎng)合也是不可信賴的。
除了公鑰認(rèn)證之外,在多條用戶數(shù)據(jù)需要被認(rèn)證的許多其他情況中,也存在上述包括CA集中化方案和朋友認(rèn)證方案在內(nèi)的方案的缺點(diǎn)。

發(fā)明內(nèi)容
本發(fā)明提供了一種用于通信網(wǎng)絡(luò)的可延展偽名證書系統(tǒng)和方法。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種用于用戶在通信網(wǎng)絡(luò)中認(rèn)證數(shù)據(jù)的計(jì)算裝置。網(wǎng)絡(luò)包括受信實(shí)體和至少一個(gè)驗(yàn)證者。計(jì)算裝置包括可操作地耦合到網(wǎng)絡(luò)的根證據(jù)單元,根證據(jù)單元適合于從受信實(shí)體接收根證據(jù);可操作地耦合到根證據(jù)單元的偽名證書生成單元,偽名證書生成單元適合于基于根證據(jù)生成至少一個(gè)偽名證書;和可操作地耦合到偽名證書生成單元的傳送單元,傳送單元適合于將配備有偽名證書的用戶數(shù)據(jù)傳送到通信網(wǎng)絡(luò)。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于用戶在通信網(wǎng)絡(luò)中認(rèn)證數(shù)據(jù)的方法。網(wǎng)絡(luò)包括受信實(shí)體和至少一個(gè)驗(yàn)證者。該方法包括從受信實(shí)體接收根證據(jù);基于根證據(jù)生成至少一個(gè)偽名證書;以及將配備有一個(gè)偽名證書的用戶數(shù)據(jù)傳送給一個(gè)驗(yàn)證者。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于在通信網(wǎng)絡(luò)中管理證書的裝置。網(wǎng)絡(luò)包括至少一個(gè)用戶和至少一個(gè)驗(yàn)證者。該裝置包括系統(tǒng)參數(shù)計(jì)算單元,系統(tǒng)參數(shù)計(jì)算單元適合于計(jì)算系統(tǒng)參數(shù);可操作地耦合到系統(tǒng)參數(shù)計(jì)算單元的參數(shù)公布單元,參數(shù)公布單元適合于公布要被用戶和驗(yàn)證者共享的共享系統(tǒng)參數(shù);可操作地耦合到網(wǎng)絡(luò)的根證據(jù)請(qǐng)求接收單元,根證據(jù)接收單元適合于接收來自用戶的根證據(jù)請(qǐng)求;和可操作地耦合到根證據(jù)請(qǐng)求接收單元和系統(tǒng)參數(shù)計(jì)算單元的根證據(jù)生成單元,根證據(jù)生成單元適合于響應(yīng)于根證據(jù)請(qǐng)求,為用戶生成根證據(jù),該根證據(jù)被用戶用于生成多個(gè)偽名證書。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于在通信網(wǎng)絡(luò)中管理證書的方法。網(wǎng)絡(luò)包括至少一個(gè)用戶和至少一個(gè)驗(yàn)證者。該方法包括計(jì)算系統(tǒng)參數(shù);公布要被用戶和驗(yàn)證者共享的共享系統(tǒng)參數(shù);接收來自用戶的根證據(jù)請(qǐng)求;以及響應(yīng)于根證據(jù)請(qǐng)求,為用戶生成根證據(jù),該根證據(jù)被用戶用于生成多個(gè)偽名證書。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于網(wǎng)絡(luò)通信中的用戶的可延展偽名證書系統(tǒng)。網(wǎng)絡(luò)包括一個(gè)受信實(shí)體。該系統(tǒng)包括可操作地耦合到網(wǎng)絡(luò)的根證據(jù)單元,根證據(jù)單元適合于從受信實(shí)體接收根證據(jù);可操作地耦合到根證據(jù)單元的偽名證書生成單元,偽名證書生成單元適合于基于根證據(jù)生成至少一個(gè)偽名證書;可操作地耦合到偽名證書生成單元的傳送單元,傳送單元適合于將配備有偽名證書的用戶數(shù)據(jù)傳送到通信網(wǎng)絡(luò);和可操作地耦合到通信網(wǎng)絡(luò)的驗(yàn)證者單元,驗(yàn)證者單元適合于通過接收到的偽名證書驗(yàn)證用戶數(shù)據(jù)。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種用于在通信網(wǎng)絡(luò)中通過偽名證書認(rèn)證用戶數(shù)據(jù)的方法。網(wǎng)絡(luò)包括受信實(shí)體和至少一個(gè)驗(yàn)證者。該方法包括從受信實(shí)體向用戶頒發(fā)根證據(jù);基于根證據(jù),由用戶生成至少一個(gè)偽名證書;以及將配備有一個(gè)偽名證書的用戶數(shù)據(jù)傳送給一個(gè)驗(yàn)證者,驗(yàn)證者通過該偽名證書驗(yàn)證用戶數(shù)據(jù)。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種制品。該制品具有其上存儲(chǔ)有指令的機(jī)器可讀介質(zhì),指令當(dāng)被一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得處理器從受信實(shí)體接收根證據(jù);從根證據(jù)生成至少一個(gè)偽名證書;以及將配備有一個(gè)偽名證書的數(shù)據(jù)傳送給一個(gè)驗(yàn)證者。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種制品。該制品具有其上存儲(chǔ)有指令的機(jī)器可讀介質(zhì),指令當(dāng)被一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得處理器計(jì)算系統(tǒng)參數(shù);公布要被網(wǎng)絡(luò)的所有用戶共享的共享系統(tǒng)參數(shù);接收來自網(wǎng)絡(luò)的一個(gè)用戶的根證據(jù)請(qǐng)求;以及為用戶生成根證據(jù),該根證據(jù)被用戶用于生成多個(gè)偽名證書。
可延展偽名證書系統(tǒng)具有許多優(yōu)點(diǎn),尤其是當(dāng)與匿名公鑰一起使用時(shí)。用戶可以生成可信賴的匿名公鑰,其中匿名公鑰被偽名證書保證為是被CA認(rèn)證的。用戶隱私保護(hù)的功能完全是分布式的。用戶自己生成不同的匿名公鑰,也自己生成不同的偽名證書。認(rèn)證機(jī)構(gòu)的介入被最小化,從而使得實(shí)現(xiàn)輕量級(jí)CA變得可能。因?yàn)閭蚊C書在CA側(cè)是可追查的,因此用戶不能濫用匿名能力。


當(dāng)結(jié)合附圖閱讀時(shí),通過下面的描述,可更全面地理解本發(fā)明的前述及其他目的、各種特征以及本發(fā)明本身,在附圖中圖1是示出了根據(jù)APK(anonymous public key)技術(shù)的利用匿名公鑰密碼系統(tǒng)的具有兩個(gè)終端的示例性系統(tǒng)的框圖,其中一個(gè)終端可以公開一個(gè)不同的公鑰用于與另一個(gè)終端的新的通信會(huì)話;圖2是示出了根據(jù)APK技術(shù)的利用匿名公鑰密碼系統(tǒng)的具有若干終端的示例性系統(tǒng)的框圖,其中一個(gè)終端在與其他終端的通信中可以使用不同的公鑰來用于不同的會(huì)話;圖3是示出了參與圖1和圖2所示通信系統(tǒng)的發(fā)送者和接收者之間的示例性通信會(huì)話的流程圖;圖4是示出了根據(jù)APK技術(shù),在基于公私鑰對(duì)的通信會(huì)話中,發(fā)送者和接收者的示例性功能塊的框圖;圖5是示出了根據(jù)APK技術(shù),圖4中的APK產(chǎn)生設(shè)備的示例性功能塊的框圖;圖6是示出了根據(jù)APK技術(shù),產(chǎn)生匿名公鑰的示例性處理流程的流程圖;圖7是示出了根據(jù)APK技術(shù)的消息加密與解密的示例性過程的示圖;圖8A是示意性示出了本發(fā)明一般概念的框圖;圖8B是示意性示出了本發(fā)明的一般認(rèn)證過程的流程圖;圖9是示意性示出了本發(fā)明第一實(shí)施例的系統(tǒng)體系結(jié)構(gòu)的框圖;圖10是示出了根據(jù)第一實(shí)施例,在系統(tǒng)啟動(dòng)階段中的CA初始化過程的一個(gè)示例的流程圖;圖11是示出了根據(jù)第一實(shí)施例,在系統(tǒng)啟動(dòng)階段中的用戶初始化過程的一個(gè)示例的流程圖;圖12是示出了根據(jù)第一實(shí)施例的RC(root certificate,根證書)請(qǐng)求過程的一個(gè)示例的流程圖;圖13是示出了根據(jù)第一實(shí)施例,用戶如何產(chǎn)生匿名公鑰的流程圖;圖14是示出了根據(jù)第一實(shí)施例,用戶如何從根證書導(dǎo)出偽名證書用于匿名公鑰的流程圖;圖15是示出了根據(jù)第一實(shí)施例的匿名鑒別過程的一個(gè)示例的流程圖;圖16是示出了根據(jù)第一實(shí)施例的追查過程的流程圖;圖17是示出了根據(jù)第一實(shí)施例的示例性用戶裝置的框圖;圖18是示出了根據(jù)第一實(shí)施例的示例性CA裝置的框圖;圖19是示意性示出了根據(jù)本發(fā)明第二實(shí)施例的系統(tǒng)體系結(jié)構(gòu)的框圖;圖20是示出了根據(jù)第二實(shí)施例的偽名認(rèn)證方法的一個(gè)示例的流程圖;圖21是示出了利用傳統(tǒng)組簽名方案時(shí),證明者向驗(yàn)證者證明他/她在組中的過程的示圖;圖22是示出了利用根據(jù)本發(fā)明的第二實(shí)施例的方案,驗(yàn)證偽名證書和公鑰的有效性的示例過程的示圖;圖23是示出了利用根據(jù)本發(fā)明的第二實(shí)施例的方案,驗(yàn)證偽名證書和公鑰的有效性的另一示例過程的示圖;圖24是示出了根據(jù)本發(fā)明的第二實(shí)施例的驗(yàn)證單元的一個(gè)示例的框圖;圖25是示出了一個(gè)傳統(tǒng)證書系統(tǒng)的框圖,其中證書由認(rèn)證機(jī)構(gòu)發(fā)放;以及圖26是示出了另一個(gè)傳統(tǒng)證書系統(tǒng)的框圖,其中證書由用戶的朋友發(fā)放。
具體實(shí)施例方式本發(fā)明涉及由曾柯和藤田友之(Tomoyuki FUJITA)提出的新型的APK(Anonymous Public Key,匿名公鑰)技術(shù)。APK技術(shù)的詳細(xì)內(nèi)容可以在2004年11月10日由日電(中國(guó))有限公司遞交的題為“在安全通信系統(tǒng)中生成匿名公鑰的方法、設(shè)備和系統(tǒng)”的待決中國(guó)專利申請(qǐng)No.200410090903.X中找到。
首先,在下面的描述中將說明APK技術(shù)方案。
如上所述,用戶可能希望擁有若干公鑰。通過利用其中每個(gè)不同公鑰具有相應(yīng)的不同私鑰的多個(gè)公鑰對(duì),傳統(tǒng)公鑰密碼系統(tǒng)可以在一定程度上緩解隱私擔(dān)憂。然而,隨著公鑰數(shù)量增加,對(duì)于個(gè)人來說,公私鑰對(duì)的管理成本增加了。此外,隨著私鑰數(shù)量增加,私鑰被公開或丟失的安全性風(fēng)險(xiǎn)增加了。
不可比公鑰方案通過利用不同的生成子(generator)構(gòu)建El Gamal密碼系統(tǒng)的公鑰,來生成新的公鑰,這使得計(jì)算優(yōu)化變得很困難。例如,(g,ga)和(h,ha)是通過Waters等人的不可比公鑰方案生成的不同公鑰,其中g(shù)和h是不同的生成子。傳統(tǒng)上,El Gamal密碼系統(tǒng)只利用一個(gè)生成子,因此能夠受益于離線計(jì)算生成子的冪并只維護(hù)一張生成子的冪表。而Waters等人的方案需要要么維護(hù)若干張生成子的冪表,要么進(jìn)行在線計(jì)算,從計(jì)算優(yōu)化和成本管理來說二者都很不理想。
我們提出了一種匿名公鑰技術(shù)(APK)。APK獨(dú)特的地方在于終端用戶可以自己生成大量公鑰,而只維護(hù)和保持一個(gè)私鑰。
下面將參考圖1到圖7描述APK技術(shù)。
在APK技術(shù)中,術(shù)語“群”指的是如下定義的數(shù)學(xué)概念(除非另有說明)群(G,◇)由滿足如下三個(gè)規(guī)律的集合G及其上的二元運(yùn)算◇構(gòu)成(i)群運(yùn)算滿足結(jié)合律,即對(duì)于G的任意元素a、b、c,有a◇(b◇c)=(a◇b)◇c;(ii)集合G存在一個(gè)基元e,對(duì)于任何G的元素a都有a◇e=e◇a=a;(iii)對(duì)于G的任何元素a,G中都存在一個(gè)元素a-1(稱為a的逆元),滿足a◇a-1=a-1◇a=e。
例如,整數(shù)集Z及加法運(yùn)算構(gòu)成一個(gè)群。基元是0,一個(gè)整數(shù)a的逆元是-a。對(duì)于更多的信息,可以參考《Handbook of AppliedCryptography》,可在http://www.cacr.math.uwaterloo.ca/hac/在線獲得。
根據(jù)APK技術(shù)的通信系統(tǒng)可具有若干終端和若干通信信道。圖1以簡(jiǎn)化框圖示出了APK方案的一個(gè)實(shí)現(xiàn)方式。在圖1中,終端A與終端a進(jìn)行了若干次會(huì)話的通信。對(duì)于終端A來說,至少存在一個(gè)通信信道來向終端a發(fā)送信息。所述會(huì)話可能使用一個(gè)或若干通信信道。終端a可能也可能不使用相同的通信信道來向終端A發(fā)送信息。通過所述通信信道,終端A向終端a公開不同的公鑰Ea到Ez來用于不同的通信會(huì)話,但將它的私鑰x保密。如果終端a需要的話,也可以向終端A公開若干不同的公鑰,在此意義上終端a等同于終端A。
如圖1所示,通過產(chǎn)生不同的公鑰來用于不同的會(huì)話,對(duì)于終端a或任何第三方來說都不可能關(guān)聯(lián)出終端A的活動(dòng)模式。例如,在電子拍賣的場(chǎng)合中,終端A的用戶將能夠防止他人關(guān)聯(lián)并分析其出價(jià)模式和策略,這是因?yàn)閷?duì)于每次會(huì)話都產(chǎn)生了不同的公鑰。
圖2也以簡(jiǎn)化框圖的形式示出了APK技術(shù)的另一個(gè)實(shí)現(xiàn)方式。在圖2中,終端A與多個(gè)終端(從終端a到終端z)通信。終端A與其每一個(gè)通信對(duì)方之間所使用的通信信道可能相同也可能不同。如圖2的左半部分所示,通過所述通信信道,終端A分別向終端a、終端b、……、終端z公開了不同的公鑰Ea到Ez以及其他信息。在此情形下,我們假設(shè)在終端A和終端a到z之間存在一種“一對(duì)多”的關(guān)系。所述公開可以多種方式完成。例如,可以有其他信息與所述公鑰一起公開,或者所述公鑰可以包含在電子郵件或證書中。反過來,終端a和終端z可能也可能不使用相同的通信信道(在所述通信信道上,這些終端中的每一個(gè)接收到終端A的公鑰)來向終端A發(fā)送信息,這些信息已用所接收的公鑰加密。如前所述,終端A將自己的私鑰x保密。類似地,如果終端a到終端z需要的話,可以向終端A分別公開若干不同的公鑰,在此意義上終端a到終端z等同于終端A。類似地,從圖2的右半部分可看出,終端a到z分別向終端A公開各自的公鑰Ea到Ez。在此情形下,我們認(rèn)為在終端a到z和終端A之間存在一種“多對(duì)一”的關(guān)系。
圖3示出了參與圖1和圖2所示的通信系統(tǒng)中的發(fā)送者和接收者之間的示例性通信會(huì)話。在圖3中,每一次發(fā)送者希望向接收者公開公鑰時(shí),發(fā)送者都決定(步驟S31)或者是從它現(xiàn)有的公鑰池中選擇一個(gè)公鑰(步驟S32),或者產(chǎn)生一個(gè)新的公鑰(步驟S33)。然后,發(fā)送者將公鑰發(fā)送給接收者(步驟S34)。需要發(fā)送消息時(shí)(步驟S35),接收者查找發(fā)送者的公鑰(步驟S36)以加密消息(步驟S37),然后將加密的消息發(fā)送給發(fā)送者。最終,發(fā)送者解密所接收的加密消息(步驟S38),并恢復(fù)出發(fā)送自接收者的原始消息。注意,接收者可能在它要向發(fā)送者發(fā)送加密消息之前很久就已經(jīng)從發(fā)送者接收到了所述公鑰。
應(yīng)指出的是,發(fā)送者可以被設(shè)計(jì)成總是產(chǎn)生不同的公鑰(步驟S33)而不依賴于任何現(xiàn)有的密鑰。然而,如本領(lǐng)域內(nèi)的技術(shù)人員可以認(rèn)識(shí)到的那樣,使用現(xiàn)有公鑰池將可大大減少計(jì)算開銷,這是因?yàn)椴倏v現(xiàn)有公鑰比起從頭開始計(jì)算來說內(nèi)在地要少很多計(jì)算量。
還應(yīng)該指出的是,圖3中的發(fā)送者和接收者的指定只是出于方便的考慮,因?yàn)榘l(fā)送者首先將它的公鑰發(fā)送給接收者。接收者接收到來自發(fā)送者的公鑰之后,接收者在向它的“接收者”(所述發(fā)送者)發(fā)送加密消息時(shí)就成了“發(fā)送者”。在兩個(gè)終端之間的典型雙向通信會(huì)話中,所述角色在整個(gè)會(huì)話中會(huì)頻繁顛倒。
現(xiàn)在參考圖4,其示出了基于根據(jù)APK技術(shù)的公私鑰對(duì)的通信會(huì)話中,發(fā)送者和接收者的示例性功能塊。在此,發(fā)送者41至少包括處理通信信道的發(fā)送單元43和接收單元45、處理密文解密的解碼設(shè)備47、以及處理公鑰產(chǎn)生的APK產(chǎn)生設(shè)備49。接收者42至少包括發(fā)送單元44、接收單元46、以及處理將要發(fā)送的信息例如明文的加密的編碼設(shè)備48。發(fā)送者41可向接收者42公開多個(gè)公鑰,以使得如果發(fā)送者41和接收者42之間存在多個(gè)會(huì)話,則每個(gè)會(huì)話可使用發(fā)送者41不同的公鑰。如果發(fā)送者41也工作為接收者,則它還可包括一個(gè)編碼設(shè)備48。類似地,如果接收者42工作為發(fā)送者,則它還可包括一個(gè)解碼設(shè)備47和APK產(chǎn)生設(shè)備49。
圖4中的編碼設(shè)備48和解碼設(shè)備47都是數(shù)據(jù)通信和加密領(lǐng)域中公知的。下面的圖5進(jìn)一步示出了APK產(chǎn)生設(shè)備49。參考圖5,控制單元55處理產(chǎn)生公鑰以及管理公鑰的過程。寄存器54可用來存儲(chǔ)私鑰、所產(chǎn)生的公鑰、所接收的公鑰以及其他控制單元55所需的數(shù)據(jù)。另外,在此所使用的寄存器54可以通過可存儲(chǔ)信息的任何器件實(shí)現(xiàn),例如片上寄存器、ROM和RAM。APK產(chǎn)生設(shè)備49可與解碼設(shè)備47共享寄存器54,以存儲(chǔ)所接收的密文以及解密時(shí)的中間輸出。下面將描述APK產(chǎn)生設(shè)備49的其他組件。
注意,在圖5中,“群”運(yùn)算是由群指數(shù)運(yùn)算器57處理的。APK產(chǎn)生設(shè)備49也可有其他實(shí)施方式,其中的群運(yùn)算由一個(gè)獨(dú)立的群運(yùn)算器處理。
下面將描述圖4和圖5的APK產(chǎn)生設(shè)備49根據(jù)APK技術(shù)產(chǎn)生匿名公鑰(“APK”)的過程。
圖6示出了產(chǎn)生APK/私鑰對(duì)的示例性處理流程。首先,群選擇器51選擇一個(gè)群G(步驟S60)。例如,計(jì)算機(jī)可具有存儲(chǔ)器,其中存儲(chǔ)了代表各種符合條件的群的各種數(shù)據(jù)結(jié)構(gòu)。在控制單元55的控制下,群選擇器51通過選擇代表群的數(shù)據(jù)結(jié)構(gòu)來選擇一個(gè)群。在實(shí)踐中,已經(jīng)存在一些商用函數(shù)庫,其可以運(yùn)行在計(jì)算機(jī)上并提供這種服務(wù)。需要實(shí)現(xiàn)APK技術(shù)的應(yīng)用程序可利用一些具體參數(shù)來調(diào)用這種庫提供的特定函數(shù)。然后所調(diào)用的函數(shù)就可以返回所需的(多個(gè))群。在一個(gè)實(shí)現(xiàn)方式中,G是有限循環(huán)群,其階數(shù)是n(n是正整數(shù))。有限循環(huán)群G的候選者包括但不局限于有限域Fq1上的橢圓曲線上的點(diǎn)構(gòu)成的群;有限域Fq2上的乘法群Fq2*,其中q2=pm1,m1是正整數(shù),p是素?cái)?shù);群Zn1*,其中n1是合數(shù);以及乘法群Zn2*,其中n2是素?cái)?shù)。
在上述四中示例性群中,第一種群可能具有最佳的安全性能,而后三種在本領(lǐng)域中使用得更為普遍。群G的“有限循環(huán)”特性確保了群指數(shù)運(yùn)算最終都會(huì)被映射到群G內(nèi);然而,映射方法可能會(huì)根據(jù)群而不同。另外,它還確保了生成子的存在。
然后,子群選擇器52選擇G階數(shù)為m的子群,其中m≤n(步驟S61)。如果m選擇為素?cái)?shù),則將具有優(yōu)選的安全性能。請(qǐng)注意所述子群可被選擇為G自身,這也就意味著m=n。在另一個(gè)實(shí)現(xiàn)方式中,假設(shè)在群G被確定或選擇后,可省略子群的選擇,這也意味著G自身被隱式地選擇為所述子群,因?yàn)樵跀?shù)學(xué)上G是它自身的一個(gè)子群。也就是說,當(dāng)G本身被選擇為所述子群時(shí)(使得m=n),則這一選擇可在表面上被省略。當(dāng)然,如果省略子群的選擇,則也可省略子群選擇器52(如圖5所示)。
然后,整數(shù)選擇器56選擇一個(gè)整數(shù)作為私鑰x,使得x滿足1<|x|<m(步驟S62)。應(yīng)理解到,一個(gè)終端可具有多個(gè)私鑰,盡管在此的描述為了簡(jiǎn)單起見集中于如何從一個(gè)私鑰生成多個(gè)公鑰。
然后,生成子選擇器53選擇并確定群G的一個(gè)生成子(步驟S63)。如果G是有限循環(huán)群,則它總會(huì)有至少一個(gè)生成子。應(yīng)注意,g和x的選擇是彼此獨(dú)立的。也就是說,盡管步驟S62在此被描述為在步驟S63之前,但它們的執(zhí)行順序可以顛倒過來,或者并行地執(zhí)行。
選擇G、m、x和g后,在控制單元55的控制下,選擇一個(gè)滿足0<|r|<m的整數(shù)r作為所述指示符,以產(chǎn)生新的公鑰(步驟S64)。
選擇了G、m、x、g和r后,通過計(jì)算y1=gr和y2=y(tǒng)1x來產(chǎn)生新的公鑰(步驟S65)。然后可向接收者公開公鑰(y1,y2)以用于加密(步驟S66)。當(dāng)然,可以有其他信息與所述公鑰一起公開。
應(yīng)注意,g、x和r的選擇彼此之間沒有順序和依賴性需求,因此步驟S62、S63和S64可以任何順序執(zhí)行,不論是串行還是并行。另外,g、x和r的選擇可以是隨機(jī)的,也可以根據(jù)所需的標(biāo)準(zhǔn)進(jìn)行。
或者,前述步驟中的一些可被控制單元55省略,而在其他地方執(zhí)行。例如,群G和所述子群可由第三方例如信托機(jī)構(gòu)指定。因此,控制單元55就跳過了選擇群和子群的步驟,因?yàn)樗鼈冊(cè)谕獠勘淮_定。而且,如果以前已產(chǎn)生過一個(gè)匿名公鑰,則肯定已選擇并確定了所述群、子群、生成子和私鑰。因此當(dāng)要產(chǎn)生新的公鑰時(shí),控制單元55就跳過這4個(gè)步驟而直接進(jìn)行到后續(xù)步驟。
如果y1或y2原來位于群G的范圍之外,則它們必須被映射到群G內(nèi)。映射方法可根據(jù)不同的群而不同。然而,循環(huán)群G確保了這種映射方法的存在。
應(yīng)注意,前述步驟或者可以在系統(tǒng)的單個(gè)設(shè)備/模塊執(zhí)行(利用集成或分離的組件),也可以分布式的方式進(jìn)行,其中系統(tǒng)的不同設(shè)備分別執(zhí)行這些步驟中的一些步驟。
下面描述群、子群和生成子選擇的示例。假設(shè)選擇了群Zp*,其中p=11,因此Z11*={1,2,3,4,5,6,7,8,9,10}。由于11是素?cái)?shù),因此數(shù)學(xué)上Z11*的階數(shù)是11-1=10。元素2是Z11*的生成子,因?yàn)榭扇菀椎仳?yàn)證Z11*={2imod 11/i=0,1,...,9}。由于群是它自身的子群,所述子群可被選擇為Z11*。子群的另一個(gè)選擇例如是{1,3,4,5,9},階數(shù)為5,具有生成子3。也很容易地可驗(yàn)證35=1 mod 11。
而且,如本領(lǐng)域內(nèi)的技術(shù)人員可認(rèn)識(shí)到的那樣,所有所述設(shè)備和組件都可實(shí)現(xiàn)為硬件、軟件、固件或其組合,根據(jù)不同的考慮而各異。
基本上是在圖6中描述的示例性方法只是可用于產(chǎn)生根據(jù)APK技術(shù)的匿名公鑰的許多方法中的一種。還存在更高級(jí)的方法,不僅可用于相同的目的,還可獲得性能上的優(yōu)化。為描述這些優(yōu)化方法,下面參考圖4、5和7簡(jiǎn)單地總結(jié)本領(lǐng)域內(nèi)公知的編碼和解碼過程,其中⊙是群G上的可逆運(yùn)算, 是⊙的逆運(yùn)算。已將APK技術(shù)應(yīng)用到圖7中的過程中。
為了加密明文M,首先將M表示為G的元素(例如將M表示為ASCII碼)(步驟S80),然后選擇滿足1<|k|<m的一個(gè)整數(shù)k作為指定符(步驟S81),并如下計(jì)算一對(duì)值(步驟S82)C1=y(tǒng)1k和C2=M⊙y2k其中C1和C2和群G的元素。所有這些操作都可由圖4中的編碼設(shè)備48完成?!训氖纠梢允侨篏上的乘法、除法、加法或減法。如果C1和C2原來位于群G的范圍之外,則它們必須被映射到群G內(nèi)。映射方法根據(jù)不同的群而不同。
此時(shí),獲得了消息M的密文C=(C1,C2)(步驟S83),并可由發(fā)送單元44通過通信信道向外發(fā)送。
對(duì)于位于群G的范圍之外的將要編碼的消息M,在編碼前它必須被轉(zhuǎn)換成若干群元素。在接下來的解碼之后,所恢復(fù)出的群元素必須被轉(zhuǎn)換回到初始的消息。轉(zhuǎn)換方法可根據(jù)不同的群而不同。一個(gè)示例是將消息分割成若干塊,每個(gè)塊都是群G的元素,并串接所有的塊來重構(gòu)M。
在通信信道的另一側(cè),接收到密文消息C(步驟S84)。為了從密文C獲取明文M,首先必須在兩種方式之間作出決定,即是否進(jìn)行直接指數(shù)運(yùn)算(步驟S85)。如果是,則首先計(jì)算rb=C1x(步驟S86),然后通過計(jì)算 來獲得M(步驟S87);否則就首先計(jì)算ra=C1-x(步驟S88),然后通過計(jì)算M=C2⊙ra來獲得M(步驟S89)。
在成功地解密密文(C1,C2)后,根據(jù)解密的實(shí)現(xiàn)方式,APK產(chǎn)生設(shè)備49根據(jù)APK技術(shù)可利用所接收的密文以及中間解密輸出ra來產(chǎn)生新的匿名公鑰,其形式為(y1=C1-1,y2=ra)。類似地,APK產(chǎn)生設(shè)備49可利用所接收的密文以及中間解密輸出rb來產(chǎn)生新的匿名公鑰,其形式為(y1=C1,y2=rb)。在這兩種產(chǎn)生新的匿名公鑰的方法中,都可避免指數(shù)運(yùn)算,提高了計(jì)算效率。
而且,當(dāng)提供了單個(gè)匿名公鑰(y1,y2)時(shí),APK產(chǎn)生設(shè)備49可產(chǎn)生一個(gè)新的匿名公鑰,形式為(y2,y2x)。這一方法可被使用多次以產(chǎn)生一系列公鑰。按照這種方式,所產(chǎn)生的公鑰的存儲(chǔ)消耗可被大大減少,因?yàn)楣€第二部分y2與其后續(xù)結(jié)果的第一部分相同。對(duì)于一系列w個(gè)公鑰,最多可節(jié)省百分比為(w-1)/2w的存儲(chǔ),也就意味著對(duì)于足夠大的w來說,幾乎節(jié)省了50%。
在APK技術(shù)中,由于公鑰是基于生成子的冪的形式,利用同一個(gè)生成子來產(chǎn)生的,因此生成子g的冪可被重復(fù)使用于產(chǎn)生一系列公鑰,這涉及的是乘法而不是指數(shù)運(yùn)算,因而節(jié)省了存儲(chǔ)器并加速了計(jì)算。同時(shí),由于在解碼設(shè)備中只需要維護(hù)一張生成子的冪表,因此可以離線執(zhí)行新公鑰的計(jì)算。
例如,在一個(gè)實(shí)現(xiàn)方式中,當(dāng)在解碼設(shè)備中接收到密文消息C=(C1,C2)時(shí),可獲取C并用來產(chǎn)生新的公鑰。如前所述,C1=y(tǒng)1k=grk,并且grk可被保存來產(chǎn)生新的公鑰,因?yàn)槌朔e“rk”只是另一個(gè)整數(shù)。應(yīng)注意,盡管grk可被保存來產(chǎn)生新的公鑰,但是rk的值對(duì)于解碼設(shè)備來說可能仍然是未知的,除非編碼設(shè)備在發(fā)送加密消息時(shí)公開了k。
當(dāng)提供了單個(gè)匿名公鑰(y1,y2)時(shí),APK產(chǎn)生設(shè)備49可產(chǎn)生一個(gè)新的匿名公鑰,形式為(y1×y1,y2×y2),其中×是群乘法。一般地,如果提供了若干匿名公鑰(y11,y21)、(y12,y22)、…、(y1j,y2j),j≥2,則基于所存儲(chǔ)的多個(gè)g的冪y11=gr1、y12=gr2、…、y1j=grj,以及y21=y(tǒng)11x、y22=y(tǒng)12x、…、y2j=y(tǒng)1jx,可以計(jì)算一個(gè)新的公鑰為(y1(j+1)=y(tǒng)11y12…y1j,y2(j+1)=y(tǒng)21y22…y2j),其中y11y12…y1j是y11、y12…y1j,的乘積,y21y22…y2j是y21,、y22、…、y2j的乘積。很清楚,為了產(chǎn)生新的匿名公鑰,指數(shù)運(yùn)算被乘法所取代,提高了計(jì)算效率。由于可以在線執(zhí)行乘法,因此按照這種方式產(chǎn)生的新公鑰不必被預(yù)先計(jì)算,這直接意味著存儲(chǔ)空間的節(jié)省。
上述優(yōu)化技術(shù)可結(jié)合起來使用以產(chǎn)生新的匿名公鑰。例如,在接收并成功地解密一系列密文(C11,C21)、(C12,C22)、…、(C1j,C2j),j≥2后,APK產(chǎn)生設(shè)備49可利用所接收的密文以及中間解密輸出rb1、rb2、…、rbj來產(chǎn)生一個(gè)新的匿名公鑰,形式為(y1=(C11C12…C1j),y2=(rb1rb2…rbj)),其中C11C12…C1ji是C11、C12、…、C1j的乘積,rb1rb2…rbj是rb1、rb2、…、rbj的乘積。
而且,利用對(duì)y2的計(jì)算,可以計(jì)算一系列公鑰(y2w1,y2w2),其中w1=xw,w2=x(w+1),w≥0。而且,這一計(jì)算中獲得的所有結(jié)果,尤其是g的冪,都可利用來產(chǎn)生其他公鑰。
而且,基于從密文C獲取的C1,解碼設(shè)備可以產(chǎn)生更多的新公鑰。為此,計(jì)算并保存C1x和C1-x,然后可以產(chǎn)生兩個(gè)系列的公鑰。一般地,當(dāng)接收到多個(gè)加密消息CC1=(C11,C12)、CC2=(C21,C22)、…、CCj=(Cj1,Cj2),j≥1時(shí),對(duì)于C1x,可以產(chǎn)生一系列的公鑰((C11C21…Cj1)u1,(C11C21…Cj1)u2),其中C11C21…Cj1是C11、C21、…、Cj1的乘積,u1=xu,u2=x(u+1)并且u≥0,對(duì)于G1-x,可以產(chǎn)生另一系列的公鑰((C11C21…Cj1)v1,(C11C21…Cj1)v2),其中C11C21…Cj1是C11、C21、…、Cj1的乘積,v1=-xv,v2=-x(v+1)并且v≥0。而且,這一計(jì)算中獲得的所有結(jié)果,尤其是g的冪,都可被利用來產(chǎn)生其他公鑰。
在下面的描述中,將說明本發(fā)明的一般概念。
上述待決申請(qǐng)中描述的APK技術(shù)提出了一個(gè)問題如何認(rèn)證大量匿名公鑰。對(duì)于可以認(rèn)證大量匿名公鑰的方案,我們希望該方案是1)安全的。沒有人能夠偽造證書,并且沒有人能夠偽裝為證書的擁有者。
2)可靠的。用戶隱私不會(huì)通過任何證書而不公開。
3)可撤銷。在用戶濫用匿名的情況下,用戶的真實(shí)身份可以被公開。
4)可信賴。證書具有商務(wù)有效性。
5)分散化。由于APK中的分布式方法,證書方案應(yīng)當(dāng)是分散化的。
6)高效的。越少涉及第三方機(jī)構(gòu)越好。
如上所述,傳統(tǒng)認(rèn)證方法具有許多缺點(diǎn)。此外,由于APK是一種分布式的隱私保護(hù)方案,所以集中化的認(rèn)證方案不適合于APK方案。
因此,提出了一種認(rèn)證用戶數(shù)據(jù)的分布式的方案,即可延展偽名證書(Malleable Pseudonym Certificate,MPC)方案。
本發(fā)明的可延展偽名證書(MPC)方案是一種認(rèn)證大量公鑰的新型方案。與所有證書都由受信實(shí)體產(chǎn)生和發(fā)放的傳統(tǒng)方案不同,MPC方案是一種分布式的方案,其中,其數(shù)據(jù)要被他人驗(yàn)證的用戶根據(jù)從受信實(shí)體獲取的根證據(jù)(root proof),自己生成偽名證書。
根證據(jù)可以是受信實(shí)體發(fā)放的證書,用于用戶生成偽名證書。下文中,這樣的證書被稱作根證書。根證據(jù)還可以是組私鑰,通過該組私鑰,用戶可以以組成員的名義生成偽名證書。但是,根證據(jù)并不限于此。根證據(jù)可以是能夠證明用戶的可信度并且能夠用來通過某種算法生成偽名證書的任何數(shù)據(jù)。
圖8A示意性地示出了MPC方案的一般概念。
用戶U是網(wǎng)絡(luò)中的一個(gè)用戶,其經(jīng)由網(wǎng)絡(luò)與其他用戶進(jìn)行通信。在通信會(huì)話期間,U的某些數(shù)據(jù)可能需要被另一用戶或?qū)Χ蓑?yàn)證。例如,用戶U的數(shù)據(jù)DATA1要被用戶V1驗(yàn)證,U的數(shù)據(jù)DATA2要被用戶V2驗(yàn)證,U的數(shù)據(jù)DATA1要被用戶V3驗(yàn)證,等等。下文中,希望驗(yàn)證用戶U的數(shù)據(jù)以獲得信心的用戶或者對(duì)端被稱作驗(yàn)證者。
DATA1、DATA2和DATA3可以是用戶的用于不同通信會(huì)話的不同公鑰。在一種實(shí)現(xiàn)方式中,這些數(shù)據(jù)是不可比公鑰或者APK。但是,所述數(shù)據(jù)并不限于公鑰。要被驗(yàn)證的數(shù)據(jù)可以是用于各種目的的任何數(shù)據(jù)。
為了鑒別數(shù)據(jù),用戶U將數(shù)據(jù)發(fā)送給驗(yàn)證者(V1、V2、V3等),其中數(shù)據(jù)配備有證書,例如PC1、PC2、PC3等。在MPC方案中,這些證書都是從由受信實(shí)體發(fā)放給用戶U的一個(gè)根證據(jù)生成的。注意,這些證書(PC1、PC2、PC3等)是由用戶U自己計(jì)算的,無需受信實(shí)體的任何介入。驗(yàn)證者通過這樣的所附加的證書驗(yàn)證用戶U的數(shù)據(jù),并且數(shù)據(jù)可以通過證書而被保證是由受信實(shí)體認(rèn)證的。如果驗(yàn)證者信任所述的受信實(shí)體,則他可以相信用戶U的數(shù)據(jù)的真實(shí)性。
受信實(shí)體可以是CA、受信的組、U的朋友或者可以證明U的可信度的其他方。
在根據(jù)本發(fā)明的MPC方案中,在驗(yàn)證者可以通過這樣的證書驗(yàn)證出U的數(shù)據(jù)是由受信實(shí)體認(rèn)證的并由此獲得信心的同時(shí),用戶可以將這些證書生成為使得驗(yàn)證者不能找出用戶U的真實(shí)身份,即,用戶數(shù)據(jù)的擁有者。因此,用戶生成的這樣的證書在下面被稱作偽名證書。
在用戶數(shù)據(jù)是APK的情況下,可以將各對(duì)APK和偽名證書出示給驗(yàn)證者,例如V1。在V1驗(yàn)證出APK是由受信實(shí)體認(rèn)證并從而獲得信心的同時(shí),V1無法找出這對(duì)APK和偽名證書的擁有者。即使用戶與V1多次通信,每次他/她也可以出示不同的匿名公鑰和偽名證書對(duì),使得V1不能區(qū)分自己是否在與該用戶通信。
圖8B是示意性地示出了根據(jù)本發(fā)明的MPC方案的一般驗(yàn)證過程的流程圖。
在步驟81,用戶從受信實(shí)體得到根證據(jù)。舉例來說,用戶將他/她的基本數(shù)據(jù)(下文中稱作根數(shù)據(jù))及其用戶證據(jù)交給CA。CA對(duì)用戶的根數(shù)據(jù)和根數(shù)據(jù)的用戶證據(jù)執(zhí)行身份檢驗(yàn)。用戶通過CA的身份檢查之后,CA向用戶頒發(fā)證書。
在步驟82,用戶從根證據(jù)生成偽名證書。從同一根證據(jù),用戶可以生成多個(gè)不同的偽名證書。
在步驟83,用戶將配備有一個(gè)偽名證書的用戶數(shù)據(jù)發(fā)送給驗(yàn)證者。
在步驟84,驗(yàn)證者通過偽名證書驗(yàn)證所述的用戶數(shù)據(jù)。由于該數(shù)據(jù)被偽名證書證明為是有受信實(shí)體認(rèn)證的,所以如果驗(yàn)證者信任該受信實(shí)體,則驗(yàn)證者有信心認(rèn)為用戶數(shù)據(jù)是可信的。然后,驗(yàn)證者可以基于所述數(shù)據(jù),與用戶安全地通信。例如,在用戶數(shù)據(jù)是匿名公鑰的情況下,基于用戶的匿名公鑰,用戶可以對(duì)他/她的消息進(jìn)行數(shù)字簽名,或者驗(yàn)證者可以加密給他/她的消息。但是,用戶數(shù)據(jù)并不限于用戶的匿名公鑰。例如,其可以是用戶的不可比公鑰。
如從圖8A和圖8B可以看出的,用戶可以產(chǎn)生可信賴的數(shù)據(jù),其中數(shù)據(jù)通過偽名證書被保證是由受信實(shí)體認(rèn)證的。用戶隱私保護(hù)的功能完全是分布式的。用戶自己產(chǎn)生不同的匿名公鑰以及不同的偽名證書。受信實(shí)體只需為用戶的根數(shù)據(jù)頒發(fā)根證據(jù)。例如,CA向用戶頒發(fā)對(duì)于他/她的根公鑰的根證書(RC)。其中認(rèn)證機(jī)構(gòu)的介入被最小化,從而CA的輕量級(jí)實(shí)現(xiàn)變得可行。
此外,利用根據(jù)本發(fā)明的MPC方案,受信實(shí)體可以存儲(chǔ)用戶的根證據(jù),使得在受信實(shí)體處,偽名證書是可追查的。
在用戶U行為不當(dāng)?shù)那闆r下,例如他/她對(duì)消息進(jìn)行了數(shù)字簽名,但是后來又否認(rèn)該簽名,則受騙者可以將用戶U的偽名證書發(fā)送回受信實(shí)體。受信實(shí)體將具有找出該偽名證書的真實(shí)擁有者的能力,并且只有受信實(shí)體具有這種能力。
考慮一個(gè)具體的情況,U生成成對(duì)的匿名公鑰和偽名證書。然后,他/她與V1通信,表明該公鑰和證書。基于偽名證書,V1驗(yàn)證出該匿名公鑰的確是由受信實(shí)體認(rèn)證的。因此,當(dāng)他/她簽名承諾他/她將支付50塊錢給V1時(shí),V1將他/她寫作的電子書發(fā)送給U。因?yàn)閂1只看到匿名公鑰和偽名證書,因此他/她并不知道購買者的真實(shí)身份。然而,如果U賴帳,V1可以將該偽名證書發(fā)送給受信實(shí)體,受信實(shí)體通過該偽名證書可以揭露該偽名證書的真實(shí)擁有者。在該情況中,擁有者是U,他/她將因此受到懲罰。以這種方式,用戶不能濫用系統(tǒng)的匿名能力。
在下面的說明中,將參考圖9到圖18描述根據(jù)本發(fā)明的第一實(shí)施例。
圖9是示意性示出了本發(fā)明第一實(shí)施例的系統(tǒng)體系結(jié)構(gòu)的框圖。
根據(jù)第一實(shí)施例,受信實(shí)體是認(rèn)證機(jī)構(gòu)CA。要被驗(yàn)證者驗(yàn)證的用戶U的數(shù)據(jù)是用戶U的匿名公鑰。
假設(shè)U通過了個(gè)人身份檢驗(yàn),CA向U頒發(fā)根證書(RC)。從該根證書,U生成偽名證書用于他/她的匿名公鑰。然后,U將配備有偽名證書(PC1、PC2、PC3...)的匿名公鑰(APK1、APK2、APK3...)發(fā)送給驗(yàn)證者V(V1、V2、V3...)。V驗(yàn)證從U接收的偽名證書,如果預(yù)定條件被滿足,則接受該證書。
在第一實(shí)施例中,U可以從RC導(dǎo)出偽名證書用于某些匿名公鑰,而無需CA的介入,同時(shí)V可以基于偽名證書判斷U的可靠性,也不需要涉及CA。
另外,V將存儲(chǔ)從U處收集的數(shù)據(jù),并且在某些情況下,例如U行為非法時(shí),V可以將從U處收集的數(shù)據(jù)提交給CAS,并且CA能夠公開U的真實(shí)身份。
在下面的描述中,假定密碼術(shù)是基于強(qiáng)RSA(SRSA)假設(shè)的。對(duì)于SRSA的具體內(nèi)容,請(qǐng)參見N.Baric′,B.Pfitzmann,Collision-freeAccumulators and Fail-stop Signature Schemes without Trees,Advances inCryptology-EUROCRYPT’97,pp.480~494,1997;以及R.Cramer,V.Shoup,Signature Schemes Based on The Strong RSA Assumption,ACM Transactionson Information and System Security,vol.3(3)161~185,2000,其通過引用結(jié)合于此。
此外,一些證明技術(shù)可能會(huì)在本發(fā)明的該實(shí)施例中被使用,這些技術(shù)允許一個(gè)證明者相對(duì)于某個(gè)值的知識(shí),使得驗(yàn)證者相信該證明者,而與該值自身有關(guān)的有用信息不會(huì)被泄漏。
在根據(jù)本發(fā)明的第一實(shí)施例中,使用了所謂的知識(shí)證明技術(shù)(參見S.Goldwasser,S.Micali,C.Rackoff,The Knowledge Complexity of InteractiveProof Systems,17thACM Symposium on Theory of Computation,pp.291~304,1985,其通過引用結(jié)合于此)。已經(jīng)提出了許多方法用于零知識(shí)證明離散對(duì)數(shù)知識(shí)(參見A.Fiat,A.Shamir,How To Prove YourselfPracticalSolutions to Identification and Signature Problems,Advances in Cryptology-CRYPTO’86,pp.186~194,1986;D.Chaum,Demonstrating Possession of aDiscrete Logarithm without Revealing It,Advances in Cryptology-CRYPTO’86,pp.200~212,1987;D.Chaum,J.H.Evertse,J.van de Graaf,AnImproved Protocol for Demonstrating Possession of Discrete Logarithms andSome Generalizations,Advances in Cryptology-EUROCRYPTO’87,pp.127~141,1987;D.Chaum,T.P.Pedersen,Wallet Databases with Observers,Advances in Cryptology-CRYPTO’92,pp.89~105,1993;and K.Sako,J.Kilian,Receipt-Free Mix-Type Voting Scheme-A Practical Solution to theImplementation of a Voting Booth,Advances in Cryptology-CRYPTO’98,pp.393~403,1998,它們通過引用結(jié)合于此)。
在本發(fā)明的第一實(shí)施例中,式(1)將被用于表示證明者和驗(yàn)證者之間對(duì)于共同的輸入(gj,yj)的知識(shí)證明KP{(x1,...,xi)/(g1,y1),...,(gi,yi):y1=g1x1and...andyi=gixianda1<x1<b1and..andai<xi<bi}---(1)]]>其中,gj產(chǎn)生<gj>,j=1,...,i,該知識(shí)證明證明了知識(shí)xj,使得對(duì)于所有j=1,...,i,保持了yj=gjxj,]]>并且aj<xj<bj。用于證明aj<xj<bj的技術(shù)出現(xiàn)在T.Okamoto,An Efficient Divisible Electronic Cash Scheme,Advances inCryptology-CRYPTO’95,pp.438~451,1995中,并且后來在A.Chan,Y.Frankel,Y.Tsiounis,Easy Come-Easy Go Divisible Cash,Advances inCryptology-EUROCRYPT’98,pp.561~575,1998中有所發(fā)展,其中其被命名為Range Bounded Commitment(RBC)。上述文獻(xiàn)的教導(dǎo)通過引用結(jié)合于此。
可以想到,上述式(1)可以一般化為乘法表示。例如KP{(x1,x2)/(g1,h1,y1),(g2,y2):y1=g1x1×h1x2anda<x1<b}---(2)]]>表示x1和x2的零知識(shí)證明,假設(shè)a<x1<b,其使得同時(shí)保持了y1=g1x1×h1x2]]>和y2=g2x2.]]>下面,將參考圖10到圖16描述根據(jù)本發(fā)明第一實(shí)施例的方法的細(xì)節(jié)。
根據(jù)第一實(shí)施例的方法主要由五個(gè)階段組成系統(tǒng)啟動(dòng)、RC請(qǐng)求、MPC導(dǎo)出、匿名鑒別以及追查(如果需要的話)。
圖10是示出了在根據(jù)本實(shí)施例的系統(tǒng)啟動(dòng)階段中的CA初始化過程的一個(gè)示例的流程圖。
在步驟101,CA生成SRSA模數(shù)nc。nc的因數(shù)分解被保密。
在步驟102,CA生成素?cái)?shù)p和q,使得p-1被q整除。
在步驟103,CA計(jì)算整數(shù)lq=|q|,即q的長(zhǎng)度。
在步驟104,CA從Z*p選擇GF(q)(q階的有限閾)的一個(gè)生成子g。
在步驟105,CA從QR(nc)選擇整數(shù)ca,cb和cc。
在步驟106,CA選擇整數(shù)lc<lq。
上述數(shù)學(xué)概念可以在A.Menezes,P.van Oorschot,S.Vanstone,Handbook of Applied Cryptography,CRC Press,1996,其通過引用結(jié)合于此。最后,在步驟107,CA向例如因特網(wǎng)的網(wǎng)絡(luò)公布nc、p、q、g、lq、ca、cb、cc和lc。
圖11是示出了根據(jù)本實(shí)施例的系統(tǒng)啟動(dòng)階段中的用戶初始化過程的一個(gè)示例的流程圖。
根據(jù)CA公布的系統(tǒng)參數(shù),用戶U在步驟111隨機(jī)選擇其自己的私鑰xu∈(0,2lq)。
在步驟112,用戶U計(jì)算他/她的根公鑰(g,yu=gxu)(modp)]]>。
為了獲得RC,U需要向CA鑒別他/她的身份,而CA必須保證yu并沒有被其他用戶用作公鑰。
圖12是示出了根據(jù)本實(shí)施例的RC請(qǐng)求過程的一個(gè)示例的流程圖。
在步驟121,用戶U計(jì)算au=caxu(modnc).]]>在步驟122,用戶U向CA提交他/她的根公鑰(g,yu)和au。
在步驟123,用戶U和CA執(zhí)行知識(shí)證明KP{xu)/(g,yu),(ca,au):yu=gxuandau=caxuandxu∈(-22lq,22lq)}.]]>如果知識(shí)證明成功,則在步驟124,CA選擇一個(gè)足夠大的隨機(jī)素?cái)?shù)eu>22lq+1]]>,其中g(shù)cd(eu,f(nc))=1,保證eu尚未分配給其他用戶,并計(jì)算su=(cb/au)1/eu(modnc).]]>在步驟125,CA對(duì)(g,yu)頒發(fā)(eu,su)給用戶,作為RC。
在步驟126,CA以用戶U的名字將解蔽值(demasking)eu存儲(chǔ)在數(shù)據(jù)庫中,用于可能的追查。
在步驟127,用戶U驗(yàn)證保持了一致性cb=sueu×au(modnc).]]>所述RC是二元組(eu,su),其中eu實(shí)際上是RSA公鑰,su是cb/au的數(shù)字簽名。但是,如在下一階段將論述的,具備了該單個(gè)簽名,U可以有效地導(dǎo)出用于他/她的全部匿名公鑰的證書。RC是對(duì)所有按照(gr,yur)的形式的匿名公鑰進(jìn)行簽名的數(shù)據(jù)簽名。
圖13是示出了根據(jù)本實(shí)施例,用戶U如何生成匿名公鑰的流程圖,圖14是示出了根據(jù)本實(shí)施例,用戶U如何從RC導(dǎo)出偽名證書的流程圖。匿名公鑰和偽名證書一起保證了隱私保護(hù)和匿名可靠性。
如圖13所示,在步驟131,用戶U從{0,1,…,21c-1}中選擇整數(shù)r,并在步驟132計(jì)算匿名公鑰(gr,yur)(modp)。
如圖14所示,在步驟141,用戶U從{0,1,…,q-1}選擇整數(shù)t,并在步驟142計(jì)算su~=su×cct(modnc)]]>和yu~=su~eu(modnc).]]>偽名證書實(shí)際上是二元組 現(xiàn)在,用戶具有cb=su~eu×caxn×cc-t×eu(modnc),]]>其中,eu、xu和-t×eu的知識(shí)將在下一階段證明給驗(yàn)證者。
在預(yù)先準(zhǔn)備了匿名公鑰和偽名證書之后,U可以將它們呈現(xiàn)給驗(yàn)證者。
圖15是示出了根據(jù)本實(shí)施例的匿名鑒別過程的一個(gè)示例的流程圖。在步驟151,用戶U將匿名公鑰(y1r=gr,y2r=yur)]]>和偽名證書 提交給驗(yàn)證者V。
在步驟152,V計(jì)算yb=cb/yu~(modnc).]]>在步驟153,用戶U和驗(yàn)證者V執(zhí)行知識(shí)證明KP{x1,x2,x3)/(su~,yu~),(ca,cc,yb),(y1r,y2r):yu~=su~x1andyb=cax2×ccx3andy2r=y1rx2andx2∈(-22lq,22lq)}]]>在步驟154,V存儲(chǔ)上述知識(shí)證明的副本,以用于可能的追查。
由于在圖12的步驟126,CA已經(jīng)將解蔽值eu以用戶U的名義存儲(chǔ)在其數(shù)據(jù)庫中,所以CA具有追查能力。
在V將U的匿名公鑰接受為是被CA的證書管理服務(wù)(CMS)認(rèn)證的,并且與U進(jìn)行交易之后,如果U行為不當(dāng),則V可以將U的不當(dāng)行為的證據(jù)提供給CA,并請(qǐng)求CA幫助。CA將明確審查從V收到的證據(jù)。如果從CA的角度,由合理的理由讓V知道U的真實(shí)身份,則CA可以與V合作確定U的真實(shí)身份。
圖16是示出了根據(jù)本實(shí)施例的追查過程的流程圖。
在步驟161,V將偽名證書 提交給CA。
在步驟162,對(duì)于CA的數(shù)據(jù)庫中所存儲(chǔ)的全部解蔽值eu,CA計(jì)算 并且將結(jié)果與 相比較。
匹配的 和 顯示出偽名證書 的擁有者的解蔽值。以這種方式,CA可以發(fā)現(xiàn)并揭露U的真實(shí)身份。
下面,將參考圖17和圖18描述用戶側(cè)和CA側(cè)的示例裝置。
圖17是示出了根據(jù)第一實(shí)施例的用戶的示例裝置170的框圖。
如圖17所示,用戶裝置170基本上包括用于從CA接收RC的根證據(jù)單元171、耦合到根證據(jù)單元171的用于基于RC生成偽名證書的偽名證書生成單元172,以及耦合到偽名證書生成單元172的用于傳送配備有偽名證書的用戶數(shù)據(jù)的傳送單元173。
在根證書是經(jīng)由網(wǎng)絡(luò)通過數(shù)字請(qǐng)求被請(qǐng)求的情況下,用戶裝置170還可以包括根證據(jù)請(qǐng)求單元174,用于產(chǎn)生RC請(qǐng)求,并將該請(qǐng)求傳送到CA。
要被驗(yàn)證者驗(yàn)證的用戶數(shù)據(jù)可以是公鑰、不可比公鑰、匿名公鑰等。在匿名公鑰的情況下,用戶裝置170還可以包括匿名公鑰生成單元175,用于生成匿名公鑰。匿名公鑰生成單元175的詳細(xì)結(jié)構(gòu)可以在上述APK技術(shù)的描述中找到。當(dāng)要通過偽名證書認(rèn)證的用戶數(shù)據(jù)不是匿名公鑰時(shí),匿名公鑰生成單元175可以被相應(yīng)的數(shù)據(jù)生成單元代替。
如果RC的頒發(fā)需要用戶與CA之間的證明過程,或者鑒別過程中驗(yàn)證者要求知識(shí)證明,則用戶裝置170還可以包括證明單元176,用于執(zhí)行與CA或者驗(yàn)證者之間的證明操作。
上述單元可以各自包括用于存儲(chǔ)各個(gè)單元所使用的數(shù)據(jù)的存儲(chǔ)器。在另一種實(shí)現(xiàn)方式中,用戶裝置170可以包括存儲(chǔ)單元177,用于存儲(chǔ)在裝置的操作期間,所有單元使用的數(shù)據(jù)。
在大多數(shù)情況下,用戶也需要驗(yàn)證其他用戶的數(shù)據(jù)。因此,用戶裝置可以包括驗(yàn)證單元178,用于通過附到從其他用戶接收的數(shù)據(jù)上的偽名證書來驗(yàn)證其他用戶的數(shù)據(jù)。
根證據(jù)單元171、傳送單元173、根證據(jù)請(qǐng)求單元174、證明單元176和驗(yàn)證單元178可以通過各自的通信端口或者通過用戶裝置170中耦合到上述單元的通信單元,來向/從網(wǎng)絡(luò)發(fā)送/接收數(shù)據(jù),其中通信單元用于經(jīng)由網(wǎng)絡(luò)與其他裝置進(jìn)行通信。
上述單元彼此耦合以執(zhí)行根據(jù)本發(fā)明第一實(shí)施例的過程。當(dāng)這些單元被實(shí)現(xiàn)為硬件模塊時(shí),它們可以通過數(shù)據(jù)總線彼此耦合。
圖18是示出了根據(jù)第一實(shí)施例的CA的一個(gè)示例裝置180的框圖。
如圖18所示,CA裝置180基本上包括用于計(jì)算系統(tǒng)參數(shù)的系統(tǒng)參數(shù)計(jì)算單元181、耦合到系統(tǒng)參數(shù)計(jì)算單元181的用于公布由網(wǎng)絡(luò)的全部用戶共享的參數(shù)的系統(tǒng)參數(shù)公布單元182、耦合到網(wǎng)絡(luò)的用于接收用戶的RC請(qǐng)求的根證據(jù)請(qǐng)求接收單元183,以及耦合到根證據(jù)請(qǐng)求接收單元183和所述系統(tǒng)參數(shù)計(jì)算單元181的用于響應(yīng)于根證據(jù)請(qǐng)求而生成RC的根證據(jù)生成單元184。
在頒發(fā)根證據(jù)之前需要檢驗(yàn)用戶RC請(qǐng)求的情況中,CA裝置180還包括耦合到根證據(jù)請(qǐng)求接收單元183的檢驗(yàn)單元185,用于響應(yīng)于用戶的RC請(qǐng)求,執(zhí)行身份檢驗(yàn)。身份檢驗(yàn)可以包括上述的知識(shí)證明過程。
在希望具有追查能力的情況中,CA裝置還可以包括耦合到網(wǎng)絡(luò)的追查單元186,用于使用所存儲(chǔ)的由根證據(jù)生成單元184生成的根證據(jù)的解蔽值,追查從驗(yàn)證者收到的偽名證書的擁有者的身份。
上述單元可以各自包括用于存儲(chǔ)各個(gè)單元所用數(shù)據(jù)的存儲(chǔ)器。在另一種實(shí)現(xiàn)方式中,CA裝置180可以包括存儲(chǔ)單元187,用于存儲(chǔ)裝置的操作過程中,全部單元所使用的數(shù)據(jù)。例如,根證據(jù)生成單元184所生成的RC可以被存儲(chǔ)在根證據(jù)生成單元184內(nèi)部的存儲(chǔ)器中,或者存儲(chǔ)在存儲(chǔ)單元187中。
上述單元彼此耦合以執(zhí)行根據(jù)本發(fā)明第一實(shí)施例的過程。當(dāng)這些單元被實(shí)現(xiàn)為硬件模塊時(shí),它們可以通過數(shù)據(jù)總線彼此耦合。
系統(tǒng)參數(shù)公布單元182和根證據(jù)請(qǐng)求接收單元183可以通過各自的通信端口或者CA裝置180中的通信單元來向/從網(wǎng)絡(luò)發(fā)送/接收數(shù)據(jù),其中通信單元耦合到上述單元,用于經(jīng)由網(wǎng)絡(luò)與其他裝置進(jìn)行通信。
上述用戶裝置和CA裝置僅僅是示例。不管怎樣,這些裝置中所包括的部件并不限于上述這些單元,其具體的結(jié)構(gòu)可以改變或被修改。例如,裝置可以包括在網(wǎng)絡(luò)中的計(jì)算設(shè)備中通常安裝的其他單元,例如用于輸入和輸出數(shù)據(jù)的I/O接口、用于經(jīng)由網(wǎng)絡(luò)連接到其他裝置的各種通信接口、用于控制各個(gè)單元的操作的控制器,等等。由于這些單元是本領(lǐng)域公知的,因此在圖中被省略,并且本領(lǐng)域的技術(shù)人員可以容易地考慮到將它們添加到上述裝置中。
已經(jīng)作為一個(gè)示例描述的本發(fā)明的第一實(shí)施例。但是,本發(fā)明并不限于該第一實(shí)施例中所描述的具體細(xì)節(jié)。例如,用戶的公鑰可以通過其他方法生成。不可比公鑰(參見B.R.Waters,E.W.Felten,A.Sahai,ReceiverAnonymity via Incomparable Public Keys,CCS’03,Washington,DC,USA,PP.112~121,2003)可以被用作要被偽名證明被認(rèn)證的用戶數(shù)據(jù)。并且,被偽名證書認(rèn)證的用戶數(shù)據(jù)并不限于公鑰,而可以是用戶發(fā)出的任何數(shù)據(jù)或消息。此外,實(shí)施例可以被修改以適應(yīng)其他證明技術(shù)和CA方法。除了圖14中所描述的算法,也可以使用其他算法來從RC計(jì)算偽名證書,只要該算法保證偽名證書保持了與RC相同的可驗(yàn)證證據(jù)或秘密,并且同時(shí)使得驗(yàn)證者看不到與所述數(shù)據(jù)的擁有者的身份有關(guān)的信息。第一實(shí)施例已經(jīng)描述了根公鑰是(g,yu)。但是,根公鑰也可以是匿名公鑰(gr,yur)中的任何一個(gè)。
在下面的說明中,將參考圖19到圖24描述根據(jù)本發(fā)明的第二實(shí)施例。
本發(fā)明的第二實(shí)施例利用組簽名方案來產(chǎn)生公鑰的偽名證書。這里,公鑰可以是不可比公鑰、匿名公鑰或者用戶的任何其他公鑰。
在過去的15年里,組簽名方案被很好地研究(參見D.Chaum,E.vanHeyst,Group Signatures,Advances in Cryptology-EUROCRYPTO’91,pp.257~265,1991;J.Camenisch,M.Michels,A Group Signature Scheme Based onan RSA-Variant,Advances in Cryptology-ASIACRYPT’98,pp.160~174,1998;和G.Ateniese,J.Camenisch,M.Joye,G.Tsudik,A Practical andProvably Secure Coalition-Resistant Group Signature Scheme,Advances inCryptology-CRYPTO’2000,pp.255~270,2000,它們通過引用結(jié)合于此)。簡(jiǎn)要地說,有一個(gè)組管理員,其建立一個(gè)組,并管理組成員的接納和撤銷。所有組成員共享相同的組公鑰PKg,但是每個(gè)成員Ui具有不同的組私鑰SKi。給定消息m,組成員Ui可以以組的名義將該消息簽名為s=SIG(m,PKg,SKi),其中,SIG(*)是特定的組簽名算法。對(duì)消息m的簽名s可以通過組公鑰PKg被驗(yàn)證,即,存在簽名驗(yàn)證算法VERIF(*),對(duì)于給定的PKg、s和m,當(dāng)且僅當(dāng)s=SIG(m,PKg,SKi)時(shí),VERIF(s,m,PKg)輸出“有效”。但是,驗(yàn)證者很難確定s的簽名者Ui。從驗(yàn)證者的角度,組成員具有相等的概率成為s的簽名者。這種有趣的特性正是“組簽名”名字的由來。
一些組簽名方案提供了這樣的能力,其中組管理員能夠確定s的簽名者,即,存在追查算法TRACE(*),對(duì)于給定的PKg、s和SKm,當(dāng)且僅當(dāng)s=SIG(m,PKg,SKi)時(shí),TRACE(s,PKg,SKm)輸出Ui,其中,SKm是組管理員的私鑰。
圖19是示意性示出了根據(jù)本發(fā)明第二實(shí)施例的系統(tǒng)體系結(jié)構(gòu)的框圖。
根據(jù)第二實(shí)施例,受信實(shí)體是由組管理員M建立的組190。用戶U是組中的一個(gè)成員,并且具有分配給他/她的組私鑰。在傳統(tǒng)的組簽名方案中,消息以組的名義被簽名。然而,在本發(fā)明的第二實(shí)施例中,組簽名被用于生成公鑰的偽名證書。
圖20是示出了根據(jù)第二實(shí)施例的偽名認(rèn)證方法的示例的流程圖。
在初始化階段201,組管理員建立組,并公布組公鑰PKg。另外,組管理員將私鑰SKm保密,該私鑰SKm將被用于追查行為不當(dāng)?shù)挠脩簟?br> 在步驟202,組成員U加入組中,并得到他/她的用于該組的組私鑰SKu。
在步驟203,U計(jì)算匿名公鑰apk=gr,yur)(modp)。
在步驟204,U將匿名公鑰apk作為一條消息,并將apk數(shù)字簽名為s=SIG(apk,PKg,SKu)。很明顯,s是對(duì)apk的組簽名。
在步驟205,U將s和apk提交給驗(yàn)證者用于驗(yàn)證,并且驗(yàn)證者在步驟206驗(yàn)證用戶的匿名公鑰。由于VERIF(s,apk,PKg)將輸出有效響應(yīng),所以apk將被驗(yàn)證者接受,認(rèn)為其是由匿名組成員數(shù)字簽名的。因此,s保證了匿名組成員擁有該匿名公鑰apk。也就是說,s是對(duì)匿名公鑰apk的偽名證書。
很明顯,根據(jù)本發(fā)明的第二實(shí)施例中的根證據(jù)是用戶的組私鑰。
在需要追查的情況中,s將被呈現(xiàn)給組管理員M,由于追查算法TRACE(s,PKg,SKm)將輸出U,所以組管理員可以基于s確定并揭露U的身份。
在上述示例中,用戶數(shù)據(jù)時(shí)匿名公鑰。但是,用戶數(shù)據(jù)也可以是用戶的其他數(shù)據(jù),例如不可比公鑰或者用戶的任何其他公鑰。
根據(jù)本發(fā)明第二實(shí)施例的用戶裝置與圖17所示的裝置170類似。在第二實(shí)施例中,根證據(jù)單元從組管理員處接收用戶的組私鑰,偽名證書生成單元通過組簽名的方式生成偽名證書,并且傳送單元將配備有偽名證書的用戶數(shù)據(jù)傳送到網(wǎng)絡(luò)。第二實(shí)施例中的根證據(jù)請(qǐng)求單元被用于產(chǎn)生對(duì)于組成員資格的請(qǐng)求,并將該請(qǐng)求發(fā)送給組管理員。
如上面所討論的,通過組簽名驗(yàn)證算法,驗(yàn)證者可以確信用戶數(shù)據(jù)是被組成員認(rèn)證的。但是,在許多情況中,驗(yàn)證者需要知道發(fā)送以組成員名義簽名的數(shù)據(jù)的用戶是否是該數(shù)據(jù)的真正擁有者,或者是否是對(duì)該數(shù)據(jù)簽名的真正的組成員。
圖21是示出了利用傳統(tǒng)的組簽名方案,一個(gè)證明者向驗(yàn)證者證明他/她處于組中的過程的示圖。
如圖21所示,開始時(shí),驗(yàn)證者產(chǎn)生一個(gè)質(zhì)詢消息(步驟211),并將其發(fā)送給證明者。接收到來自驗(yàn)證者的質(zhì)詢消息后,證明者使用他/她的組私鑰對(duì)該質(zhì)詢消息簽名(步驟212),并將所生成的組簽名發(fā)送回驗(yàn)證者。然后,驗(yàn)證者利用組公鑰對(duì)接收自證明者的數(shù)據(jù)執(zhí)行組簽名驗(yàn)證(步驟213)。正確的驗(yàn)證使得驗(yàn)證者確信該證明者是在該組中的。
注意,利用傳統(tǒng)的組簽名方案,證明者響應(yīng)于由驗(yàn)證者生成的質(zhì)詢消息,以在線的方式計(jì)算對(duì)于該質(zhì)詢消息的組簽名。這樣的組簽名在線計(jì)算是耗時(shí)并且高成本的。此外,如果證明者多次與驗(yàn)證者聯(lián)系,每次驗(yàn)證者都生成新的質(zhì)詢消息,證明者不得不計(jì)算多個(gè)組簽名。
利用根據(jù)本發(fā)明的第二實(shí)施例的方案,可以更方便和有效地驗(yàn)證用戶數(shù)據(jù)(即,他/她的公鑰)和偽名證書的有效性。
圖22是示出了根據(jù)本發(fā)明的第二實(shí)施例的方案,用于驗(yàn)證偽名證書和公鑰的有效性的一個(gè)示例過程的示圖。
如圖22所示,證明者使用他/她的組私鑰預(yù)先對(duì)公鑰進(jìn)行簽名,生成組簽名(步驟221)。當(dāng)證明者希望聯(lián)系驗(yàn)證者時(shí),他/她將公鑰連同所產(chǎn)生的偽名證書(即,與該公鑰相對(duì)應(yīng)的組簽名)發(fā)送給驗(yàn)證者。從證明者接收到公鑰和偽名證書后,驗(yàn)證者通過組公鑰和該偽名證書,對(duì)該用戶數(shù)據(jù)執(zhí)行組簽名驗(yàn)證(步驟222)。正確的驗(yàn)證使得驗(yàn)證者確信該公鑰是被組成員簽名的。如果驗(yàn)證者希望知道該用戶是否就是對(duì)該公鑰簽名的組成員,則驗(yàn)證者可以要求證明者證明與該公鑰有關(guān)的知識(shí)。在步驟223和224,對(duì)該公鑰展開知識(shí)證明。具體的證明過程與圖17中所示的類似。如果證明者向驗(yàn)證者證明了與該公鑰相對(duì)應(yīng)的私鑰的知識(shí),則驗(yàn)證者可以相信該證明者。
顯然,利用根據(jù)本發(fā)明的上述方法,偽名證書可以被預(yù)先計(jì)算,而不是響應(yīng)于驗(yàn)證者的質(zhì)詢以在線的方式計(jì)算。也就是說,證明者可以在證明者側(cè)的計(jì)算設(shè)備空閑的時(shí)間計(jì)算組簽名。在與驗(yàn)證者聯(lián)系之前,多個(gè)偽名證書和公鑰可以是已經(jīng)計(jì)算好的。當(dāng)與驗(yàn)證者聯(lián)系時(shí),證明者只需要將公鑰連同偽名證書一起發(fā)送給驗(yàn)證者。驗(yàn)證者檢查偽名證書的正確性。然后,證明者僅向驗(yàn)證者證明與該公鑰相對(duì)應(yīng)的私鑰的知識(shí)。這種證明方法比簽署組簽名更加高效。
圖23是示出了利用根據(jù)本發(fā)明的第二實(shí)施例的方案,用于驗(yàn)證偽名證書和公鑰的有效性的另一示例過程的示圖。
假設(shè)驗(yàn)證者已經(jīng)存儲(chǔ)了曾經(jīng)正確通過驗(yàn)證的公鑰。當(dāng)驗(yàn)證者從證明者處接收到具有偽名證書的公鑰(步驟231)時(shí),驗(yàn)證者將所接收的公鑰與已經(jīng)被驗(yàn)證正確并存儲(chǔ)的那些公鑰相比較(步驟232)。如果所接收的公鑰與所存儲(chǔ)的公鑰中的一個(gè)相匹配,則驗(yàn)證者可以直接進(jìn)行關(guān)于該公鑰的知識(shí)證明(步驟235)。如果沒有匹配的公鑰,則驗(yàn)證者通過所接收的公鑰的偽名證書和組公鑰,對(duì)所接收的公鑰執(zhí)行組簽名驗(yàn)證(步驟233)。如果所接收的偽名證書通過了組簽名驗(yàn)證,則驗(yàn)證者將所接收的公鑰存儲(chǔ)為已經(jīng)被驗(yàn)證正確的公鑰(步驟234),然后過程進(jìn)行到步驟235。否則,過程結(jié)束。
如果證明者決定用相同的偽名證書多次聯(lián)系驗(yàn)證者時(shí),驗(yàn)證者只需要在第一次的時(shí)候檢查偽名證書的正確性。在以后的會(huì)話中,驗(yàn)證者簡(jiǎn)單地將從證明者處接收的公鑰與其本地存儲(chǔ)的公鑰進(jìn)行匹配。如果存在匹配的情況,則驗(yàn)證者和證明者可以直接進(jìn)行到關(guān)于該公鑰的知識(shí)證明。這種用法更加高效,并且匿名性和信任都被保持了。
圖24是示出了根據(jù)本發(fā)明第二實(shí)施例的驗(yàn)證單元的一個(gè)示例的框圖。驗(yàn)證單元240被設(shè)置在驗(yàn)證者的計(jì)算裝置中,或者可以被設(shè)置在用戶裝置中作為圖17所示的驗(yàn)證單元178。
驗(yàn)證單元240包括驗(yàn)證模塊245,用于執(zhí)行組簽名與公鑰的驗(yàn)證。其中,驗(yàn)證模塊245可以被劃分為組簽名驗(yàn)證部分241和公鑰知識(shí)驗(yàn)證部分242。當(dāng)接收到來自證明者的配備有組簽名的公鑰時(shí),驗(yàn)證模塊245使用組簽名驗(yàn)證部分241,利用所接收的公鑰和組公鑰驗(yàn)證組簽名。當(dāng)接收自證明者的公鑰被組簽名驗(yàn)證部分241驗(yàn)證合格之后,公鑰知識(shí)驗(yàn)證部分242執(zhí)行與證明者的關(guān)于連同該組簽名一起接收的公鑰的知識(shí)證明。
驗(yàn)證單元240還可以包括耦合到驗(yàn)證模塊245的存儲(chǔ)器243,以及耦合到驗(yàn)證模塊245和存儲(chǔ)器243的比較模塊244。存儲(chǔ)器243存儲(chǔ)曾經(jīng)被驗(yàn)證正確的公鑰。當(dāng)接收到來自證明者的公鑰和組簽名時(shí),比較模塊244將所接收的公鑰與存儲(chǔ)器243中所存儲(chǔ)的公鑰相比較,并將比較結(jié)果通知給驗(yàn)證模塊245。如果所接收的公鑰與曾經(jīng)被驗(yàn)證正確的公鑰中的一個(gè)相同,則驗(yàn)證模塊245跳過組簽名驗(yàn)證算法的計(jì)算,直接使用公鑰知識(shí)驗(yàn)證部分242執(zhí)行與證明者的關(guān)于連同該組簽名一起接收的公鑰的知識(shí)證明。如果所接收的公鑰與所存儲(chǔ)的公鑰中的任何一個(gè)都不匹配,則驗(yàn)證模塊245使用組簽名驗(yàn)證部分241進(jìn)行如上所述的組簽名驗(yàn)證算法的計(jì)算。
根據(jù)本發(fā)明,在受信實(shí)體為CA的情況中,也可以以類似的方式進(jìn)行證書和公鑰的驗(yàn)證。參考圖15,用戶計(jì)算匿名公鑰和偽名證書之后,將匿名公鑰連同配備的偽名證書發(fā)送給驗(yàn)證者(步驟151)。然后,驗(yàn)證者與用戶執(zhí)行知識(shí)證明來驗(yàn)證偽名證書和匿名公鑰(步驟153)。如步驟153所示,利用本發(fā)明,通過一次知識(shí)證明就可以同時(shí)驗(yàn)證偽名證書與匿名公鑰。在一種實(shí)現(xiàn)方式中,用戶離線計(jì)算匿名公鑰、偽名證書以及知識(shí)證明所需數(shù)據(jù)。驗(yàn)證者收到這些數(shù)據(jù)之后,進(jìn)行本地離線計(jì)算就可以驗(yàn)證偽名證書與公鑰。在另一種實(shí)現(xiàn)方式中,驗(yàn)證者存儲(chǔ)曾經(jīng)驗(yàn)證正確的公鑰。在驗(yàn)證用戶發(fā)送的證書和公鑰時(shí),驗(yàn)證者首先將用戶的公鑰與所存儲(chǔ)的公鑰相比較。如果匹配,則說明該公鑰已經(jīng)是經(jīng)過認(rèn)證的。驗(yàn)證者可以在與用戶進(jìn)行知識(shí)證明時(shí),省略關(guān)于證書的知識(shí)證明的計(jì)算,而僅僅與用戶進(jìn)行關(guān)于公鑰的知識(shí)的證明。相比于傳統(tǒng)方案中的在線驗(yàn)證或者證書與公鑰的分步驗(yàn)證,根據(jù)本發(fā)明的上述驗(yàn)證方式更加高效。
在受信實(shí)體為CA的情況中,驗(yàn)證者裝置中的驗(yàn)證單元同樣包括一個(gè)驗(yàn)證模塊。在一種實(shí)現(xiàn)方式中,驗(yàn)證單元執(zhí)行例如圖15的步驟153所示的知識(shí)證明。在另一種實(shí)現(xiàn)方式中,驗(yàn)證單元還可以包括與驗(yàn)證模塊耦合的存儲(chǔ)器以及與驗(yàn)證模塊和存儲(chǔ)器耦合的比較模塊。其中,存儲(chǔ)器存儲(chǔ)曾經(jīng)被驗(yàn)證正確的公鑰。當(dāng)接收到來自證明者的證書和公鑰時(shí),比較模塊將所接收的公鑰與存儲(chǔ)器中所存儲(chǔ)的公鑰相比較,并將比較結(jié)果通知給驗(yàn)證模塊。如果所接收的公鑰與曾經(jīng)被驗(yàn)證正確的公鑰中的一個(gè)相同,則驗(yàn)證模塊僅進(jìn)行與證明者的關(guān)于公鑰的知識(shí)證明,而省略知識(shí)證明計(jì)算中關(guān)于證書的知識(shí)的計(jì)算。如果所接收的公鑰與所存儲(chǔ)的公鑰中的任何一個(gè)都不匹配,則驗(yàn)證模塊進(jìn)行涉及證書和公鑰的知識(shí)證明計(jì)算,例如圖15的步驟153所示。
已經(jīng)描述了兩種情況中根據(jù)本發(fā)明進(jìn)行證書和用戶數(shù)據(jù)的驗(yàn)證的過程以及驗(yàn)證裝置的結(jié)構(gòu)。但是本發(fā)明并不限于上面描述的具體細(xì)節(jié)。本領(lǐng)域的技術(shù)人員可以根據(jù)具體應(yīng)用和算法,對(duì)驗(yàn)證過程和驗(yàn)證裝置作出相應(yīng)的修改和改變。
如從上述描述可見的,根據(jù)本發(fā)明,用戶可以生成可信賴的匿名公鑰,其中該匿名公鑰通過偽名證書被保證為是由受信實(shí)體認(rèn)證的。用戶隱私保護(hù)的功能完全是分布式的。用戶自己生成不同的匿名公鑰,并且也自己生成不同的偽名證書。在根據(jù)本發(fā)明的一個(gè)實(shí)施例中,CA的介入被最小化,從而實(shí)現(xiàn)輕量級(jí)的認(rèn)證機(jī)構(gòu)變得可能。此外,因?yàn)閭蚊C書在CA或者組管理員的級(jí)別上是可追查的,所以用戶不能濫用匿名能力。
本發(fā)明可以實(shí)現(xiàn)為硬件、軟件、固件或者它們的組合,并且可以用在它們的系統(tǒng)、子系統(tǒng)、部件或者子部件中。當(dāng)以軟件方式實(shí)現(xiàn)時(shí),本發(fā)明的元素實(shí)質(zhì)上是被用于執(zhí)行所需任務(wù)的程序或者代碼段。程序或者代碼段可以存儲(chǔ)在機(jī)器可讀介質(zhì)中,或者通過載波中攜帶的數(shù)據(jù)信號(hào)在傳輸介質(zhì)或者通信網(wǎng)絡(luò)上傳送?!皺C(jī)器可讀介質(zhì)”可以包括能夠存儲(chǔ)或傳輸信息的任何介質(zhì)。機(jī)器可讀介質(zhì)的例子包括電子電路、半導(dǎo)體存儲(chǔ)器設(shè)備、ROM、閃存、可擦除ROM(EROM)、軟盤、CD-ROM、光盤、硬盤、光纖介質(zhì)、射頻(RF)鏈路,等等。代碼段可以經(jīng)由諸如因特網(wǎng)、內(nèi)聯(lián)網(wǎng)等的計(jì)算機(jī)網(wǎng)絡(luò)被下載。
本發(fā)明可以以其他的具體形式實(shí)現(xiàn),而不脫離其精神和本質(zhì)特征。例如,特定實(shí)施例中所描述的算法可以被修改,而系統(tǒng)體系結(jié)構(gòu)并不脫離本發(fā)明的基本精神。因此,當(dāng)前的實(shí)施例在所有方面都被看作是示例性的而非限定性的,本發(fā)明的范圍由所附權(quán)利要求而非上述描述定義,并且,落入權(quán)利要求的含義和等同物的范圍內(nèi)的全部改變從而都被包括在本發(fā)明的范圍之中。
權(quán)利要求
1.一種用于用戶在通信網(wǎng)絡(luò)中認(rèn)證數(shù)據(jù)的計(jì)算裝置,所述網(wǎng)絡(luò)包括受信實(shí)體和至少一個(gè)驗(yàn)證者,所述計(jì)算裝置包括可操作地耦合到所述網(wǎng)絡(luò)的根證據(jù)單元,所述根證據(jù)單元適合于從所述受信實(shí)體接收根證據(jù);可操作地耦合到所述根證據(jù)單元的偽名證書生成單元,所述偽名證書生成單元適合于基于所述根證據(jù)生成至少一個(gè)偽名證書;和可操作地耦合到所述偽名證書生成單元的傳送單元,所述傳送單元適合于將配備有所述偽名證書的所述用戶數(shù)據(jù)傳送到所述通信網(wǎng)絡(luò)。
2.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述偽名證書被生成為不包含所述驗(yàn)證者能夠從其獲得所述用戶的真實(shí)身份的信息。
3.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述用戶數(shù)據(jù)包含所述用戶的公鑰。
4.根據(jù)權(quán)利要求3所述的計(jì)算裝置,其中,所述用戶數(shù)據(jù)中包含的公鑰是不可比公鑰。
5.根據(jù)權(quán)利要求3所述的計(jì)算裝置,其中所述用戶數(shù)據(jù)中包含的公鑰是匿名公鑰,并且所述計(jì)算裝置還包括可操作地耦合到所述傳送單元的匿名公鑰生成單元,所述匿名公鑰生成單元適合于生成所述用戶的多個(gè)匿名公鑰,所述多個(gè)匿名公鑰對(duì)應(yīng)于所述用戶的一個(gè)私鑰。
6.根據(jù)權(quán)利要求5所述的計(jì)算裝置,其中,所述匿名公鑰生成單元從所述私鑰和一個(gè)生成子生成所述多個(gè)匿名公鑰,所述私鑰和所述生成子來自一個(gè)預(yù)定的群。
7.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述根證據(jù)是由所述受信實(shí)體頒發(fā)給所述用戶的根證書。
8.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述根證據(jù)是所述用戶的組私鑰,并且其中,所述偽名證書是所述用戶數(shù)據(jù)的組簽名。
9.根據(jù)權(quán)利要求1所述的計(jì)算裝置,還包括可操作地耦合到所述網(wǎng)絡(luò)的根證據(jù)請(qǐng)求單元,所述根證據(jù)請(qǐng)求單元適合于生成對(duì)于所述根證據(jù)的請(qǐng)求,并將所述請(qǐng)求傳送到所述受信實(shí)體。
10.根據(jù)權(quán)利要求1所述的計(jì)算裝置,還包括可操作地耦合到所述網(wǎng)絡(luò)的證明單元,所述證明單元適合于與所述受信實(shí)體或者所述驗(yàn)證者執(zhí)行知識(shí)證明。
11.一種用于用戶在通信網(wǎng)絡(luò)中認(rèn)證數(shù)據(jù)的方法,所述網(wǎng)絡(luò)包括受信實(shí)體和至少一個(gè)驗(yàn)證者,所述方法包括從所述受信實(shí)體接收根證據(jù);基于所述根證據(jù)生成至少一個(gè)偽名證書;以及將配備有一個(gè)偽名證書的所述用戶的數(shù)據(jù)傳送給一個(gè)驗(yàn)證者。
12.根據(jù)權(quán)利要求11所述的方法,其中,所述偽名證書被生成為不包含所述驗(yàn)證者能夠從其獲得所述用戶的真實(shí)身份的信息。
13.根據(jù)權(quán)利要求11所述的方法,其中,所述用戶數(shù)據(jù)包含所述用戶的公鑰。
14.根據(jù)權(quán)利要求13所述的方法,其中,所述用戶數(shù)據(jù)中包含的公鑰是不可比公鑰。
15.根據(jù)權(quán)利要求13所述的方法,其中所述用戶數(shù)據(jù)中包含的公鑰是匿名公鑰,并且所述方法還包括由所述用戶生成多個(gè)匿名公鑰,所述多個(gè)匿名公鑰對(duì)應(yīng)于所述用戶的一個(gè)私鑰。
16.根據(jù)權(quán)利要求15所述的方法,其中,所述多個(gè)匿名公鑰生成自所述私鑰和一個(gè)生成子,所述私鑰和所述生成子來自一個(gè)預(yù)定的群。
17.根據(jù)權(quán)利要求11所述的方法,其中,所述根證據(jù)是由所述受信實(shí)體頒發(fā)給所述用戶的根證書。
18.根據(jù)權(quán)利要求11所述的方法,其中,所述根證據(jù)是所述用戶的組私鑰,并且其中,所述偽名證書是所述用戶數(shù)據(jù)的組簽名。
19.根據(jù)權(quán)利要求11所述的方法,還包括生成對(duì)于所述根證據(jù)的請(qǐng)求,以及將所述請(qǐng)求傳送到所述受信實(shí)體。
20.根據(jù)權(quán)利要求11所述的方法,還包括與所述受信實(shí)體或者所述驗(yàn)證者執(zhí)行知識(shí)證明。
21.一種用于在通信網(wǎng)絡(luò)中管理證書的裝置,所述網(wǎng)絡(luò)包括至少一個(gè)用戶和至少一個(gè)驗(yàn)證者,所述裝置包括系統(tǒng)參數(shù)計(jì)算單元,所述系統(tǒng)參數(shù)計(jì)算單元適合于計(jì)算系統(tǒng)參數(shù);可操作地耦合到所述系統(tǒng)參數(shù)計(jì)算單元的參數(shù)公布單元,所述參數(shù)公布單元適合于公布要被所述用戶和所述驗(yàn)證者共享的共享系統(tǒng)參數(shù);可操作地耦合到所述網(wǎng)絡(luò)的根證據(jù)請(qǐng)求接收單元,所述根證據(jù)接收單元適合于接收來自所述用戶的根證據(jù)請(qǐng)求;和可操作地耦合到所述根證據(jù)請(qǐng)求接收單元和所述系統(tǒng)參數(shù)計(jì)算單元的根證據(jù)生成單元,所述根證據(jù)生成單元適合于響應(yīng)于所述根證據(jù)請(qǐng)求,為所述用戶生成根證據(jù),所述根證據(jù)被所述用戶用于生成多個(gè)偽名證書。
22.根據(jù)權(quán)利要求21所述的裝置,其中,所述根證據(jù)是頒發(fā)給所述用戶的公鑰的根證書。
23.根據(jù)權(quán)利要求21所述的裝置,其中,所述根證據(jù)是頒發(fā)給所述用戶的根匿名公鑰的根證書。
24.根據(jù)權(quán)利要求21所述的裝置,其中,所述根證據(jù)是頒發(fā)給所述用戶的組私鑰。
25.根據(jù)權(quán)利要求21所述的裝置,還包括可操作地耦合到所述根證據(jù)生成單元的檢驗(yàn)單元,所述檢驗(yàn)單元適合于對(duì)所述根證據(jù)請(qǐng)求執(zhí)行身份檢驗(yàn)。
26.根據(jù)權(quán)利要求21所述的裝置,還包括可操作地耦合到所述網(wǎng)絡(luò)的追查單元,所述追查單元適合于基于所述根證據(jù),追查接收自所述驗(yàn)證者的偽名證書的擁有者的身份。
27.一種用于在通信網(wǎng)絡(luò)中管理證書的方法,所述網(wǎng)絡(luò)包括至少一個(gè)用戶和至少一個(gè)驗(yàn)證者,所述方法包括計(jì)算系統(tǒng)參數(shù);公布要被所述用戶和所述驗(yàn)證者共享的共享系統(tǒng)參數(shù);接收來自所述用戶的根證據(jù)請(qǐng)求;以及響應(yīng)于所述根證據(jù)請(qǐng)求,為所述用戶生成根證據(jù),所述根證據(jù)被所述用戶用于生成多個(gè)偽名證書。
28.根據(jù)權(quán)利要求27所述的方法,其中,所述生成根證據(jù)包括生成頒發(fā)給所述用戶的公鑰的根證書。
29.根據(jù)權(quán)利要求27所述的方法,其中,所述生成根證據(jù)包括生成頒發(fā)給所述用戶的根匿名公鑰的根證書。
30.根據(jù)權(quán)利要求27所述的方法,其中,所述生成根證據(jù)包括生成頒發(fā)給所述用戶的組私鑰。
31.根據(jù)權(quán)利要求27所述的方法,還包括在接收所述根證據(jù)請(qǐng)求之后,對(duì)所述根證據(jù)請(qǐng)求執(zhí)行身份檢驗(yàn)。
32.根據(jù)權(quán)利要求27所述的方法,還包括基于所述根證據(jù),追查接收自所述驗(yàn)證者的偽名證書的擁有者的身份。
33.一種用于網(wǎng)絡(luò)通信中的用戶的可延展偽名證書系統(tǒng),所述網(wǎng)絡(luò)包括一個(gè)受信實(shí)體,所述系統(tǒng)包括可操作地耦合到所述網(wǎng)絡(luò)的根證據(jù)單元,所述根證據(jù)單元適合于從所述受信實(shí)體接收根證據(jù);可操作地耦合到所述根證據(jù)單元的偽名證書生成單元,所述偽名證書生成單元適合于基于所述根證據(jù)生成至少一個(gè)偽名證書;可操作地耦合到所述偽名證書生成單元的傳送單元,所述傳送單元適合于將配備有所述偽名證書的所述用戶的數(shù)據(jù)傳送到所述通信網(wǎng)絡(luò);和可操作地耦合到所述通信網(wǎng)絡(luò)的驗(yàn)證者單元,所述驗(yàn)證者單元適合于通過接收到的偽名證書驗(yàn)證所述用戶的數(shù)據(jù)。
34.根據(jù)權(quán)利要求33所述的系統(tǒng),其中,所述偽名證書被生成為不包含所述驗(yàn)證者單元能夠從其獲得所述用戶的真實(shí)身份的信息。
35.根據(jù)權(quán)利要求33所述的系統(tǒng),其中,所述用戶數(shù)據(jù)包含所述用戶的公鑰。
36.根據(jù)權(quán)利要求35所述的系統(tǒng),其中,所述用戶數(shù)據(jù)中包含的公鑰是不可比公鑰。
37.根據(jù)權(quán)利要求35所述的系統(tǒng),其中所述用戶數(shù)據(jù)中包含的公鑰是匿名公鑰,并且所述系統(tǒng)還包括可操作地耦合到所述傳送單元的匿名公鑰生成單元,所述匿名公鑰生成單元適合于生成所述用戶的多個(gè)匿名公鑰,所述多個(gè)匿名公鑰對(duì)應(yīng)于所述用戶的一個(gè)私鑰。
38.根據(jù)權(quán)利要求37所述的系統(tǒng),其中,所述匿名公鑰生成單元從所述私鑰和一個(gè)生成子生成所述多個(gè)匿名公鑰,所述私鑰和所述生成子來自一個(gè)預(yù)定的群。
39.根據(jù)權(quán)利要求33所述的系統(tǒng),其中,所述根證據(jù)是由所述受信實(shí)體頒發(fā)給所述用戶的根證書。
40.根據(jù)權(quán)利要求33所述的系統(tǒng),其中,所述根證據(jù)是所述用戶的組私鑰,并且其中,所述偽名證書是所述用戶數(shù)據(jù)的組簽名。
41.根據(jù)權(quán)利要求33所述的系統(tǒng),其中,所述驗(yàn)證者單元包括驗(yàn)證模塊,用于驗(yàn)證所述偽名證書和所述用戶數(shù)據(jù)。
42.根據(jù)權(quán)利要求41所述的系統(tǒng),其中,所述驗(yàn)證者單元還包括耦合到所述驗(yàn)證模塊的存儲(chǔ)器,所述存儲(chǔ)器用于存儲(chǔ)已經(jīng)被驗(yàn)證正確的數(shù)據(jù);和可操作地耦合到所述存儲(chǔ)器和所述驗(yàn)證模塊的比較模塊,所述比較模塊適合于將接收到的用戶數(shù)據(jù)與所述存儲(chǔ)的數(shù)據(jù)相比較。
43.根據(jù)權(quán)利要求33所述的系統(tǒng),還包括可操作地耦合到所述驗(yàn)證者單元的追查單元,所述追查單元適合于基于所述根證據(jù),追查接收自所述驗(yàn)證者單元的偽名證書的擁有者的身份。
44.一種用于在通信網(wǎng)絡(luò)中通過偽名證書認(rèn)證用戶數(shù)據(jù)的方法,所述網(wǎng)絡(luò)包括受信實(shí)體和至少一個(gè)驗(yàn)證者,所述方法包括從所述受信實(shí)體向所述用戶頒發(fā)根證據(jù);基于所述根證據(jù),由所述用戶生成至少一個(gè)偽名證書;以及將配備有一個(gè)偽名證書的所述用戶數(shù)據(jù)傳送給一個(gè)驗(yàn)證者,所述驗(yàn)證者通過所述偽名證書驗(yàn)證所述用戶數(shù)據(jù)。
45.根據(jù)權(quán)利要求44所述的方法,其中,所述偽名證書所述偽名證書被生成為不包含所述驗(yàn)證者能夠從其獲得所述用戶的真實(shí)身份的信息。
46.根據(jù)權(quán)利要求44所述的方法,其中,所述用戶數(shù)據(jù)包含所述用戶的公鑰。
47.根據(jù)權(quán)利要求46所述的方法,其中,所述用戶數(shù)據(jù)中包含的公鑰是不可比公鑰。
48.根據(jù)權(quán)利要求46所述的方法,其中所述用戶數(shù)據(jù)中包含的公鑰是匿名公鑰,并且所述方法還包括由所述用戶生成多個(gè)匿名公鑰,所述多個(gè)匿名公鑰對(duì)應(yīng)于所述用戶的一個(gè)私鑰。
49.根據(jù)權(quán)利要求48所述的方法,其中,所述多個(gè)匿名公鑰生成自所述私鑰和一個(gè)生成子,所述私鑰和所述生成子來自一個(gè)預(yù)定的群。
50.根據(jù)權(quán)利要求44所述的方法,其中,所述頒發(fā)根證據(jù)包括為所述用戶的公鑰頒發(fā)根證書。
51.根據(jù)權(quán)利要求44所述的方法,其中,所述頒發(fā)根證據(jù)包括對(duì)所述用戶頒發(fā)組私鑰,并且其中,所述生成至少一個(gè)偽名證書包括生成所述用戶數(shù)據(jù)的組簽名。
52.根據(jù)權(quán)利要求44所述的方法,其中,所述驗(yàn)證者通過與所述用戶執(zhí)行知識(shí)證明來驗(yàn)證所述偽名證書和所述用戶數(shù)據(jù)。
53.根據(jù)權(quán)利要求44所述的方法,其中,所述驗(yàn)證者通過以下步驟驗(yàn)證所述偽名證書和所述用戶數(shù)據(jù)存儲(chǔ)已經(jīng)正確被所述驗(yàn)證者驗(yàn)證的數(shù)據(jù);將接收自所述用戶的用戶數(shù)據(jù)與所述存儲(chǔ)的數(shù)據(jù)相比較;如果所述用戶數(shù)據(jù)與所述存儲(chǔ)的數(shù)據(jù)中的一個(gè)相匹配,則與所述用戶執(zhí)行關(guān)于所述用戶數(shù)據(jù)的知識(shí)證明;并且如果所述用戶數(shù)據(jù)與所述存儲(chǔ)的數(shù)據(jù)中的任何一個(gè)都不匹配,則對(duì)所述偽名證書和所述用戶數(shù)據(jù)執(zhí)行驗(yàn)證。
54.根據(jù)權(quán)利要求44所述的方法,還包括基于所述根證據(jù),由所述受信實(shí)體追查接收自所述驗(yàn)證者的偽名證書的擁有者的身份。
55.一種具有機(jī)器可讀介質(zhì)的制品,所述機(jī)器可讀介質(zhì)上存儲(chǔ)有指令,所述指令當(dāng)被一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得所述處理器從受信實(shí)體接收根證據(jù);從所述根證據(jù)生成至少一個(gè)偽名證書;以及將配備有一個(gè)所述偽名證書的數(shù)據(jù)傳送給一個(gè)驗(yàn)證者。
56.根據(jù)權(quán)利要求55所述的制品,其中,所述數(shù)據(jù)是匿名公鑰。
57.一種具有機(jī)器可讀介質(zhì)的制品,所述機(jī)器可讀介質(zhì)上存儲(chǔ)有指令,所述指令當(dāng)被一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得所述處理器計(jì)算系統(tǒng)參數(shù);公布要被網(wǎng)絡(luò)的所有用戶共享的共享系統(tǒng)參數(shù);接收來自所述網(wǎng)絡(luò)的一個(gè)用戶的根證據(jù)請(qǐng)求;以及為所述用戶生成根證據(jù),所述根證據(jù)被所述用戶用于生成多個(gè)偽名證書。
58.根據(jù)權(quán)利要求55所述的制品,其中,所述根證據(jù)是所述用戶的根匿名公鑰的根證書。
全文摘要
本發(fā)明提供了一種用于通信網(wǎng)絡(luò)的可延展偽名證書系統(tǒng)和方法。根據(jù)本發(fā)明的一個(gè)實(shí)施例,用戶從受信實(shí)體獲得根證據(jù),基于該根證據(jù)生成一個(gè)或多個(gè)偽名證書,并每個(gè)都配備有一個(gè)偽名證書的匿名公鑰發(fā)送到多個(gè)驗(yàn)證者。通過使用偽名證書,驗(yàn)證者相信用戶的匿名公鑰是被受信實(shí)體認(rèn)證的。偽名證書不包含驗(yàn)證者可從其得到用戶真實(shí)身份的信息。利用可延展偽名證書系統(tǒng),受信實(shí)體只需要對(duì)用戶的根公鑰認(rèn)證一次。用戶可以自己生成大量匿名公鑰,其中每個(gè)匿名公鑰配備一個(gè)不同的偽名證書。
文檔編號(hào)H04L9/30GK1937496SQ20051010356
公開日2007年3月28日 申請(qǐng)日期2005年9月21日 優(yōu)先權(quán)日2005年9月21日
發(fā)明者曾珂, 藤田友之, 薛敏宇 申請(qǐng)人:日電(中國(guó))有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1