信息处理设备、信息处理方法以及程序的制作方法

文档序号:7791681阅读:122来源:国知局
信息处理设备、信息处理方法以及程序的制作方法
【专利摘要】[问题]为了能够更高效地计算多次多元多项式。[解决方案]提供一种信息处理设备,配备有:数获取单元,获得用作构成一组多次多元多项式F=(f1,...,fm)的各项的系数的数,所述数是利用预定函数根据在执行电子签名算法或公开密钥认证算法的实体之间共用的信息生成的,所述电子签名算法或公开密钥认证算法使用包括所述一组多次多元多项式F的公开密钥;和多项式计算单元,将由所述数获取单元获取的数分配成所述一组多次多元多项式F的构成要素中包含的多次多元的系数,并计算变量的输入值的多次多元多项式。所述多项式计算单元跳过针对至少一个变量的输入值为0的项的计算处理。
【专利说明】信息处理设备、信息处理方法以及程序

【技术领域】
[0001]本发明涉及信息处理设备和信息处理方法以及程序。

【背景技术】
[0002]随着信息处理技术和通信技术的快速发展,无论文档是公开文档还是私人文档,文档都已被快速数字化。随着所述文档的数字化,许多个人和公司相当关心电子文档的安全管理。随着这种关心的增强,在各个领域,已积极研究防范诸如电子文档的窃取或伪造之类篡改行为的对策。就电子文档的窃取来说,例如通过加密电子文档,确保安全性。另外,就电子文档的伪造来说,例如通过利用数字签名,确保安全性。不过,若使用的加密或数字签名不具有较高的防篡改性,那么不能保证足够的安全性。
[0003]数字签名用于指定电子文档的创作者。从而,数字签名应只能由电子文档的创作者生成。如果恶意第三方能够生成相同的数字签名,那么所述第三方能够伪装成电子文档的创作者。即,恶意第三方伪造电子文档。关于电子签名的安全性表达了各种意见,以防止这种伪造。作为目前广泛使用的数字签名方案,例如已知RSA签名方案和DSA签名方案。
[0004]RSA签名方案把“较大合数的质因数分解的困难性(下面称为质因数分解问题)”作为安全性的基础。另外,DSA签名方案把“求解离散对数问题的困难性”作为安全性的基础。这些基础基于不存在利用经典计算机,高效地求解质因数分解问题和离散对数问题的算法。即,上述困难性意味经典计算机的计算困难性。不过,据说当使用量子计算机时,能够高效地计算质因数分解问题和离散对数问题的解答。
[0005]类似于RSA签名方案和DSA签名方案,目前使用的许多数字签名方案和公开密钥认证方案也把质因数分解问题或离散对数问题的困难性作为安全性的基础。从而,如果量子计算机被投入实际使用,那么将不确保这种数字签名方案和公开密钥认证方案的安全性。因而,需要实现新的数字签名方案和公开密钥认证方案,所述新的数字签名方案和公开密钥认证方案把与诸如可容易地用量子计算机求解的质因数分解问题或离散对数问题之类的问题不同的问题,作为安全性的基础。作为不易用量子计算机求解的问题,例如存在与多元多项式相关的问题。
[0006]例如,作为把多元多项式问题作为安全性的基础的数字签名方案,已知基于MI (Matsumoto-1mai密码学)、HFE(隐藏域方程密码学)、OV (0i1-Vinegar签名方案)和TTM(受控变换方法密码学)的数字签名方案。例如,在以下的非专利文献I和2中,公开了基于HFE的数字签名方案。
[0007]引文列表
[0008]非专利文献
[0009]非专利文献 1:Jacques Patarin, Asymmetric Cryptography with a HiddenMonomial, CRYPTO 1996,pp.45-60。
[0010]非专利文献2:Patarin, J., Courtois, N.和 Goubin, L., QUARTZ, 128-Bit LongDigital Signatures, In Naccache, D., Ed.Topics in Cryptology-CT-RSA 2001 (SanFrancisco, CA, USA, April 2001), vol.2020 of Lecture Notes in Computer Science, Springer-Verlag., pp.282-297。


【发明内容】

[0011]如上所述,多元多项式问题是即使使用量子计算机,也难以求解的问题(称为NP困难问题)的例子。通常,利用由HFE等代表的多元多项式问题的公开密钥认证方案使用具有特殊陷门的多次多元联立方程。例如,提供与X1,...,Xn相关的多次多元联立方程F (Xl,..., xn) = y,及线性变换A和B,并且秘密地管理线性变换A和B。在这种情况下,多次多元联立方程F及线性变换A和B变成陷门。
[0012]知道陷门F、A和B的实体能够求解与X1,...,Xn相关的方程B (F (A (χ1;...,Xn)))=1'。另一方面,不知道陷门F、A和B的实体求解不了与Xl,...,χη相关的方程B(F(A(Xl,...,Xn))) = y'。通过利用这种机制,可实现把其求解多次多元联立方程的困难性作为安全性的基础的公开密钥认证方案和数字签名方案。
[0013]如上所述,为了实现公开密钥认证方案或数字签名方案,必须准备满足B(F(A(Xl,...,xn))) = y的特殊的多次多元联立方程。此外,在生成签名时,必须求解多次多元联立方程F。因此,可用的多次多元联立方程F局限于能够相对容易求解的方程。SP,在以前的方案中,仅仅使用了结合能够相对容易求解的3个函数(陷门)B、F和A的多次多元联立方程B (F (AU1,...,xn))) = y,从而难以确保足够的安全性。
[0014]因此,鉴于上述情况,本申请发明人发明了一种利用其高效求解手段(陷门)尚未知的多次多元联立方程的高效且高度安全的公开密钥认证方案和数字签名方案(KoichiSakumoto, Taizo Shirai and Harunaga Hiwatari, “Public-Key Identificat1n SchemesBased on Multivariate Quadratic Polynomials”,CRYPTO 2011, LNCS 6841, pp.706 to723,2011)。
[0015]然而,由于所述公开密钥认证方案和数字签名方案中使用的多元多项式具有许多系数,当要使用多元多项式作为公开密钥时,必须确定在证明方与核实方之间高效分配系数的方法。发明了本技术,以提供一种新颖且改进的信息处理设备、信息处理方法以及程序,其能够更高效地计算多元多项式。
[0016]根据本技术的一个方面,提供了一种信息处理设备,包括:数获取单元,被配置成获得用作构成一组多次多元多项式F = (f1;..., fffl)的各项的系数的数,所述数是利用预定函数根据在执行公开密钥认证方案或数字签名方案的算法的实体之间共用的信息生成的,所述公开密钥认证方案或数字签名方案使用包括所述一组多次多元多项式F的公开密钥;和多项式计算单元,被配置成通过将由所述数获取单元获取的数分配给所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数,计算变量的输入值的多次多元多项式。所述多项式计算单元跳过针对至少一个变量的输入值为O的项的计算处理。
[0017]根据本技术的另一方面,提供了一种信息处理方法,包括:获得用作构成一组多次多元多项式F = (f1;..., fffl)的各项的系数的数的步骤,所述数是利用预定函数从在执行公开密钥认证方案或数字签名方案的算法的实体之间共用的信息生成的,所述公开密钥认证方案或数字签名方案使用包括所述一组多次多元多项式F的公开密钥;和通过将由所获取的数分配给所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数,计算变量的输入值的多次多元多项式的步骤。在计算变量的输入值的多次多元多项式的步骤中,跳过针对至少一个变量的输入值为O的项的计算处理。
[0018]根据本技术的另一方面,提供了一种使计算机实现以下功能的程序:数获取功能,获得用作构成一组多次多元多项式F = (f1;..., fffl)的各项的系数的数,所述数是利用预定函数从在执行公开密钥认证方案或数字签名方案的算法的实体之间共用的信息生成的,所述公开密钥认证方案或数字签名方案使用包括所述一组多次多元多项式F的公开密钥;和多项式计算功能,通过将由所获取的数分配给所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数,计算变量的输入值的多次多元多项式。所述多项式计算功能使得跳过针对至少一个变量的输入值为O的项的计算处理。
[0019]此外,按照本技术的另一方面,提供一种具有记录上述程序的计算机可读记录介质。
[0020]按照上述本技术,能够更高效地计算多元多项式。

【专利附图】

【附图说明】
[0021]图1是说明公开密钥认证方案的算法结构的说明图;
[0022]图2是说明数字签名方案的算法结构的说明图;
[0023]图3是说明根据η遍公开密钥认证方案的算法结构的说明图;
[0024]图4是说明基于3遍公开密钥认证方案的高效算法的说明图;
[0025]图5是说明基于3遍公开密钥认证方案的高效算法的并行化的说明图;
[0026]图6是说明基于5遍公开密钥认证方案的高效算法结构示例的说明图;
[0027]图7是说明基于5遍公开密钥认证方案的高效算法的并行化的说明图;
[0028]图8是说明把基于3遍公开密钥认证方案的高效算法修改成数字签名方案的算法的方法的说明图;
[0029]图9是说明把基于5遍公开密钥认证方案的高效算法修改成数字签名方案的算法的方法的说明图;
[0030]图10是描述用于高效代入多元多项式的系数的数据构造方法(构造技术#1)的说明图;
[0031]图11是描述用于高效代入多元多项式的系数的数据构造方法(构造技术#1)的说明图;
[0032]图12是说明能够执行按照本技术的每个实施例的算法的信息处理设备的硬件结构例子的说明图。

【具体实施方式】
[0033]下面参考附图,详细说明本发明的优选实施例。注意在说明书和附图中,功能和结构基本相同的构成元件用相同的附图标记表示,并省略重复的说明。
[0034][说明的流程]
[0035]下面简要说明以下进行的本技术的实施例的说明的流程。首先,参考图1,说明公开密钥认证方案的算法结构。随后,参考图2,说明数字签名方案的算法结构。接下来,参考图3,说明η遍公开密钥认证方案。
[0036]之后,将参考图4和5,说明基于3遍公开密钥认证方案的算法结构示例。然后,将参考图6和7,说明基于5遍公开密钥认证方案的算法结构示例。之后,参考图8和9,说明将基于3遍和5遍公开密钥认证方案的高效算法修改成数字签名方案的算法的方法。
[0037]接着,参照图10和11,描述高效代入多元多项式的系数的方法。然后,参考图12,说明能够实现按照本技术的每个实施例的算法的信息处理设备的硬件结构例子。最后,将简要说明实施例的技术思想的概要,和从所述技术思想获得的效果。
[0038](要描述的项目)
[0039]1:介绍
[0040]1-1:公开密钥认证方案的算法
[0041]1-2:数字签名方案的算法
[0042]1-3: η遍公开密钥认证方案
[0043]2:基于3遍公开密钥认证方案的算法结构
[0044]2-1:具体算法结构示例
[0045]2-2:并行算法结构示例
[0046]3:基于5遍公开密钥认证方案的算法结构
[0047]3-1:具体算法结构示例
[0048]3-2:并行算法结构示例
[0049]4:数字签名方案的修改
[0050]4-1:将3遍公开密钥认证方案修改成数字签名方案
[0051]4-2:将5遍公开密钥认证方案修改成数字签名方案
[0052]5:关于高效代入多元多项式的系数的方法
[0053]5-1:基本协定
[0054]5-2:数据构造
[0055]5-2-1:构造技术 #1
[0056]5_2-2:构造技术 #2
[0057]6:硬件配置示例
[0058]7:总结
[0059]〈1:介绍〉
[0060]本发明涉及其安全性基于求解多次多元联立方程的困难性的公开密钥认证方案和数字签名方案。不过,本实施例不同于现有技术比如HFE数字签名方案的技术,并且涉及利用缺乏高效的求解手段(陷门)的多次多元联立方程的公开密钥认证方案和数字签名方案。首先,将简要概述公开密钥认证方案的算法,数字签名方案的算法,和η遍公开密钥认证方案。
[0061][1-1:公开密钥认证方案的算法]
[0062]首先参考图1,概述公开密钥认证方案的算法。图1是说明公开密钥认证方案的算法的说明图。
[0063]当某人(证明方)通过利用公开密钥Pk和秘密密钥sk,使另一人(核实方)相信他或她的身份时,使用公开密钥认证。例如,使证明方A的公开密钥pkA为核实方B所知。另一方面,证明方A秘密地管理证明方A的秘密密钥skA。按照公开密钥认证方案,知道与公开密钥pkA对应的秘密密钥skA的人被认为是证明方A本人。
[0064]当证明方A利用公开密钥认证机制,向核实方B证实她是证明方A本人时,证明方A应当借助交互协议,向核实方B出示证明方A知道与公开密钥pkA对应的秘密密钥skA的证据。当指示证明方A知道秘密密钥skA的证据被出示给核实方B,并且核实方B完成对该证据的确认时,证明方A的合法性(身份)被证实。
[0065]然而,为了确保安全性,公开密钥认证办法需要以下条件。
[0066]第一个条件是“尽可能地降低在执行交互协议时,认可没有秘密密钥Sk的伪造者的伪造的概率”。第一条件的成立被称为“健全性”。换句话说,健全性意味“在交互协议的执行期间,没有秘密密钥sk的伪造者将不会以不可忽略的概率使伪造成立”。第二个条件是“即使执行交互协议,关于证明方A的秘密密钥skA的信息也根本不会被泄漏给核实方B”。第二条件的成立被称为“零知识性”。
[0067]安全地进行公开密钥认证需要利用具有健全性和零知识性的交互协议。如果利用缺乏健全性和零知识性的交互协议进行认证处理,那么会存在一定的虚假核实的可能性和一定的秘密密钥信息的泄漏可能性,从而,即使成功地完成认证处理,证明方的真实性仍未被核实。从而,如何保证会话协议的健全性和零知识性的问题变得重要。
[0068](模型)
[0069]在公开密钥认证方案的模型中,如图1中所示,存在两个实体,即证明方和核实方。证明方通过利用密钥生成算法Gen,生成证明方特有的一对公开密钥pk和秘密密钥sk。之后,证明方通过利用使用密钥生成算法Gen生成的一对秘密密钥sk和公开密钥pk,与核实方进行交互协议。此时,证明方利用证明方算法P,执行交互协议。如上所述,在交互协议中,证明方利用证明方算法P,向核实方证实她拥有秘密密钥sk。
[0070]另一方面,核实方利用核实方算法V,执行交互协议,核实证明方是否拥有与由证明方公开的公开密钥对应的秘密密钥。即,核实方是核实证明方是否拥有与公开密钥对应的秘密密钥的实体。如上所述,公开密钥认证方案的模型由两个实体,即证明方和核实方,和3种算法,即密钥生成算法Gen、证明方算法P和核实方算法V构成。
[0071]注意,在下面的说明中,使用“证明方”和“核实方”的措词,不过,这些措词严格地意味实体。于是,执行密钥生成算法Gen和证明方算法P的主体是与实体“证明方”对应的信息处理设备。类似地,执行核实方算法V的主体是信息处理设备。这些信息处理设备的硬件结构例如如图12中所示。即,密钥生成算法Gen、证明方算法P和核实方算法V由CPU902根据记录在ROM 904、RAM 906、存储单元920、可拆卸记录介质928等中的程序执行。
[0072](密钥生成算法Gen)
[0073]密钥生成算法Gen由证明方使用。密钥生成算法Gen是生成证明方特有的一对公开密钥Pk和秘密密钥Sk的算法。利用密钥生成算法Gen生成的公开密钥Pk被公开。此夕卜,公开的公开密钥pk被核实方使用。另一方面,利用密钥生成算法Gen生成的秘密密钥sk由证明方秘密地管理。由证明方秘密管理的秘密密钥sk被用于向核实方证实证明方拥有与公开密钥Pk对应的秘密密钥sk。形式上,密钥生成算法Gen被表示成下面的式(1),作为以安全性参数1λ (λ是等于或大于O的整数)作为输入,并输出秘密密钥sk和公开密钥pk的算法。
[0074][数学式I]
[0075](sk, pk) — Gen(lA)
[0076]...(I)
[0077](证明方算法P)
[0078]证明方算法P由证明方使用。证明方算法P是向核实方证实证明方拥有与公开密钥Pk对应的秘密密钥sk的算法。换句话说,证明方算法P是以秘密密钥sk和公开密钥pk作为输入,从而执行交互协议的算法。
[0079](核实方算法V)
[0080]核实方算法V由核实方使用。核实方算法V是在交互协议期间,核实证明方是否拥有与公开密钥Pk对应的秘密密钥Sk的算法。核实方算法V是以公开密钥Pk作为输入,并按照交互协议的执行结果,输出O或I (I比特)的算法。注意,在核实方算法V输出O的情况下,核实方判定证明方非法,而在核实方算法V输出I的情况下,核实方判定证明方合法。形式上,如下述式(2)地表示核实方算法V。
[0081][数学式2]
[0082]0/1—V(pk)
[0083]...(2)
[0084]如上所述,实现有意义的公开密钥认证涉及使交互协议满足健全性和零知识性这两个条件。然而,证实证明方持有秘密密钥sk涉及证明方执行依赖于秘密密钥sk的过程,并在把结果通知核实方之后,使核实方根据通知的内容进行核实。为了确保健全性,进行依赖于秘密密钥sk的过程。同时,应避免向核实方泄漏关于秘密密钥sk的信息。因此,巧妙地设计密钥生成算法Gen、证明方算法P和核实方算法V,以满足这些请求。
[0085]上面概述了公开密钥认证方案中的算法。
[0086][1-2:数字签名方案的算法]
[0087]下面参考图2,概述数字签名方案的算法。图2是概述数字签名方案的算法的说明图。
[0088]不同于纸质文档,不能对数字化数据物理签名或附加印章。因此,证明数字化数据的创作者涉及产生与对纸质文档物理签名或附加印章类似的效果的电子办法。这种办法是数字签名。数字签名指的是使给定数据与只为数据的创作者所知的签名数据关联,把所述签名数据提供给收件人,然后在收件人一侧核实所述签名数据的办法。
[0089](模型)
[0090]如图2中所示,在数字签名方案的模型中,存在签名者和核实方2个实体。此外,数字签名方案的模型由3种算法:密钥生成算法Gen、签名生成算法Sig和签名核实算法Ver构成。
[0091]签名者利用密钥生成算法Gen,生成签名者特有的一对签名密钥sk和核实密钥pk。签名者还利用签名生成算法Sig,生成待附加到消息M的数字签名0。换句话说,签名者是把数字签名附到消息M上的实体。同时,核实方利用签名核实算法Ver,核实附加到消息M的数字签名O。换句话说,核实方是核实数字签名σ,以确认消息M的创作者是否是签名者的实体。
[0092]注意,尽管在下面的说明中,使用术语“签名者”和“核实方”,不过,这些术语严格地意味实体。从而,执行密钥生成算法Gen和签名生成算法Sig的代理是与“签名者”实体对应的信息处理设备。类似地,执行签名核实算法Ver的代理是信息处理设备。这些信息处理设备的硬件结构例如如图12中所示。换句话说,密钥生成算法Gen、签名生成算法Sig和签名核实算法Ver由CPU 902之类的装置,根据记录在诸如ROM 904,RAM 906、存储单元920或可拆卸记录介质928之类的装置上的程序执行。
[0093](密钥生成算法Gen)
[0094]密钥生成算法Gen由签名者使用。密钥生成算法Gen是生成签名者特有的一对签名密钥sk和核实密钥pk的算法。密钥生成算法Gen生成的核实密钥pk被泄露。同时,签名者使密钥生成算法Gen生成的签名密钥sk保密。随后,签名密钥sk被用于生成待附加到消息M的数字签名O。例如,密钥生成算法Gen接受安全性参数1λ (λ是等于或大于O的整数)作为输入,并输出签名密钥sk和核实密钥pk。这种情况下,形式上,可如下式(3)地表述密钥生成算法Gen。
[0095][数学式3]
[0096](sk, pk) — Gen (Ia)
[0097]...(3)
[0098](签名生成算法Sig)
[0099]签名生成算法Sig由签名者使用。签名生成算法Sig是生成待附加到消息M的数字签名σ的算法。签名生成算法Sig是接受签名密钥sk和消息M作为输入,并输出数字签名σ的算法。形式上,可如下式(4)地表述签名生成算法Sig。
[0100][数学式4]
[0101]σ — Sig (sk, M)
[0102]...(4)
[0103](签名核实算法Ver)
[0104]签名核实算法Ver由核实方使用。签名核实算法Ver是核实数字签名σ是否是消息M的有效数字签名的算法。签名核实算法Ver是接受签名者的核实密钥pk,消息M和数字签名σ作为输入,并输出O或1(1比特)的算法。形式下,可如下式(5)地表述签名核实算法Ver。此时,在签名核实算法Ver输出O (公开密钥pk拒绝消息M和数字签名σ )的情况下,核实方判断数字签名σ无效,而在签名核实算法Ver输出I (公开密钥pk接受消息M和数字签名σ)的情况下,核实方判断数字签名σ有效。
[0105][数学式5]
[0106]0/1 — Ver (pk, Μ, σ )
[0107]...(5)
[0108]从而,上面概述了数字签名方案中的算法。
[0109][1-3:η遍公开密钥认证方案]
[0110]下面参考图3,说明η遍公开密钥认证方案。图3是图解说明η遍公开密钥认证方案的说明图。
[0111]如上所述,公开密钥认证方案是在交互协议期间,向核实方证实证明方拥有与公开密钥Pk对应的秘密密钥Sk的认证方案。此外,交互协议必须满足健全性和零知识性这两个条件。因此,如图3中所示,在交互协议期间,在执行相应处理的时候,证明方和核实方交换η次信息。
[0112]在η遍公开密钥认证方案的情况下,证明方利用证明方算法P进行处理(操作#1),然后把信息T1传给核实方。之后,核实方利用核实方算法V进行处理(操作#2),然后把信息T2传给证明方。相继进行处理的执行和信息Tk的传送(k = 3?η)(操作#k),最后,执行处理(操作#n+l)。按照这种方式,传送和接收η次信息从而被称为“η遍公开密钥认证方案”。
[0113]上面从而说明了 η遍公开密钥认证方案。
[0114]〈2.基于3遍公开密钥认证方案的算法结构>
[0115]以下,描述基于3遍公开密钥认证方案的算法。注意,在以下说明中,在一些情况下也可以将3遍公开密钥认证方案称为“3遍方案”。
[0116]〈2-1:具体算法结构示例(图4) >
[0117]首先,参照图4介绍基于3遍方案的具体算法结构的示例。图4是说明基于3遍方案的具体算法结构的说明图。在此,将考虑使用二次多项式组(4 00,...,乙00)作为公开密钥pk的一部分的情况。在此,二次多项式fi(x)被表示为以下公式(6)。此外,将向量(X1,...,Xn)表示为X,并且将二次多元多项式组(fjx),...,fm (x))表示为多元多项式F(x)。
[0118][数学式6]
f (." X I = > a ,X X, 4* > h X
JI \Λ1 ?,?J / μ 1? i 1: / i if J
[0119]
JfkJ
…C 6 )
[0120]此外,可以将二次多项式组(f^x),...,fffl(x))表示成以下式(7)。此外,A1,...,Affl是nXn矩阵。此外,b1;..., bm中的每一个都是nX I向量。
[0121][数学式7]
f f(Y\\ f rT A
JI /ΛI C/j Λ
r-r/ \..jf J m& mmmmm9.J-1 I 一?*m.
[0122]' ,

T I Y1 I?* Λ ?*' -L Γ? Y*

、J Ttl I β J 、 ? 卿 Jw I jfi j

f Ff \
… \ I }
[0123]当使用该表达式时,可以将多元多项式F表示为以下式(8)和式(9)。从以下式
(10)可知,容易确认满足该表达式。
[0124][数学式8]
[0125]F (x+y) = F (x) +F (y) +G (x,y)
[0126]...(8)

【权利要求】
1.一种信息处理设备,包括: 数获取单元,被配置成获得用作构成一组多次多元多项式F= (f1;..., fffl)的各项的系数的数,所述数是利用预定函数根据在执行公开密钥认证方案或数字签名方案的算法的实体之间共用的信息生成的,所述公开密钥认证方案或数字签名方案使用包括所述一组多次多兀多项式F的公开密钥;和 多项式计算单元,被配置成通过将由所述数获取单元获取的数分配给所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数,计算变量的输入值的多次多元多项式, 其中,所述多项式计算单元跳过针对至少一个变量的输入值为O的项的计算处理。
2.根据权利要求1所述的信息处理设备,其中所述变量的输入值被生成为使得所有输入值之中的为O的输入值的比率在预定范围内。
3.根据权利要求2所述的信息处理设备,其中所述变量的输入值是利用随机数生成器生成的值,并且当所有输入值之中的为O的输入值的比率不在所述预定范围内时利用所述随机数生成器重新生成所述变量的输入值。
4.根据权利要求1所述的信息处理设备,其中所述变量的输入值用彼此不同的第一比特值和第二比特值中的任何一个来表示,并且在所有输入值之中具有第一比特值的输入值的数量与具有第二比特值的输入值的数量基本上相等。
5.根据权利要求1所述的信息处理设备,其中所述多项式计算单元对所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数之中的具有相同类型的变量组合的项的系数进行分组,然后按组的单位执行计算。
6.根据权利要求1所述的信息处理设备,其中所述多项式计算单元在用二次形式表示所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式时,针对每行或每列对系数矩阵进行分组,然后按组的单位执行计算。
7.根据权利要求1所述的信息处理设备,其中,当所述多项式计算单元对一个组执行分配处理时,所述数获取单元获取为属于所述一个组的系数生成的数。
8.根据权利要求7所述的信息处理设备,其中所述数获取单元通过将在生成属于所述一个组的系数的数时生成的一个数转动一个比特,来获取所需数量的数。
9.根据权利要求1所述的信息处理设备,还包括: 表保持单元,被配置成将系数分配给与每个组对应的类型的项,并且作为表保持通过用任意数替换所述项的变量而获得的值。
10.根据权利要求1所述的信息处理设备, 其中所述信息是随机数的种子,并且 其中所述预定函数是被配置成使用所述种子生成随机数的随机数生成器。
11.根据权利要求1所述的信息处理设备,包括: 消息生成单元,被配置成基于在环K中定义的一组多次多元多项式F = (f1;...,fm)和向量s e Kn生成消息; 消息提供单元,被配置成将所述消息提供给保持所述一组多次多元多项式F和向量y=(υι,...,ym) = (f\ (s),...,fm (s))的核实方;以及 响应提供单元,被配置成把与核实方从k(k ^ 3)种核实模式中选择的核实模式对应的回答信息提供给核实方, 其中向量S是秘密密钥, 其中所述一组多次多元多项式F和向量y是公开密钥, 其中所述回答信息是根据核实模式从一组随机数和所述消息之中选择的信息,并且其中所述消息是通过利用公开密钥和所述回答信息,执行预先为与所述回答信息对应的核实模式准备的运算而获得的信息。
12.根据权利要求1所述的信息处理设备,包括: 信息保持单元,被配置成保持在环K上定义的所述一组多次多元多项式F =(f!,...,fm),和向量 y = (γ1;..., ym) = (f^s),..., fm(s)); 消息获取单元,被配置成获取基于所述一组多次多元多项式F和向量s e Kn而生成的消息; 模式信息提供单兀,被配置成把从k(k ^ 3)种核实模式中随机选择的一个核实模式的信息提供给提供所述消息的证明方; 回答获取单元,被配置成从证明方获取与所选核实模式对应的回答信息;以及核实单元,被配置成基于所述消息、所述一组多次多元多项式F、向量y以及所述回答信息,核实证明方是否保持有向量S, 其中向量s是秘密密钥, 其中所述一组多次多元多项式F和向量y是公开密钥,并且 其中所述消息是通过利用所述公开密钥和回答信息执行预先为与所述回答信息对应的核实模式准备的运算而获得的信息。
13.根据权利要求1所述的信息处理设备,包括: 消息生成单元,被配置成基于在环K上定义的所述一组多次多元多项式F =(f1;...,fm)和向量s e Kn,生成消息; 消息提供单元,被配置成把所述消息提供给保持所述一组多次多元多项式F和向量y=(υι,...,ym) = (f\ (s),...,fm (s))的核实方; 中间信息生成单元,被配置成利用核实方随机选择的第一信息和当生成所述消息时获得的第二息,生成第二息; 中间信息提供单元,被配置成把第三信息提供给核实方;以及回答提供单元,被配置成把与核实方从k(其中k > 2)种核实模式中选择的核实模式对应的回答信息提供给核实方, 其中向量s是秘密密钥, 其中所述一组多次多元多项式F和向量y是公开密钥, 其中所述回答信息是根据核实模式从所述消息之中选择的信息,并且其中所述消息是通过利用公开密钥、第一信息、第三信息以及回答信息执行预先为与所述回答信息对应的核实模式准备的运算而获得的信息。
14.根据权利要求1所述的信息处理设备,包括: 信息保持单元,被配置成保持在环K上定义的所述一组多次多元多项式F =(f!,...,fm),和向量 y = (γ1;..., ym) = (f^s),..., fm(s)); 消息获取单元,被配置成获取基于所述一组多次多元多项式F和向量s e Kn而生成的消息; 信息提供单元,被配置成把随机选择的第一信息提供给提供所述消息的证明方; 中间信息获取单元,被配置成获取证明方利用第一信息和当生成所述消息时获得的第二息生成的第二息; 模式信息提供单兀,被配置成把从k(k ^ 3)种核实模式中随机选择的一个核实模式的信息提供给证明方; 回答获取单元,被配置成从证明方获取与所选核实模式对应的回答信息;以及核实单元,被配置成基于所述消息、第一信息、第三信息、所述一组多次多元多项式F以及回答信息,核实证明方是否保持有向量S, 其中向量s是秘密密钥, 其中所述一组多次多元多项式F和向量y是公开密钥,并且 其中所述消息是通过利用公开密钥、第一信息、第三信息以及回答信息,执行预先为与所述回答信息对应的核实模式准备的运算而获得的信息。
15.根据权利要求1所述的信息处理设备, 其中,当重复多次执行算法时,所述数获取单元仅获取所生成的数一次,并且所述多项式计算单元仅执行所述分配处理一次,并且 其中所述多项式计算单元重复使用分配的系数。
16.根据权利要求1所述的信息处理设备,包括: 签名生成单元,被配置成利用在环K中定义的所述一组多次多元多项式F =(f1;..., fm)和签名密钥s e Kn,生成消息M的数字签名;以及 签名提供单元,被配置成将所述数字签名提供给保持所述一组多次多元多项式F和向量y = (fjs),...,fm(s))的核实方。
17.—种信息处理方法,包括: 获得用作构成一组多次多元多项式F = (f1;..., fffl)的各项的系数的数的步骤,所述数是利用预定函数从在执行公开密钥认证方案或数字签名方案的算法的实体之间共用的信息生成的,所述公开密钥认证方案或数字签名方案使用包括所述一组多次多元多项式F的公开密钥;和 通过将由所获取的数分配给所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数,计算变量的输入值的多次多元多项式的步骤, 其中,在计算变量的输入值的多次多元多项式的步骤中,跳过针对至少一个变量的输入值为O的项的计算处理。
18.一种使计算机实现以下功能的程序: 数获取功能,获得用作构成一组多次多元多项式F= (f1;..., fffl)的各项的系数的数,所述数是利用预定函数从在执行公开密钥认证方案或数字签名方案的算法的实体之间共用的信息生成的,所述公开密钥认证方案或数字签名方案使用包括所述一组多次多元多项式F的公开密钥;和 多项式计算功能,通过将由所获取的数分配给所述一组多次多元多项式F作为构成要素被包含在其中的多次多元多项式的系数,计算变量的输入值的多次多元多项式, 其中,所述多项式计算功能使得跳过针对至少一个变量的输入值为O的项的计算处 理。
【文档编号】H04L9/32GK104137471SQ201380010945
【公开日】2014年11月5日 申请日期:2013年2月8日 优先权日:2012年3月2日
【发明者】作本纮一, 白井太三, 神尾一也 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1