專利名稱:認(rèn)證裝置、認(rèn)證方法和程序的制作方法
技術(shù)領(lǐng)域:
本公開涉及認(rèn)證裝置、認(rèn)證方法和程序。
背景技術(shù):
隨著信息處理技術(shù)和通信技術(shù)的快速發(fā)展,無論文檔是工作文檔還是私人文檔,文檔的數(shù)字化都在快速前進(jìn)。因而,許多個(gè)人和企業(yè)在電子文檔的安全管理方面表現(xiàn)出強(qiáng)烈的關(guān)心。隨著這種關(guān)心的增強(qiáng),在許多方面,越來越多地研究防范諸如電子文檔的竊取和偽造之類篡改行為的安全對(duì)策。例如通過加密電子文檔,能夠確保電子文檔免于竊取的安全性。另外,例如通過利用數(shù)字簽名,能夠確保電子文檔免于偽造的安全性。不過,加密和數(shù)字簽名必須具有足夠的防篡改性。數(shù)字簽名用于識(shí)別電子文檔的創(chuàng)作者。從而,應(yīng)使數(shù)字簽名只能由電子文檔的創(chuàng)作者創(chuàng)建。如果惡意第三方能夠創(chuàng)建相同的數(shù)字簽名,那么所述第三方會(huì)偽裝成電子文檔的創(chuàng)作者。即,惡意第三方偽造電子文檔。為了防止這種偽造,提出了關(guān)于數(shù)字簽名的安全性的各種觀點(diǎn)。在目前廣泛使用的數(shù)字簽名方案中,已知使用RSA簽名方案和DSA簽名方
案的方案。RSA簽名方案的安全性基于“把較大的合數(shù)因數(shù)分解成質(zhì)數(shù)的困難性(下面稱為質(zhì)數(shù)因數(shù)分解問題)”。另外,DSA簽名方案的安全性基于“得出離散對(duì)數(shù)問題的解答的困難性”。這些基礎(chǔ)可歸因于不存在利用經(jīng)典計(jì)算機(jī),高效地求解質(zhì)數(shù)因數(shù)分解問題和離散對(duì)數(shù)問題的算法。即,上述困難性意味經(jīng)典計(jì)算機(jī)的計(jì)算困難性。不過,利用量子計(jì)算機(jī),據(jù)說可以高效地計(jì)算質(zhì)數(shù)因數(shù)分解問題和離散對(duì)數(shù)問題的解答。類似于RSA簽名方案和DSA簽名方案,目前使用的許多數(shù)字簽名方案和公鑰認(rèn)證方案的安全性也基于質(zhì)數(shù)因數(shù)分解問題或離散對(duì)數(shù)問題的困難性。從而,當(dāng)量子計(jì)算機(jī)變得可從市場(chǎng)上獲得時(shí),不再能夠確保這種數(shù)字簽名方案和公鑰認(rèn)證方案的安全性。從而,需要實(shí)現(xiàn)新的數(shù)字簽名方案和公鑰認(rèn)證方案,其安全性基于與諸如易于用量子計(jì)算機(jī)求解的質(zhì)數(shù)因數(shù)分解問題和離散對(duì)數(shù)問題的問題不同的問題。作為利用量子計(jì)算機(jī)難以求解的問題,存在求解多元多項(xiàng)式的困難性(以下稱為多元多項(xiàng)式問題)。被認(rèn)為難以通過量子計(jì)算機(jī)求解的其他問題包括校驗(yàn)子(Syndrome )解碼問題、約束線性方程問題、排列核問題、排列感知問題(Permuted Perception problem)、代數(shù)面上的部分尋找問題等。在這些問題中,除代數(shù)面上的部分尋找問題以外的其他問題已知是NP困難的。作為它們的應(yīng)用,例如,以下提及的非專利文獻(xiàn)I和非專利文獻(xiàn)2公開了基于校驗(yàn)子解碼問題的公鑰認(rèn)證方案。此外,以下以及的非專利文獻(xiàn)3公開了基于排列核問題的公鑰認(rèn)證方案。除此以外,還提出了基于約束線性方程問題的公鑰認(rèn)證方案、基于排列感知問題的公鑰認(rèn)證方案等。引證列表非專利文獻(xiàn)
非專利文獻(xiàn)1:Jacques Stern, A New Identification Scheme Basedon SyndromeDecoding, CRYPT01993, pl3_21
非專利文獻(xiàn)2: Jacques Stern, A New Paradigm for Pub lieKeyIdentification, IEEE Transactions on Information Theory,1996, pl3-21
非專利文獻(xiàn)3:Adi Shamir, An Efficient Identification SchemeBased onPermuted Kernels (Extended Abstract), CRYPT01989, p606~609發(fā)明內(nèi)容
以下描述公鑰認(rèn)證方案的安全級(jí)別。存在與公鑰認(rèn)證方案的安全級(jí)別有關(guān)的兩種安全級(jí)別。一種是對(duì)于被動(dòng)攻擊足夠的安全級(jí)別。另一種是對(duì)于主動(dòng)攻擊足夠的安全級(jí)另O。對(duì)于被動(dòng)攻擊足夠的安全級(jí)別是考慮只能竊聽證明方與核實(shí)方之間的根據(jù)合法協(xié)議的交互的攻擊者的安全級(jí)別。另一方面,對(duì)于主動(dòng)攻擊足夠的安全級(jí)別是考慮攻擊者自己能夠與證明方直接執(zhí)行交互協(xié)議的情況的安全級(jí)別。即,對(duì)于主動(dòng)攻擊足夠的安全級(jí)別考慮攻擊者能夠與證明方自由執(zhí)行交互協(xié)議的情況。
在以上提及的非專利文獻(xiàn)I到3中描述的現(xiàn)有公鑰認(rèn)證方案確保對(duì)于被動(dòng)攻擊足夠的安全級(jí)別。然而,對(duì)于這些現(xiàn)有的公鑰認(rèn)證方案,在并行重復(fù)配置的情況下,不知道是否絕對(duì)確保了對(duì)于主動(dòng)攻擊足夠的安全級(jí)別。這是因?yàn)?,在并行重?fù)配置的情況下,廣為人知的是沒有保存零知識(shí)性。因此,為了絕對(duì)確保并行重復(fù)配置中對(duì)于主動(dòng)攻擊足夠的安全級(jí)別,有必要確保進(jìn)一步的其他性質(zhì)(property)。
現(xiàn)有公鑰認(rèn)證方案是證明方利用一個(gè)鑰(key)對(duì)(公鑰y,私鑰s)向核實(shí)方證明“知道對(duì)于y滿足y=F(s)的s”的方案。因此,如果執(zhí)行將通過核實(shí)接受的交互,那么不可能防止核實(shí)方知道信息“執(zhí)行交互的證明方使用了 S”。再者,在這種類型的公鑰認(rèn)證方案的并行重復(fù)配置中,如果對(duì)于F不能確??箾_突性(collision resistance),那么不知道是否絕對(duì)確保對(duì)于主動(dòng)攻擊足夠的安全級(jí)別。實(shí)際上,對(duì)于上述公鑰認(rèn)證方案中使用的函數(shù)F,不確??箾_突性。
鑒于上述情況,期望提供一種新穎且改進(jìn)的認(rèn)證裝置、認(rèn)證方法以及程序,即使并行重復(fù)執(zhí)行交互協(xié)議,其也能夠確保對(duì)于主動(dòng)攻擊足夠的安全級(jí)別。
根據(jù)本公開的一個(gè)方面,為了實(shí)現(xiàn)上述目的,提供了一種認(rèn)證設(shè)備,包括:鑰保持單元,用于保持L(L彡2)個(gè)密鑰Si (i=l到L)和針對(duì)一組多元n(n彡2)次多項(xiàng)式F滿足Yi=F(Si)的L個(gè)公鑰yi ;和交互協(xié)議執(zhí)行單元,用于與核實(shí)方執(zhí)行用于證明知道滿足Yi=F(Si)的(L-1)個(gè)密鑰Si的交互協(xié)議。交互協(xié)議執(zhí)行單元在與核實(shí)方執(zhí)行交互協(xié)議時(shí)防止核實(shí)方知道使用了哪個(gè)密鑰Si。
此外,所述交互協(xié)議執(zhí)行單元包括:質(zhì)詢接收單元,用于從核實(shí)方接收L個(gè)質(zhì)詢Chi ;質(zhì)詢選擇單元,用于從由所述質(zhì)詢接收單元接收的L個(gè)質(zhì)詢Chi任意選擇(L-1)個(gè)質(zhì)詢Chi ;響應(yīng)生成單元,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇單元選擇的(L-1)個(gè)質(zhì)詢Chi生成(L-1)個(gè)響應(yīng)Rspi ;以及響應(yīng)發(fā)送單元,用于將由所述響應(yīng)生成單元生成的(L-1)個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
此外,所述交互協(xié)議執(zhí)行單元還包括用于向所述核實(shí)方發(fā)送消息Cmti的消息發(fā)送單元,每個(gè)消息Cmti都對(duì)應(yīng)于所述L個(gè)密鑰Si中的每個(gè)密鑰。在此情況下,所述質(zhì)詢接收單元接收表示由所述核實(shí)方根據(jù)所述消息發(fā)送單元發(fā)送的每個(gè)消息Cmti從k(k > 2)種核實(shí)模式中選擇的核實(shí)模式的質(zhì)詢Chit5此外,在消息CmtiKcu,…,ci;N)的情況下,所述消息發(fā)送單元利用單向函數(shù)H計(jì)算新消息Cmt’ =H(Cmt1,…,Cmt1),并將該消息Cmt’發(fā)送到所述核實(shí)方,并且所述響應(yīng)發(fā)送單元連同所述響應(yīng)Rspi —起發(fā)送所述核實(shí)方即使使用該響應(yīng)Rspi也不能恢復(fù)的消息Cmti的元素。此外,所述鑰保持單元不必保持所述L個(gè)密鑰Si中的一個(gè)密鑰Sitl (I彡L彡L)。在此情況下,所述交互協(xié)議執(zhí)行單元基于偽造算法執(zhí)行要在所述交互協(xié)議中執(zhí)行的與所述密鑰Sitl相關(guān)的處理。此外,根據(jù)本公開的另一方面,為了實(shí)現(xiàn)上述目的,提供了一種認(rèn)證設(shè)備,包括:鑰保持單元,用于保持L個(gè)密鑰Si(i=l到L)和針對(duì)一組多元η (η ^ 2)次多項(xiàng)式F滿足Yi=F(Si)的L個(gè)公鑰yi;質(zhì)詢接收單元,用于從核實(shí)方接收Q組(Q彡2)1^個(gè)質(zhì)詢0!,(」_=1到Q);質(zhì)詢選擇單元,用于從由所述質(zhì)詢接收單元接收的Q組L個(gè)質(zhì)詢Ch,任意選擇一組L個(gè)質(zhì)詢Ch,;響應(yīng)生成單元,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇單元選擇的L個(gè)質(zhì)詢Ch,生成L個(gè)響應(yīng)Rspi ;以及響應(yīng)發(fā)送單元,用于將由所述響應(yīng)生成單元生成的L個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。此外,所述交互協(xié)議執(zhí)行單元還包括用于向所述核實(shí)方發(fā)送分別與所述L個(gè)密鑰Si相對(duì)應(yīng)的消息Cmti的消息發(fā)送單元。在此情況下,所述質(zhì)詢接收單元接收表示由所述核實(shí)方根據(jù)所述消息發(fā)送單元發(fā)送的每個(gè)消息Cmti從k(k > 2)種核實(shí)模式中選擇的核實(shí)模式的質(zhì)詢Chi (j)。此外,在消息CmtiMcu,...,、,)的情況下,所述消息發(fā)送單元利用單向函數(shù)H計(jì)算新消息Cmt’ =H(Cmt1,…,Cmt1),并將該消息Cmt’發(fā)送到所述核實(shí)方,并且所述響應(yīng)發(fā)送單元連同所述響應(yīng) Rspi —起發(fā)送所述核實(shí)方即使使用該響應(yīng)Rspi也不能恢復(fù)的消息Cmti的元素。此外,根據(jù)本公開的另一方面,為了實(shí)現(xiàn)上述目的,提供了一種認(rèn)證方法,包括:鑰生成步驟,生成L (L ^ 2)個(gè)密鑰Si(i=l到L)和針對(duì)一組多元η (η ^ 2)次多項(xiàng)式F滿足Yi=F(Si)的L個(gè)公鑰yi ;和交互協(xié)議執(zhí)行步驟,與核實(shí)方執(zhí)行用于證明知道滿足yi=F(Si)的(L-1)個(gè)密鑰Si的交互協(xié)議。所述交互協(xié)議執(zhí)行步驟在與核實(shí)方執(zhí)行交互協(xié)議時(shí)防止核實(shí)方知道使用了哪個(gè)密鑰Si。此外,根據(jù)本公開的另一方面,為了實(shí)現(xiàn)上述目的,提供了一種用于使計(jì)算機(jī)實(shí)現(xiàn)以下功能的程序:鑰保持功能,用于保持L(L> 2)個(gè)密鑰Si(i=l到L)和針對(duì)一組多元n(n彡2)次多項(xiàng)式F滿足yi=F(Si)的L個(gè)公鑰yi ;和交互協(xié)議執(zhí)行功能,用于與核實(shí)方執(zhí)行用于證明知道滿足Yi=F(Si)的(L-1)個(gè)密鑰Si的交互協(xié)議。所述交互協(xié)議執(zhí)行功能在與核實(shí)方執(zhí)行交互協(xié)議時(shí)防止核實(shí)方知道使用了哪個(gè)密鑰Sp此外,根據(jù)本公開的另一方面,為了實(shí)現(xiàn)上述目的,提供了一種認(rèn)證方法,包括:鑰生成步驟,生成L個(gè)密鑰SiQ=I到L)和針對(duì)一組多元η (η彡2)次多項(xiàng)式F滿足Yi=F (Si)的L個(gè)公鑰Ji ;質(zhì)詢接收步驟,接收核實(shí)方的Q組(Q彡2) L個(gè)質(zhì)詢Ch,(j=l到Q);質(zhì)詢選擇步驟,從在質(zhì)詢接收步驟中已經(jīng)接收的Q組L個(gè)質(zhì)詢Chi )任意選擇一組L個(gè)質(zhì)詢Chi(j);響應(yīng)生成步驟,利用所述密鑰Si分別針對(duì)在質(zhì)詢選擇步驟中已經(jīng)選擇的L個(gè)質(zhì)詢Ch,生成L個(gè)響應(yīng)Rspi ;以及響應(yīng)發(fā)送步驟,將在響應(yīng)生成步驟中已經(jīng)生成的L個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
此外,根據(jù)本公開的另一方面,為了實(shí)現(xiàn)上述目的,提供了一種用于使計(jì)算機(jī)實(shí)現(xiàn)以下功能的程序:鑰保持功能,用于保持L個(gè)密鑰Si(i=l到L)和針對(duì)一組多元n(n>2)次多項(xiàng)式F滿足yi=F(Si)的L個(gè)公鑰yi;質(zhì)詢接收功能,用于從核實(shí)方接收Q組(Q彡2)L個(gè)質(zhì)詢eh,(j=l到Q);質(zhì)詢選擇功能,用于從由所述質(zhì)詢接收功能接收的Q組L個(gè)質(zhì)詢Chi )任意選擇一組L個(gè)質(zhì)詢Ch^);響應(yīng)生成功能,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇功能選擇的L個(gè)質(zhì)詢Ch,生成L個(gè)響應(yīng)Rspi ;以及響應(yīng)發(fā)送功能,用于將由所述響應(yīng)生成功能生成的L個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。根據(jù)本公開的另一實(shí)施例,提供了一種記錄有所述程序的計(jì)算機(jī)可讀記錄介質(zhì)。
根據(jù)上述本公開的實(shí)施例,即使并行重復(fù)執(zhí)行交互協(xié)議也可以確保針對(duì)主動(dòng)攻擊足夠的安全級(jí)別。
圖1是描述公鑰認(rèn)證方案的算法結(jié)構(gòu)的說明圖2是描述η遍公鑰認(rèn)證方案的說明圖3是描述SSHlOa公鑰認(rèn)證方案的交互協(xié)議的說明圖4是描述SSHlOb公鑰認(rèn)證方案的交互協(xié)議的說明圖5是描述交互協(xié)議的串行重復(fù)配置的說明圖6是描述交互協(xié)議的并行重復(fù)配置的說明圖7是描述對(duì)SSHlOa公鑰認(rèn)證方案的交互協(xié)議的偽造算法(falsificationalgorithm)的說明圖8是描述對(duì)SSHlOb公鑰認(rèn)證方案的交互協(xié)議的偽造算法的說明圖9是描述將本方法#1應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法的說明圖10是描述將本方法#1應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法(修改例1)的說明圖11是描述將本方法#1應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法(修改例2)的說明圖12是描述將本方法#1應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法(修改例3)的說明圖13是描述將本方法#1應(yīng)用于SSHlOb公鑰認(rèn)證方案的交互協(xié)議的方法的說明圖14是描述將本方法#1應(yīng)用于SSHlOb公鑰認(rèn)證方案的交互協(xié)議的方法(修改例)的說明圖15是描述將本方法#2應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法的說明圖16是描述將本方法#2應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法(修改例)的說明圖17是描述將本方法#2應(yīng)用于SSHlOb公鑰認(rèn)證方案的交互協(xié)議的方法的說明圖;圖18是描述將本方法#2應(yīng)用于SSHlOb公鑰認(rèn)證方案的交互協(xié)議的方法(修改例)的說明圖;圖19是描述減小SSHlOa公鑰認(rèn)證方案的交互協(xié)議中的通信量的方法的說明圖;圖20是描述減小SSHlOb公鑰認(rèn)證方案的交互協(xié)議中的通信量的方法的說明圖;以及圖21是描述能夠?qū)崿F(xiàn)根據(jù)本實(shí)施例的交互協(xié)議的信息處理設(shè)備的示例硬件結(jié)構(gòu)的說明圖。
具體實(shí)施例方式下面參考附圖,詳細(xì)說明本公開的優(yōu)選實(shí)施例。注意在說明書和附圖中,功能和結(jié)構(gòu)基本相同的構(gòu)成元件用相同的附圖標(biāo)記表示,這些構(gòu)成元件的重復(fù)說明被省略。[說明的流程]下面簡(jiǎn)要說明以下說明的本公開的實(shí)施例的說明流程。首先,參考圖1,說明公鑰認(rèn)證方案的算法結(jié)構(gòu)。隨后,參考圖2,說明η遍公鑰認(rèn)證方案。隨后,參照?qǐng)D3描述SSHlOa公鑰認(rèn)證方案的交互協(xié)議。然后,參照?qǐng)D4描述SSHlOb公鑰認(rèn)證方案的交互協(xié)議。然后,參照?qǐng)D5和6描述交互協(xié)議的重復(fù)配置。在此,簡(jiǎn)要描述對(duì)于主動(dòng)攻擊足夠的安全級(jí)別。接著,參照?qǐng)D7描述針對(duì)SSHlOa公鑰認(rèn)證方案的交互協(xié)議的偽造算法。然后,參照?qǐng)D8描述針對(duì)SSHlOb公鑰認(rèn)證方案的交互協(xié)議的偽造算法。然后,參照?qǐng)D9描述將本公開的第一實(shí)施例(本方法#1)的方法應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法。然后,參照?qǐng)D13和14描述將本方法#1應(yīng)用于SSHlOb公鑰認(rèn)證方案的交互協(xié)議的方法。接著,參照?qǐng)D15和16描述將本公開的第二實(shí)施例(本方法#2)的方法應(yīng)用于SSHlOa公鑰認(rèn)證方案的交互協(xié)議的方法。然后,參照?qǐng)D17和18描述將本方法#2應(yīng)用于SSHlOb公鑰認(rèn)證方案的交互協(xié)議的方法。然后,參照?qǐng)D19和20描述減小本實(shí)施例的交互協(xié)議中的通信量的方法。接著,參照?qǐng)D21描述能夠?qū)崿F(xiàn)根據(jù)本實(shí)施例的交互協(xié)議的信息處理設(shè)備的示例硬件結(jié)構(gòu)。最后,將總結(jié)實(shí)施例的技術(shù)構(gòu)思和簡(jiǎn)要描述通過這些技術(shù)構(gòu)思獲得的效果。(描述項(xiàng)目)1:介紹1-1:公鑰認(rèn)證方案的算法結(jié)構(gòu)1_2:Ν遍公鑰認(rèn)證方案1-3: SSHlOa公鑰認(rèn)證方案的交互協(xié)議1-4:SSHlOb公鑰認(rèn)證方案的交互協(xié)議1-5:交互協(xié)議的重復(fù)配置1-6:對(duì)SSHlOa公鑰認(rèn)證方案的偽造算法1-7:對(duì)SSHlOb公鑰認(rèn)證方案的偽造算法2:第一實(shí)施例(本方法#1)2-1:概要
2-2:應(yīng)用于SSHlOa公鑰認(rèn)證方案
2-3:應(yīng)用于SSHlOa公鑰認(rèn)證方案(修改例I)
2-4:應(yīng)用于SSHlOa公鑰認(rèn)證方案(修改例2)
2-5:應(yīng)用于SSHlOa公鑰認(rèn)證方案(修改例3)
2-6:應(yīng)用于SSHlOb公鑰認(rèn)證方案
2-7:應(yīng)用于SSHlOb公鑰認(rèn)證方案(修改例)
3:第二實(shí)施例(本方法#2)
3-1:概要
3-2:應(yīng)用于SSHlOa公鑰認(rèn)證方案
3-3:應(yīng)用于SSHlOa公鑰認(rèn)證方案(修改例)
3-4:應(yīng)用于SSHlOb公鑰認(rèn)證方案
3-5:應(yīng)用于SSHlOb公鑰認(rèn)證方案(修改例)
4:補(bǔ)充
4-1:方案的擴(kuò)展
4-2:非交互公鑰認(rèn)證方案
4-3:減小通信量的方法
5:硬件結(jié)構(gòu)
6:總結(jié)
〈1:介紹〉
在詳細(xì)描述本公開的實(shí)施例之前,簡(jiǎn)要描述通用公鑰認(rèn)證方案和η遍公鑰認(rèn)證方案的算法結(jié)構(gòu)。
[1-1:公鑰認(rèn)證方案的算法結(jié)構(gòu)]
首先,參照?qǐng)D1描述公鑰認(rèn)證方案的算法結(jié)構(gòu)。圖1是描述公鑰認(rèn)證方案的算法結(jié)構(gòu)的說明圖。
(概述)
公鑰認(rèn)證方案是這樣的認(rèn)證方案:一個(gè)人(證明方)利用公鑰Pk和私鑰sk,使另一人(核實(shí)方)相信它是證明方本人。例如,使證明方A的公鑰pkA向核實(shí)方公開。另一方面,證明方秘密地管理證明方A的私鑰skA。根據(jù)公鑰認(rèn)證方案,知道與公鑰口匕對(duì)應(yīng)的私鑰skA的人被認(rèn)為是證明方A本人。
在證明方A試圖向核實(shí)方B證明它是證明方本人的情況下,證明方A可與核實(shí)方B執(zhí)行交互協(xié)議,證明它知道與公鑰pkA對(duì)應(yīng)的私鑰skA。然后,在核實(shí)方B通過交互協(xié)議證明了證明方A知道私鑰skA的情況下,證明了證明方A的合法性(它是證明方本人)。
此外,為了確保公鑰認(rèn)證方案的安全性,要滿足以下兩個(gè)條件。
第一個(gè)條件是“當(dāng)執(zhí)行交互協(xié)議時(shí),使認(rèn)可沒有私鑰Sk的偽造者的偽造的概率降至最小”。第一條件的成立被稱為“健全性”。換句話說,在健全的交互協(xié)議中,沒有密鑰sk的偽造者將不會(huì)以不可忽略的概率使偽造成立。第二個(gè)條件是“即使執(zhí)行交互協(xié)議,關(guān)于證明方A的密鑰skA的信息也根本不會(huì)被泄漏給核實(shí)方B。第二條件的成立被稱為“零知識(shí)性”。
利用具有如上所述的健全性和零知識(shí)性的交互協(xié)議,確保公鑰認(rèn)證方案的安全性。(模型)在公鑰認(rèn)證方案的模型中,如圖1中所示,存在稱為證明方和核實(shí)方的兩個(gè)實(shí)體。證明方通過利用鑰生成算法Gen,生成證明方特有的一對(duì)密鑰sk和公鑰pk。之后,證明方通過利用使用鑰生成算法Gen生成的一對(duì)密鑰sk和公鑰pk,與核實(shí)方進(jìn)行交互協(xié)議。此時(shí),證明方利用證明方算法P,執(zhí)行交互協(xié)議。如上所述,在交互協(xié)議中,證明方利用證明方算法P,向核實(shí)方證明證明方持有密鑰sk。另一方面,核實(shí)方利用核實(shí)方算法V,執(zhí)行交互協(xié)議,并核實(shí)證明方是否持有與證明方公開的公鑰對(duì)應(yīng)的密鑰。即,核實(shí)方是核實(shí)證明方是否持有與公鑰對(duì)應(yīng)的密鑰的實(shí)體。如上所述,公鑰認(rèn)證方案的模型包括證明方和核實(shí)方兩個(gè)實(shí)體,和鑰生成算法Gen、證明方算法P和核實(shí)方算法V這3種算法。此外,以下說明中使用“證明方”和“核實(shí)方”的表述,但是這些表述嚴(yán)格地意味實(shí)體。于是,執(zhí)行鑰生成算法Gen和證明方算法P的主體是與“證明方”實(shí)體對(duì)應(yīng)的信息處理設(shè)備。類似地,執(zhí)行核實(shí)方算法V的主體是信息處理設(shè)備。這些信息處理設(shè)備的硬件結(jié)構(gòu)例如如圖21中所示。即,鑰生成算法Gen、證明方算法P和核實(shí)方算法V由CPU902,根據(jù)記錄在R0M904、RAM906、存儲(chǔ)單元920、可拆卸記錄介質(zhì)928等中的程序執(zhí)行。(鑰生成算法Gen)
鑰生成算法Gen由證明方使用。鑰生成算法Gen是生成證明方特有的一對(duì)密鑰sk和公鑰Pk的算法。利用鑰生成算法Gen生成的公鑰pk被公開。此外,公開的公鑰pk被核實(shí)方使用。另一方面,利用鑰生成算法Gen生成的密鑰sk由證明方秘密地管理。秘密管理的密鑰sk被用于向核實(shí)方證明持有與公鑰pk對(duì)應(yīng)的密鑰sk。正式地說,鑰生成算法Gen被用以下公式(I)表示成以安全性參數(shù)Iλ ( λ是等于或大于O的整數(shù))作為輸入,并輸出密鑰sk和公鑰pk的算法。 [表達(dá)式I](sk, pk). —Gen(Ix)…(I)(證明方算法P)證明方算法P由證明方使用。證明方算法P是證明持有與公鑰Pk對(duì)應(yīng)的密鑰sk的算法。證明方算法P被定義為以證明方的密鑰Sk和公鑰Pk作為輸入并與核實(shí)方執(zhí)行交互協(xié)議的算法。(核實(shí)方算法V)核實(shí)方算法V由核實(shí)方使用。核實(shí)方算法V是核實(shí)在交互協(xié)議期間,證明方是否持有與公鑰pk對(duì)應(yīng)的密鑰Sk的算法。核實(shí)方算法V被定義為以證明方的公鑰Pk作為輸入,并在與證明方執(zhí)行交互協(xié)議之后輸出O或1(1比特)的算法。此外,在輸出O的情況下,認(rèn)為證明方非法,而在輸出I的情況下,認(rèn)為證明方合法。(補(bǔ)充)如上所述,公鑰認(rèn)證方案必須滿足兩個(gè)條件,即,健全性和零知識(shí)性,以確保安全性。然而,為了使證明方證明它擁有密鑰sk,證明方必須執(zhí)行依賴于密鑰sk的過程,將結(jié)果通知給核實(shí)方,并使得核實(shí)方基于所通知的內(nèi)容執(zhí)行核實(shí)。必須執(zhí)行依賴于密鑰sk的過程,以確保健全性。另一方面,即使所述過程的結(jié)果被通知給核實(shí)方,與密鑰Sk有關(guān)的信息也必須一點(diǎn)也不會(huì)泄漏給核實(shí)方。從而,要設(shè)計(jì)鑰生成算法Gen、證明方算法P和核實(shí)方算法V以滿足這些要求。
上面,描述了公鑰認(rèn)證方案的算法結(jié)構(gòu)。
[1-2: N-遍公鑰認(rèn)證方案]
下面參考圖2,說明η遍公鑰認(rèn)證方案。圖2是說明η遍公鑰認(rèn)證方案的說明圖。
如上所述,公鑰認(rèn)證方案是向核實(shí)方證實(shí)在交互協(xié)議期間,證明方持有與公鑰pk對(duì)應(yīng)的密鑰sk的認(rèn)證方案。此外,為了確保公鑰認(rèn)證方案的安全性,必須滿足健全性和零知識(shí)性這兩個(gè)條件。從而,如圖2中所示,在交互協(xié)議中,在證明方和核實(shí)方執(zhí)行處理的同時(shí),在證明方和核實(shí)方之間執(zhí)行η遍信息交換。
在η遍公鑰認(rèn)證方案的情況中,證明方利用證明方算法P進(jìn)行處理(步驟#1),然后把信息T1傳給核實(shí)方。之后,核實(shí)方利用核實(shí)方算法V進(jìn)行處理(步驟#2),然后把信息T2傳給證明方。按類似方式執(zhí)行處理(步驟3)到(步驟η),并傳送信息T3,…,Tn,并執(zhí)行處理(步驟η+1)。這種基于傳輸/接收信息η遍的交互協(xié)議的公鑰認(rèn)證方案被稱為“η遍”公鑰認(rèn)證方案。
上面,說明了 η遍公鑰認(rèn)證方案。
[1-3: SSHlOa公鑰認(rèn)證方案的交互協(xié)議]
接下來,參照?qǐng)D3描述SSHlOa公鑰認(rèn)證方案的交互協(xié)議。圖3是描述SSHlOa公鑰認(rèn)證方案的交互協(xié)議的說明圖。此外,SSHlOa公鑰認(rèn)證方案是由本發(fā)明人(Sakumoto、Shirai以及Hiwatari)設(shè)計(jì)的基于求解多次多元聯(lián)立方程的問題的多種公鑰認(rèn)證方案之一。此外,該SSHlOa公鑰認(rèn)證方案是3遍公鑰認(rèn)證方案的一個(gè)示例。
此外,求解多次多元聯(lián)立方程的問題是當(dāng)給定環(huán)K上的η個(gè)變量的m個(gè)多次多項(xiàng)式(X1,…,χη),…,fm (χ1;…,χη)和向量y e Km時(shí),獲得滿足(!^(S1,…,sn),…,^(S1,…,sn)) =y的向量(S1,…,sn) e Kn的問題。求解二次或更高次的多元聯(lián)立方程的問題被稱為NP困難問題,它屬于極其難以求解的一類問`題。
現(xiàn)在,SSHlOa公鑰認(rèn)證方案的交互協(xié)議由鑰生成算法Gen、證明方算法P和核實(shí)方算法V構(gòu)成。以下,描述每個(gè)算法的內(nèi)容。
(鑰生成算法Gen)
首先,描述鑰生成算法Gen的結(jié)構(gòu)。鑰生成算法Gen生成在環(huán)K上定義的m個(gè)二次η元多項(xiàng)式!^(X1,…,χη),…,^(X1,…,χη),和向量S=G1,..., sn) e Kn0隨后,鑰生成算法 Gen 計(jì)算 y=(y!,..., ym) — (s),..., fm(s))。然后,鑰生成算法 Gen 把(fp..., fm, y)設(shè)定為公鑰pk,把s設(shè)定為私鑰。此外,下面,η元向量(X1,..., χη)將被表示成x,m個(gè)η元二次多項(xiàng)式(fi (X),...,fm (X))將被表示成F (X) ο
(證明方算法P,核實(shí)方算法V)
下面,參照?qǐng)D3描述證明方算法P和核實(shí)方算法V的結(jié)構(gòu)。SSHlOa公鑰認(rèn)證方案的交互協(xié)議使得核實(shí)方證明“證明方知道滿足y=F(s)的s”,而根本不向核實(shí)方泄漏關(guān)于s的信息。此外,假設(shè)在證明方與核實(shí)方之間共享由鑰生成算法Gen生成的公鑰pk。此外,假設(shè)鑰生成算法Gen生成的密鑰sk由證明方秘密管理。
在此,將描述二次多項(xiàng)式的性質(zhì)。
可以將一組m個(gè)η元二次多項(xiàng)式(fi(x),"^fm(X))表示為以下公式(2)。此外,X= (Χι,..., Xn)是表示η個(gè)變量的向量。此外,A1,…義是]!※]!矩陣。此外,Id1,
向量。此外,c是mXl向量。[表達(dá)式2]
權(quán)利要求
1.一種認(rèn)證設(shè)備,包括: 鑰保持單元,用于保持L(L≥2)個(gè)密鑰Si(i=l到L)和針對(duì)一組多元n(n≥2)次多項(xiàng)式F滿足yi=F (Si)的L個(gè)公鑰Ji ;和 交互協(xié)議執(zhí)行單元,用于與核實(shí)方執(zhí)行用于證明知道滿足Yi=F(Si)的(L-1)個(gè)密鑰Si的交互協(xié)議, 其中所述交互協(xié)議執(zhí)行單元包括: 質(zhì)詢接收單元,用于從核實(shí)方接收L個(gè)質(zhì)詢Chi, 質(zhì)詢選擇單元,用于從由所述質(zhì)詢接收單元接收的L個(gè)質(zhì)詢Chi任意選擇(L-1)個(gè)質(zhì)詢 Chi, 響應(yīng)生成單元,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇單元選擇的(L-1)個(gè)質(zhì)詢Chi生成(L-1)個(gè)響應(yīng)Rspi,以及 響應(yīng)發(fā)送單元,用于將由所述響應(yīng)生成單元生成的(L-1)個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
2.根據(jù)權(quán)利要求1所述的認(rèn)證設(shè)備, 其中所述交互協(xié)議執(zhí)行單元還包括用于向所述核實(shí)方發(fā)送消息Cmti的消息發(fā)送單元,每個(gè)消息Cmti都對(duì)應(yīng)于所述L個(gè)密鑰Si中的每個(gè)密鑰,并且 其中所述質(zhì)詢接收單元接收表示由所述核實(shí)方根據(jù)所述消息發(fā)送單元發(fā)送的每個(gè)消息Cmti從k(k > 2)種核實(shí)模式中選擇的核實(shí)模式的質(zhì)詢Chit5
3.根據(jù)權(quán)利要求2所述的認(rèn)證設(shè)備, 其中,在消息Cmti= (Ci,1;…,Ci,N)的情況下, 所述消息發(fā)送單元利用單向函數(shù)H計(jì)算新消息Cmt’ =H(Cmt1,…,Cmt1),并將該消息Cmf發(fā)送到所述核實(shí)方,并且 所述響應(yīng)發(fā)送單元連同所述響應(yīng)Rspi —起發(fā)送所述核實(shí)方即使使用該響應(yīng)Rspi也不能恢復(fù)的消息Cmti的元素。
4.根據(jù)權(quán)利要求2所述的認(rèn)證設(shè)備, 其中所述鑰保持單元不保持所述L個(gè)密鑰Si中的一個(gè)密鑰Sitl (I≥L≥L),并且其中所述交互協(xié)議執(zhí)行單元基于偽造算法執(zhí)行要在所述交互協(xié)議中執(zhí)行的與所述密鑰Sitl相關(guān)的處理。
5.一種認(rèn)證設(shè)備,包括: 鑰保持單元,用于保持L個(gè)密鑰Si (i=l到L)和針對(duì)一組多元η (η≥2)次多項(xiàng)式F滿足Yi=F (Si)的L個(gè)公鑰Yi ; 質(zhì)詢接收單元,用于從核實(shí)方接收Q組(Q≥2) L個(gè)質(zhì)詢Chi ) (j=l到Q); 質(zhì)詢選擇單元,用于從由所述質(zhì)詢接收單元接收的Q組L個(gè)質(zhì)詢Ch,中任意選擇一組L個(gè)質(zhì)詢Chi ω ; 響應(yīng)生成單元,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇單元選擇的L個(gè)質(zhì)詢Chi(J)生成L個(gè)響應(yīng)Rspi ;以及 響應(yīng)發(fā)送單元,用于將由所述響應(yīng)生成單元生成的L個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
6.根據(jù)權(quán)利要求5所述的認(rèn)證設(shè)備, 其中所述交互協(xié)議執(zhí)行單元還包括用于向所述核實(shí)方發(fā)送分別與所述L個(gè)密鑰Si相對(duì)應(yīng)的消息Cmti的消息發(fā)送單元,并且 其中所述質(zhì)詢接收單元接收表示由所述核實(shí)方根據(jù)所述消息發(fā)送單元發(fā)送的每個(gè)消息Cmti從k(k≥2)種核實(shí)模式中選擇的核實(shí)模式的質(zhì)詢Chi^。
7.根據(jù)權(quán)利要求6所述的認(rèn)證設(shè)備, 其中,在消息CmtiMcu,…,Ci,N)的情況下, 所述消息發(fā)送單元利用單向函數(shù)H計(jì)算新消息Cmt’ =H(Cmt1,…,Cmt1),并將該消息Cmf發(fā)送到所述核實(shí)方,并且 所述響應(yīng)發(fā)送單元連同所述響應(yīng)Rspi —起發(fā)送所述核實(shí)方即使使用該響應(yīng)Rspi也不能恢復(fù)的消息Cmti的元素。
8.一種認(rèn)證方法,包括: 生成L (L≥2)個(gè)密鑰Si (i=l到L)和針對(duì)一組多元n (n≥2)次多項(xiàng)式F滿足yi=F (Si)的L個(gè)公鑰;和 與核實(shí)方執(zhí)行用于證明知道滿足Yi=F(Si)的(L-1)個(gè)密鑰Si的交互協(xié)議; 其中所述執(zhí)行包括: 從核實(shí)方接收L個(gè)質(zhì)詢Chi ; 從已經(jīng)接收的L個(gè)質(zhì)詢Chi任意選擇(L-1)個(gè)質(zhì)詢Chi ; 利用所述密鑰Si分別針對(duì)已經(jīng)選擇的(L-1)個(gè)質(zhì)詢Chi生成(L-1)個(gè)響應(yīng)Rspi ;以及 將已經(jīng)生成的(L-1)個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
9.一種用于使計(jì)算機(jī)實(shí)現(xiàn)以下功能的程序: 鑰保持功能,用于保持L(L彡2)個(gè)密鑰Si(i=l到L)和針對(duì)一組多元n(n彡2)次多項(xiàng)式F滿足yi=F (Si)的L個(gè)公鑰Ji ;和 交互協(xié)議執(zhí)行功能,用于與核實(shí)方執(zhí)行用于證明知道滿足Yi=F(Si)的(L-1)個(gè)密鑰Si的交互協(xié)議, 其中所述交互協(xié)議執(zhí)行功能包括: 質(zhì)詢接收功能,用于從核實(shí)方接收L個(gè)質(zhì)詢Chi, 質(zhì)詢選擇功能,用于從由所述質(zhì)詢接收功能接收的L個(gè)質(zhì)詢Chi任意選擇(L-1)個(gè)質(zhì)詢 Chi, 響應(yīng)生成功能,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇功能選擇的(L-1)個(gè)質(zhì)詢Chi生成(L-1)個(gè)響應(yīng)Rspi,以及 響應(yīng)發(fā)送功能,用于將由所述響應(yīng)生成功能生成的(L-1)個(gè)響應(yīng)RspiS送到所述核實(shí)方。
10.一種認(rèn)證方法,包括: 生成L個(gè)密鑰Si (i=l到L)和針對(duì)一組多元η (η彡2)次多項(xiàng)式F滿足Yi=F (Si)的L個(gè)公鑰Ii ; 從核實(shí)方接收Q組(Q彡2) L個(gè)質(zhì)詢Chi(j) (j=l到Q); 從已經(jīng)接收的Q組L個(gè)質(zhì)詢Chi^中任意選擇一組L個(gè)質(zhì)詢Chiw ; 利用所述密鑰Si分別針對(duì)已經(jīng)選擇的L個(gè)質(zhì)詢Ch^)生成L個(gè)響應(yīng)Rspi ;以及 將已經(jīng)生成的L個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
11.一種用于使計(jì)算機(jī)實(shí)現(xiàn)以下功能的程序:鑰保持功能,用于保持L個(gè)密鑰Si (i=l到L)和針對(duì)一組多元η (η彡2)次多項(xiàng)式F滿足Yi=F (Si)的L個(gè)公鑰Yi ; 質(zhì)詢接收功能,用于從核實(shí)方接收Q組(Q彡2) L個(gè)質(zhì)詢Chi ) (j=l到Q); 質(zhì)詢選擇功能,用于從由所述質(zhì)詢接收功能接收的Q組L個(gè)質(zhì)詢Ch,任意選擇一組L個(gè)質(zhì)詢Chi0); 響應(yīng)生成功能,用于利用所述密鑰Si分別針對(duì)由所述質(zhì)詢選擇功能選擇的L個(gè)質(zhì)詢Chi(J)生成L個(gè)響應(yīng)Rspi ;以及 響應(yīng)發(fā)送功能,用于 將由所述響應(yīng)生成功能生成的L個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
全文摘要
本發(fā)明涉及認(rèn)證裝置、認(rèn)證方法和程序。提供了一種認(rèn)證設(shè)備,包括鑰保持單元,用于保持L(L≥2)個(gè)密鑰si(i=1到L)和針對(duì)一組多元n(n≥2)次多項(xiàng)式F滿足yi=F(si)的L個(gè)公鑰yi;和交互協(xié)議執(zhí)行單元,用于與核實(shí)方執(zhí)行用于證明知道滿足yi=F(si)的(L-1)個(gè)密鑰si的交互協(xié)議。所述交互協(xié)議執(zhí)行單元包括質(zhì)詢接收單元,用于從核實(shí)方接收L個(gè)質(zhì)詢Chi;質(zhì)詢選擇單元,用于從由所述質(zhì)詢接收單元接收的L個(gè)質(zhì)詢Chi任意選擇(L-1)個(gè)質(zhì)詢Chi;響應(yīng)生成單元,用于利用所述密鑰si分別針對(duì)由所述質(zhì)詢選擇單元選擇的(L-1)個(gè)質(zhì)詢Chi生成(L-1)個(gè)響應(yīng)Rspi;以及響應(yīng)發(fā)送單元,用于將由所述響應(yīng)生成單元生成的(L-1)個(gè)響應(yīng)Rspi發(fā)送到所述核實(shí)方。
文檔編號(hào)H04L9/30GK103155480SQ201180035779
公開日2013年6月12日 申請(qǐng)日期2011年7月12日 優(yōu)先權(quán)日2010年7月30日
發(fā)明者作本紘一, 白井太三, 樋渡玄良 申請(qǐng)人:索尼公司