信息處理設備、信息處理方法、程序以及記錄介質的制作方法
【專利摘要】提供一種信息處理設備,包括:二進制隨機數生成單元,被配置成生成用M(其中M≥2)個比特的二進制數表示的二進制隨機數串;和三進制數串生成單元,被配置成通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L(其中L是滿足3L≤2M的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串。所述三進制數串生成單元通過用L個符號的三進制數表示滿足X≤3L的k個比特的二進制數串X來生成所述三進制數串。
【專利說明】信息處理設備、信息處理方法、程序以及記錄介質
【技術領域】
[0001]本發(fā)明涉及信息處理設備和信息處理方法、程序以及記錄介質。
【背景技術】
[0002]隨著信息處理技術和通信技術的快速發(fā)展,無論文檔是公開文檔還是私人文檔,文檔都已被快速數字化。隨著所述文檔的數字化,許多個人和公司相當關心電子文檔的安全管理。隨著這種關心的增強,在各個領域,已積極研究防范諸如電子文檔的竊取或偽造之類篡改行為的對策。就電子文檔的竊取來說,例如通過加密電子文檔,確保安全性。另外,就電子文檔的偽造來說,例如通過利用數字簽名,確保安全性。不過,若使用的加密或數字簽名不具有較高的防篡改性,那么不能保證足夠的安全性。
[0003]數字簽名用于指定電子文檔的創(chuàng)作者。從而,數字簽名應只能由電子文檔的創(chuàng)作者生成。如果惡意第三方能夠生成相同的數字簽名,那么所述第三方能夠偽裝成電子文檔的創(chuàng)作者。即,惡意第三方偽造電子文檔。關于電子簽名的安全性表達了各種意見,以防止這種偽造。作為目前廣泛使用的數字簽名方案,例如已知RSA簽名方案和DSA簽名方案。
[0004]RSA簽名方案把“較大合數的質因數分解的困難性(下面稱為質因數分解問題)”作為安全性的基礎。另外,DSA簽名方案把“求解離散對數問題的困難性”作為安全性的基礎。這些基礎基于不存在利用經典計算機,高效地求解質因數分解問題和離散對數問題的算法。即,上述困難性意味經典計算機的計算困難性。不過,據說當使用量子計算機時,能夠高效地計算質因數分解問題和離散對數問題的解答。
[0005]類似于RSA簽名方案和DSA簽名方案,目前使用的許多數字簽名方案和公開密鑰認證方案也把質因數分解問題或離散對數問題的困難性作為安全性的基礎。從而,如果量子計算機被投入實際使用,那么將不確保這種數字簽名方案和公開密鑰認證方案的安全性。因而,需要實現(xiàn)新的數字簽名方案和公開密鑰認證方案,所述新的數字簽名方案和公開密鑰認證方案把與諸如可容易地用量子計算機求解的質因數分解問題或離散對數問題之類的問題不同的問題,作為安全性的基礎。作為不易用量子計算機求解的問題,例如存在與多元多項式相關的問題。
[0006]例如,作為把多元多項式問題作為安全性的基礎的數字簽名方案,已知基于Matsumoto-1mai (MI)密碼學、隱藏域方程(HFE)密碼學、Oi 1-Vinegar (OV)簽名方案和受控變換方法(TTM)密碼學的數字簽名方案。例如,在以下的非專利文獻I和2中,公開了基于HFE的數字簽名方案。
[0007]引文列表
[0008]非專利文獻
[0009]非專利文獻 1:Jacques Patarin, Asymmetric Cryptography with a HiddenMonomial, CRYPT01996, pp.45-60。
[0010]非專利文獻2:Patarin, J., Courtois, N.和 Goubin, L., QUARTZ, 128-Bit LongDigital Signatures, In Naccache, D., Ed.Topics in Cryptology-CT-RSA2001(San Francisco, CA, USA, April2001), vol.2020of Lecture Notes in Computer Science, Springer-Verlag., pp.282-297。
【發(fā)明內容】
[0011]如上所述,多元多項式問題是即使使用量子計算機,也難以求解的問題(稱為NP困難問題)的例子。通常,利用由HFE等代表的多元多項式問題的公開密鑰認證方案使用具有特殊陷門的多次多元聯(lián)立方程。例如,提供與X1,...,Xn相關的多次多元聯(lián)立方程F (X1,..., xn) =y,及線性變換A和B,并且秘密地管理線性變換A和B。在這種情況下,多次多元聯(lián)立方程F及線性變換A和B變成陷門。
[0012]知道陷門F、A和B的實體能夠求解與X1,...,Xn相關的方程B (F (A (x1;...,xn)))=y’。另一方面,不知道陷門F、A和B的實體求解不了與X1,...,1?相關的方程8$(4 0^,...,^)))=7’。通過利用這種機制,可實現(xiàn)把其求解多次多元聯(lián)立方程的困難性作為安全性的基礎的公開密鑰認證方案和數字簽名方案。
[0013]如上所述,為了實現(xiàn)公開密鑰認證方案或數字簽名方案,必須準備滿足B(F(A(Xl,...,xn)))=y的特殊的多次多元聯(lián)立方程。此外,在生成簽名時,必須求解多次多元聯(lián)立方程F。因此,可用的多次多元聯(lián)立方程F局限于能夠相對容易求解的方程。即,在以前的方案中,僅僅使用了結合能夠相對容易求解的3個函數(陷門)B、F和A的多次多元聯(lián)立方程B(F(A(Xl,xn) ))=y,從而難以確保足夠的安全性。
[0014]因此,鑒于上述情況,本技術發(fā)明人設計了一種利用高效求解手段(陷門)未知的多次多元聯(lián)立方程的高效且高度安全的公開密鑰認證方案。存在在該方案的算法中使用三進制隨機數的情況。然而,優(yōu)異的三進制隨機數生成器尚未被知曉。鑒于這種情況,設計了本技術,以提供一種新穎且改進的信息處理設備、新穎且改進的信息處理方法、新穎且改進的程序以及新穎且改進的記錄介質,其能夠從二進制隨機數高效地提取三進制隨機數。
[0015]根據本技術的一個實施例,提供了一種信息處理設備,包括:二進制隨機數生成單元,被配置成生成用M (其中M ^ 2)個比特的二進制數表示的二進制隨機數串;和三進制數串生成單元,被配置成通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L(其中L是滿足31 ( t的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串。所述三進制數串生成單元通過用L個符號的三進制數表示滿足X < f的k個比特的二進制數串X來生成所述三進制數串。
[0016]根據本技術的一個實施例,提供了一種信息處理方法,包括:生成用M(其中M > 2)個比特的二進制數表示的二進制隨機數串的步驟;和通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足31 ( t的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串的步驟。在生成三進制數串的步驟中,通過用L個符號的三進制數表示滿足X < 31的k個比特的二進制數串X來生成所述三進制數串。
[0017]根據本技術的一個實施例,提供了一種使計算機實現(xiàn)如下功能的程序:二進制隨機數生成功能,輸出用M (其中M ^ 2)個比特的二進制數表示的二進制隨機數串;和三進制數串生成功能,通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足31 ( t的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串。所述三進制數串生成功能通過用L個符號的三進制數表示滿足X < f的k個比特的二進制數串X來生成所述三進制數串。
[0018]根據本技術的一個實施例,提供了一種記錄有程序的計算機可讀記錄介質,所述程序使計算機實現(xiàn)以下功能:二進制隨機數生成功能,輸出用M (其中M ^ 2)個比特的二進制數表示的二進制隨機數串;和三進制數串生成功能,通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足2m的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串。所述三進制數串生成功能通過用L個符號的三進制數表示滿足X < f的k個比特的二進制數串X來生成所述三進制數串。
[0019]按照上面說明的本技術, 能夠從二進制隨機數高效地提取三進制隨機數。
【專利附圖】
【附圖說明】
[0020]圖1是說明公開密鑰認證方案的算法結構的說明圖;
[0021]圖2是說明數字簽名方案的算法結構的說明圖;
[0022]圖3是說明n遍公開密鑰認證方案有關的算法結構的說明圖;
[0023]圖4是說明3遍公開密鑰認證方案有關的高效算法的說明圖;
[0024]圖5是說明與3遍公開密鑰認證方案有關的高效算法的并行化的說明圖;
[0025]圖6是說明與5遍公開密鑰認證方案有關的高效算法的示例的說明圖;
[0026]圖7是說明與5遍公開密鑰認證方案有關的高效算法的并行化的說明圖;
[0027]圖8是說明把與3遍公開密鑰認證方案有關的高效算法修改成數字簽名方案的算法的方法的說明圖;
[0028]圖9是說明把與5遍公開密鑰認證方案有關的高效算法修改成數字簽名方案的算法的方法的說明圖;
[0029]圖10是描述散列函數結構的示例的說明圖;
[0030]圖11是描述與基于3遍方案的數字簽名方案有關的簽名核實方法(普通安裝方法)的說明圖;
[0031]圖12是描述與基于3遍方案的數字簽名方案有關的簽名核實方法(存儲器減少方法)的說明圖;
[0032]圖13是描述與基于5遍方案的數字簽名方案有關的簽名核實方法(普通安裝方法)的說明圖;
[0033]圖14是描述與基于5遍方案的數字簽名方案有關的簽名核實方法(存儲器減少方法)的說明圖;
[0034]圖15是描述從二進制隨機數提取三進制隨機數的方法(提取方法#1)的說明圖;
[0035]圖16是描述從二進制隨機數提取三進制隨機數的方法(提取方法#2)的說明圖;
[0036]圖17是描述從二進制隨機數提取三進制隨機數的方法(提取方法#3)的說明圖;
[0037]圖18是描述從二進制隨機數提取三進制隨機數的方法(提取方法#3)的說明圖;
[0038]圖19是描述從二進制隨機數提取三進制隨機數的方法(提取方法#3)的說明圖;
[0039]圖20是描述用于高效代入多元多項式的系數的數據構造技術(構造技術#1)的說明圖;[0040]圖21是描述用于高效代入多元多項式的系數的數據構造技術(構造技術#2)的說明圖;
[0041]圖22是說明能夠執(zhí)行按照本技術的每個實施例的算法的信息處理設備的硬件結構例子的說明圖。
【具體實施方式】
[0042]下面參考附圖,詳細說明本發(fā)明的優(yōu)選實施例。注意在說明書和附圖中,功能和結構基本相同的構成元件用相同的附圖標記表示,并省略重復的說明。
[0043][說明的流程]
[0044]下面簡要說明以下進行的本技術的實施例的說明的流程。首先,參考圖1,說明公開密鑰認證方案的算法結構。隨后,參考圖2,說明數字簽名方案的算法結構。接下來,參考圖3,說明n遍公開密鑰認證方案。
[0045]之后,將參考圖4和5,說明3遍公開密鑰認證方案有關的算法結構示例。然后,將參考圖6和7,說明5遍公開密鑰認證方案有關的算法結構示例。之后,參考圖8和9,說明將與3遍和5遍公開密鑰認證方案有關的高效算法修改成數字簽名方案的算法的方法。
[0046]接著,參考圖10至14,描述在執(zhí)行與本文的實施例有關的數字簽名方案的算法時減小簽名核實所需的存儲器量的方法。接著,參照圖15至19,描述從二進制隨機數高效提取三進制隨機數的方法。接著,參照圖20和21,描述高效代入多元多項式的系數的方法。然后,參考圖22,說明能夠實現(xiàn)按照本技術的實施例的每個算法的信息處理設備的硬件結構例子。最后,將簡要說明實施例的技術思想的概要,和從所述技術思想獲得的有益作用效果。
[0047](詳細項目)
[0048]1:介紹
[0049]1-1:公開密鑰認證方案的算法
[0050]1-2:數字簽名方案的算法
[0051]1-3:n遍公開密鑰認證方案
[0052]2:與3遍公開密鑰認證方案有關的算法結構
[0053]2-1:具體算法結構示例
[0054]2-2:并行算法結構示例
[0055]3:與5遍公開密鑰認證方案有關的算法結構
[0056]3-1:具體算法結構示例
[0057]3-2:并行算法結構示例
[0058]4:數字簽名方案的修改
[0059]4-1:將3遍公開密鑰認證方案修改成數字簽名方案
[0060]4-2:將5遍公開密鑰認證方案修改成數字簽名方案
[0061]5:簽名核實所需的存儲器量的減小方法
[0062]5-1:散列函數結構
[0063]5-2:應用于基于3遍方案的數字簽名方案的示例
[0064]5-3:應用于基于5遍方案的數字簽名方案的示例[0065]6:從二進制隨機數序列提取三進制隨機數序列的方法
[0066]6-1:提取方法#1 (2-比特分組)
[0067]6-2:提取方法#2 (無分組)
[0068]6-3:提取方法#3 (k-比特分組)
[0069]6-3-1:基本結構
[0070]6-3-2:附加提取方法
[0071]7:高效代入多元多項式的系數的方法
[0072]7-1:基本判定
[0073]7-2:數據的構造
[0074]7-2-1:構造技術 #1
[0075]7_2-2:構造技術 #2
[0076]7-2-3:構造技術 #3
[0077]8:硬件配置示例
[0078]9:總結
[0079]〈1:介紹〉
[0080]本文的實施例涉及其安全性基于求解多次多元聯(lián)立方程的困難性的公開密鑰認證方案和數字簽名方案。不過,本文的實施例不同于現(xiàn)有技術比如HFE數字簽名方案的技術,并且涉及利用缺乏高效的求解手段(陷門)的多次多元聯(lián)立方程的公開密鑰認證方案和數字簽名方案。首先,將簡要概述公開密鑰認證方案的算法,數字簽名方案的算法,和n遍公開密鑰認證方案。
[0081][1-1:公開密鑰認證方案的算法]
[0082]首先參考圖1,概述公開密鑰認證方案的算法。圖1是說明公開密鑰認證方案的算法結構的說明圖。
[0083]當某人(證明方)通過利用公開密鑰pk和秘密密鑰sk,使另一人(核實方)相信她是證明方本人時,使用公開密鑰認證。例如,使證明方A的公開密鑰pkA為核實方B所知。另一方面,證明方A秘密地管理證明方A的秘密密鑰skA。按照公開密鑰認證方案,知道與公開密鑰pkA對應的秘密密鑰skA的人被認為是證明方A本人。
[0084]為了使證明方A得以利用公開密鑰認證辦法,向核實方B證實她是證明方A本人,證明方A借助交互協(xié)議,向核實方B出示她知道與公開密鑰pkA對應的秘密密鑰skA的證據。指示證明方A知道秘密密鑰skA的證據隨后被出示給核實方B,在核實方B能夠確認該證據的情況下,證明方A的真實性(證明方A是她本人的事實)被證實。
[0085]然而,為了確保安全性,公開密鑰認證辦法需要以下條件。
[0086]第一個條件是“盡可能地降低在執(zhí)行交互協(xié)議時,認可沒有秘密密鑰Sk的偽造者的偽造的概率”。第一條件的成立被稱為“健全性”。換句話說,健全性意味“在交互協(xié)議的執(zhí)行期間,沒有秘密密鑰sk的偽造者將不會以不可忽略的概率使偽造成立”。第二個條件是“即使執(zhí)行交互協(xié)議,關于證明方A的秘密密鑰skA的信息也根本不會被泄漏給核實方B”。第二條件的成立被稱為“零知識性”。
[0087]安全地進行公開密鑰認證涉及利用同時顯示出健全性和零知識性的交互協(xié)議。如果利用缺乏健全性和零知識性的交互協(xié)議,假想地進行認證處理,那么會存在一定的虛假核實的可能性和一定的秘密密鑰信息的泄漏可能性,從而,即使成功地完成認證處理,證明方的真實性仍未被核實。從而,如何保證會話協(xié)議的健全性和零知識性的問題變得重要。
[0088](模型)
[0089]在公開密鑰認證方案的模型中,如圖1中所示,存在兩個實體,即證明方和核實方。證明方通過利用密鑰生成算法Gen,生成證明方特有的一對公開密鑰pk和秘密密鑰sk。之后,證明方通過利用使用密鑰生成算法Gen生成的一對秘密密鑰sk和公開密鑰pk,與核實方進行交互協(xié)議。此時,證明方利用證明方算法P,執(zhí)行交互協(xié)議。如上所述,在交互協(xié)議中,證明方利用證明方算法P,向核實方證實她擁有秘密密鑰sk。
[0090]另一方面,核實方利用核實方算法V,執(zhí)行交互協(xié)議,核實證明方是否擁有與由證明方公開的公開密鑰對應的秘密密鑰。即,核實方是核實證明方是否擁有與公開密鑰對應的秘密密鑰的實體。如上所述,公開密鑰認證方案的模型由兩個實體,即證明方和核實方,和3種算法,即密鑰生成算法Gen、證明方算法P和核實方算法V構成。
[0091]另外,在下面的說明中,使用“證明方”和“核實方”的措詞,不過,這些措詞嚴格地意味實體。于是,執(zhí)行密鑰生成算法Gen和證明方算法P的主體是與實體“證明方”對應的信息處理設備。類似地,執(zhí)行核實方算法V的主體是信息處理設備。這些信息處理設備的硬件結構例如如圖38中所示。即,密鑰生成算法Gen、證明方算法P和核實方算法V由CPU902根據記錄在R0M904、RAM906、存儲單元920、可拆卸記錄介質928等中的程序執(zhí)行。
[0092](密鑰生成算法Gen)
[0093]密鑰生成算法Gen由證明方使用。密鑰生成算法Gen是生成證明方特有的一對公開密鑰Pk和秘密密鑰sk的算法。利用密鑰生成算法Gen生成的公開密鑰pk被公開。此夕卜,公開的公開密鑰pk被核實方使用。另一方面,利用密鑰生成算法Gen生成的秘密密鑰sk由證明方秘密地管理。由證明方秘密管理的秘密密鑰sk被用于向核實方證實證明方擁有與公開密鑰Pk對應的秘密密鑰sk。形式上,密鑰生成算法Gen被表示成下面的式(1),作為以安全性參數1A ( X是等于或大于0的整數)作為輸入,并輸出秘密密鑰sk和公開密鑰pk的算法。
[0094][數學式I]
[0095](sk, pk) — Cen(I入)
[0096]...(I)
[0097](證明方算法P)
[0098]證明方算法P由證明方使用。證明方算法P是向核實方證實證明方擁有與公開密鑰Pk對應的秘密密鑰sk的算法。換句話說,證明方算法P是以秘密密鑰sk和公開密鑰pk作為輸入,從而執(zhí)行交互協(xié)議的算法。
[0099](核實方算法V)
[0100]核實方算法V由核實方使用。核實方算法V是在交互協(xié)議期間,核實證明方是否擁有與公開密鑰Pk對應的秘密密鑰sk的算法。核實方算法V是接受公開密鑰pk作為輸入,并按照會話協(xié)議的執(zhí)行結果,輸出0或1(1比特)的算法。此時,在核實方算法V輸出0的情況下,核實方判定證明方非法,而在核實方算法V輸出I的情況下,核實方判定證明方合法。形式上,如下述式(2)地表示核實方算法V。
[0101][數學式2][0102]0/1—V (pk)
[0103]...(2)
[0104]如上所述,實現(xiàn)有意義的公開密鑰認證涉及使交互協(xié)議滿足健全性和零知識性這兩個條件。然而,證實證明方持有秘密密鑰sk涉及證明方執(zhí)行依賴于秘密密鑰sk的過程,并在把結果通知核實方之后,使核實方根據通知的內容進行核實。為了確保健全性,進行依賴于秘密密鑰sk的過程。同時,應避免向核實方泄漏關于秘密密鑰sk的信息。因此,巧妙地設計密鑰生成算法Gen、證明方算法P和核實方算法V,以滿足這些請求。
[0105]上面概述了公開密鑰認證方案中的算法。
[0106][1-2:數字簽名方案的算法]
[0107]下面參考圖2,概述數字簽名方案的算法。圖2是概述數字簽名方案的算法的說明圖。
[0108]不同于紙質文檔,不能對數字化數據物理簽名或附加印章。因此,證明數字化數據的創(chuàng)作者涉及產生與對紙質文檔物理簽名或附加印章類似的效果的電子辦法。這種辦法是數字簽名。數字簽名指的是使給定數據與只為數據的創(chuàng)作者所知的簽名數據關聯(lián),把所述簽名數據提供給收件人,然后在收件人一側核實所述簽名數據的辦法。
[0109](模型)
[0110]如圖2中所示,在數字簽名方案的模型中,存在簽名者和核實方2個實體。此外,數字簽名方案的模型由3種算法:密鑰生成算法Gen、簽名生成算法Sig和簽名核實算法Ver構成。
[0111]簽名者利用密鑰生成算法Gen,生成簽名者特有的一對簽名密鑰sk和核實密鑰pk。簽名者還利用簽名生成算法Sig,生成待附加到消息M的數字簽名q。換句話說,簽名者是把數字簽名附到消息M上的實體。同時,核實方利用簽名核實算法Ver,核實附加到消息M的數字簽名。換句話說,核實方是核實數字簽名q,以確認消息M的創(chuàng)作者是否是簽名者的實體。
[0112]注意,盡管在下面的說明中,使用術語“簽名者”和“核實方”,不過,這些術語嚴格地意味實體。從而,執(zhí)行密鑰生成算法Gen和簽名生成算法Sig的代理是與“簽名者”實體對應的信息處理設備。類似地,執(zhí)行簽名核實算法Ver的代理是信息處理設備。這些信息處理設備的硬件結構例如如圖38中所示。換句話說,密鑰生成算法Gen、簽名生成算法Sig和簽名核實算法Ver由CPU902之類的裝置,根據記錄在諸如R0M904、RAM906、存儲單元920或可拆卸記錄介質928之類的裝置上的程序執(zhí)行。
[0113](密鑰生成算法Gen)
[0114]密鑰生成算法Gen由簽名者使用。密鑰生成算法Gen是生成簽名者特有的一對簽名密鑰sk和核實密鑰pk的算法。密鑰生成算法Gen生成的核實密鑰pk被公開。同時,簽名者使密鑰生成算法Gen生成的簽名密鑰sk保密。隨后,簽名密鑰sk被用于生成待附加到消息M的數字簽名q。例如,密鑰生成算法Gen接受安全性參數Ip (p是等于或大于0的整數)作為輸入,并輸出簽名密鑰sk和核實密鑰pk。這種情況下,形式上,可如下式(3)地表述密鑰生成算法Gen。
[0115][數學式3]
[0116](sk, pk) — Gen (I 入)[0117]...(3)
[0118](簽名生成算法Sig)
[0119]簽名生成算法Sig由簽名者使用。簽名生成算法Sig是生成待附加到消息M的數字簽名q的算法。簽名生成算法Sig是接受簽名密鑰sk和消息M作為輸入,并輸出數字簽名q的算法。形式上,可如下式(4)地表述簽名生成算法Sig。
[0120][數學式4]
[0121]O — Sig (sk, M)
[0122]…(4)
[0123](簽名核實算法Ver)
[0124]簽名核實算法Ver由核實方使用。簽名核實算法Ver是核實數字簽名q是否是消息M的有效數字簽名的算法。簽名核實算法Ver是接受簽名者的核實密鑰pk,消息M和數字簽名q作為輸入,并輸出0或1(1比特)的算法。形式下,可如下式(5)地表述簽名核實算法Ver。此時,在簽名核實算法Ver輸出0 (核實密鑰pk拒絕消息M和數字簽名q)的情況下,核實方判斷數字簽名q無效,而在簽名核實算法Ver輸出I (核實密鑰pk接受消息M和數字簽名q)的情況下,核實方判斷數字簽名q有效。
[0125][數學式5]
[0126]0/1 — Ver (pk, M, o )
[0127]…(5)
[0128]從而,上面概述了數字簽名方案中的算法。
[0129][1-3:n遍公開密鑰認證方案]
[0130]下面參考圖3,說明n遍公開密鑰認證方案。圖3是圖解說明n遍公開密鑰認證方案的說明圖。
[0131]如上所述,公開密鑰認證方案是在交互協(xié)議期間,向核實方證實證明方擁有與公開密鑰Pk對應的秘密密鑰sk的認證方案。此外,交互協(xié)議必須滿足健全性和零知識性這兩個條件。因此,如圖3中所示,在交互協(xié)議期間,在執(zhí)行相應處理的時候,證明方和核實方交換n次信息。
[0132]在n遍公開密鑰認證方案的情況下,證明方利用證明方算法P進行處理(操作#1),然后把信息T1傳給核實方。之后,核實方利用核實方算法V進行處理(操作#2),然后把信息T2傳給證明方。相繼進行處理的執(zhí)行和信息Tk的傳送(k=3~n)(操作#k),最后,執(zhí)行處理(操作#n+l)。按照這種方式,傳送和接收n次信息從而被稱為“n遍公開密鑰認證方案”。
[0133]上面從而說明了 n遍公開密鑰認證方案。
[0134]〈2.與3遍公開密鑰認證方案有關的算法結構>
[0135]以下,描述與3遍公開密鑰認證方案有關的算法。注意,在以下說明中,在一些情況下也可以將3遍公開密鑰認證方案稱為“3遍方案”。 [0136]<2-1:具體算法結構示例(圖4) >
[0137]首先,參照圖4介紹與3遍方案有關的具體算法結構的示例。圖4是說明3遍方案有關的具體算法結構的說明圖。在此,將介紹使用二次多項式組(fjx),...,fffl(x))作為公開密鑰Pk的一部分的情況。在此,假設二次多項式fi(x)被表示為以下公式(6)。此外,將向量(X1,..., xn)表示為X,并且將二次多元多項式組(f\ (X),...,fm (χ))表示為多元多項式F (X)。
[0138][數學式6]
【權利要求】
1.一種信息處理設備,包括: 二進制隨機數生成單元,被配置成生成用M (其中M > 2)個比特的二進制數表示的二進制隨機數串;和 三進制數串生成單元,被配置成通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足31 ( 2m的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串, 其中所述三進制數串生成單元通過用L個符號的三進制數表示滿足X < f的k個比特的二進制數串X來生成所述三進制數串。
2.根據權利要求1所述的信息處理設備,其中,在生成N個三進制數時,所述三進制數串生成單元基于由下式(I)表示的概率P小于預定值的k生成三進制數串: [數學式I]
3.根據權利要求2所述的信息處理設備,其中,所述三進制數串生成單元基于概率P最小的k生成三進制數串。
4.根據權利要求1所述的信息處理設備,其中,所述三進制數串生成單元通過從滿足X’ >31的k比特的二進制數串X’減去31來生成新的k比特的二進制數串Y,進而通過用L’個符號的三進制數表示k比特的二進制數串Y之中的滿足Y’ S31’(其中L’是滿足3L’<2k-3l的最大整數)的k比特的二進制數串Y’來生成三進制數串。`
5.根據權利要求1所述的信息處理設備,其中,所述三進制數串生成單元設定L(O) =L,并且在從0開始順次地更新索引j的同時,重復執(zhí)行如下處理:通過從滿足XjMiw的k比特的二進制數串Xj減去31(1來生成新的k比特的二進制數串Yj的處理;和通過用L(j+1)個符號的三進制數表示k個比特的二進制數串Yj之中的滿足Yj+1 ( 3l(j+1)(其中L(j+1)是滿足3l(j+1) ( 2k-3L(J)的最大整數)的k個比特的二進制數串Yj+1來進一步生成三進制數串的處理。
6.根據權利要求1所述的信息處理設備,包括: 信息存儲單元,被配置成存儲在環(huán)K上定義的一組多次多元多項式F= (f\,...,fj,和向量 y= (yi, ? ? ?, ym) = (fi(s),..., fm(s)); 消息獲取單元,被配置成獲得基于所述一組多次多元多項式F和作為集合Kn的元素的向量S而生成的消息; 模式信息提供單元,被配置成把從3種核實模式中隨機選擇的一個核實模式的信息提供給提供所述消息的證明方; 響應獲取單元,被配置成從證明方獲得與所選核實模式對應的響應信息;以及 核實單元,被配置成基于所述消息、所述一組多次多元多項式F、向量y以及所述響應信息,核實證明方是否存儲有向量S, 其中向量s是秘密密鑰, 其中所述一組多次多元多項式F和向量y是公開密鑰,并且其中所述消息是通過基于所述公開密鑰和響應信息執(zhí)行預先為與所述響應信息對應的核實模式準備的運算而獲得的信息,并且 其中在選擇所述一個核實模式時使用從二進制隨機數串生成的三進制數。
7.—種信息處理方法,包括: 生成用M (其中M > 2)個比特的二進制數表示的二進制隨機數串的步驟;和 通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足31 ( t的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串的步驟, 其中,在生成三進制數串的步驟中,通過用L個符號的三進制數表示滿足X < f的k個比特的二進制數串X來生成所述三進制數串。
8.一種使計算機實現(xiàn)如下功能的程序: 二進制隨機數生成功能,輸出用M (其中M > 2)個比特的二進制數表示的二進制隨機數串;和 三進制數串生成功能,通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足2M的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串, 其中所述三進制數串生成功能通過用L個符號的三進制數表示滿足X < 3l的k個比特的二進制數串X來生成所述三進制數串。
9.一種記錄有程序的計算機可讀記錄介質,所述程序使計算機實現(xiàn)以下功能: 二進制隨機數生成功能,輸出用M (其中M > 2)個比特的二進制數表示的二進制隨機數串;和 三進制數串生成功能,通過按k個比特的單位對所述二進制隨機數串進行分組并生成k個比特的二進制數串,并且通過用L (其中L是滿足31 ( 2m的最大整數)個符號的三進制數表示所述k個比特的二進制數串,來生成三進制數串, 其中所述三進制數串生成功能通過用L個符號的三進制數表示滿足X < 3l的k個比特的二進制數串X來生成所述三進制數串。
【文檔編號】H04L9/32GK103782332SQ201280040701
【公開日】2014年5月7日 申請日期:2012年7月19日 優(yōu)先權日:2011年8月29日
【發(fā)明者】作本紘一, 白井太三, 樋渡玄良 申請人:索尼公司