CN103782331A - 信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法 - Google Patents

信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法 Download PDF

Info

Publication number
CN103782331A
CN103782331A CN201280040699.3A CN201280040699A CN103782331A CN 103782331 A CN103782331 A CN 103782331A CN 201280040699 A CN201280040699 A CN 201280040699A CN 103782331 A CN103782331 A CN 103782331A
Authority
CN
China
Prior art keywords
message
information
verification
vectorial
certifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201280040699.3A
Other languages
English (en)
Inventor
樋渡玄良
作本紘一
白井太三
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN103782331A publication Critical patent/CN103782331A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Optimization (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Complex Calculations (AREA)

Abstract

提供一种签名产生设备,配备有:签名产生单元,用于基于在环(K)中定义并且以二次形式表示的二次多元多项式组(F=(f1,...,fm))和签名密钥(s∈Kn)产生文档(M)的电子签名;签名提供单元,用于电子签名提供给存储二次多元多项式组(F)和向量(y=(f1(s),...,fm(s)))的核查者。其中,在签名产生单元产生电子签名的处理期间,基于公式(g1(x1,x2)=x1 TA1x2+x2 TA1x1)计算定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)(其中l=1到m并且A1是n×n系数矩阵)。

Description

信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法
技术领域
本技术涉及一种信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法。
背景技术
随着信息处理技术和通信技术的迅速发展,文档已被迅速数字化而不管文档是公共的还是私人的。随着这种文档的数字化,许多个人和公司对电子文档的安全管理具有很大的兴趣。响应于这种兴趣的增加,已在各种领域中积极研究针对篡改行为(诸如,电子文档的窃取或伪造)的对策。关于电子文档的窃取,例如通过加密电子文档来确保安全性。另外,关于电子文档的伪造,例如通过使用电子签名来确保安全性。然而,当将要使用的加密或电子签名不具有较高的篡改抵抗能力时,无法确保足够的安全性。
电子签名被用于指定电子文档的作者。因此,电子签名应该能够仅由电子文档的作者产生。如果恶意第三方能够产生相同的电子签名,则这种第三方能够冒充电子文档的作者。也就是说,由恶意第三方伪造电子文档。关于用于防止这种伪造的电子签名的安全性,已表达各种意见。作为当前广泛使用的电子签名方案,例如已知RSA签名方案和DSA签名方案。
RSA签名方案采用“大的合数的素因式分解的难度(以下,素因式分解问题)”作为安全的基础。此外,DSA签名方案采用“解决离散对数问题的难度”作为安全的基础。这些基础基于:通过使用经典计算机高效地解决素因式分解问题和离散对数问题的算法不存在。也就是说,上述难度提出经典计算机的计算难度。然而,据称:当使用量子计算机时,能够高效地计算素因式分解问题和离散对数问题的解决方案。
类似于RSA签名方案和DSA签名方案,当前使用的许多电子签名方案和公钥验证方案也采用素因式分解问题或离散对数问题的难度作为安全的基础。因此,如果量子计算机被投入实际使用,则将会无法确保这种电子签名方案和公钥验证方案的安全性。因此,希望实现采用与能够由量子计算机容易地解决的问题(诸如,素因式分解问题和离散对数问题)不同的问题作为安全的基础的新的电子签名方案和公钥验证方案。作为无法由量子计算机容易地解决的问题,例如,存在与多元多项式相关的问题。
例如,作为采用多元多项式问题作为安全的基础的电子签名方案,已知基于Matsumoto-Imai(MI)密码术、隐藏域方程(HFE)密码术、Oil-Vinegar(OV)签名方案和训练变换方法(TTM)密码术的电子签名方案。例如,在下面的非专利文献1和2中公开了基于HFE的电子签名方案。
引用列表
非专利文献
非专利文献1:Jacques Patarin,Asymmetric Cryptography witha Hidden Monomial,CRYPTO1996,pp.45-60
非专利文献2:Patarin,J.,Courtois,N.,and Goubin,L.,QUARTZ,128-Bit Long Digital 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
发明内容
技术问题
如上所述,多元多项式问题是即使当使用量子计算机时也难以解决的问题(称为NP-hard问题)的例子。通常,使用由HFE等代表的多元多项式问题的公钥验证方案使用具有特殊陷门的多阶多元联立方程。例如,提供与x1,…,xn相关的多阶多元联立方程F(x1,…,xn)=y以及线性变换A和B,并且线性变换A和B被秘密地管理。在这种情况下,多阶多元联立方程F以及线性变换A和B是陷门。
知道陷门F、A和B的实体能够解与x1,…,xn相关的方程B(F(A(x1,…,xn)))=y'。另一方面,不知道陷门F、A和B的实体无法解与x1,…,xn相关的方程B(F(A(x1,…,xn)))=y'。通过使用这种机制,能够实现采用解多阶多元联立方程的难度作为安全的基础的公钥验证方案和电子签名方案。
如上所述,为了实现公钥验证方案或电子签名方案,必须准备满足B(F(A(x1,…,xn)))=y的特殊多阶多元联立方程。另外,在签名产生时,必须解多阶多元联立方程F。由于这个原因,可用的多阶多元联立方程F局限于相对容易可解的方程。也就是说,在以前的方案中,仅使用能够相对容易求解的三个函数(陷门)B、F和A的组合形式的多阶多元联立方程B(F(A(x1,…,xn)))=y,因此,难以确保足够的安全性。
考虑到上述情况而提出本技术,并且本技术旨在提供这样一种新的改进的信息处理设备、新的改进的签名产生设备、新的改进的信息处理方法、新的改进的签名产生方法和新的改进的程序:能够使用其高效求解的方式(陷门)未知的多阶多元联立方程实现高效并且具有高安全性的公钥验证方案或电子签名方案。
问题的解决方案
根据本技术的实施例,提供一种信息处理设备,包括:消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;响应提供单元,被构造为向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息。向量s是秘密密钥。所述一组二次多元多项式F和向量y是公钥。消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,提供一种信息处理设备,包括:信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;模式信息提供单元,被构造为向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和核查单元,被构造为基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s。向量s是秘密密钥。所述一组二次多元多项式F和向量y是公钥。消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。再现用于核查的消息,核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种信息处理设备,包括:消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;中间信息产生单元,被构造为使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息;中间信息提供单元,被构造为把第三信息提供给核查者;和响应提供单元,被构造为向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息。向量s是秘密密钥。所述一组多阶多元多项式F和向量y是公钥。消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种信息处理设备,包括:信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;信息提供单元,被构造为向提供消息的证明者提供随机选择的第一信息;中间信息获取单元,被构造为获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息;模式信息提供单元,被构造为向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和核查单元,被构造为基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s。向量s是秘密密钥。所述一组多阶多元多项式F和向量y是公钥。消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。当再现用于核查的消息时,核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种签名产生设备,包括:签名产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生文档M的电子签名;和签名提供单元,被构造为把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者。签名产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种签名核查设备,包括:信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s));和签名核查单元,被构造为针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性。签名核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的核查期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种信息处理方法,包括:基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;和向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息的步骤。向量s是秘密密钥。所述一组二次多元多项式F和向量y是公钥。消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。在产生消息的步骤中,当产生消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;从证明者获取与选择的核查模式对应的响应信息的步骤;和基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s的步骤。向量s是秘密密钥。所述一组二次多元多项式F和向量y是公钥。消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种信息处理方法,包括:基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息的步骤;把第三信息提供给核查者的步骤;和向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息的步骤。向量s是秘密密钥。所述一组多阶多元多项式F和向量y是公钥。消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。在产生消息的步骤中,当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;向提供消息的证明者提供随机选择的第一信息的步骤;获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息的步骤;向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;从证明者获取与选择的核查模式对应的响应信息的步骤;和基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s的步骤。向量s是秘密密钥。所述一组多阶多元多项式F和向量y是公钥。消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息。在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种签名产生方法,包括:基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生文档M的电子签名的步骤;和把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者的步骤。在产生电子签名的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,存在一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s))的信息处理设备执行的签名核查方法,所述签名核查方法包括:针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性的步骤。在核查合法性的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
根据本技术的另一实施例,提供一种计算机可读记录介质,该介质具有记录在它上面的上述程序。
根据本技术的实施例,提供一种计算机可读记录介质,该介质具有记录在它上面的上述程序。
发明的有益效果
根据上述本技术,可使用其高效求解方式(陷门)未知的多阶多元联立方程实现高效并且具有高安全性的公钥验证方案和电子签名方案。
附图说明
图1是用于描述与公钥验证方案相关的算法结构的解释示图。
图2是用于描述与电子签名方案相关的算法结构的解释示图。
图3是用于描述与n行程(pass)公钥验证方案相关的算法结构的解释示图。
图4是用于描述与3行程公钥验证方案相关的高效算法的解释示图。
图5是用于描述与3行程公钥验证方案相关的高效算法的并行化的解释示图。
图6是用于描述与5行程公钥验证方案相关的高效算法的例子的解释示图。
图7是用于描述与5行程公钥验证方案相关的高效算法的并行化的解释示图。
图8是用于描述把与3行程公钥验证方案相关的高效算法修改为电子签名方案的算法的方法的解释示图。
图9是用于描述把与5行程公钥验证方案相关的高效算法修改为电子签名方案的算法的方法的解释示图。
图10是用于描述能够执行根据本技术的每个实施例的算法的信息处理设备的硬件结构例子的解释示图。
具体实施方式
以下,将参照附图详细描述本发明的优选实施例。需要注意的是,在本说明书和附图中,具有基本上相同的功能和结构的元素由相同的标号表示,并且省略重复解释。
[描述的流程]
这里,将简要描述下面将要进行的本技术的实施例的描述的流程。首先,将参照图1描述公钥验证方案的算法结构。接下来,将参照图2描述电子签名方案的算法结构。接下来,将参照图3描述n行程公钥验证方案。
接下来,将参照图4和5描述与3行程公钥验证方案相关的算法结构的例子。接下来,将参照图6和7描述与5行程公钥验证方案相关的算法结构的例子。接下来,将参照图8和9描述把与3行程公钥验证方案和5行程公钥验证方案相关的高效算法修改为电子签名方案的算法的方法。
接下来,将参照图10描述能够实现根据本技术的第一实施例和第二实施例的每个算法的信息处理设备的硬件结构例子。最后,将简要描述本实施例的技术精神和从技术精神获得的操作有益效果的概述。
(详细章节)
1.介绍
1-1:公钥验证方案的算法
1-2:电子签名方案的算法
1-3:N行程公钥验证方案
2.与3行程公钥验证方案相关的算法结构
2-1:特定算法结构的例子
2-2:并行化算法结构的例子
3.与5行程公钥验证方案相关的算法结构
3-1:特定算法结构的例子(图6)
3-2:并行化算法结构的例子(图7)
4:电子签名方案的修改
4-1:把3行程公钥验证方案修改为电子签名方案
4-2:把5行程公钥验证方案修改为电子签名方案
5:双线性项G的高效计算方法
5-1:原理的描述
5-2:应用例子#1(应用于3行程方案)
5-3:应用例子#2(应用于5行程方案)
5-4:应用例子#3(应用于电子签名方案)
6:硬件结构的例子
7:总结
<1.介绍>
这里的实施例涉及一种使其安全性基于解多阶多元联立方程的难度的公钥验证方案和电子签名方案。然而,这里的实施例不同于诸如HFE电子签名方案的相关技术的方法,并且涉及一种使用缺少高效求解的方式(陷门)的多阶多元联立方程的公钥验证方案和电子签名方案。首先,将简要概述公钥验证方案的算法、电子签名方案的算法和n行程公钥验证方案。
[1-1:公钥验证方案的算法]
首先,将参照图1描述公钥验证方案的算法的概述。图1是用于描述公钥验证方案的算法结构的解释示图。
当一个人(证明者)通过使用公钥pk和秘密密钥sk来使另一个人(核查者)相信她是证明者自己时,使用公钥验证。例如,使核查者B知道证明者A的公钥pkA。另一方面,证明者A的秘密密钥skA由证明者A秘密地管理。根据公钥验证方案,知道与公钥pkA对应的秘密密钥skA的人被视为证明者A自己。
为了使证明者A使用公钥验证设置向核查者B证明她是证明者A自己,证明者A经交互协议向核查者B提供指示她知道与公钥pkA对应的秘密密钥skA的证据。指示证明者A知道秘密密钥skA的证据随后被提供给核查者B,并且在核查者B能够确认该证据的情况下,证明者A的有效性(证明者A是她自己)被证明。
然而,公钥验证设置需要下面的条件以便确保安全。
第一条件是“尽可能降低由不具有秘密密钥sk的伪造者在执行交互协议时确立伪造的可能性”。满足这个第一条件被称为“可靠性”。换句话说,可靠性意味着:“不具有秘密密钥sk的伪造者无法以不可忽略的可能性在交互协议的执行期间确立伪造”。第二条件是:“即使执行交互协议,关于证明者A的秘密密钥skA的信息也根本不被泄露给核查者B”。满足这个第二条件被称为“零知识”。
安全地执行公钥验证涉及使用既表现出可靠性又表现出零知识的交互协议。如果假设使用缺少可靠性和零知识的交互协议执行验证过程,则将会存在一定的错误核查的可能性和一定的密钥信息泄露的可能性,因此,即使验证过程自身成功完成,也将无法证明证明者的有效性。因此,如何确保会话协议的可靠性和零知识的问题很重要。
(模型)
在公钥验证方案的模型中,存在两个实体,即证明者和核查者,如图1中所示。证明者通过使用密钥产生算法Gen产生对于证明者而言独一无二的一组公钥pk和秘密密钥sk。随后,证明者通过使用通过使用密钥产生算法Gen产生的所述一组秘密密钥sk和公钥pk与核查者执行交互协议。在这一点,证明者通过使用证明者算法P执行交互协议。如上所述,在交互协议中,证明者通过使用证明者算法P向核查者证明她拥有秘密密钥sk。
另一方面,核查者通过使用核查者算法V执行交互协议,并核查证明者是否拥有与该证明者已公开的公钥对应的秘密密钥。也就是说,核查者是核查证明者是否拥有与公钥对应的秘密密钥的实体。如上所述,公钥验证方案的模型由两个实体(即,证明者和核查者)以及三种算法(即,密钥产生算法Gen、证明者算法P和核查者算法V)构成。
另外,在下面的描述中使用措辞“证明者”和“核查者”,但这些措辞严格地表示实体。因此,执行密钥产生算法Gen和证明者算法P的对象是与实体“证明者”对应的信息处理设备。类似地,执行核查者算法V的对象是信息处理设备。这些信息处理设备的硬件结构例如如图10中所示。也就是说,密钥产生算法Gen、证明者算法P和核查者算法V由CPU902基于记录在ROM904、RAM906、存储单元920、可移动记录介质928等的程序执行。
(密钥产生算法Gen)
密钥产生算法Gen由证明者使用。密钥产生算法Gen是用于产生对于证明者而言独一无二的一组公钥pk和秘密密钥sk的算法。由密钥产生算法Gen产生的公钥pk被公开。另外,公开的公钥pk由核查者使用。另一方面,由密钥产生算法Gen产生的秘密密钥sk由证明者秘密地管理。由证明者秘密地管理的秘密密钥sk被用于向核查者证明证明者拥有与公钥pk对应的秘密密钥sk。在形式上,密钥产生算法Gen作为算法被表示为以下的公式(1),该算法采用安全参数1λ(λ是0或更大的整数)作为输入并输出秘密密钥sk和公钥pk。
[数学表达式1]
(sk,pk)←Gen(1λ)...(1)
(证明者算法P)
证明者算法P由证明者使用。证明者算法P是用于向核查者证明证明者拥有与公钥pk对应的秘密密钥sk的算法。换句话说,证明者算法P是采用公钥pk和秘密密钥sk作为输入并执行交互协议的算法。
(核查者算法V)
核查者算法V由核查者使用。核查者算法V是在会话协议期间核查证明者是否拥有与公钥pk对应的秘密密钥sk的算法。核查者算法V是接受公钥pk作为输入并根据会话协议的执行结果输出0或1(1位)的算法。在这一点,核查者在核查者算法V输出0的情况下判定证明者无效,并且在核查者算法V输出1的情况下判定证明者有效。在形式上,核查者算法V被表示为以下的公式(2)。
[数学表达式2]
0/1←V(pk)…(2)
如上所述,实现有意义的公钥验证方案涉及使交互协议满足可靠性和零知识的两个条件。然而,证明证明者拥有秘密密钥sk涉及:证明者执行取决于秘密密钥sk的过程,并且在向核查者通知结果之后,使核查者基于通知的内容执行核查。执行取决于秘密密钥sk的过程以保证可靠性。同时,关于秘密密钥sk的信息不应该被泄露给核查者。由于这个原因,巧妙地设计以上密钥产生算法Gen、证明者算法P和核查者算法V以满足这些要求。
前述内容因此概述了公钥验证方案中的算法。
[1-2:电子签名方案的算法]
接下来,将参照图2概述电子签名方案的算法。图2是概述电子签名方案的算法的解释示图。
与纸质文档不同,无法以物理方式对数字化的数据进行签名或者把图章附加到数字化的数据。由于这个原因,证明数字化的数据的创建者涉及产生类似于以物理方式对纸质文档进行签名或者把图章附加到纸质文档的效果的电子设置。这种设置是电子签名。电子签名表示这样的设置:使给定数据与仅数据的创建者知道的签名数据关联,把签名数据提供给接收者,并且在接收者端核查该签名数据。
(模型)
如图2中所示,在电子签名方案的模型中存在签名者和核查者的两个身份。另外,电子签名方案的模型包括三种算法:密钥产生算法Gen、签名产生算法Sig和签名核查算法Ver。
签名者使用密钥产生算法Gen产生对于签名者而言独一无二的一组签名密钥sk和核查密钥pk。签名者还使用签名产生算法Sig产生附加到消息M的电子签名q。换句话说,签名者是把电子签名附加到消息M的实体。同时,核查者使用签名核查算法Ver核查附加到消息M的电子签名。换句话说,核查者是核查电子签名q以便确认消息M的创建者是否是签名者的实体。
需要注意的是,虽然在以下的描述中使用术语“签名者”和“核查者”,但这些术语最终表示实体。因此,执行密钥产生算法Gen和签名产生算法Sig的主体是与“签名者”实体对应的信息处理设备。类似地,执行签名核查算法Ver的主体是信息处理设备。这些信息处理设备的硬件结构例如如图10中所示。换句话说,密钥产生算法Gen、签名产生算法Sig和签名核查算法Ver由诸如CPU902的装置基于记录在诸如ROM904、RAM906、存储单元920或可移动记录介质928上的程序执行。
(密钥产生算法Gen)
密钥产生算法Gen由签名者使用。密钥产生算法Gen是产生对于签名者而言独一无二的一组签名密钥sk和核查密钥pk的算法。由密钥产生算法Gen产生的核查密钥pk被公开。同时,签名者使由密钥产生算法Gen产生的签名密钥sk保密。然后,签名密钥sk被用于产生附加到消息M的电子签名q。例如,密钥产生算法Gen接受安全参数1p(其中p是等于或大于0的整数)作为输入并输出签名密钥sk和核查密钥pk。在这种情况下,密钥产生算法Gen可在形式上被表示为下面的公式(3):
[数学表达式3]
(sk,pk)←Gen(1λ)
...(3)
(签名产生算法Sig)
签名产生算法Sig由签名者使用。签名产生算法Sig是产生附加到消息M的电子签名q的算法。签名产生算法Sig是接受签名密钥sk和消息M作为输入并输出电子签名q的算法。签名产生算法Sig可在形式上被表示为下面的公式(4):
[数学表达式4]
σ←Sig(sk,M)
...(4)
(签名核查算法Ver)
签名核查算法Ver由核查者使用。签名核查算法Ver是核查电子签名q是否是消息M的有效电子签名的算法。签名核查算法Ver是接受签名者的核查密钥pk、消息M和电子签名q作为输入并输出0或1(1位)的算法。签名核查算法Ver可在形式上被表示为下面的公式(5)。在这一点,核查者在签名核查算法Ver输出0的情况(核查密钥pk拒绝消息M和电子签名q的情况)下判定电子签名q无效,并且在签名核查算法Ver输出1的情况(核查密钥pk接受消息M和电子签名q的情况)下判定电子签名q有效。
[数学表达式5]
0/1←Ver(pk,M,σ)
...(5)
前述内容因此概述了电子签名方案中的算法。
[1-3:N行程公钥验证方案]
接下来,将参照图3描述n行程公钥验证方案。图3是表示n行程公钥验证方案的解释示图。
如上所述,公钥验证方案是在交互协议期间向核查者证明证明者拥有与公钥pk对应的秘密密钥sk的验证方案。另外,交互协议必须满足可靠性和零知识的两个条件。由于这个原因,如图3中所示,在交互协议期间,证明者和核查者在执行各处理的同时n次交换信息。
在n行程公钥验证方案的情况下,证明者使用证明者算法P执行处理(操作#1),并且把信息T1发送给核查者。随后,核查者使用核查者算法V执行处理(操作#2),并且把信息T2发送给证明者。对于k=3到n,连续地执行这种执行和处理和信息Tk的发送,并且最后,执行处理(操作#n+1)。以这种方式n次发送和接收信息因此被称为“n行程”公钥验证方案。
前述内容因此描述了n行程公钥验证方案。
<2.与3行程公钥验证方案相关的算法结构>
以下,将描述与3行程公钥验证方案相关的算法。需要注意的是,在下面的描述中,3行程公钥验证方案也可在一些情况下被称为“3行程方案”。
[2-1.特定算法结构的例子(图4)]
首先,将参照图4介绍与3行程方案相关的特定算法结构的例子。图4是用于描述与3行程方案相关的特定算法结构的解释示图。这里,将描述一组二次多项式(f1(x),...,fm(x))被用作公钥pk的一部分的情况。这里,假设二次多项式fi(x)被表示为下面的公式(6)。此外,向量(x1,...,xn)被表示为x,并且一组二次多元多项式(f1(x),...,fm(x))被表示为多元多项式F(x)。
[数学表达式6]
f i ( x 1 , . . . , x n ) = &Sigma; j , k a ijk x j x k + &Sigma; j b ij x j &CenterDot; &CenterDot; &CenterDot; ( 6 )
此外,所述一组二次多项式(f1(x),...,fm(x))能够被表示为下面的公式(7)。此外,A1,...,Am是n×n矩阵。另外,b1,...,bm中的每一个是n×1向量。
[数学表达式7]
F ( x ) = f 1 ( x ) &CenterDot; &CenterDot; &CenterDot; f m ( x ) = x T A 1 x + b 1 T x &CenterDot; &CenterDot; &CenterDot; x T A m x + b m T x &CenterDot; &CenterDot; &CenterDot; ( 7 )
当使用这个表达式时,多元多项式F能够被表示为下面的公式(8)和公式(9)。从下面的公式(10),能够容易地确认满足这个表达式。
[数学表达式8]
F(x+y)=F(x)+F(y)+G(x,y)
...(8)
G ( x , y ) = y T ( A 1 T + A 1 ) x &CenterDot; &CenterDot; &CenterDot; y T ( A m T + A m ) x &CenterDot; &CenterDot; &CenterDot; ( 9 )
f l ( x + y ) = ( x + y ) T A l ( x + y ) + b l T ( x + y ) = x T A l x + x T A l y + y T A l x + y T A l y + b l T x + b l T y = f l ( x ) + f l ( y ) + x T A l y + y T A l x = f l ( x ) + f l ( y ) + x T ( A l T ) T y + y T A l x = f l ( x ) + f l ( y ) + ( A l T x ) T y + y T A l x = f l ( x ) + f l ( y ) + y T ( A l T x ) + y T A l x = f l ( x ) + f l ( y ) + y T ( A l T + A l ) x &CenterDot; &CenterDot; &CenterDot; ( 10 )
当以这种方式把F(x+y)分成取决于x的第一部分、取决于y的第二部分和既取决于x又取决于y的第三部分时,与第三部分对应的项G(x,y)变为相对于x和y是双线性的。以下,项G(x,y)也被称为双线性项。使用这个性质能够实现高效算法的构造。
例如,使用作为集合Kn的元素的向量t0和作为集合Km的元素的向量e0把用于掩蔽多元多项式F(x+r)的多元多项式F1(x)表示为F1(x)=G(x,t0)+e0。在这种情况下,多元多项式F(x+r0)和G(x)之和被表示为以下的公式(11)。这里,当t1=r0+t0并且e1=F(r0)+e0时,多元多项式F2(x)=F(x+r0)+F1(x)能够由作为集合Kn的元素的向量t1和作为集合Km的元素的向量e1表示。由于这个原因,当设置F1(x)=G(x,t0)+e0时,能够通过使用Kn中的向量和Km中的向量来表示F1和F2,因此,可实现通信所需的数据大小较小的高效算法。
[数学表达式9]
F(x+r0)+F1(x)
=F(x)+F(r0)+G(x,r0)+G(x,f0)+e0
=F(x)+G(x,r0+f0)+F(r0)+e0
...(11)
另外,根本不从F2(或F1)泄露关于r0的信息。例如,即使当给出e1和t1(或者e0和t0)时,只要e0和t0(或者e1和t1)是未知的,就根本不知道关于r0的信息。因此,确保了零知识。以下,将描述基于前述逻辑构造的3行程方案的算法。将在这里描述的3行程方案的算法由将在以下描述的密钥产生算法Gen、证明者算法P和核查者算法V构成。
(密钥产生算法Gen)
密钥产生算法Gen产生在环k中定义的m个多元多项式f1(x1,...,xn),...,fm(x1,...,xn)和作为集合Kn的元素的向量s=(s1,...,sn)。接下来,密钥产生算法Gen计算y=(y1,...,ym)←(f1(s),...,fm(s))。此外,密钥产生算法Gen设置公钥pk中的(f1(x1,...,xn),...,fm(x1,...,xn))并且设置s作为秘密密钥。以下,向量(x1,...,xn)被表示为x,并且一组多元多项式(f1(x),...,fm(x))被表示为F(x)。
(证明者算法P、核查者算法V)
以下,将参照图4描述在交互协议期间由证明者算法P执行的过程和由核查者算法V执行的过程。在前述交互协议期间,证明者根本不把关于秘密密钥s的信息泄露给核查者并且向核查者表示“她自己知道满足y=F(s)的s”。另一方面,核查者核查证明者是否知道满足y=F(s)的s。假设公钥pk被公开给核查者。此外,假设秘密密钥s由证明者秘密地管理。以下,将参照图4中示出的流程图进行描述。
操作#1:
如图4中所示,证明者算法P首先随机产生作为集合Kn的元素的向量r0、t0和作为集合Km的元素的向量e0。随后,证明者算法P计算r1<-s-r0。这项计算等同于利用向量r0掩蔽秘密密钥s。另外,证明者算法P计算t1<-r0-t0。随后,证明者算法P计算e1<-F(r0)-e0
操作#1(继续):
随后,证明者算法P计算c0<-H(r1,G(t0,r1)+e0)。随后,证明者算法P计算c1<-H(t0,e0)。随后,证明者算法P计算c2<-H(t1,e1)。在操作#1中产生的消息(c0,c1,c2)被发送给核查者算法V。
操作#2:
在接收到消息(c0,c1,c2)时,核查者算法V从三种核查模式之中选择使用哪种核查模式。例如,核查者算法V可从代表核查模式的三个数值{0,1,2}之中选择数值,并在盘问Ch中设置选择的数值。这个盘问Ch被发送给证明者算法P。
操作#3:
在接收到盘问Ch时,证明者算法P响应于接收的盘问Ch产生发送给核查者算法V的响应Rsp。在Ch=0的情况下,证明者算法P产生响应Rsp=(r0,t1,e1)。在Ch=1的情况下,证明者算法P产生响应Rsp=(r1,t0,e0)。在Ch=2的情况下,证明者算法P产生响应Rsp=(r1,t1,e1)。在操作#3中产生的响应Rsp被发送给核查者算法V。
操作#4:
在接收到响应Rsp时,核查者算法V使用接收的响应Rsp执行下面的核查过程。
在Ch=0的情况下,核查者算法V核查c1=H(r0-t1,F(r0)-e1)的等式是否成立。另外,核查者算法V核查c2=H(t1,e1)的等式是否成立。核查者算法V在这些核查全都成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
在Ch=1的情况下,核查者算法V核查c0=H(r1,G(t0,r1)+e0)的等式是否成立。另外,核查者算法V核查c1=H(t0,e0)的等式是否成立。核查者算法V在这些核查全都成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
在Ch=2的情况下,核查者算法V核查c0=H(r1,y–F(r1)–G(t1,r1)–e1)的等式是否成立。另外,核查者算法V核查c2=H(t1,e1)的等式是否成立。核查者算法V在这些核查全都成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
以上描述了与3行程方案相关的高效算法结构的例子。
(2-2:并行化算法结构的例子(图5))
接下来,将参照图5描述使图4中示出的3行程方案的算法并行化的方法。然而,将省略密钥产生算法Gen的结构的进一步描述。
事实上,应用以上会话协议使得可使成功伪造的可能性保持在2/3或更小。因此,两次执行会话协议使得可使成功伪造的可能性保持在(2/3)2或更小。另外,如果N次执行会话协议,则成功伪造的可能性变为(2/3)N或更小,并且如果N被设置为足够大的数字(例如,N=140),则成功伪造的可能性变小至可以忽略。
例如,可想到的多次执行会话协议的方法包括:串行方法,顺序地多次重复消息、盘问和响应的交换;和并行方法,在单次交换中交换多个消息、盘问和响应。此外,还可设想组合串行方法和并行方法的混合类型方法。这里,现在将参照图5描述并行地执行以上与3行程方案相关的交互协议的算法(以下,称为并行化算法)。
操作#1:
如图5中所述,证明者算法P首先针对i=1到N执行下面的过程(1)至(6)。
过程(1):证明者算法P随机产生作为集合Kn的元素的向量r0i、t0i和作为集合Km的元素的向量e0i
过程(2):证明者算法P计算r1i<-s-r0i。这项计算等同于利用向量r0i掩蔽秘密密钥s。另外,证明者算法P计算t1i<-r0i+t0i
过程(3):证明者算法P计算e1i<-F(r0i)-e0i
过程(4):证明者算法P计算c0i<-H(r1i,G(r1i,t0i)+e0i)。
过程(5):证明者算法P计算c1i<-H(t0i,e0i)。
过程(6):证明者算法P计算c2i<-H(t1i,e1i)。
操作#1(继续):
在针对i=1到N执行以上过程(1)至(6)之后,证明者算法P计算Cmt<-H(c01,c11,c21,...,c0N,c1N,c2N)。在操作#1中产生的哈希值Cmt被发送给核查者算法V。以这种方式,消息(c01,c11,c21,...,c0N,c1N,c2N)在被发送给核查者算法V之前被转换成哈希值,因此能够实现通信量的减小。
操作#2:
在接收到哈希值Cmt时,针对i=1到N中的每一个,核查者算法V从三种核查模式之中选择使用哪种核查模式。例如,核查者算法V可针对i=1到N中的每一个从代表核查模式的三个数值{0,1,2}之中选择数值,并在盘问Chi中设置选择的数值。盘问Ch1,...,ChN被发送给证明者算法P。
操作#3:
在接收到盘问Ch1,...,ChN时,证明者算法P响应于接收的盘问Ch1,...,ChN中的每一个产生发送给核查者算法V的响应Rsp1,...,RspN。在Chi=0的情况下,证明者算法P产生响应Rspi=(r0i,t1i,e1i,c0i)。在Chi=1的情况下,证明者算法P产生响应Rspi=(r1i,t0i,e0i,c2i)。在Chi=2的情况下,证明者算法P产生响应Rspi=(r1i,t1i,e1i,c1i)。
在操作#3中产生的响应Rsp1,...,RspN被发送给核查者算法V。
操作#4:
在接收到响应Rsp1,...,RspN时,核查者算法V使用接收的响应Rsp1,...,RspN针对i=1到N执行下面的过程(1)至(3)。这里,核查者算法V针对Chi=0的情况执行过程(1),在Chi=1的情况下执行过程(2),并且在Chi=2的情况下执行过程(3)。
过程(1):在Chi=0的情况下,核查者算法V从Rspi检索(r0i,t1i,e1i,c0i)。随后,核查者算法V计算c1i=H(r0i-t1i,F(r0i)-e1i)。另外,核查者算法V计算c2i=H(t1i,e1i)。核查者算法V随后存储(c0i,c1i,c2i)。
过程(2):在Chi=1的情况下,核查者算法V从Rspi检索(r1i,t0i,e0i,c2i)。随后,核查者算法V计算c0i=H(r1i,G(t0i,r1i)+e0i)。另外,核查者算法V计算c1i=H(t0i,e0i)。核查者算法V随后存储(c0i,c1i,c2i)。
过程(3):在Chi=2的情况下,核查者算法V从Rspi检索(r1i,t1i,e1i,c1i)。随后,核查者算法V计算c0i=H(r1i,y–F(r1i)–G(t1i,r1i)–e1i)。另外,核查者算法V计算c2i=H(t1i,e1i)。核查者算法V随后存储(c0i,c1i,c2i)。
在针对i=1到N执行以上过程(1)至(3)之后,核查者算法V核查Cmt=H(c01,c11,c21,...,c0N,c1N,c2N)的等式是否成立。核查者算法V在核查成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
以上描述了与3行程方案相关的并行化高效算法的结构的例子。
<3.与5行程公钥验证方案相关的算法结构>
接下来,将描述与5行程公钥验证方案相关的算法。需要注意的是,在下面的描述中,5行程公钥验证方案也可在一些情况下被称为“5行程方案”。
在3行程方案的情况下,在每次交互协议,错误核查的可能性是2/3。然而,在5行程方案的情况下,在每次交互协议的错误核查的可能性是1/2+1/q。这里,q是将要使用的环的阶。因此,当环的阶足够大时,每次5行程方案的错误核查的可能性能够减小,因此,通过把交互协议执行较少次数能够充分减小错误核查的可能性。
例如,当希望错误核查的可能性等于或小于1/2n时,交互协议必须在3行程方案中被执行n/(log3-1)=1.701n次或更多次。另一方面,当希望错误核查的可能性等于或小于1/2n时,交互协议必须在5行程方案中被执行n/(1-log(1+1/q))次或更多次。因此,当q=24时,与在3行程方案中相比,在5行程方案中实现相同的安全级别所需的通信量较小。
[3-1.特定算法结构的例子(图6)]
首先,将参照图6介绍与5行程方案相关的特定算法结构的例子。图6是用于描述与5行程方案相关的特定算法结构的解释示图。这里,将描述一组二次多项式(f1(x),...,fm(x))被用作公钥pk的一部分的情况。这里,假设二次多项式fi(x)被表示为下面的公式(6)。此外,向量(x1,...,xn)被表示为x,并且一组二次多元多项式(f1(x),...,fm(x))被表示为多元多项式F(x)。
如与3行程方案相关的高效算法中一样,两个向量(即,作为集合Kn的元素的向量t0和作为集合Km的元素的向量e0)被用于把多元多项式F1(x)表示为F1(x)=G(x,t0)+e0,多元多项式F1(x)被用于掩蔽多元多项式F(x+r0)。当使用这个表达式时,能够针对多元多项式F(x+r0)获得在下面的公式(12)中表示的关系。
[数学表达式10]
ChA·F(x+r0)+F1(x)
=ChA·F(x)+ChA·F(r0)+ChA·G(x,r0)+G(x,t0)+e0
=ChA·F(x)+G(x,ChA·r0+t0)+ChA·F(r0)+e0
...(12)
由于这个原因,当t1=ChA·r0+t0并且e1=ChA·F(r0)+e0时,在掩蔽之后的多元多项式F2(x)=ChA·F(x+r0)+F1(x)也能够由两个向量(即,作为集合Kn的元素的向量t1和作为集合Km的元素的向量e1)表示。由于这个原因,当设置F1(x)=G(x,t0)+e0时,能够通过使用Kn中的向量和Km中的向量来表示F1和F2,因此,可实现通信所需的数据大小较小的高效算法。
另外,根本不从F2(或F1)泄露关于r0的信息。例如,即使当给出e1和t1(或者e0和t0)时,只要e0和t0(或者e1和t1)是未知的,就根本不知道关于r0的信息。因此,确保了零知识。以下,将描述基于前述逻辑构造的5行程方案的算法。将在这里描述的5行程方案的算法由将在以下描述的密钥产生算法Gen、证明者算法P和核查者算法V构成。
(密钥产生算法Gen)
密钥产生算法Gen产生在环k中定义的多元多项式f1(x1,...,xn),...,fm(x1,...,xn)和作为集合Kn的元素的向量s=(s1,...,sn)。接下来,密钥产生算法Gen计算y=(y1,...,ym)←(f1(s),...,fm(s))。此外,密钥产生算法Gen设置公钥pk中的(f1...,fm,y)并且设置s作为秘密密钥。以下,向量(x1,...,xn)被表示为x,并且一组多元多项式(f1(x),...,fm(x))被表示为F(x)。
(证明者算法P、核查者算法V)
以下,将参照图6描述在交互协议期间由证明者算法P执行的过程和由核查者算法V执行的过程。在前述交互协议期间,证明者根本不把关于秘密密钥s的信息泄露给核查者并且向核查者表示“她自己知道满足y=F(s)的s”。另一方面,核查者核查证明者是否知道满足y=F(s)的s。假设公钥pk被公开给核查者。此外,假设秘密密钥s由证明者秘密地管理。以下,将参照图6中示出的流程图进行描述。
操作#1:
如图6中所示,证明者算法P随机产生作为集合Kn的元素的向量r0、作为集合Kn的元素的向量t0和作为集合Km的元素的向量e0。随后,证明者算法P计算r1<-s-r0。这项计算等同于利用向量r0掩蔽秘密密钥s。随后,证明者算法P计算向量r0、t0、e0的哈希值c0。也就是说,证明者算法P计算c0<-H(r0,t0,e0)。随后,证明者算法P产生G(t0,r1)+e0和r1的哈希值c1。也就是说,证明者算法P计算c0<-H(r1,G(t0,r1)+e0)。在操作#1中产生的消息(c0,c1)被发送给核查者算法V。
操作#2:
在接收到消息(c0,c1)时,核查者算法V随机从q个环K的原点选择一个数字ChA并且把选择的数字ChA发送给证明者算法P。
操作#3:
在接收到数字ChA时,证明者算法P计算t1<-ChA·r0-t0。另外,证明者算法P计算e1<-ChA·F(r0)-e0。证明者算法P把t1和e1发送给核查者算法V。
操作#4:
在接收到t1和e1时,核查者算法V从两种核查模式之间选择使用哪种核查模式。例如,核查者算法V可从代表核查模式的两个数值{0,1}之间选择数值,并在盘问ChB中设置选择的数值。这个盘问ChB被发送给证明者算法P。
操作#5:
在接收到盘问ChB时,证明者算法P响应于接收的盘问ChB产生发送给核查者算法V的响应Rsp。在ChB=0的情况下,证明者算法P产生响应Rsp=r0。在ChB=1的情况下,证明者算法P产生响应Rsp=r1。在操作#5中产生的响应Rsp被发送给核查者算法V。
操作#6:
在接收到响应Rsp时,核查者算法V使用接收的响应Rsp执行下面的核查过程。
在ChB=0的情况下,核查者算法V执行r0<-Rsp。然后,核查者算法V核查c0=H(r0,ChA·r0-t1,ChA·F(r0)-e1)的等式是否成立。核查者算法V在这些核查全都成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
在ChB=1的情况下,核查者算法V执行r1<-Rsp。然后,核查者算法V核查c1=H1(r1,ChA·(y-F(r1)-G(t1,r1)-e1)的等式是否成立。核查者算法V在这些核查全都成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
以上描述了与5行程方案相关的高效算法结构的例子。
(3-2:并行化算法结构的例子(图7))
接下来,将参照图7描述使图6中示出的5行程方案的算法并行化的方法。然而,将省略密钥产生算法Gen的结构的进一步描述。
如上所述,应用与5行程方案相关的以上交互协议使得可使成功伪造的可能性保持在(1/2+1/q)或更小。因此,两次执行交互协议使得可使成功伪造的可能性保持在(1/2+1/q)2或更小。另外,如果N次执行交互协议,则成功伪造的可能性变为(1/2+1/q)N或更小,并且如果N被设置为足够大的数字(例如,N=80),则成功伪造的可能性变小至可以忽略。
例如,可想到的多次执行交互协议的方法包括:串行方法,顺序地多次重复消息、盘问和响应的交换;和并行方法,在单次交换中交换多个消息、盘问和响应。此外,还可设想组合串行方法和并行方法的混合类型方法。这里,现在将描述并行地执行以上与5行程方案相关的交互协议的算法(以下,称为并行化算法)。
操作#1:
如图7中所述,证明者算法P首先针对i=1到N执行下面的过程(1)至(4)。
过程(1):证明者算法P随机产生作为集合Kn的元素的向量r0i、t0i和作为集合Km的元素的向量e0i
过程(2):证明者算法P计算r1i<-s-r0i。这项计算等同于利用向量r0i掩蔽秘密密钥s。
过程(3):证明者算法P计算c0i<-H(r0i,t0i,e0i)。
过程(4):证明者算法P计算c1i<-H(r1i,G(t0i,r1i)+e0i)。
在针对i=1到N执行以上过程(1)至(4)之后,证明者算法P执行哈希值Cmt<-H(c01,c11,...,c0N,c1N)。在操作#1中产生的哈希值Cmt被发送给核查者算法V。
操作#2:
在接收到哈希值Cmt时,核查者算法V针对i=1到N随机从q个环K的原点选择一个数字ChAi并且把选择的数字ChAi(i=1到N)发送给证明者算法P。
操作#3:
在接收到数字ChAi(i=1到N)时,证明者算法P针对i=1到N计算t1i<-ChAi·r0i-t0i。另外,证明者算法P针对i=1到N计算e1i<-ChAi·F(r0i)-e0i。然后,证明者算法P把t11,...,t1N和e11,...,e1N发送给核查者算法V。
操作#4:
在接收到t11,...,t1N和e11,...,e1N时,核查者算法V针对i=1到N从两种核查模式之间选择使用哪种核查模式。例如,核查者算法V可从代表核查模式的两个数值{0,1}之间选择数值,并在盘问ChBi中设置选择的数值。这个盘问ChBi(i=1到N)被发送给证明者算法P。
操作#5:
在接收到盘问ChBi(i=1到N)时,证明者算法P针对i=1到N响应于接收的盘问ChBi产生发送给核查者算法V的响应Rspi。在ChBi=0的情况下,证明者算法P产生响应Rspi=(r0i,c1i)。在ChBi=1的情况下,证明者算法P产生响应Rspi=(r1i,c0i)。在操作#5中产生的响应Rspi(i=1到N)被发送给核查者算法V。
操作#6:
在接收到响应Rspi(i=1到N)时,核查者算法V使用接收的响应Rspi(i=1到N)执行下面的过程(1)和(2)。
过程(1):在ChBi=0的情况下,核查者算法V执行(r0i,c1i)<-Rspi。然后,核查者算法V计算c0i=H(r0i-ChAi·r0i–t1i,ChAi·F(r0i)-e1i)。核查者算法V随后存储(c0i,c1i)。
过程(2):在ChBi=1的情况下,核查者算法V执行(r1i,c0i)<-Rspi。然后,核查者算法V计算c1i=H(r1i-ChAi·(y-F(r1i))-G(t1i,r1i)-e1i)。核查者算法V随后存储(c0i,c1i)。
在针对i=1到N执行过程(1)和(2)之后,核查者算法V核查Cmt=H(c01,c11,...,c0N,c1N)的等式是否成立。核查者算法V在这些核查成功的情况下输出值1以指示验证成功,并且在核查失败的情况下输出值0以指示验证失败。
以上描述了与5行程方案相关的并行化高效算法的结构的例子。
<4:电子签名方案的修改>
这里,将介绍把前述公钥验证方案修改为电子签名方案的方法。
当公钥验证方案的模型中的证明者与电子签名方案中的签名者匹配时,能够容易地理解对电子签名方案的模型的近似,因为仅证明者能够说服核查者。基于这种思想,将描述把上述公钥验证方案修改为电子签名方案的方法。
[4-1:把3行程公钥验证方案修改为电子签名方案(图8)]
首先,将描述把3行程的公钥验证方案修改为电子签名方案。
如图8中所示,利用三次的交互和四次操作(即,操作#1至操作#4)表示与3行程方案相关的高效算法(例如,参见图5)。
操作#1包括产生ai=(r0i,t0i,e0i,r1i,t1i,e1i,c0i,c1i,c2i)的过程(1)和计算Cmt<-H(c01,c11,c21,...,c0N,c1N,c2N)的过程(2)。由证明者算法P在操作#1中产生的Cmt被发送给核查者算法V。
操作#2包括选择Ch1,...,ChN的过程。由核查者算法V在操作#2中选择的Ch1,...,ChN被发送给证明者算法P。
操作#3包括使用Ch1,...,ChN和a1...,aN产生Rsp1,...,RspN的过程。这个过程被表示为Rspi<-Select(Chi,ai)。由证明者算法P在操作#3中产生的Rsp1,...,RspN被发送给核查者算法V。
操作#4包括使用Ch1,...,ChN和Rsp1,...,RspN再现c01,c11,c21,...,c0N,c1N,c2N的过程(1)和使用再现的c01,c11,c21,...,c0N,c1N,c2N核查Cmt=H(c01,c11,c21,...,c0N,c1N,c2N)的过程(2)。
利用前述操作#1至操作#4表示的公钥验证方案的算法被修改为图8中示出的签名产生算法Sig和签名核查算法Ver。
(签名产生算法Sig)
首先,将描述签名产生算法Sig的结构。签名产生算法Sig包括下面的过程(1)至(5)。
过程(1):签名产生算法Sig产生ai=(r0i,t0i,e0i,r1i,t1i,e1i,c0i,c1i,c2i)。
过程(2):签名产生算法Sig计算Cmt<-H(c01,c11,c21,...,c0N,c1N,c2N)。
过程(3):签名产生算法Sig计算(Ch1,...,ChN)<-H(M,Cmt)。这里,M是附加有签名的文档。
过程(4):签名产生算法Sig计算Rspi<-Select(Chi,ai)。
过程(5):签名产生算法Sig设置(Cmt,Rsp1,...,RspN)作为签名。
(签名核查算法Ver)
接下来,将描述签名核查算法Ver的结构。签名核查算法Ver包括下面的过程(1)至(3)。
过程(1):签名核查算法Ver计算(Ch1,...,ChN)<-H(M,Cmt)。
过程(2):签名核查算法Ver使用Ch1,...,ChN和Rsp1,...,RspN产生c01,c11,c21,...,c0N,c1N,c2N
过程(3):签名核查算法Ver使用再现的c01,c11,c21,...,c0N,c1N,c2N核查Cmt=H(c01,c11,c21,...,c0N,c1N,c2N)。
如上所述,通过匹配公钥验证方案的模型中的证明者与电子签名方案中的签名者,公钥验证方案的算法能够被修改为电子签名方案的算法。
[4-2:把5行程公钥验证方案修改为电子签名方案(图9)]
接下来,将描述把与5行程相关的公钥验证方案修改为电子签名方案。
如图9中所示,利用五次的交互和六次操作(即,操作#1至操作#6)表示与5行程方案相关的高效算法(例如,参见图7)。
操作#1包括针对i=1到N产生ai=(r0i,t0i,e0i,r1i,t1i,e1i,c0i,c1i)的过程(1)和计算Cmt<-H(c01,c11,...,c0N,c1N)的过程(2)。由证明者算法P在操作#1中产生的Cmt被发送给核查者算法V。
操作#2包括选择ChA1,...,ChAN的过程。由核查者算法V在操作#2中选择的ChA1,...,ChAN被发送给证明者算法P。
操作#3包括针对i=1到N产生bi=(t1i,e1i)的过程。这里,由证明者算法P在操作#3中产生的b1,...,bN被发送给核查者算法V。
操作#4包括选择ChB1,...,ChBN的过程。由核查者算法V在操作#4中选择的ChB1,...,ChBN被发送给证明者算法P。
操作#5包括使用ChB1,...,ChBN、a1,...,aN、b1,...,bN产生Rsp1,...,RspN的过程。这个过程被表示为Rspi<-Select(ChBi,ai,bi)。由证明者算法P在操作#5中产生的Rsp1,...,RspN被发送给核查者算法V。
操作#6包括使用ChA1,...,ChAN、ChB1,...,ChBN、Rsp1,...,RspN再现c01,c11,...,c0N,c1N的过程(1)和使用再现的c01,c11,...,c0N,c1N核查Cmt=H(c01,c11,...,c0N,c1N)的过程(2)。
利用前述操作#1至操作#6表示的公钥验证方案的算法被修改为图9中示出的签名产生算法Sig和签名核查算法Ver。
(签名产生算法Sig)
首先,将描述签名产生算法Sig的结构。签名产生算法Sig包括下面的过程(1)至(7)。
过程(1):签名产生算法Sig产生ai=(r0i,t0i,e0i,r1i,t1i,e1i,c0i,c1i)。
过程(2):签名产生算法Sig计算Cmt<-H(c01,c11,...,c0N,c1N)。
过程(3):签名产生算法Sig计算(ChA1,...,ChAN)<-H(M,Cmt)。这里,M是附加有签名的文档。
过程(4):签名产生算法Sig针对i=1到N产生bi=(t1i,e1i)。
过程(5):签名产生算法Sig计算(ChB1,...,ChBN)<-H(M,Cmt,ChA1,...,ChAN,b1,...,bN)。另外,可执行修改为(ChB1,...,ChBN)<-H(ChA1,...,ChAN,b1,...,bN)。
过程(6):签名产生算法Sig计算Rspi<-Select(ChBi,ai,bi)。
过程(7):签名产生算法Sig设置(Cmt,b1,...,bN,Rsp1,...,RspN)作为电子签名。
(签名核查算法Ver)
接下来,将描述签名核查算法Ver的结构。签名核查算法Ver包括下面的过程(1)至(4)。
过程(1):签名核查算法Ver计算(ChA1,...,ChAN)=H(M,Cmt)。
过程(2):签名核查算法Ver计算(ChB1,...,ChBN)=H(M,Cmt,ChA1,...,ChAN,b1,...,bN)。当在由签名核查算法Ver执行的过程(5)中执行修改为(ChB1,...,ChBN)=H(ChA1,...,ChAN,b1,...,bN)时,签名核查算法Ver计算(ChB1,...,ChBN)=H(ChA1,...,ChAN,b1,...,bN)。
过程(3):签名核查算法Ver使用ChA1,...,ChAN、ChB1,...,ChBN、Rsp1,...,RspN产生c01,c11,...,c0N,c1N
过程(4):签名核查算法Ver使用再现的c01,c11,...,c0N,c1N核查Cmt=H(c01,c11,...,c0N,c1N)。
如上所述,通过匹配公钥验证方案的模型中的证明者与电子签名方案中的签名者,公钥验证方案的算法能够被修改为电子签名方案的算法。
<5:双线性项G的高效计算方法>
顺便提一句,与以上公钥验证方案和电子签名方案相关的算法包括下面的公式(13)中定义的双线性项G的计算。例如,3行程方案的算法(参见图4和5)包括操作#1和操作#4中的双线性项G的计算。此外,5行程方案的算法(参见图6和7)包括操作#1和操作#6中的双线性项G的计算。类似地,通过修改公钥验证方案的算法而获得的电子签名方案的算法也包括双线性项G的计算。
[数学表达式11]
G(x,y)=F(x+y)-F(x)-F(y)
...(13)
从前面的公式(13)可理解,必须三次执行多元多项式F的计算以便获得双线性项G的值。此外,多元多项式F包括m个二次多项式f1(其中l=1,...,m)。因此,为了获得多元多项式F的值,需要作为执行m个二次多项式f1所需的计算量的m倍的计算量(以下,称为计算量Z)。也就是说,获得双线性项G的值所需的计算量是3×Z或更大。这里,将描述减小超过3×Z的获得双线性项G的值所需的计算量的方法。
[5-1:原理的描述]
二次多项式f1(x+y)能够如下面的公式(14)中所示展开。因此,双线性项G=(g1,...,gm)的元素g1(x,y)被表示为下面的公式(15)。从下面的公式(15)可理解,元素g1(x,y)包括两个二次多项式。由于这个原因,通过基于下面的公式(15)中示出的展开计算双线性项G,可把双线性项G的计算量抑制为2×Z的程度。
[数学表达式12]
f l ( x + y ) = ( x + y ) T A l ( x + y ) + b l T ( x + y ) = x T A l x + x T A l y + y T A l x + y T A l y + b l T x + b l T y = f l ( x ) + f l ( y ) + x T A l y + y T A l x &CenterDot; &CenterDot; &CenterDot; ( 14 )
gl(x,y)=fl(x+y)-fl(x)-fl(y)
=xTAly+yTAlx
...(15)
当以省略前面的公式(6)的右侧第二项(xj的线性项)的形式定义二次多项式f1(参见下面的公式(16))时,f1和g1能够基于下面的公式(17)的表达式被表示为下面的公式(18)和(19)。当使用这个表达式时,准备用于计算函数w1(x,y)的算术模块,并且能够通过反复使用该算术模块来计算双线性项G或多元多项式F。例如,该算术模块能够被安装在硬件或软件上,并且能够使用安装的算术模块执行算法。
[数学表达式13]
f l ( x ) = x T A l x = &Sigma; j , k a ljk x j x k &CenterDot; &CenterDot; &CenterDot; ( 16 )
wl(x,y)=xTAly
...(17)
gl(x,y)=wl(x,y)+wl(y,x)
...(18)
fl(x)=wl(x,x)
...(19)
以上描述了双线性项G的高效计算方法的原理。这里,已描述在前面的公式(16)中定义二次多项式f1的方法,但与本实施例相关的技术的应用范围不限于此。可按照原样使用前面的公式(6)中示出的定义。在这种情况下,在前面的公式(19)中示出xj的线性项。然而,在下面的描述中,将在假设在前面的公式(16)中定义二次多项式f1的情况下进行描述。
[5-2:应用例子#1(应用于3行程方案)]
首先,将描述3行程方案的算法的特定应用方法。
(简单应用例子)
参照图4,在操作#1中,当计算消息c0时,出现双线性项G(t0,r1)的计算。因此,证明者算法P使用g1(t0,r1)=w1(t0,r1)+w1(r1,t0)计算双线性项G(t0,r1)。此外,在操作#4中,在Ch=1的情况下,出现双线性项G(t0,r1)的计算,并且在Ch=2的情况下,出现双线性项G(t1,r1)的计算。因此,证明者算法V在Ch=1的情况下使用g1(t0,r1)=w1(t0,r1)+w1(r1,t0)计算双线性项G(t0,r1),并且在Ch=2的情况下使用g1(t1,r1)=w1(t1,r1)+w1(r1,t1)计算双线性项G(tt,r1)。当应用这个方法时,计算双线性项G所需的计算量被抑制为2×Z的程度。
(高效应用例子)
通过使用以上方法,可高效地执行双线性项G的计算。然而,在操作#4中,当关注在Ch=2的情况下计算的项(y-F(r1)-G(t1,r1)-e1)时,能够实现更高效地执行计算的方法。根据前面的公式(13)的定义,F(r1)+G(t1,r1)=F(t1+r1)-F(t1)。因此,当简单地计算左侧时,计算量为大约1×Z+3×Z=4×Z。然而,当能够理解参照右侧时,计算量通过这种修改而减小为2×Z的程度。
此外,作为算术模块wl(x,y)的特定应用方法,能够在下面的公式(20)中考虑几种方法。不管使用什么方法,计算F(r1)+G(t1,r1)所需的计算量为2×Z的程度。
[数学表达式14]
fl(y)+gl(x,y)=yTAly+xTAly+yTAlx
=yTAl(x+y)+xTAly=wl(y,x+y)+wl(x,y)
=(xT+yT)Aly+yTAlx=wl(x+y,y)+wl(y,x)
=(xT+yT)Al(x+y)-xTAlx=wl(x+y,x+y)wl(x,x)
...(20)
以上描述了3行程方案的算法的特定应用方法。这里,已参照图4中示出的算法进行描述。然而,这也能够应用于图5中示出的并行化算法或从该算法修改的算法。
[5-3:应用例子#2(应用于5行程方案)]
接下来,将描述5行程方案的算法的特定应用方法。
参照图6,在操作#1中,当计算消息c1时,出现双线性项G(t0,r1)的计算。因此,证明者算法P使用g1(t0,r1)=w1(t0,r1)+w1(r1,t0)计算双线性项G(t0,r1)。此外,在操作#6中,在ChB=1的情况下,出现双线性项G(t1,r1)的计算。因此,证明者算法V在ChB=1的情况下使用g1(t1,r1)=w1(t1,r1)+w1(r1,t1)计算双线性项G(t1,r1)。当应用这个方法时,计算双线性项G所需的计算量被抑制为2×Z的程度。
以上描述了5行程方案的算法的特定应用方法。这里,已参照图6中示出的算法进行描述。然而,这也能够应用于图7中示出的并行化算法或从该算法修改的算法。
[5-4:应用例子#3(应用于电子签名方案)]
接下来,将描述电子签名方案的算法的特定应用方法。
(应用于基于3行程方案的电子签名方案)
图8中示出的电子签名方案的算法是基于图5中示出的3行程方案的并行化算法的算法。因此,当签名产生算法Sig计算消息c0i时,出现双线性项G(t0i,r1i)的计算。因此,签名产生算法Sig使用g1(t0i,r1i)=w1(t0i,r1i)+w1(r1i,t0i)计算双线性项G(t0i,r1i)。
此外,当签名核查算法Ver计算消息c0i时,出现双线性项G(t0i,r1i)或双线性项G(t1i,r1i)的计算。因此,签名核查算法Ver使用g1(t0i,r1i)=w1(t0i,r1i)+w1(r1i,t0i)计算双线性项G(t0i,r1i)并且使用g1(t1i,r1i)=w1(t1i,r1i)+w1(r1i,t1i)计算双线性项G(t1i,r1i)。当应用这个方法时,计算双线性项G所需的计算量被抑制为2×Z的程度。
此外,通过关注当签名核查算法Ver计算消息c0i时执行的F(r1i)+G(t1i,r1i)的计算而基于前面的公式(20)执行计算,可进一步减小计算量。
(应用于基于5行程方案的电子签名方案)
图9中示出的电子签名方案的算法是基于图7中示出的5行程方案的并行化算法的算法。因此,当签名产生算法Sig计算消息c1i时,出现双线性项G(t0i,r1i)的计算。因此,签名产生算法Sig使用g1(t0i,r1i)=w1(t0i,r1i)+w1(r1i,t0i)计算双线性项G(t0i,r1i)。此外,当签名核查算法Ver产生消息c1i时,出现双线性项G(t1i,r1i)。因此,签名核查算法Ver使用g1(t1,r1)=w1(t1,r1)+w1(r1,t1)计算双线性项G(t1i,r1i)。当应用这个方法时,计算双线性项G所需的计算量被抑制为2×Z的程度。
以上描述了电子签名方案的算法的特定应用方法。这里,已参照图8和9中示出的算法进行描述。然而,这也能够应用于从这些算法修改的算法。
以上描述了双线性项G的高效计算方法。
<6:硬件结构的例子>
通过使用例如图10中示出的信息处理设备的硬件结构能够执行每个上述算法。也就是说,通过使用计算机程序控制图10中示出的硬件能够实现每个算法的处理。另外,这个硬件的模式是任意的,并且可以是个人计算机、移动信息终端(诸如移动电话、PHS或PDA)、游戏机、接触或非接触IC芯片、接触或非接触IC卡或各种类型的信息设备。此外,PHS是个人手提电话系统的缩写。此外,PDA是个人数字助手的缩写。
如图10中所示,这个硬件主要包括:CPU902、ROM904、RAM906、主机总线908和桥910。另外,这个硬件包括:外部总线912、接口914、输入单元916、输出单元918、存储单元920、驱动器922、连接端口924和通信单元926。此外,CPU是中央处理单元的缩写。此外,ROM是只读存储器的缩写。另外,RAM是随机存取存储器的缩写。
CPU902用作例如算术处理单元或控制单元,并基于记录在ROM904、RAM906、存储单元920或可移动记录介质928上的各种程序控制每个结构元件的全部操作或一部分操作。ROM904是用于存储例如将要在CPU902上加载的程序或在算术运算中使用的数据等的装置。RAM906临时或永久地存储例如将要在CPU902上加载的程序或在程序的执行中任意改变的各种参数等。
这些结构元件通过例如能够执行高速数据传输的主机总线908彼此连接。就它而言,例如,主机总线908通过桥910连接到外部总线912,外部总线912的数据传输速度相对较低。另外,输入单元916是例如鼠标、键盘、触摸面板、按钮、开关或操纵杆。此外,输入单元916可以是能够通过使用红外线或其它无线电波发送控制信号的遥控器。
输出单元918是例如能够以视觉方式或以听觉方式向用户通知获取的信息的显示装置(诸如,CRT、LCD、PDP或ELD)、音频输出装置(诸如,扬声器或头戴式耳机)、打印机、移动电话或传真机。此外,CRT是阴极射线管的缩写。LCD是液晶显示器的缩写。PDP是等离子体显示面板的缩写。此外,ELD是场致发光显示器的缩写。
存储单元920是用于存储各种数据的装置。存储单元920是例如磁存储装置(诸如,硬盘驱动器(HDD))、半导体存储装置、光学存储装置或磁光存储装置。HDD是硬盘驱动器的缩写。
驱动器922是读取记录在可移动记录介质928(诸如,磁盘、光盘、磁光盘或半导体存储器)上的信息或在可移动记录介质928中写信息的装置。可移动记录介质928是例如DVD介质、Blu-ray介质、HD-DVD介质、各种类型的半导体存储介质等。当然,可移动记录介质928可以是例如安装有非接触式IC芯片的电子装置或IC卡。IC是集成电路的缩写。
连接端口924是诸如USB端口、IEEE1394端口、SCSI、RS-232C端口的端口或者用于连接外部连接的装置930的端口(诸如,光学音频端子)。外部连接的装置930是例如打印机、移动音乐播放器、数字照相机、数字视频照相机或IC记录器。此外,USB是通用串行总线的缩写。此外,SCSI是小型计算机系统接口的缩写。
通信单元926是将要连接到网络932的通信装置,并且是例如用于有线或无线LAN、Bluetooth(注册商标)或WUSB的通信卡、光通信路由器、ADSL路由器或用于接触式或非接触式通信的装置。连接到通信单元926的网络932由有线连接或无线连接的网络构成,并且是例如互联网、家庭用途LAN、红外通信、可见光通信、广播或卫星通信。此外,LAN是局域网的缩写。此外,WUSB是无线USB的缩写。另外,ADSL是非对称数字用户线路的缩写。
<7:总结>
最后,将简要描述根据本技术的实施例的技术内容。这里说明的技术内容能够被应用于各种信息处理设备,诸如个人计算机、移动电话、游戏机、信息终端、信息设备、汽车导航系统等。另外,以下描述的信息处理设备的功能能够通过使用单个信息处理设备或使用多个信息处理设备来实现。另外,用于由以下描述的信息处理设备执行处理的数据存储装置和算术处理装置可被安装在信息处理设备上,或者可被安装在经网络连接的装置上。
前述信息处理设备的功能结构如下实现。例如,在下面的(1)中描述的信息处理设备具有执行使其安全性基于解多阶多元联立方程的难度的高效公钥验证方案或电子签名方案的算法的功能。
(1)一种信息处理设备,包括:
消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;
消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;
响应提供单元,被构造为向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(2)如(1)中所述的信息处理设备,
其中所述消息产生单元产生N次的消息(其中N≥2),
其中消息提供单元利用一次的交互向核查者提供N次的消息,以及
其中响应提供单元利用一次的交互向核查者提供与由核查者针对N次的消息中的每个消息选择的核查模式对应的N次的响应信息。
(3)一种信息处理设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));
消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;
模式信息提供单元,被构造为向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;
响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和
核查单元,被构造为基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当再现用于核查的消息时,核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(4)如(3)中所述的信息处理设备,
其中所述消息获取单元利用一次的交互获取N次的消息(其中N≥2),
其中模式信息提供单元针对N次的消息中的每个消息选择核查模式并且利用一次的交互向证明者提供关于选择的N次的核查模式的信息,
其中响应获取单元利用一次的交互从证明者获取与选择的N次的核查模式对应的N次的响应信息,以及
其中当核查针对N次的所有消息成功时,核查单元确定证明者存储向量s。
(5)一种信息处理设备,包括:
消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;
消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;
中间信息产生单元,被构造为使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息;
中间信息提供单元,被构造为把第三信息提供给核查者;和
响应提供单元,被构造为向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(6)如(5)中所述的信息处理设备,
其中所述消息产生单元产生N次的消息(其中N≥2),
其中消息提供单元利用一次的交互向核查者提供N次的消息,
其中中间信息产生单元基于由核查者针对N次的消息中的每个消息选择的第一信息和在产生消息时获得的N次的第二信息产生N次的第三信息,
其中中间信息提供单元利用一次的交互向核查者提供N次的第三信息,以及
其中响应提供单元利用一次的交互向核查者提供与由核查者针对N次的消息中的每个消息选择的核查模式对应的N次的响应信息。
(7)一种信息处理设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));
消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;
信息提供单元,被构造为向提供消息的证明者提供随机选择的第一信息;
中间信息获取单元,被构造为获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息;
模式信息提供单元,被构造为向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;
响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和
核查单元,被构造为基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当再现用于核查的消息时,核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(8)如(7)中所述的信息处理设备,
其中所述消息获取单元利用一次的交互产生N次的消息(其中N≥2),
其中信息提供单元针对N次的消息中的每个消息随机选择第一信息并且利用一次的交互向证明者提供选择的N次的第一信息;
其中中间信息获取单元获取由证明者基于N次的第一信息和在产生N次的消息时获得的N次的第二信息产生的N次的第三信息,
其中模式信息提供单元针对N次的消息中的每个消息选择核查模式并且利用一次的交互向证明者提供关于选择的N次的核查模式的信息,
其中响应获取单元利用一次的交互从证明者获取与选择的N次的核查模式对应的N次的响应信息,以及
其中当核查针对N次的所有消息成功时,核查单元确定证明者存储向量s。
(9)一种签名产生设备,包括:
签名产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生文档M的电子签名;和
签名提供单元,被构造为把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者,
其中所述签名产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(10)一种签名核查设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s));和
签名核查单元,被构造为针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性,
其中所述签名核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的核查期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(11)一种信息处理方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;
把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;和
向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息的步骤,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在产生消息的步骤中,当产生消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(12)一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:
获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;
向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;
从证明者获取与选择的核查模式对应的响应信息的步骤;和
基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s的步骤,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(13)一种信息处理方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;
把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;
使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息的步骤;
把第三信息提供给核查者的步骤;和
向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息的步骤,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在产生消息的步骤中,当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(14)一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:
获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;
向提供消息的证明者提供随机选择的第一信息的步骤;
获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息的步骤;
向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;
从证明者获取与选择的核查模式对应的响应信息的步骤;和
基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s的步骤,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(15)一种签名产生方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生文档M的电子签名的步骤;和
把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者的步骤,
其中在产生电子签名的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(16)一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s))的信息处理设备执行的签名核查方法,所述签名核查方法包括:
针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性的步骤,
其中在核查合法性的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
(17)一种程序,使计算机实现针对如(1)至(8)中任何一项所述的信息处理设备提供的每个功能。
(18)一种程序,使计算机实现针对如(9)中所述的签名产生设备提供的每个功能。
(19)一种程序,使计算机实现针对如(10)中所述的签名核查设备提供的每个功能。
(20)一种计算机可读记录介质,具有记录在它上面的如(17)至(19)中任何一项所述的程序。
(备注)
以上证明者算法P是消息产生单元、消息提供单元、响应提供单元、中间信息产生单元和中间信息提供单元的例子。此外,以上核查者算法V是信息存储单元、消息获取单元、模式信息提供单元、响应获取单元、核查单元和中间信息获取单元的例子。此外,以上签名产生算法Sig是签名产生单元和签名提供单元的例子。此外,以上签名核查算法Ver是信息存储单元和签名核查单元的例子。
以上参照附图描述了本发明的优选实施例,但本发明当然不限于以上例子。本领域技术人员可在所附权利要求的范围内发现各种改变和修改,并且应该理解,它们将会自然落在本发明的技术范围内。
在以上描述中,已介绍使用哈希函数H的算法,但可替代于哈希函数H而使用承诺函数COM。承诺函数COM是这样的函数:在该函数中,字符串S和随机数ρ被用作因子。承诺函数的例子包括由Shai Halevi和Silvio Micali在国际会议CRYPTO 1996中公开的方案。
标号列表
Gen 密钥产生算法
P 证明者算法
V 核查者算法
Sig 签名产生算法
Ver 签名核查算法
权利要求书(按照条约第19条的修改)
1.一种信息处理设备,包括:
消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;
消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;和
响应提供单元,被构造为向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
2.如权利要求1所述的信息处理设备,
其中消息产生单元产生N次的消息(其中N≥2),
其中消息提供单元利用一次的交互向核查者提供N次的消息,以及
其中响应提供单元利用一次的交互向核查者提供与由核查者针对N次的消息中的每个消息选择的核查模式对应的N次的响应信息。
3.一种信息处理设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));
消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;
模式信息提供单元,被构造为向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;
响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和
核查单元,被构造为基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当再现用于核查的消息时,核查单元按照作为二次形式之间的计算的F(x,y)+F(y)执行包括定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的F(x)+G(x,y)的计算。
4.如权利要求3所述的信息处理设备,
其中所述消息获取单元利用一次的交互获取N次的消息(其中N≥2),
其中模式信息提供单元针对N次的消息中的每个消息选择核查模式并且利用一次的交互向证明者提供关于选择的N次的核查模式的信息,
其中响应获取单元利用一次的交互从证明者获取与选择的N次的核查模式对应的N次的响应信息,以及
其中当核查针对N次的所有消息成功时,核查单元确定证明者存储向量s。
5.一种信息处理设备,包括:
消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;
消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;
中间信息产生单元,被构造为使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息;
中间信息提供单元,被构造为把第三信息提供给核查者;和
响应提供单元,被构造为向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
6.如权利要求5所述的信息处理设备,
其中所述消息产生单元产生N次的消息(其中N≥2),
其中消息提供单元利用一次的交互向核查者提供N次的消息,
其中中间信息产生单元基于由核查者针对N次的消息中的每个消息选择的第一信息和在产生消息时获得的N次的第二信息产生N次的第三信息,
其中中间信息提供单元利用一次的交互向核查者提供N次的第三信息,以及
其中响应提供单元利用一次的交互向核查者提供与由核查者针对N次的消息中的每个消息选择的核查模式对应的N次的响应信息。
7.一种信息处理设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));
消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;
信息提供单元,被构造为向提供消息的证明者提供随机选择的第一信息;
中间信息获取单元,被构造为获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息;
模式信息提供单元,被构造为向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;
响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和
核查单元,被构造为基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当再现用于核查的消息时,核查单元按照作为二次形式之间的计算的F(x,y)+F(y)执行包括定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的F(x)+G(x,y)的计算。
8.如权利要求7所述的信息处理设备,
其中所述消息获取单元利用一次的交互获取N次的消息(其中N≥2),
其中信息提供单元针对N次的消息中的每个消息随机选择第一信息并且利用一次的交互向证明者提供选择的N次的第一信息;
其中中间信息获取单元获取由证明者基于N次的第一信息和在产生N次的消息时获得的N次的第二信息产生的N次的第三信息,
其中模式信息提供单元针对N次的消息中的每个消息选择核查模式并且利用一次的交互向证明者提供关于选择的N次的核查模式的信息,
其中响应获取单元利用一次的交互从证明者获取与选择的N次的核查模式对应的N次的响应信息,以及
其中当核查针对N次的所有消息成功时,核查单元确定证明者存储向量s。
9.一种签名产生设备,包括:
签名产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生针对文档M的电子签名;和
签名提供单元,被构造为把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者,
其中所述签名产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
10.一种签名核查设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s));和
签名核查单元,被构造为针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性,
其中所述签名核查单元按照作为二次形式之间的计算的F(x,y)+F(y)执行在电子签名的核查期间执行的包括定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的F(x)+G(x,y)的计算。
11.一种信息处理方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;
把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;和
向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息的步骤,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在产生消息的步骤中,当产生消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
12.一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:
获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;
向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;
从证明者获取与选择的核查模式对应的响应信息的步骤;和
基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s的步骤,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,按照作为二次形式之间的计算的F(x,y)+F(y)执行包括定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的F(x)+G(x,y)的计算。
13.一种信息处理方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;
把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;
使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息的步骤;
把第三信息提供给核查者的步骤;和
向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息的步骤,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在产生消息的步骤中,当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
14.一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:
获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;
向提供消息的证明者提供随机选择的第一信息的步骤;
获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息的步骤;
向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;
从证明者获取与选择的核查模式对应的响应信息的步骤;和
基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s的步骤,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,按照作为二次形式之间的计算的F(x,y)+F(y)执行包括定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的F(x)+G(x,y)的计算。
15.一种签名产生方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生文档M的电子签名的步骤;和
把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者的步骤,
其中在产生电子签名的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
16.一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s))的信息处理设备执行的签名核查方法,所述签名核查方法包括:
针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性的步骤,
其中在核查合法性的步骤中,按照作为二次形式之间的计算的F(x,y)+F(y)执行在电子签名的产生期间执行的包括定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的F(x)+G(x,y)的计算。

Claims (16)

1.一种信息处理设备,包括:
消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;
消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;和
响应提供单元,被构造为向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
2.如权利要求1所述的信息处理设备,
其中消息产生单元产生N次的消息(其中N≥2),
其中消息提供单元利用一次的交互向核查者提供N次的消息,以及
其中响应提供单元利用一次的交互向核查者提供与由核查者针对N次的消息中的每个消息选择的核查模式对应的N次的响应信息。
3.一种信息处理设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));
消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;
模式信息提供单元,被构造为向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;
响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和
核查单元,被构造为基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当再现用于核查的消息时,核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
4.如权利要求3所述的信息处理设备,
其中所述消息获取单元利用一次的交互获取N次的消息(其中N≥2),
其中模式信息提供单元针对N次的消息中的每个消息选择核查模式并且利用一次的交互向证明者提供关于选择的N次的核查模式的信息,
其中响应获取单元利用一次的交互从证明者获取与选择的N次的核查模式对应的N次的响应信息,以及
其中当核查针对N次的所有消息成功时,核查单元确定证明者存储向量s。
5.一种信息处理设备,包括:
消息产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息;
消息提供单元,被构造为把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者;
中间信息产生单元,被构造为使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息;
中间信息提供单元,被构造为把第三信息提供给核查者;和
响应提供单元,被构造为向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
6.如权利要求5所述的信息处理设备,
其中所述消息产生单元产生N次的消息(其中N≥2),
其中消息提供单元利用一次的交互向核查者提供N次的消息,
其中中间信息产生单元基于由核查者针对N次的消息中的每个消息选择的第一信息和在产生消息时获得的N次的第二信息产生N次的第三信息,
其中中间信息提供单元利用一次的交互向核查者提供N次的第三信息,以及
其中响应提供单元利用一次的交互向核查者提供与由核查者针对N次的消息中的每个消息选择的核查模式对应的N次的响应信息。
7.一种信息处理设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s));
消息获取单元,被构造为获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息;
信息提供单元,被构造为向提供消息的证明者提供随机选择的第一信息;
中间信息获取单元,被构造为获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息;
模式信息提供单元,被构造为向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息;
响应获取单元,被构造为从证明者获取与选择的核查模式对应的响应信息;和
核查单元,被构造为基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中当再现用于核查的消息时,核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
8.如权利要求7所述的信息处理设备,
其中所述消息获取单元利用一次的交互获取N次的消息(其中N≥2),
其中信息提供单元针对N次的消息中的每个消息随机选择第一信息并且利用一次的交互向证明者提供选择的N次的第一信息;
其中中间信息获取单元获取由证明者基于N次的第一信息和在产生N次的消息时获得的N次的第二信息产生的N次的第三信息,
其中模式信息提供单元针对N次的消息中的每个消息选择核查模式并且利用一次的交互向证明者提供关于选择的N次的核查模式的信息,
其中响应获取单元利用一次的交互从证明者获取与选择的N次的核查模式对应的N次的响应信息,以及
其中当核查针对N次的所有消息成功时,核查单元确定证明者存储向量s。
9.一种签名产生设备,包括:
签名产生单元,被构造为基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生针对文档M的电子签名;和
签名提供单元,被构造为把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者,
其中所述签名产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
10.一种签名核查设备,包括:
信息存储单元,被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s));和
签名核查单元,被构造为针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性,
其中所述签名核查单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的核查期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
11.一种信息处理方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;
把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;和
向核查者提供与核查者从k(其中k≥3)种核查模式之中选择的核查模式对应的响应信息的步骤,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在产生消息的步骤中,当产生消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
12.一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:
获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;
向提供消息的证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;
从证明者获取与选择的核查模式对应的响应信息的步骤;和
基于消息、所述一组二次多元多项式F、向量y和响应信息核查证明者是否存储向量s的步骤,
其中所述向量s是秘密密钥,
其中所述一组二次多元多项式F和向量y是公钥,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
13.一种信息处理方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的向量s产生消息的步骤;
把消息提供给存储所述一组二次多元多项式F和向量y=(y1,...,ym)=(f1(s),...,fm(s))的核查者的步骤;
使用由核查者随机选择的第一信息和在产生消息时获得的第二信息产生第三信息的步骤;
把第三信息提供给核查者的步骤;和
向核查者提供与核查者从k(其中k≥2)种核查模式之中选择的核查模式对应的响应信息的步骤,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在产生消息的步骤中,当产生消息时,消息产生单元基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
14.一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(y1,...,ym)=(f1(s),...,fm(s))的信息处理设备执行的信息处理方法,所述信息处理方法包括:
获取基于所述一组二次多元多项式F和作为集合Kn的元素的向量s产生的消息的步骤;
向提供消息的证明者提供随机选择的第一信息的步骤;
获取证明者基于第一信息和在产生消息时获得的第二信息产生的第三信息的步骤;
向证明者提供关于从k(其中k≥3)种核查模式之中随机选择的一种核查模式的信息的步骤;
从证明者获取与选择的核查模式对应的响应信息的步骤;和
基于消息、第一信息、第三信息、所述一组二次多元多项式F和响应信息核查证明者是否存储向量s的步骤,
其中所述向量s是秘密密钥,
其中所述一组多阶多元多项式F和向量y是公钥,
其中消息是通过基于公钥、第一信息、第三信息和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,
其中消息是通过基于公钥和响应信息执行预先针对与响应信息对应的核查模式准备的计算而获得的信息,以及
其中在核查证明者是否存储向量s的步骤中,当再现用于核查的消息时,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
15.一种签名产生方法,包括:
基于在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和作为集合Kn的元素的签名密钥s产生文档M的电子签名的步骤;和
把电子签名提供给存储所述一组二次多元多项式F和向量y=(f1(s),...,fm(s))的核查者的步骤,
其中在产生电子签名的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
16.一种由被构造为存储在环K中定义并且以二次形式表示的一组二次多元多项式F=(f1,...,fm)和向量y=(f1(s),...,fm(s))的信息处理设备执行的签名核查方法,所述签名核查方法包括:
针对文档M基于使用二次多元多项式F和作为集合Kn的元素的签名密钥s产生的电子签名核查文档M的合法性的步骤,
其中在核查合法性的步骤中,基于公式g1(x1,x2)=x1 TA1x2+x2 TA1x1执行在电子签名的产生期间执行的定义为G(x1,x2)=F(x1+x2)-F(x1)-F(x2)的函数G=(g1,...,gm)的计算(其中l=1到m并且A1是n×n系数矩阵)。
CN201280040699.3A 2011-08-29 2012-07-20 信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法 Pending CN103782331A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011185943A JP2013047726A (ja) 2011-08-29 2011-08-29 情報処理装置、署名生成装置、署名検証装置、情報処理方法、署名生成方法、及び署名検証方法
JP2011-185943 2011-08-29
PCT/JP2012/068450 WO2013031420A1 (ja) 2011-08-29 2012-07-20 情報処理装置、署名生成装置、署名検証装置、情報処理方法、署名生成方法、及び署名検証方法

Publications (1)

Publication Number Publication Date
CN103782331A true CN103782331A (zh) 2014-05-07

Family

ID=47755928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280040699.3A Pending CN103782331A (zh) 2011-08-29 2012-07-20 信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法

Country Status (8)

Country Link
US (1) US20140208110A1 (zh)
EP (1) EP2752836A1 (zh)
JP (1) JP2013047726A (zh)
CN (1) CN103782331A (zh)
BR (1) BR112014004060A2 (zh)
RU (1) RU2014106493A (zh)
TW (1) TW201325180A (zh)
WO (1) WO2013031420A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103490897B (zh) * 2013-09-17 2017-04-05 华南理工大学 一种多变量公钥签名/验证系统及签名/验证方法
US9948460B2 (en) * 2015-08-28 2018-04-17 City University Of Hong Kong Multivariate cryptography based on clipped hopfield neural network
US11163532B2 (en) * 2019-01-18 2021-11-02 Fujitsu Limited Solving multivariate quadratic problems using digital or quantum annealing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2805493B2 (ja) * 1989-04-05 1998-09-30 日本電信電話株式会社 認証方法及びそれに用いる装置

Also Published As

Publication number Publication date
EP2752836A1 (en) 2014-07-09
TW201325180A (zh) 2013-06-16
JP2013047726A (ja) 2013-03-07
WO2013031420A1 (ja) 2013-03-07
US20140208110A1 (en) 2014-07-24
RU2014106493A (ru) 2015-08-27
BR112014004060A2 (pt) 2017-03-07

Similar Documents

Publication Publication Date Title
CN102263638B (zh) 认证设备、认证方法和签名生成设备
WO2013031414A1 (ja) 署名検証装置、署名検証方法、プログラム、及び記録媒体
WO2013031533A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN102263639B (zh) 认证装置、认证方法和签名生成装置
CN102957538A (zh) 信息处理设备和信息处理方法
CN103718502A (zh) 信息处理设备、信息处理方法、程序和记录介质
WO2013031555A1 (ja) 情報処理装置、署名生成装置、情報処理方法、署名生成方法、及びプログラム
CN103718501B (zh) 信息处理设备和信息处理方法
CN102640451A (zh) 信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序
Peng et al. Isogeny-based cryptography: a promising post-quantum technique
CN103155480A (zh) 认证装置、认证方法和程序
JPWO2006114948A1 (ja) 署名生成装置および署名検証装置
CN103748830A (zh) 信息处理设备、签名提供方法、签名验证方法、程序和记录介质
Cai et al. An efficient strong designated verifier signature based on $\mathcal {R}-$ SIS assumption
CN104137471A (zh) 信息处理设备、信息处理方法以及程序
CN103782331A (zh) 信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法
CN103733563A (zh) 信息处理设备、签名产生设备、信息处理方法、签名产生方法和程序
Mi et al. Oblivious transfer based on NTRUEncrypt
Yang et al. A secure scalar product protocol against malicious adversaries
CN103733562A (zh) 信息处理设备和信息处理方法
Khader Authenticating with attributes
CN103718228B (zh) 信息处理设备和信息处理方法
Huang et al. Dynamic Group Signature Scheme on Lattice with Verifier-local Revocation
Meshram et al. An Efficient Conformable Fractional Chaotic Map‐Based Online/Offline IBSS Scheme for Provable Security in ROM
CN103782332A (zh) 信息处理设备、信息处理方法、程序以及记录介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140507