CN102640451A - 信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序 - Google Patents

信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序 Download PDF

Info

Publication number
CN102640451A
CN102640451A CN2010800514096A CN201080051409A CN102640451A CN 102640451 A CN102640451 A CN 102640451A CN 2010800514096 A CN2010800514096 A CN 2010800514096A CN 201080051409 A CN201080051409 A CN 201080051409A CN 102640451 A CN102640451 A CN 102640451A
Authority
CN
China
Prior art keywords
inverse transformation
finite ring
preimage
signature
selected cell
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
CN2010800514096A
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 CN102640451A publication Critical patent/CN102640451A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme

Abstract

提供了用于实现能够进行关于选定消息攻击的安全认证的MPKC签名方法的电子签名系统。一种信息处理装置,包括:第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成有限环Kn的元素y′;元素计算单元,该元素计算单元将通过第一逆变换单元所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并且,通过利用元素Y来计算由预定多变量多项式所表示的映射f:A→A的原像的元素X∈{Z∈A|f(Z)=Y};元素选择单元,该元素选择单元以与原像的元素数α成正比的概率p选择原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将此处所选择的元素X看作有限环Kn的元素x′,并且,通过第二秘密多项式S的逆变换S-1将限环Kn的元素x′变换成限环Kn的元素x。

Description

信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序
技术领域
本发明涉及信息处理装置、密钥生成装置、签名验证装置、信息处理方法、签名生成方法和程序。
背景技术
随着信息处理技术和通信技术的飞速发展,文档(不管是官方文档还是私人文档)正被快速地转换成电子形式。因此,许多个人和企业显示出对电子文档的安全控制的极大兴趣。随着这种越来越大的兴趣,针对诸如对电子文档的窃听(wiretapping)和伪造之类的篡改的安全在各种地区被更加积极并越来越多地讨论。例如,可以通过对电子文档进行加密来确保针对电子文档的窃听的安全。例如,可以通过利用电子签名来确保从对电子文档的伪造的安全。但是,加密和电子签名必须具有对篡改的足够抵抗力。
电子签名被用来识别电子文档的作者。因此,电子签名应当仅能由作者创建。如果恶意第三方能够创建相同的电子签名,则第三方可伪装成电子文档的作者。即,电子文档被恶意第三方伪造。为了防止这种伪造,已经以多种方式讨论了电子签名的安全。当前被广泛使用的电子签名方法例如包括利用RSA签名方法或DSA签名方法的方法。
RSA签名方法将安全基于“难于将大的合数因式分解成素分量(以下,称为因式分解成素分量的问题)”。DSA签名方法将安全基于“难于解决离散对数问题”。这些基础可归因于如下事实:不存在通过利用经典计算机来有效解决因式分解成素分量的问题或离散对数问题的算法。即,以上的困难意味着经典计算机的计算困难。此处的经典计算机意味着不是所谓的量子计算机的计算机。量子计算机被称为能够有效地计算因式分解成素分量的问题或离散对数问题的答案。
因此,注意力集中于具有不同于RSA签名方法或DSA签名方法的基础的安全基础的算法或协议。其一个主要的候选是多变量公钥密码(MPKC)签名方法,其将安全基于“难于解决多变量多项式(以下,称为多变量多项式问题)”。据称,不存在通过量子计算机来有效求解多变量多项式问题的算法。当与RSA签名方法或DSA签名方法相比时,MPKC签名方法用以确保相同水平的安全所保持的信息量更小。因此,MPKC签名方法还适于具有更少操作能力或存储容量的设备的使用。
作为MPKC签名方法,例如,广泛已知基于MI(松本今井密码(Matsumoto-Imai cryptography))、HFE(隐藏场方程密码;例如参见非专利文献1)、OV(油醋签名机制(Oil-Vinegar signature scheme))和TTM(驯服改造方法密码(Tamed Transformation Method cryptography))的方法。作为HFE签名方法的导出形式,已知HFE签名方法和OV签名方法的组合(以下,称为HFEv签名方法)以及HFE签名方法和PFDH(全域概率哈希(Probabilistic Full Domain Hash))签名方法的组合(以下,称为HFE+PFDH方法;例如参见非专利文献2)。
引用列表
非专利文献1:Jacques Patarin Asymmetric Cryptography with a HiddenMonomial,CRYPTO 1996,第45页至第60页。
非专利文献2:Patarin、J.、Courtois、N.和Goubin、L.QUARTZ,128-Bit Long Digital Signatures。出现在CT-RSA 2001(美国加州旧金山,2001年4月)关于密码学的话题,Naccache、D.、Ed,Springer-Verlag计算机科学的讲义,第2020卷,第282页至第297页。
发明内容
技术问题
如上所述,诸如HFE签名方法和OV签名方法之类的MPKC签名方法具有优越的特点,诸如,通过利用量子计算机能对抗篡改行为,并且,与RSA签名方法相比,具有更少的操作负荷和存储使用。但是,在诸如HFE签名方法和OV签名方法之类的MPKC签名方法中所使用的带有陷门(trapdoor)的单向函数f不是双射的(bijective)。因此,MPKC签名方法不确保针对选定消息攻击(chosen-message attacks)(CMA)的安全。选定消息攻击是在一种环境中试图伪造电子签名的行为,其中,除了诸如验证密钥之类的公共信息以外,攻击者可自由地获取对任意电子文档的电子签名。
鉴于上述,做出了本发明,并且,希望提供能够实现对应于MPKC签名方法中所使用的带有陷门的单向函数的映射双射或接近映射双射的属性的新颖并改善的信息处理装置、密钥生成装置、签名验证装置、信息处理方法、签名生成方法和程序。
问题的解决方案
根据为了达到上述目标的本发明的第一方面,提供了一种信息处理装置,包括:第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并且,通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作所述有限环Kn的元素x′,并且,通过第二秘密多项式S的逆变换S- 1将所述有限环Kn的元素x′变换成所述有限环Kn的元素x。
根据为了达到上述目标的本发明的第二方面,提供了一种信息处理装置,包括:部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由m个数所组成的元素的有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Km的元素y′看作有限环K的m次扩展A的元素Y,并且,通过利用所述元素Y和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:A×Kv→B,B是所述有限环K的o次扩展)的原像的元素X∈{Z∈B|f(Z,vx)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作有限环Ko的元素ox,并且,通过第二秘密多项式S的逆变换S-1将所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x。
该信息处理装置还可包括:数生成单元,该数生成单元生成数r;数据生成单元,该数据生成单元通过利用由所述数生成单元所生成的所述数r和电子数据M来生成所述有限环Kn的元素y;以及签名生成单元,该签名生成单元将由所述数据生成单元生成的所述有限环Kn的元素y输入到所述第一逆变换单元,以生成包括通过所述第一逆变换单元、所述元素计算单元、所述元素选择单元和所述第二逆变换单元的处理所获得的所述有限环Kn的元素x的电子签名σ。在该情形中,如果所述元素选择单元输出了异常值,则所述签名生成单元导致所述数生成单元生成不同的数r,并且,基于所述不同的数r,将由所述数据生成单元所生成的所述有限环Kn的元素y输入到所述第一逆变换单元,以生成包括通过所述第一逆变换单元、所述元素计算单元、所述元素选择单元和所述第二逆变换单元的处理所获得的所述有限环Kn的元素x的电子签名σ。
根据为了达到上述目标的本发明的第三方面,提供了一种密钥生成装置,包括:秘密密钥生成单元,该秘密密钥生成单元生成由计算算法所使用的秘密密钥,该计算算法具有第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并且,通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作有限环Kn的元素x′,并且,通过第二秘密多项式S的逆变换S-1将所述有限环Kn的元素x′变换成所述有限环Kn的元素x,其中,该秘密密钥包括关于所述第一秘密多项式T、所述第二秘密多项式S和所述预定多变量多项式的信息;以及公钥生成单元,该公钥生成单元生成公钥,该公钥包括关于由所述第一秘密多项式T、所述映射f和所述第二秘密多项式S所组成的复合映射F的信息。
根据为了达到上述目标的本发明的第四方面,提供了一种密钥生成装置,包括:部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;秘密密钥生成单元,该秘密密钥生成单元生成由计算算法所使用的秘密密钥,该计算算法具有第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由m个数所组成的元素的有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Km的元素y′看作有限环K的m次扩展A的元素Y,并且,通过利用所述元素Y和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:A×Kv→B,B是所述有限环k的o次扩展)的原像的元素X∈{Z∈B|f(Z,vx)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作有限环Ko的元素ox,并且,通过第二秘密多项式S的逆变换S-1将所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x,其中,该秘密密钥包括关于所述第一秘密多项式T、所述第二秘密多项式S和所述预定多变量多项式的信息;以及公钥生成单元,该公钥生成单元生成公钥,该公钥包括关于由所述第一秘密多项式T、所述映射f和所述第二秘密多项式S所组成的复合映射F的信息。
根据为了达到上述目标的本发明的第五方面,提供了一种信息处理装置,包括:部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;数生成单元,该数生成单元生成数r;数据生成单元,该数据生成单元通过利用由所述数生成单元所生成的所述数r和电子数据M来生成所述有限环Kn的元素y;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将由所述数据生成单元所生成的有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过利用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致所述数生成单元生成不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1将包括由所述元素选择单元所选择的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ。
根据为了达到上述目标的本发明的第六方面,提供了一种信息处理装置,包括:数据生成单元,该数据生成单元通过利用电子数据M来生成包括由m个数所组成的元素的所述有限环Km的元素y;部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致所述部分元素选择单元选择不同的数vx,并且,通过利用所述不同的数vx,选择通过所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ,其中,针对所述有限环K的元素数q,m满足n≥m+β条件,并且,β满足q<<1条件。
根据为了达到上述目标的本发明的第七方面,提供了一种信息处理装置,包括:数据生成单元,该数据生成单元通过利用电子数据M来生成包括由m个数所组成的元素的所述有限环Km的元素y;部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致所述部分元素选择单元选择不同的数vx,并且,通过利用所述不同的数vx,选择通过所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ,其中,针对ox=(ox1,…,oxo)和vx=(vx1,…,vxv),映射f被表示为f(ox1,…,oxo,vx1,…,vxv)=L(vx1,…,vxv)(ox1,…,oxo)T+g(vx1,…,vxv),L被表示为L(vx1,…,vxv)=L1L2(vx1,…,vxv)L3,其中,L1和L3是非奇异矩阵,并且,L2是具有将vx1,…,vxv的函数lij(vx1,…,vxv)作为第i行第j列元素并将1作为对角线分量的上三角矩阵或下三角矩阵。
第二秘密多项式S可以是身份映射。
根据为了达到上述目标的本发明的第八方面,提供了一种密钥生成装置,包括:秘密密钥生成单元,该秘密密钥生成单元生成由计算算法所使用的秘密密钥,该计算算法具有部分元素选择单元和数生成单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx,该数生成单元生成数r;数据生成单元,该数据生成单元通过利用由所述数生成单元所生成的数r和电子数据M来生成包括由m个数所组成的元素的有限环Km的元素y;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致所述数生成单元选择不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ,其中,该秘密密钥包括关于所述第一秘密多项式T、所述第二秘密多项式S和所述预定多变量多项式的信息;以及公钥生成单元,该公钥生成单元生成公钥,该公钥包括关于由所述第一秘密多项式T、所述映射f和所述第二秘密多项式S所组成的复合映射F的信息。
根据为了达到上述目标的本发明的第九方面,提供了一种信息验证装置,包括:获取单元,该获取单元从签名生成装置获取关于由第一秘密多项式T、映射f和第二秘密多项式S所组成的复合映射F、电子签名σ和电子数据M的信息,该签名生成装置具有:部分元素选择单元和数生成单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx,该数生成单元生成数r;第一数据生成单元,该第一数据生成单元通过利用由所述数生成单元所生成的数r和电子数据M来生成包括由m个数所组成的元素的有限环Km的元素y;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致所述数生成单元选择不同的数r,并且,通过利用所述不同的数r,选择通过所述第一数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x和由所述数生成单元所生成的数r的电子签名σ;第二数据生成单元,该第二数据生成单元通过利用包括在电子签名σ中的数r和所述电子数据M来生成所述有限环Km的元素y1;第三数据生成单元,该第三数据生成单元通过将包括在电子签名σ中的所述有限环Kn的元素x应用到所述复合映射F来生成所述有限环Km的元素y2;以及验证单元,该验证单元验证由所述第二数据生成单元所生成的有限环Km的元素y1是否与由所述第三数据生成单元所生成的有限环Km的元素y2相匹配。
根据为了达到上述目标的本发明的第十方面,提供了一种信息处理方法,包括:通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′的第一逆变换步骤;将通过所述第一逆变换步骤中所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y并通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y}的元素计算步骤;以与所述原像的元素数α成正比的概率p选择在所述元素计算步骤中所计算的所述原像的一个元素X并以概率(1-p)输出异常值的元素选择步骤;以及将在所述元素选择步骤中所选择的所述元素X看作所述有限环Kn的元素x′并通过第二秘密多项式S的逆变换S-1将所述有限环Kn的元素x′变换成所述有限环Kn的元素x的第二逆变换步骤。
根据为了达到上述目标的本发明的第十一方面,提供了一种信息处理方法,包括:选择包括由v个数所组成的元素的有限环Kv的元素vx的部分元素选择步骤;通过第一秘密多项式T的逆变换T-1将包括由m个数所组成的元素的有限环Km的元素y变换成所述有限环Km的元素y′的第一逆变换步骤;将在所述第一逆变换步骤中所获得的有限环Km的元素y′看作有限环K的m次扩展A的元素Y并通过利用所述元素Y和在所述部分元素选择步骤中所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:A×Kv→B,B是所述有限环K的o次扩展)的原像的元素X∈{Z∈B|f(Z,vx)=Y}的元素计算步骤;以与所述原像的元素数α成正比的概率p选择由所述元素计算单元所计算的所述原像的一个元素X并以概率(1-p)输出异常值的元素选择步骤;以及将在所述元素选择步骤中所选择的所述元素X看作有限环Ko的元素ox并通过第二秘密多项式S的逆变换S-1将所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x的第二逆变换步骤。
根据为了达到上述目标的本发明的第十二方面,提供了一种签名生成方法,包括:选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx的部分元素选择步骤;生成数r的数生成步骤;通过利用在所述数生成步骤中所生成的所述数r和电子数据M来生成包括由m个数所组成的元素的有限环Kn的元素y的数据生成步骤;通过第一秘密多项式T的逆变换T-1将在所述数据生成步骤中所生成的有限环Km的元素y变换成所述有限环Km的元素y′;通过利用在所述第一逆变换步骤中所获得的所述有限环Km的元素y′和在所述部分元素选择步骤中所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′}的元素计算步骤;如果存在所述原像的元素,则元素选择步骤选择在所述元素计算步骤中所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择步骤导致所述数生成步骤生成不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成步骤、所述第一逆变换步骤和所述元素计算步骤中的处理所计算的所述原像的元素ox;通过第二秘密多项式S的逆变换S-1将包括在所述元素选择步骤中所选择的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x的第二逆变换步骤;以及生成包括在所述第二逆变换步骤中所获得的所述有限环Kn的元素x的电子签名σ的签名生成步骤。
根据为了达到上述目标的本发明的第十三方面,提供了一种程序,该程序导致计算机执行以下步骤:通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′的第一逆变换步骤;将通过所述第一逆变换步骤中所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y并通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y}的元素计算步骤;以与所述原像的元素数α成正比的概率p选择在所述元素计算步骤中所计算的所述原像的一个元素X并以概率(1-p)输出异常值的元素选择步骤;以及将在所述元素选择步骤中所选择的所述元素X看作所述有限环Kn的元素x′并通过第二秘密多项式S的逆变换S-1将所述有限环Kn的元素x′变换成所述有限环Kn的元素x的第二逆变换步骤。
发明的有益效果
根据本发明,如上所述,可实现对应于MPKC签名方法中所使用的带有陷门的单向函数的映射双射或接近映射双射的属性。结果,针对MPKC签名方法,可确保来自选定消息攻击的安全。
附图说明
图1是示出了带有陷门的单向函数的属性的说明示图。
图2是提供了对使用带有陷门的单向函数的FDH签名方法的概述的说明示图。
图3是示出了RSA函数的属性的说明示图。
图4是提供了对基于RS函数的FDH签名方法的概述的说明示图。
图5是示出了HFE函数的属性的说明示图。
图6是提供了对基于HFE函数的PFDH签名方法的概述的说明示图。
图7是示出了HFE函数的属性的说明示图。
图8是示出了根据本发明的第一实施例的技术所应用的HFE函数(扩展的HFE函数)的属性的说明示图。
图9是示出了OV函数的属性的说明示图。
图10是提供了对基于OV函数的FDH签名方法的概述的说明示图。
图11是示出了根据本发明的第二实施例的技术所应用的基于OV函数的FDH签名方法(扩展的OV签名方法)的属性的说明示图。
图12是示出了HFEv函数的属性的说明示图。
图13是提供了对基于HFEv函数的FDH签名方法的概述并示出了根据本发明的第三实施例的扩展方法的说明示图。
图14是示例出根据基于HFE函数的PFDH签名方法的签名生成算法的说明示图。
图15是示例出根据基于HFE函数的PFDH签名方法的签名验证算法的说明示图。
图16是示例出根据基于OV/HFEv函数的FDH签名方法的签名生成算法的说明示图。
图17是示例出根据基于OV/HFEv函数的FDH签名方法的签名验证算法的说明示图。
图18是示例出根据本发明的第一实施例(扩展的HFE签名方法)的签名生成算法的说明示图。
图19是示例出根据本发明的第一实施例(扩展的HFE签名方法)的签名验证算法的说明示图。
图20是示例出根据本发明的第三实施例(第一扩展的HFEv签名方法)的签名生成算法的说明示图。
图21是示例出根据本发明的第三实施例(第一扩展的HFEv签名方法)的签名验证算法的说明示图。
图22是示例出根据本发明的第二实施例(第一扩展的OV签名方法)的签名生成算法的说明示图。
图23是示例出根据本发明的第二实施例(第一扩展的OV签名方法)的签名生成算法的说明示图。
图24是示例出根据本发明的第三实施例(第二扩展的HFEv签名方法)的签名生成算法的说明示图。
图25是示例出根据本发明的第三实施例(第二扩展的HFEv签名方法)的签名验证算法的说明示图。
图26是示例出根据本发明的第二实施例(第二扩展的OV签名方法)的签名生成算法的说明示图。
图27是示例出根据本发明的第二实施例(第二扩展的OV签名方法)的签名验证算法的说明示图。
图28是示出了能够实现根据本发明的第一至第三实施例的电子签名方法的系统的配置示例的说明示图。
图29是提供了对基于HFE函数的PFDH签名方法的安全认证的概述的说明示图。
图30是提供了对基于OV函数的FDH签名方法的安全认证的概述的说明示图。
图31是示出了能够实现根据本发明的第一至第三实施例的电子签名方法的系统的各种装置的硬件配置示例的说明示图。
具体实施方式
以下,将参照附图来详细描述本发明的优选实施例。注意,在本说明书和示图中,用相同的参考标志来表示具有本质上相同的功能和结构的元件,并且,省去了重复的说明。
[描述流程]
将简要谈及关于以下所描述的本发明的实施例的描述流程。首先,参照图1至图4来简要描述带有陷门的单向函数和利用该函数的电子签名方法。在描述中,RSA函数被引用为带有陷门的单向函数,并且,描述了其属性,并且,还简要描述了利用RSA函数的FDH签名方法。参照图28来简要描述电子签名系统的系统配置示例。
接下来,参照图5至图8、图14、图15、图18和图19来描述根据本发明的第一实施例的带有陷门的单向函数和利用该函数的电子签名方法(以下,称为扩展的HFE签名方法)。在描述中,描述了一般的HFE函数和利用该HFE函数的电子签名方法,参照图29,指出了该电子签名方法的问题,并且,描述了通过应用根据本发明的第一实施例的技术所获得的改进效果。
接下来,参照图9至图11、图16、图17、图22、图23、图26和图27来描述根据本发明的第二实施例的带有陷门的单向函数和利用该函数的电子签名方法(以下,称为扩展的OV签名方法)。在描述中,描述了一般的OV函数和利用该OV函数的电子签名方法,参照图30,指出了该电子签名方法的问题,并且,描述了通过应用根据本发明的第二实施例的技术所获得的改进效果。
接下来,参照图12、图13、图16、图17、图20、图21、图24和图25来描述根据本发明的第三实施例的带有陷门的单向函数和利用该函数的电子签名方法(以下,称为扩展的HFEv签名方法)。在描述中,描述了组合一般的HFE签名方法和OV签名方法的HFEv签名方法,指出了该电子签名方法的问题,并且,描述了通过应用根据本发明的第三实施例的技术所获得的改进效果。接下来,提供了关于根据本发明的第一至第三实施例的电子签名方法的扩展的补充描述。
接下来,简要描述了包括在能够实现根据本发明的第一至第三实施例的电子签名方法的电子签名系统中的各种装置的配置示例。最后,总结了本发明的第一至第三实施例的技术想法,并且,简要描述了从该技术想法所获得的操作效果。
(描述项目)
1.介绍
1-1.电子签名系统的配置示例
1-2.带有陷门的单向函数的属性
1-3.基于带有陷门的单向函数的电子签名方法
1-4.RSA签名方法
2.第一实施例(HFE签名方法的应用示例)
2-1.HFE函数的属性
2-2.HFE签名方法
2-3.扩展的HFE签名方法
3.第二实施例(OV签名方法的应用示例)
3-1.OV函数的属性
3-2.OV签名方法
3-3.第一扩展的OV签名方法
3-4.第二扩展的OV签名方法
4.第三实施例(HFEv签名方法的应用示例)
4-1.HFEv函数的属性
4-2.HFEv签名方法
4-3.第一扩展的HFEv签名方法
4-4.第二扩展的HFEv签名方法
5.补充
5-1.对PSS签名方法的扩展
5-2.对多层OV签名方法的扩展
5-3.HFE函数Ft的减扩展方法(Minus Extension Method)
6.硬件配置示例
7.结论
<1.介绍>
首先,在描述本发明的实施例之前,将简要描述电子签名系统的系统配置、电子签名方法中所使用的带有陷门的单向函数的属性、以及基于带有陷门的单向函数的电子签名方法的示例(FDH签名方法和RSA签名方法)。
[1-1.电子签名系统的配置示例]
首先,将参照图28来描述电子签名系统的系统配置示例。图28是示出了电子签名系统的系统配置示例的说明示图。例如,通过将稍后描述的各种电子签名方法的操作算法具体地应用于图28中所示的系统配置,可构造基于操作算法的电子签名系统。
如图28中所示,电子签名系统包括签名方10和验证方20两个实体。电子签名系统的功能通过密钥生成算法Gen、签名生成算法Sig和签名验证算法Ver三种算法实现。密钥生成算法Gen和签名生成算法Sig由签名方10使用。签名验证算法Ver由验证方20使用。在图28的示例中,密钥生成算法Gen由密钥生成装置100执行。签名生成算法Sig由签名生成装置150执行。签名验证算法Ver由签名验证装置200执行。
系统参数cp被给予签名方10。系统参数cp例如由电子签名系统的管理员给予。系统参数cp是基于安全参数1λ生成的。针对系统参数cp的输入,密钥生成算法Gen输出特定于签名方10的一对签名密钥sk和验证密钥pk((sk,pk)←Gen(cp))。签名密钥sk被保密,并且,被用于由签名方10生成电子签名。另一方面,验证密钥pk被发布给验证方20,并且,被用于由验证方20进行对电子签名的验证。
针对从密钥生成算法Gen输出的签名密钥sk和添加了电子签名的电子数据(以下,称为消息)M的输入,签名生成算法Sig输出电子签名σ(σ←Sig(sk,M))。电子签名与消息M一起被提供到验证方20,并且,被用于验证消息M的真实性。针对由签名方10所发布的验证密钥pk、签名方10所提供的消息M和电子签名σ的输入,签名验证算法Ver输出验证结果0/1。例如,如果电子签名σ证实了消息M的真实性((M,σ)被接受),则签名验证算法Ver输出1。另一方面,如果电子签名σ未证实消息M的真实性((M,σ)被拒绝),则签名验证算法Ver输出0。
如上所述,电子签名系统主要包括密钥生成算法Gen、签名生成算法Sig和签名验证算法Ver。针对不同的电子签名方法,这些算法是不同的。本说明书集中于签名生成算法Sig和签名验证算法Ver。
[1-2.带有陷门的单向函数的属性]
通过使用带有陷门Ft的单向函数,实现了签名生成算法Sig和签名验证算法Ver的功能。如图1中所示,带有陷门Ft的单向函数是这样一种函数:如果陷门未知,则很难从该函数获得反向操作结果(X=Ft -1(Y))。即,虽然存在用于(A)Ft的反向计算(Y=Ft(X))的无需陷门而有效计算的计算算法,但是,不存在用于(B)Ft的反向计算的无需陷门而有效计算的计算算法。具有这种属性的函数Ft被称为带有陷门的单向函数。
在本说明书中,将使用“前向计算算法”和“反向计算算法”的表达。将描述“前向计算算法”和“反向计算算法”的定义。用于映射f:A→B的“前向计算算法”是这样一种算法:当提供了x∈A时,计算满足f(x)=y的y∈B。另一方面,用于映射f:A→B的“反向计算算法”是这样一种算法:当提供了y∈B时,计算满足f1(y)=x的x∈A。在前向计算算法中,针对输入x∈A来决定一个输出值f(x)=y。另一方面,在反向计算算法中,针对输入y∈B,可存在多个输出值x,或可不存在输出值。因此,反向计算算法的输出值变为A∪{err},其中,err表示异常值。
[1-3.基于带有陷门的单向函数的电子签名方法]
带有陷门的单向函数Ft被以图2中所示的形式应用于签名生成算法Sig和签名验证算法Ver。图2是提供了对被称为FDH签名方法的电子签名方法的概述的说明示图。FDH签名方法的特征在于:哈希值(Hash值)而非消息M被用作用于生成电子签名的输入值。通过利用哈希函数(Hash函数)来计算哈希值H。可由任何人来执行对哈希值H的生成处理(C)。
在利用带有陷门的单向函数Ft的电子签名方法中,验证密钥pk是带有陷门的单向函数Ft。签名密钥sk是带有陷门的单向函数Ft的陷门。因此,带有陷门的单向函数Ft被发布给验证方20。另一方面,陷门由签名方10秘密管理。
签名生成算法Sig是通过利用带有陷门的单向函数Ft的反向操作(B)来从哈希值H生成电子签名σ的计算算法。如果陷门未知,则很难执行带有陷门的单向函数Ft的反向操作(B)。因此,除了签名方10以外的各方无法生成电子签名σ。另一方面,签名验证算法Ver是通过利用带有陷门的单向函数Ft的前向操作(A)来验证消息M的电子签名σ的真实性的计算算法。无需知晓陷门,就可执行带有陷门的单向函数Ft的前向计算算法(A)。因此,任何知晓验证密钥pk(带有陷门的单向函数Ft)的人可验证电子签名σ。
通过使用上述带有陷门的单向函数Ft,签名方10肯定可被附接到消息M的电子签名σ所识别。但是,假定不知道陷门的第三方不能容易地执行对带有陷门的单向函数Ft的逆运算。如果该假定不成立,则签名方10可能不一定被电子签名σ所识别。
[1-4.RSA签名方法]
RSA函数可被引用为电子签名系统所使用的典型的带有陷门的单向函数Ft。RSA函数Ft将反向运算的困难基于“难于找到将大的合数因式分解为素分量的计算解答(因式分解为素分量的问题)”。如果p和q(p≠q)是素数,N=p*q,e是n-1个彼此互质的整数,d是满足d*e≡1(mod n)的整数,并且,ZN是模N的剩余类环,则RSA函数Ft被表示为以下公式(1):
[数学1]
Figure BPA00001551158300181
在由以上公式(1)所表示的RSA函数Ft中,陷门是d。RSA函数Ft的前向计算算法包括通过利用给定的x∈ZN来计算y=Ft(x)=xe mod N的步骤。另一方面,RSA函数Ft的反向计算算法包括通过利用给定的y∈ZN和陷门d来计算x=yd mod N的步骤。由于难于找到因式分解为素分量的问题的计算解答,因此,如果陷门d未知,则难以执行该步骤。
由于经典计算机的有效解答算法并不存在,因此,因式分解为素分量的问题求解起来很难。但是,据称,在多项式时间内,量子计算机可求解因式分解为素分量的问题。因此,当量子计算机变得商业上可用时,不再确保利用RSA函数Ft的电子签名方法(RSA签名方法)的安全。类似地,当量子计算机变得商业上可用时,据称,可在多项式时间内求解离散对数问题。另外,当使用了RSA签名方法时,即便假定仅使用经典计算机,也需要使用足够长的签名长度的电子签名来确保足够的安全,这使得将RSA签名方法应用到诸如无触点IC卡之类的小型设备并不合适。
出于这些原因,注意力集中于利用通过量子计算机的有效求解是未知的带有陷门的单向函数Ft的电子签名方法。其一个示例是MPKC签名方法,MPKC签名方法的代表是HFE签名方法和OV签名方法。MPKC签名方法将安全基于“难于找到非线性多变量多项式的解答”。另外,当与RSA签名方法等相比较时,MPKC签名方法需要更短的签名长度来确保等同的安全。稍后描述的实施例涉及MPKC签名方法。具体地,将讨论将Ft映射到诸如HFE函数和OV函数的计算算法中的属性和对选定消息攻击的抵抗力。
一般而言,如果使用了带有陷门的双射单向函数Ft,则据称图2中所示的FDH签名方法和其扩展PFDH签名方法确保对选定消息攻击的安全。由公式(1)所表示的RSA函数Ft是带有陷门的双射单向函数Ft的示例。如图3(RSA函数的情形)所示,带有陷门的单向函数Ft的双射指域元素X和带有陷门的单向函数Ft的值域中的元素Y之间的一对一关系。如果带有陷门的单向函数Ft是双射的,则当均匀的输入被给予带有陷门的单向函数Ft时,可从带有陷门的单向函数Ft获得均匀的输出。
对于防止不知道签名密钥sk的第三方从验证密钥pk和消息M和电子签名σ的组合来获得签名密钥sk的任意信息,这是很重要的。通过参照图4将RSA签名方法和FDH签名方法(以下,称为RSA+FDH签名方法)的组合引用为具体示例,将考虑这一点。在图4中,示出了RSA+FDH签名方法中的签名生成方法(步骤1至步骤3)和对通过哈希函数H和RSA函数Ft所进行的映射的概念示图。
RSA+FDH签名方法中的签名生成方法由以下三个步骤执行。可由任何人来执行步骤1中的对哈希函数H的运算。通过利用陷门d(签名密钥)来执行步骤2中的对RSA函数Ft的反向运算。由于RSA函数Ft是双射的,因此,一个x总在一个y输入后被输出。如果y(1)(y(2)成立,则x(1)(x(2)成立。因此,如果哈希值y(1)、y(2)被输入到RSA函数Ft,则x(1)、x(2)被以相同的出现频率输出。
步骤1:y←H(M)、H(…)是哈希函数
步骤2:选择一个x∈{z|Ft(z)=y}
步骤3:输出电子签名σ=x
如上所述,如果带有陷门的单向函数Ft是双射的,则针对具有均匀分布的输入值,具有均匀分布的值被输出。如果分布在输入和输出之间有偏差,则存在如下危险:可从该偏差中泄露关于带有陷门的单向函数Ft的结构的信息。具体地,当存在这种偏差时,不能确保针对选定消息攻击的安全。稍后所描述的MPKC签名方法所使用的HFE函数和OV函数不是双射的。因此,针对这些MPKC签名方法,针对选定消息攻击的安全未被确保。
因此,本申请的发明人设计了一种方法,该方法能够通过改善MPKC签名方法所使用的带有陷门的单向函数Ft的分布特点来确保针对选定消息攻击的安全。在稍后描述的实施例中,示出了将以上方法应用到HFE签名方法、OV签名方法和这些签名方法的组合的示例。
<2.第一实施例(HFE签名方法的应用示例)>
首先,将描述根据本发明的第一实施例。如上所述,HFE函数不是双射的,并且因此,针对具有均匀分布的输入值,未输出具有均匀分布的值(以下,称为非均匀分布属性)。在本实施例中,HFE函数的反向计算算法被改进,以提供带有改进的分布属性的HFE函数(以下,称为扩展的HFE函数)。
[2-1.HFE函数的属性]
在描述扩展的HFE函数之前,将简要描述HFE函数Ft和HFE函数Ft的属性。
<<符号的定义>>
K:由包括q个数的元素所形成的有限环
Kn:n Ks的直积(direct product)
Ft:Kn→Kn
A:有限环K(元素数:qn)的n次扩展
B:有限环K(元素数:qm)的m次扩展
φ:线性映射A→Kn(参见以下的公式(2))
S:在Kn上的可逆仿射变换(第一保密多项式变换)
T:在Kn上的可逆仿射变换(第二保密多项式变换)
F:中心映射(参见以下的公式(3))
陷门:S、T、aij、bi、c
[数学2]
φ(x0+x1*X+…+xn-1*Xn-1)=(x0,…,xn-1)
…(2)
Figure BPA00001551158300211
如果d不是如此大的整数,则针对aij、bi、c∈A,“如果qi+qj>d″,则aij=0成立”,并且,“如果qi>d,则bj=0成立”。
<<HFE函数Ft的结构>>
HFE函数Ft被表示为变换S的映射、中心映射F(=φ-1*f*φ)和变换T的映射的复合映射Ft=T*F*S(*是映射的复合)。用以计算y=Ft(x)的算法如下:
(步骤1)通过变换S,将给定的x=(x0,…,xn-1)∈Kn变换成x’=(x0’,…,xn-1’)∈Kn
(步骤2)通过φ-1,将x’∈Kn变换成X’∈A。
(步骤3)通过中心映射f,将X’∈A变换成Y’=f(X’)∈A。
(步骤4)通过φ,将Y’∈A变换成y’=(y0’,…,yn-1’)∈Kn
(步骤5)通过变换T,将y’∈Kn变换成y=(y0,…,yn-1)∈Kn
(步骤6)输出y∈Kn
如在以上的公式(3)中所示,HFE函数Ft包括基于非线性单变量多项式的中心映射f。因此,对应于单变量多项式的根集的原像{Z∈A|f(Z)=Y′}可具有上域(codomain)A的某些元素Y’的多个元素。在该情形中,如图5中所示,针对值域的元素y,关于HFE函数Ft的原像的元素数是多个(在图5的示例中为3)。
另外,针对上域A的某些元素Y′,可能在原像{Z∈A|f(Z)=Y′}中不存在元素。在该情形中,不包括元素的原像{Z∈A|f(Z)=Y′}的上域元素并未被包括在值域中,并且因此,如图5中所示,上域和值域是不同的。由于以上属性,即使上域元素被均匀地输入,通过HFE函数Ft的反向运算所获得的域的元素不是均匀分布的。
以下,将更加详细地描述HFE函数Ft的计算算法。
<<前向计算算法>>
HFE函数Ft的前向计算算法包括通过将给定的x∈Kn替换到HFE函数Ft(x)中来获得y=Ft(x)∈Kn的步骤。如果域的一个元素x被输入到前向计算算法中,则值域的一个元素y被输出。
<<反向计算算法>>
HFE函数Ft的反向算法包括以下步骤1至步骤7。
(步骤1)通过将给定的y=(y0,…,yn-1)∈Kn应用到变换T的逆变换T-1来获得y’=(y0’,…,yn-1’)∈Kn
(步骤2)通过φ-1,将y’=(y0’,…,yn-1’)∈Kn变换成Y’∈A。
(步骤3)通过利用Y’来计算集合X’∈{Z∈A|f(Z)=Y’}。如果{Z∈A|f(Z)=Y’}是空集,则输出异常值err。例如,通过将多项式f(X)-Y’因式分解为因子来确定X’∈{Z∈A|f(Z)=Y’}。如果上域中的元素Y’被随机选择,则元素Y’的原像{Z∈A|f(Z)=Y’}具有m个元素的概率近似由1/(m!e)给出(e是纳皮尔数)。
(步骤4)从集合X’∈{Z∈A|f(Z)=Y’}中选出一个元素X’。
(步骤5)通过φ,将步骤4中所选出的一个元素X’∈A变换成x’=(x0’,…,xn-1’)∈Kn
(步骤6)通过变换S的逆变换S-1,将x’∈Kn变换成x=(x0,…,xn- 1)∈Kn
(步骤7)输出x∈Kn
在上述步骤3中,X’∈{Z∈A|f(Z)=Y’}的元素数α=|{Z∈A|f(Z)=Y’}|可以是α=0或α≥2。因此,即使具有均匀分布的上域的元素被输入,反向计算算法的输出值也不是均匀分布的。如上所述,如果存在这种分布偏差,则存在如下危险:可从该偏差中泄露关于HFE函数Ft的结构的信息。因此,为了确保针对选定消息攻击的安全,需要校正这种分布偏差的发明。
[2-2.HFE签名方法]
到此为止,已经描述了HFE函数Ft。接下来,将描述利用HFE函数Ft的电子签名方法(HFE签名方法)。此处,利用HFE函数的PFDH签名方法(HFE+PFDH签名方法)将作为HFE签名方法的示例来描述。
<<PFDH签名方法>>
首先,将描述PFDH签名方法中的密钥生成算法Gen、签名生成算法Sig和签名验证算法Ver。PFDH签名方法的这些算法使用带有陷门的单向函数Ft:A→B和哈希函数H:{0,1}*→B。
(密钥生成算法Gen)
密钥生成算法Gen通过将安全参数设定为1λ来计算(sk,pk),签名密钥sk为Ft的陷门t,而验证密钥pk为Ft((sk,pk)←Gen(1λ))。
(签名生成算法Sig)
在消息M和签名密钥sk被输入之后,签名生成算法Sig通过以下步骤1至步骤4来计算电子签名σ(σ←Sig(sk,M))。
(步骤1)生成随机数r。
(步骤2)计算y=H(M,r)∈B。
(步骤3)通过执行利用陷门t的Ft的反向计算算法,计算满足y=Ft(x)的x。如果不存在满足y=Ft(x)的x,则返回步骤1。
(步骤4)输出电子签名σ=(x,r)。
(签名验证算法Ver)
在验证密钥pk=Ft、消息M和电子签名σ=(x,r)已经被输入之后,签名验证算法Ver通过以下步骤1和步骤2来验证消息M的电子签名σ的真实性(0/1←Ver(pk,M,σ))。
(步骤1)判定Ft(x)=H(M,r)是否成立。
(步骤2)如果Ft(x)=H(M,r),则输出1,并且,如果Ft(x)≠H(M,r),则输出0。
(FDH签名方法和PFDH签名方法之间的差异)
FDH签名方法和PFDH签名方法之间的主要差异是在签名生成算法Sig中是否使用了随机数r。通过如上所述使用随机数r,针对相同的消息M,可重新选择在带有陷门的单向函数Ft的上域中的元素y。在FDH签名方法中,如果针对某些消息M的哈希值y不存在满足y=Ft(x)的x,则不能生成消息M的电子签名σ。但是,如果使用了PFDH签名方法,则可解决FDH签名方法的这种问题。
<<HFE+PFDH签名方法>>
接下来,将描述在HFE+PFDH签名方法中的签名生成算法Sig和签名验证算法Ver。HFE+PFDH签名方法是利用HFE函数Ft的PFDH签名方法。在HFE+PFDH签名方法中,签名密钥sk被设定为HFE函数Ft的陷门S、T、aij、bi、c,而验证密钥pk被设定为Ft
(签名生成算法Sig(反向计算算法))
在消息M和签名密钥sk被输入之后,签名生成算法Sig通过以下步骤1至步骤9来计算电子签名σ(σ←Sig(sk,M))。
(步骤1)生成随机数r。
(步骤2)通过利用随机数r和消息M来计算哈希值y∈Kn←H(M,r)。
(步骤3)通过将y=(y0,…,yn-1)∈Kn应用到变换T的逆变换T-1来获得y’=(y0’,…,yn-1’)∈Kn
(步骤4)通过φ-1,将y’=(y0’,…,yn-1’)∈Kn变换成Y’∈A。
(步骤5)计算集合X’∈{Z∈A|f(Z)=Y’}。
(步骤6)从集合{Z∈A|f(Z)=Y’}中选出一个元素X’。如果{Z∈A|f(Z)=Y’}是空集,则返回到步骤1的处理。
(步骤7)通过φ,将X’∈A变换成x’=(x0’,…,xn-1’)∈Kn
(步骤8)通过变换S,将x’∈Kn变换成x=(x0,…,xn-1)∈Kn
(步骤9)输出电子签名σ=(x,r)。
(签名验证算法Ver(前向算法))
在验证密钥pk=Ft、消息M和电子签名σ=(x,r)已经被输入之后,签名验证算法Ver通过以下步骤1至步骤3来验证消息M的电子签名σ的真实性(0/1←Ver(pk,M,σ))。
(步骤1)通过利用包括在电子签名σ和消息M中的r来计算哈希值y←H(M,r)。
(步骤2)通过将包括在电子签名σ中的x∈Kn替换到HFE函数Ft(x)中来计算y”=Ft(x)∈Kn
(步骤3)如果y=y”,则输出1,并且,如果y≠y”,则输出0。
(HFE+PFDH签名方法的特点)
在HFE+PFDH签名方法中,针对上域的某些元素,HFE函数Ft的原像可能没有元素。因此,如图6中所示,HFE函数Ft的上域和值域并不匹配。但是,在HFE+PFDH签名方法中,针对相同的消息M,可重新选择HFE函数Ft的上域中的元素y,并且因此,电子签名σ可被添加到任意消息M。在图6的示例中,y(e)=H(M,r(e))并未包括在消息M的HFE函数Ft的值域中。因此,在该情形中,随机数r被再次生成,以通过利用不同的随机数r来生成哈希值y。
取决于HFE函数Ft的属性,针对包括在HFE函数Ft的值域中的一个元素y,关于HFE函数Ft的原像的元素数可以是多个。在图6的示例中,针对包括在HFE函数Ft的值域中的元素y(1),获得了关于HFE函数Ft的原像的元素集x(1)∈{z|Ft(z)=y(1)}。类似地,针对包括在HFE函数Ft的值域中的元素y(2),获得了关于HFE函数Ft的原像的元素集x(2)∈{z|Ft(z)=y(2)}。在图6的示例中,|{z|Ft(z)=y(1)}|>|{z|Ft(z)=y(2)}|成立。即,如果随机给出HFE函数Ft的上域中的元素y,则x(1)的出现频率>x(2)的出现频率。
(HFE函数Ft的非均匀分布属性)
将参照图7更加详细地描述这一点。图7示出了当包括在HFE函数Ft的上域中的元素y(1),…,y(5)以相同的概率(1/5)被选择时,所选元素的HFE函数Ft的原像的元素x(1),…,x(5)的出现概率。在图7的示例中,假定x(1)和x(2)通过HFE函数Ft被映射到y(2)。还假定x(3)、x(4)和x(5)通过HFE函数Ft被映射到y(4)。另外,假定针对y(1)、y(3)和y(5)不存在HFE函数Ft的原像的元素。
如果x(1),…,x(5)中的每一个以1/5的概率被输入到HFE函数Ft的反向计算算法中,则针对y(1)、y(3)和y(5)执行对y的重新处理(重新生成随机数r),因为针对y(1)、y(3)和y(5),不存在原像的元素。执行重新处理的概率是3/5。另一方面,由于针对y(2),原像的元素数是2,因此,原像的元素x(1)以1/2的概率被进一步选择,并且,原像的元素x(2)以1/2的概率被进一步选择。即,x(1)、x(2)中的每一个的出现概率是1/2*1/5=1/10。
类似地,由于针对y(4),原像的元素数是3,因此,原像的元素x(3)以1/3的概率被进一步选择,原像的元素x(4)以1/3的概率被进一步选择,并且,原像的元素x(5)以1/3的概率被进一步选择。即,x(3)、x(4)和x(5)中的每一个的出现概率是1/3*1/5=1/15。因此,通过利用HFE函数Ft反向计算算法所获得的HFE函数Ft的元素x(1),…,x(5)的出现概率不是均匀的。因此,本申请的发明人设计了改善这种出现概率的非均匀性的方法(扩展的HFE签名方法)。以下,将描述扩展的HFE签名方法,但是,此处将HFE+PFDH签名方法的签名生成算法Sig和签名验证算法Ver的处理流程放在一起。
(签名生成算法Sig的细节)
首先,将参照图14描述由HFE+PFDH签名方法的签名生成算法Sig所进行的处理的流程。图14是示出了由HFE+PFDH签名方法的签名生成算法Sig所进行的处理的流程的说明示图。
如图14中所示,首先,签名方10准备消息M和签名密钥sk(步骤S102),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig生成随机数r(S104)。接下来,签名生成算法Sig通过利用消息M和随机数r来计算哈希值y=H(M,r)(S106)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Kn计算中心映射f的上域中的元素Y′∈A(S108)。
接下来,签名生成算法Sig计算X′∈{Z∈A|f(Z)=Y′}来确定集合{Z∈A|f(Z)=Y′}是否有元素(S110)。如果集合{Z∈A|f(Z)=Y′}有元素,则签名生成算法Sig进行到步骤S112中的处理。另一方面,如果集合{Z∈A|f(Z)=Y′}没有元素,则签名生成算法Sig返回到步骤S104中的处理。如果处理进行到步骤S112,则签名生成算法Sig选择集合{Z∈A|f(Z)=Y′}中的一个元素X′(S112)。
接下来,签名生成算法Sig基于变换S的逆变换S-1将步骤S112中所选的元素X′变换成x∈Kn。接下来,签名生成算法Sig输出电子签名σ=(x,r)(S116)。HFE函数Ft的非均匀分布属性主要由步骤S110中的分支处理和步骤S112中的选择处理所导致。
(签名验证算法Ver的细节)
接下来,将参照图15描述由HFE+PFDH签名方法的签名验证算法Ver所进行的处理的流程。图15是示出了由HFE+PFDH签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图15中所示,首先,验证方20从签名方10获取消息M、电子签名σ=(M,r)和验证密钥pk(S132),并且,将消息M、电子签名σ=(M,r)和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用包括在电子签名σ和消息M中的随机数r来计算哈希值y=H(M,r)(S134)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S136)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S138)。
(HFE+PFDH签名方法的安全认证)
接下来,将参照图29简要考虑HFE+PFDH签名方法的安全认证。HFE+PFDH签名方法的安全通常由图29中所示的仿真来认证。在仿真中,签署oracle仿真(Signing oracle simulation)的步骤1有问题。在签署oracle仿真的步骤1中,通过随机选择上域中的元素,针对所选元素,随机选择了HFE函数Ft的原像的元素xj。但是,即使上域中的元素被随机选择,由于HFE函数Ft的非均匀分布属性,原像的元素也未被随机选择。因此,针对HFE签名方法,未确保针对选定消息攻击的安全。
[2-3.扩展的HFE签名方法]
因此,本申请的发明人改进了HFE函数Ft的反向计算算法,并且,设计了带有陷门的单向函数Ft(扩展的HFE函数Ft),使得如果输入了具有均匀分布的上域中的元素,则输入元素的原像的元素是均匀分布的。以下,将描述利用扩展的HFE函数Ft的电子签名方法(扩展的HFE签名方法)。
<<扩展的HFE签名方法的签名生成算法Sig>>
扩展的HFE签名方法是以上HFE+PFDH签名方法的扩展(以下,称为扩展A)。扩展的HFE签名方法的特征在于,当上域的某些元素的原像的一个元素x关于以上HFE签名方法的签名生成算法中的中心映射f被选择时,原像的一个元素x以与其元素数α成正比的概率p被选择。即,根据扩展的HFE签名方法,即使关于中心映射f的原像针对上域的某些元素y具有元素x,也以概率(1-p)执行对元素y的重新处理。因此,通过引入与上域的元素y的原像的元素数α成正比的概率p,原像的所有元素x的出现频率变为相等的。以下,将详细描述扩展的HFE签名方法。
(签名生成算法Sig的概述)
在消息M和签名密钥sk被输入之后,扩展的HFE签名方法的签名生成算法Sig通过遵循步骤1至步骤9来计算电子签名σ(σ←Sig(sk,M))。签名密钥sk是Ft的陷门S、T、aij、bi、c,而验证密钥pk是Ft。每个符号的定义与对HFE+PFDH签名方法的描述中所使用的定义相同。
(步骤1)生成随机数r。
(步骤2)通过利用随机数r和消息M来计算哈希值y←H(M,r)。
(步骤3)通过将y=(y0,…,yn-1)∈Kn应用到变换T的逆变换T-1来获得y’=(y0’,…,yn-1’)∈Kn
(步骤4)通过φ-1,将y’=(y0’,…,yn-1’)∈Kn变换成Y’∈A。
(步骤5)计算集合X’∈{Z∈A|f(Z)=Y’}。
(步骤6)一个元素X′以与集合的元素数|{Z∈A|f(Z)=Y’}|=α成正比的概率p=s*α(s是独立于α的比例系数和每个元素的选择概率)被从集合{Z∈A|f(Z)=Y’}中选择,并且,处理以概率(1-p)返回到步骤1(如果元素数α=0,则处理总返回到步骤1)。
(步骤7)通过φ,将X’∈A变换成x’=(x0’,…,xn-1’)∈Kn
(步骤8)通过变换S,将x’∈Kn变换成x=(x0,…,xn-1)∈Kn
(步骤9)输出电子签名σ=(x,r)。
扩展的HFE签名方法和HFE签名方法之间的主要差异是上述步骤6的配置。在HFE签名方法中,如果元素数α≥1,则处理总进行到步骤7。但是,在扩展的HFE签名方法中,即使元素数α≥1,处理也以概率(1-p)返回到步骤1。通过采用这种配置,如图8中所示,如果给出了带有相同概率的上域的元素y,则上域的给定元素y的原像的元素x具有相同的出现概率。
在图8的示例中,y(1),…,y(5)被给予1/5的概率。在这些值中,y(1)、y(3)和y(5)的原像的元素数α是0。y(2)的原像的元素数α是2。因此,如果输入y(2),则原像的元素x(1)、x(2)中的一个以与y(2)的原像的元素数α=2成正比的概率p(在图8的示例中,p=α/3=2/3)被选择。即,选择y(2)的原像的元素x(1)、x(2)中的每一个的概率是p/2*1/5=1/15。
y(4)的原像的元素数α是3。因此,如果输入y(4),则原像的元素x(3)、x(4)、x(5)中的一个以与y(4)的原像的元素数α=3成正比的概率p(在图8的示例中,p=α/3=3/3)被选择。因此,选择原像的元素x(3)、x(4)、x(5)中的每一个的概率是p/3*1/5=1/15。即,x(1),…,x(5)都具有相同的出现概率1/15。
当选择了上域的元素y(2)时,重新处理上域的元素y的概率是(1-2/3)*1/5=1/15。然后,当选择了上域的元素y(4)时,重新处理上域的元素y的概率是(1-3/3)*1/5=0。另外,当选择了上域的元素y(1)、y(3)或y(5)并且重新处理上域的元素y的概率是1/15+0+3/5=2/3时,重新处理上域的元素y。
因此,通过应用扩展的HFE签名方法,针对均匀给定的上域的元素,关于扩展的HFE函数Ft的原像的元素x的出现概率变得均匀。即,扩展的HFE函数Ft的反向计算算法具有如下均匀的分布属性:当输入均匀分布的上域元素时,输出均匀分布的原像的元素。因此,针对利用扩展的HFE函数Ft的扩展的HFE签名方法,未确保针对选定消息攻击的安全。
以下,将参照图18和图19一起给出扩展的HFE签名方法的签名生成算法Sig和签名验证算法Ver中的处理的流程。
(签名生成算法Sig的细节)
首先,将参照图18描述由扩展的HFE签名方法的签名生成算法Sig所进行的处理的流程。图18是示出了由扩展的HFE签名方法的签名生成算法Sig所进行的处理的流程的说明示图。
如18中所示,首先,签名方10准备消息M和签名密钥sk(S302),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig生成随机数r(S304)。接下来,签名生成算法Sig通过利用消息M和随机数r来计算哈希值y=H(M,r)(S306)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Kn计算中心映射f的上域中的元素Y′∈A(S308)。
接下来,签名生成算法Sig计算X′∈{Z∈A|f(Z)=Y′},并且,以与集合{Z∈A|f(Z)=Y’}的元素数α成正比的概率p进行到步骤S312中的处理(S310)。签名生成算法Sig以概率(1-p)返回到步骤S304的处理(S310)。如果处理进行到步骤S312,则签名生成算法Sig选择集合{Z∈A|f(Z)=Y′}的一个元素X′(S312)。
接下来,签名生成算法Sig基于变换S的逆变换S-1将步骤S112中所选的元素X′变换成x∈Kn(S314)。接下来,签名生成算法Sig输出电子签名σ=(x,r)(S316)。扩展的HFE函数Ft的均匀分布属性主要由步骤S310中的基于概率p的分支处理所实现。
(签名验证算法Ver的细节)
接下来,将参照图19描述由扩展的HFE签名方法的签名验证算法Ver所进行的处理的流程。图19是示出了由扩展的HFE签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图19中所示,首先,验证方20从签名方10获取消息M、电子签名σ=(M,r)和验证密钥pk(S332),并且,将消息M、电子签名σ=(M,r)和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用包括在电子签名σ和消息M中的随机数r来计算哈希值y=H(M,r)(S334)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S336)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S338)。
因此,在由扩展的HFE签名方法和HFE+PFDH签名方法的签名验证算法Ver所进行的处理的流程之间没有显著的差异。
(扩展的HFE签名方法的安全认证)
扩展的HFE签名方法的安全通常通过利用例如称为归约算法(reduction algorithm)的仿真来认证。在HFE+PFDH签名方法中,如关于图29中所示的HFE+PFDH签名方法的安全认证的描述所谈及的,不能确保针对选定消息攻击的安全的原因在于,针对签署oracle仿真中的上域的随机给定的元素,HFE函数Ft的原像的元素xj未被随机选择。但是,在扩展的HFE签名方法中,由于扩展的HFE函数Ft的均匀分布属性,通过随机给出上域的元素y,可随机选择原像的元素xj。因此,针对扩展的HFE签名方法,确保了针对选定消息攻击的安全。
已经描述了根据本发明的第一实施例的扩展的HFE签名方法。如上所述,针对扩展的HFE签名方法,确保了针对选定消息攻击的安全。扩展的HFE签名方法基于MPKC签名方法,并且,还具有对利用量子计算机的篡改的抵抗力,该MPKC签名方法将安全基于难以求解在某有限环上随机选择的非线性多项式集合。与其他MPKC签名方法一样,与RSA签名方法等相比,扩展的HFE签名方法还获得需要更短的签名长度来确保等同的安全的效果。
<3.第二实施例(OV签名方法的应用示例)>
接下来,将描述本发明的第二实施例。在上述第一实施例中,HFE签名方法被扩展,并且,提出了能够通过改进HFE函数的非均匀分布属性来确保针对选定消息攻击的安全的扩展的HFE签名方法。在本实施例中,将提出能够通过改进OV函数的非均匀分布属性来确保针对选定消息攻击的安全的扩展的OV签名方法(第一扩展的OV签名方法和第二扩展的OV签名方法)。
[3-1.OV函数的属性]
在描述扩展的OV函数之前,将简要描述OV函数Ft的定义和OV函数Ft的属性。为了简单,通过利用油变量(Oil variable)的元素数o,OV函数Ft的上域的元素数被设定。
<<符号的定义>>
K:有限环
Ft:映射Mapping Kn→Ko
n:n=o+v
ox:ox=(ox1,…,oxo):油变量
vx:vx=(vx1,…,vxv):醋变量(Vinegar variable)
F:Kn→Ko,中心映射(参见以下的公式(4)和公式(5))
S:在Kn上进行可逆仿射变换(第一秘密多项式变换)
T:在Ko上进行可逆仿射变换(第二秘密多项式变换)
陷门:S、T、aij、bij、ci、di、e
[数学3]
F = &Sigma; i = 1 o &Sigma; j = 1 v a ij o x i v x j + &Sigma; i = 1 v &Sigma; j = 1 v b ij v x i v x j + &Sigma; i = 1 o c i o x i + &Sigma; i = 1 v d i v x i + e
…(4)
F(ox1,…,oxo,vx1,…,vxv)=(f1,…,fo)
…(5)
其中,aij、bij、ci、di、e∈K,并且,f1,…,fo∈K[ox1,…,oxo,vx1,…,vxv]
<<OV函数Ft的结构>>
OV函数Ft被表示为变换S的映射、中心映射F和变换T的映射的复合映射Ft=T*F*S(*是直积)。用以计算y=Ft(x)的算法如下:
(步骤1)通过变换S,将给定的x=(x0,…,xn-1)∈Kn变换成ov=(ox1,…,oxo,vx1,…,vxv)∈Kn
(步骤2)通过中心映射F(ox1,…,oxo,vx1,…,vxv),将ov=(ox1,…,oxo,vx1,…,vxv)变换成y’=(y1’,…,yo’)∈Ko
(步骤3)通过变换T,将y′∈Ko变换成y=(y1,…,yo)∈Ko
(步骤4)输出y∈Ko
如在以上的公式(4)和公式(5)中所示,OV函数Ft包括基于非线性单变量多项式的中心映射F。因此,对应于单变量多项式的根集的原像{z∈Ko|F(z)=y′}不具有上域Kn的某些元素y′的元素。在该情形中,原像{z∈Ko|F(z)=y′}不包含元素的上域的元素未被包括在值域中,并且因此,如图9中所示,上域和值域是不同的。由于以上属性,即使均匀地输入上域的元素,通过OV函数Ft的反向运算所获得的域元素也不是均匀分布的。
以下,将更加详细地描述OV函数Ft的计算算法。
<<前向计算算法>>
OV函数Ft的前向计算算法包括通过将给定x∈Kn替换到OV函数Ft(x)中来获得y=Ft(x)∈Ko的步骤。如果域的一个元素x被输入到前向计算算法中,则值域的一个元素y被输出。
<<反向计算算法>>
如果醋变量vx的集合被表示为V,OV函数Ft的域被表示为A1,并且,其上域被表示为A2,则OV函数Ft可被表示为Ft:A1×V→A2,(x,vx)→Ft(x,vx)。通过利用这种表示,OV函数Ft的反向计算算法在以下两个步骤中被执行:(S1)固定醋变量vx,以及(S2)计算函数Ft(·,vx):A1→A1,x→F(x,vx),其中,醋变量vx是固定的。更具体地,OV函数Ft的反向计算算法包括以下步骤1至步骤5。
(步骤1)通过将给定的y=(y1,…,yo)∈Ko应用到变换T的逆变换T-1来获得y’=(y1’,…,yo’)∈Ko
(步骤2)随机选择醋变量vx=(vx1,…,vxv)∈Kv
(步骤3)通过利用y’=(y1’,…,yo’)∈Ko和醋变量vx∈Kv来计算满足F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)的油变量ox=(ox1,…,oxo)。如果不存在解,则返回到步骤2,以重新选择醋变量vx。
(步骤4)通过向由油变量ox∈Ko和醋变量vx∈Kv所组成的x’=(ox1,…,oxo,vx1,…,vxv)∈Kn应用变换S的逆变换S-1来获得x=(x1,…,xn)∈Kn
(步骤5)输出x∈Kn
在以上的步骤3中,关于中心映射F的原像{z∈Ko|F(z,vx)=y}可能根本没有元素。在这种情形中,通过返回到步骤2中的处理,醋变量vx被重新采用。但是,取决于醋变量vx,OV函数Ft的值域大小变化了。因此,即便具有均匀分布的上域元素被输入到OV函数Ft,反向计算算法的输出值并不具有均匀分布。如果存在这种分布偏差,则存在如下危险:可从该偏差中泄露关于OV函数Ft的结构的信息。因此,为了确保针对选定消息攻击的安全,需要校正这种分布偏差的发明。
[3-2.OV签名方法]
到此为止,已经描述了OV函数Ft。接下来,将描述利用OV函数Ft的电子签名方法(OV签名方法)。此处,利用OV函数的FDH签名方法(OV+FDH签名方法)将作为OV签名方法的示例来描述。
<<OV+FDH签名方法>>
将描述在OV+FDH签名方法中的签名生成算法Sig和签名验证算法Ver。在OV+FDH签名方法中,签名密钥sk被设定为Ft的陷门S、T、aij、bij、ci、di、e,而验证密钥pk被设定为Ft
(签名生成算法Sig(反向计算算法))
在消息M和签名密钥sk被输入之后,签名生成算法Sig通过以下步骤1至步骤6来计算电子签名σ(σ←Sig(sk,M))。
(步骤1)通过利用随机数r和消息M来计算哈希值y∈Ko←H(M)。
(步骤2)通过将y=(y1,…,yo)∈Ko应用到变换T的逆变换T-1来获得y’=(y1’,…,yo’)∈Ko
(步骤3)随机选择醋变量vx=(vx1,…,vxv)∈Kv
(步骤4)通过利用y’∈Ko和醋变量vx∈Kv来计算满足F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)的油变量ox=(ox1,…,oxo)。如果不存在解,则返回到步骤3,以重取醋变量。
(步骤5)通过向由油变量ox∈Ko和醋变量vx∈Kv所组成的x’=(ox1,…,oxo,vx1,…,vxv)∈Kn应用变换S反变换S-1来获得x=(x1,…,xn)∈Kn
(步骤6)输出电子签名σ=x。
(签名验证算法Ver(前向算法))
在验证密钥pk=Ft、消息M和电子签名σ=x已经被输入之后,签名验证算法Ver通过以下步骤1至步骤3来验证消息M的电子签名σ的真实性(0/1←Ver(pk,M,σ))。
(步骤1)通过利用消息M来计算哈希值y←H(M)。
(步骤2)通过将包括在电子签名σ中的x=(x1,…,xn)∈Kn替换到OV函数Ft中来计算y”。
(步骤3)如果y=y”,则输出1,并且,如果y≠y”,则输出0。
(OV+FDH签名方法的特点)
在OV+FDH签名方法中,针对上域的某些元素,OV函数Ft的原像可能没有元素。因此,如图10中所示,OV函数Ft的上域和值域并不匹配。如果针对上域的某些元素,原像不具有元素,则OV函数Ft的反向计算算法重新随机选择醋变量。但是,醋变量极大地取决于OV函数Ft的油变量ox的值域大小。因此,如图10中所示,取决于如何选取醋变量vx,OV函数Ft的值域大小变化。
在图10的示例中,Ft(vx(1),·)具有比Ft(vx(2),·)大的值域。在该情形中,如果上域的元素被均匀地输入,则Ft(vx(1),·)在反向计算算法的步骤4中具有更低的返回步骤3的概率。即,醋变量vx(1)的出现概率增加,其创建了OV签名方法的反向计算算法中的输入和输出的分布偏差。因此,本申请的发明人设计了改进这种分布偏差的方法(扩展的OV签名方法)。以下,将描述扩展的OV签名方法,但是,此处,将一起给出OV+FDH签名方法的签名生成算法Sig和签名验证算法Ver中的处理的流程。
(签名生成算法Sig的细节)
首先,将参照图16描述由OV+FDH签名方法的签名生成算法Sig所进行的处理的流程。图16是示出了由OV+FDH签名方法的签名生成算法Sig所进行的处理的流程的说明示图。
如图16中所示,首先,签名方10准备消息M和签名密钥sk(S202),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig通过利用消息M来计算哈希值y=H(M)(S204)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Ko计算中心映射F的上域中的元素y′∈Ko(S206)。接下来,签名生成算法Sig选择醋变量vx∈Kv(S208)。
接下来,签名生成算法Sig计算ox∈{z∈Ko|F(z,vx)=y′}来确定集合{z∈Ko|F(z,vx)=y′}是否有元素(S210)。如果集合{z∈Ko|F(z,vx)=y′}有元素,则签名生成算法Sig进行到步骤S212中的处理。另一方面,如果集合{z∈Ko|F(z,vx)=y′}没有元素,则签名生成算法Sig返回到步骤S208中的处理。如果处理进行到步骤S212,则签名生成算法Sig选择集合{z∈Ko|F(z,vx)=y′}中的一个元素ox(S212)。
接下来,签名生成算法Sig基于变换S的逆变换S-1将步骤S212中所选的元素ox和步骤S208中所选的醋变量vx所组成的元素x’=(ox1,…,oxo,vx1,…,vxv)变换成x∈Kn(S124)。接下来,签名生成算法Sig输出电子签名σ=x(S216)。OV函数Ft的非均匀分布属性主要由步骤S210和S208中的对醋变量的重取处理所导致。
(签名验证算法Ver的细节)
接下来,将参照图17描述由OV+FDH签名方法的签名验证算法Ver所进行的处理的流程。图17是示出了由OV+FDH签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图17中所示,首先,验证方20从签名方10获取消息M、电子签名σ=x和验证密钥pk(S232),并且,将消息M、电子签名σ=x和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用M来计算哈希值y=H(M)(S234)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S236)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S238)。
(OV+FDH签名方法的安全认证)
接下来,将参照图30简要考虑OV+FDH签名方法的安全认证。OV+FDH签名方法的安全通常由图30中所示的仿真来认证。在仿真中,随机oracle仿真的步骤2和签署oracle仿真的步骤1有问题。在随机oracle仿真的步骤2中,即使随机选择xj,Ft(xj)也可能不是均匀分布的。在签署oracle仿真的步骤1中,也假定随机选择(vj,xj),但是,实际上(vj,xj)不是随机的,因为,OV函数的值域大小取决于醋变量(此处,为vj)。因此,针对HFE签名方法,未确保针对选定消息攻击的安全。
[3-3.第一扩展的OV签名方法]
因此,本申请的发明人改进了OV函数Ft的反向计算算法,并且,设计了带有陷门的单向函数Ft(以下,称为第一扩展的OV函数Ft),使得如果输入了具有均匀分布的上域中的元素,则输入元素的原像的元素是均匀分布的。以下,将描述利用第一扩展的OV函数Ft的电子签名方法(以下,称为第一扩展的OV签名方法)。
第一扩展的OV签名方法是以上OV+FDH签名方法的扩展(以下,称为扩展B)。如图11中所示,第一扩展OV签名方法被设计为,如果关于醋变量vx是固定的中心映射F的原像针对上域的某些元素不具有元素,则重新选择上域的元素y,而非重取醋变量vx。上域的元素y并不影响中心映射F的值域大小。因此,通过应用第一扩展的OV签名方法,可使得从中心映射F输出的醋变量vx的分布是均匀的。结果,第一扩展的OV函数Ft具有均匀分布属性。以下,将详细描述第一扩展的OV签名方法。
(签名生成算法Sig的概述)
在消息M和签名密钥sk被输入之后,第一扩展的OV签名方法的签名生成算法Sig通过遵循步骤1至步骤7来计算电子签名σ(σ←Sig(sk,M))。签名密钥sk是Ft的陷门S、T、aij、bij、ci、di,e,而验证密钥pk是Ft。每个符号的定义与对OV+FDH签名方法的描述中所使用的定义相同。
(步骤1)随机选择醋变量vx=(vx1,…,vxv)∈Kv
(步骤2)生成随机数r。
(步骤3)通过利用随机数r和消息M来计算哈希值y∈K^o←H(r,M)。
(步骤4)通过将y=(y1,…,yo)∈Ko应用到变换T的逆变换T-1来获得y’=(y0’,…,yo’)∈Ko
(步骤5)通过利用y’∈Ko和醋变量vx∈Kv来计算满足F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)的油变量ox=(ox1,…,oxo)。如果不存在解,则返回到步骤2,以重取随机数r。
(步骤5)计算集合X’∈{Z∈A|f(Z)=Y’}。
(步骤6)通过将变换S的逆变换S-1应用到由油变量ox∈Ko和醋变量vx∈Kv所组成的x’=(ox1,…,oxo,vx1,…,vxv)∈Kn来获得x=(x1,…,xn)∈Kn
(步骤7)输出电子签名σ=(x,r)。
第一扩展的OV签名方法和OV+FDH签名方法之间的主要差异是上述步骤5的配置。在OV+FDH签名方法中,如果没有获得F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)的解,则执行对醋变量vx的重取处理。但是,在第一扩展的OV签名方法中,醋变量vx在步骤1中是固定的,并且,中心映射F的上域的元素y′被重取。对元素y′的重取并不影响值域的大小,因此,不导致醋变量vx的出现概率的偏差。另外,在第一扩展的OV签名方法中,如PFDH签名方法一样,引入了随机数r来使能针对相同消息M的元素y′的重取。通过如上述形成配置,第一扩展的OV签名方法具有确保针对选定消息攻击的安全的均匀分布属性。
以下,将参照图22和图23一起给出第一扩展的OV签名方法的签名生成算法Sig和签名验证算法Ver中的处理的流程。
(签名生成算法Sig的细节)
首先,将参照图22描述由第一扩展的OV签名方法的签名生成算法Sig所进行的处理的流程。图22是示出了由第一扩展的OV签名方法的签名生成算法Sig所进行的处理的流程的说明示图。
如22中所示,首先,签名方10准备消息M和签名密钥sk(S502),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig随机选择醋变量vx(S504)。接下来,签名生成算法Sig生成随机数r(S506)。接下来,签名生成算法Sig通过利用消息M和随机数r来计算哈希值y=H(M,r)(S508)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Ko计算中心映射F的上域中的元素y′∈Ko(S510)。
接下来,签名生成算法Sig计算ox∈{z∈Ko|F(z,vx)=y′},以确定集合{z∈Ko|F(z,vx)=y′}是否具有元素(S512)。如果集合{z∈Ko|F(z,vx)=y′}有元素,则签名生成算法Sig进行到步骤S514中的处理。另一方面,如果集合{z∈Ko|F(z,vx)=y′}没有元素,则签名生成算法Sig返回到步骤S506中的处理。如果处理进行到步骤S514,则签名生成算法Sig选择集合{z∈Ko|F(z,vx)=y′}中的一个元素(S514)。
接下来,签名生成算法Sig基于变换S的逆变换S-1来变换由步骤S514中所选的元素ox和步骤S504中所选的醋变量vx所组成的元素x’=(ox1,…,oxo,vx1,…,vxv)(S516)。接下来,签名生成算法Sig输出电子签名σ=x(S518)。当{z∈Ko|F(z,vx)=y′}在步骤S512中没有元素时,通过重新选择步骤S506中的随机数r而非重取醋变量vx,实现了第一扩展的OV函数Ft的均匀分布属性。
(签名验证算法Ver的细节)
接下来,将参照图23描述由第一扩展的OV签名方法的签名验证算法Ver所进行的处理的流程。图23是示出了由第一扩展的OV签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图23中所示,首先,验证方20从签名方10获取消息M、电子签名σ=(M,r)和验证密钥pk(S532),并且,将消息M、电子签名σ=(M,r)和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用包括在电子签名σ和消息M中的随机数r来计算哈希值y=H(M,r)(S534)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S536)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S538)。
因此,在由第一扩展的OV签名方法和OV+FDH签名方法的签名验证算法Ver所进行的处理的流程之间没有显著的差异。但是,第一扩展的OV签名方法具有引入其中的随机数r,并且,与OV+FDH签名方法的不同之处在于,随机数r被用于签名验证。
已经描述了根据本发明的第二实施例的第一扩展的OV签名方法。
[3-4.第二扩展的OV签名方法]
到此为止,已经描述了通过改进OV+FDH签名方法的非均匀分布属性来使能确保针对选定消息攻击的安全的第一扩展的OV签名方法。第一扩展的OV签名方法是设计OV函数Ft的反向计算算法的方法。此处,将描述改进OV+FDH签名方法的非均匀分布属性的其他发明(以下,称为第二扩展的OV签名方法)。
OV+FDH签名方法的非均匀分布属性是由以下操作所导致的:当醋变量vx是固定的中心映射F(vx,·)没有解时,重取醋变量vx。为了避免这种问题,本申请的发明人提供了一种避免如第一扩展的OV签名方法那样重取醋变量vx的发明。但是,如果醋变量vx是固定的中心映射F(vx,·)没有解的概率微不足道,则不出现OV+FDH签名方法的问题。因此,作为第二扩展的OV签名方法,本申请的发明人设计了使得醋变量vx是固定的中心映射F(vx,·)没有解的概率微不足道的发明。
(发明1)
在以上描述中,为了简单,将OV函数Ft的上域的元素数m和醋变量vx的元素数o设定为相等。根据该设定(m=o),醋变量vx是固定的中心映射F(vx,·)没有解的概率足够高。但是,通过在m上施加由以下公式(5)所表示的条件,可使没有解的概率微不足道:假定β是这样的,针对K的元素数q,q是微不足道的((q<<1))。
[数学4]
n≥m-β
…(6)
(发明2)
另外,通过如下所示设计中心映射F的配置,可使醋变量vx是固定的中心映射F(vx,·)没有解的概率微不足道。首先,通过利用以下公式(7)中所示的m×n矩阵L,中心映射F如以下公式(8)中所表示。另外,通过利用矩阵L1、L2、L3,m×n矩阵L被表示为如以下公式(9)所示。矩阵L1、L3是非奇异矩阵。矩阵L2是具有vx作为元素的函数aij(vx)v和作为对角分量的1的上三角矩阵或下三角矩阵。通过采用以上表示,针对任意vx,L变为正则的。顺便提及,可通过利用具有等同于矩阵L2的属性的属性的多个矩阵来表示L。
[数学5]
Figure BPA00001551158300421
F(ox1,…,oxo,vx1,…,vxv)=L(vx1,…,vxv)(ox1,…,oxo)T+g(vx1,…,vxv)
…(8)
L(vx1,…,vxv)=L1×L2(vx1,…,vxv)×L3
…(9)
((当应用发明1和发明2时的)计算算法)
如上述所设计的OV签名方法的签名生成算法Sig和签名验证算法Ver如下:
<<符号的定义>>
K:有限环
Ft:映射Kn→Km
n:n=o+v
ox:ox=(ox1,…,oxo):油变量
vx:vx=(vx1,…,vxv):醋变量
F:映射Kn→Km,中心映射(参见以上公式(10)和公式(11))
S:在Kn上的可逆仿射变换(第一保密多项式变换)
T:在Km上的可逆仿射变换(第二保密多项式变换)
[数学6]
F = &Sigma; i = 1 o &Sigma; j = 1 v a ij o x i v x j + &Sigma; i = 1 v &Sigma; j = 1 v b ij v x i v x j + &Sigma; i = 1 o c i o x i + &Sigma; i = 1 v d i v x i + e
…(10)
F(ox1,…,oxo,vx1,…,vxv)=(f1,…,fm)
…(11)
其中,aij、bij、ci、di、e∈K,并且,f1,…,fm∈K[ox1,…,oxo,vx1,…,vxv]
<<签名生成算法Sig>>
将参照图26描述由第二扩展的OV签名方法的签名生成算法Sig所进行的处理的流程。图26是示出了由第二扩展的OV签名方法的签名生成算法Sig所进行的处理的流程的说明示图。
如26中所示,首先,签名方10准备消息M和签名密钥sk(S702),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig选择随机数r(S704)。接下来,签名生成算法Sig通过利用消息M来计算哈希值y=H(M,r)(S706)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Km计算中心映射F的上域中的元素y′∈Km(S708)。接下来,签名生成算法Sig选择醋变量vx∈Kv(S710)。
接下来,签名生成算法Sig计算ox∈{z∈Ko|F(z,vx)=y′},以确定集合{z∈Ko|F(z,vx)=y′}是否具有元素(S712)。如果集合{z∈Ko|F(z,vx)=y′}有元素,则签名生成算法Sig进行到步骤S714中的处理。另一方面,如果集合{z∈Ko|F(z,vx)=y′}没有元素,则签名生成算法Sig进行到步骤S720中的处理以异常结束。注意,在第二扩展的OV签名方法中,由于以上发明,处理以微不足道的概率或为0的概率进行到步骤S720。
如果处理进行到步骤S714,则签名生成算法Sig选择集合{z∈Ko|F(z,vx)=y′}中的一个元素(S714)。接下来,签名生成算法Sig基于变换S的逆变换S-1来变换由步骤S714中所选的元素ox和步骤S710中所选的醋变量vx所组成的元素x’=(ox1,…,oxo,vx1,…,vxv)(S716)。接下来,签名生成算法Sig输出电子签名σ=(x,r)(S718)。通过不进行到步骤S712中的分支处理中的步骤S720,实现了第二扩展的OV函数Ft的均匀分布属性。
<<签名验证算法Ver>>
接下来,将参照图27描述由第二扩展的OV签名方法的签名验证算法Ver所进行的处理的流程。图27是示出了由第二扩展的OV签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图27中所示,首先,验证方20从签名方10获取消息M、电子签名σ=(M,r)和验证密钥pk(S732),并且,将消息M、电子签名σ=(M,r)和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用消息M来计算哈希值y=H(M,r)(S734)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S736)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S738)。
已经描述了根据本发明的第二实施例的第二扩展的OV签名方法。
如上所述,本发明的第二实施例涉及改进利用醋向量vx的MPKC签名方法的非均匀分布属性的发明。通过执行以上发明,在利用醋向量vx的MPKC签名方法中叶实现了均匀分布属性,使得可确保针对选定消息攻击的安全。
<4.第三实施例(HFEv签名方法的应用示例)>
接下来,将描述本发明的第三实施例。在上述第一实施例中,HFE签名方法被扩展,并且,提出了能够通过改进HFE函数的非均匀分布属性来确保针对选定消息攻击的安全的扩展的HFE签名方法。在上述第二实施例中,OV签名方法被扩展,并且,提供了能够通过改进OV函数的非均匀分布属性来确保针对选定消息攻击的安全的第一和第二扩展的OV签名方法。在本实施例中,将提出能够通过改进组合了HFE函数和OV函数的HFEv函数的非均匀分布属性来确保针对选定消息攻击的安全的扩展的HFEv签名方法(第一扩展的HFEv签名方法和第二扩展的HFEv签名方法)。
[4-1.HFEv函数的属性]
在描述扩展的HFEv函数之前,将简要描述HFEv函数Ft和HFEv函数Ft的属性。如上所述,HFEv函数Ft是HFE函数和OV函数的组合。因此,如图12中所示,针对值域的某些元素y,原像的元素数可以是多个或根本没有。另外,HFEv函数Ft的值域大小依赖于如何选取醋变量vx而变化。鉴于以上原因,HFEv函数在输入和输出之间有偏差。以下,将详细描述HFEv函数。
<<符号的定义>>
Kn:带有n个元素的有限环
Ft:Kn→Km
n:n=o+v
ox:ox=(ox1,…,oxo):油变量
vx:vx=(vx1,…,vxv):醋变量
f:A×Kv→A,中心映射(参见以下公式(12))
A:有限环K(元素数:q)的o次扩展
B:有限环K(元素数:q)的m次扩展
φo:线性映射A→Ko(参见以下的公式(13))
φm:线性映射B→Km(参见以下的公式(14))
S:在Kn上的可逆仿射变换(第一保密多项式变换)
T:在Km上的可逆仿射变换(第二保密多项式变换)
陷门:S、T、aij、bi(X2的函数)、c(X2的函数)
[数学7]
φo(y1+y2*Y+…+yo*Yn-1)=(y1,…,yo)
…(13)
φm(y1+y2*Y+…+ym*Ym-1)=(y1,…,ym)
…(14)
如果d不是如此大的整数,则针对aij、bi、c∈A,“如果qi+qj>d″,则aij=0成立”,并且,“如果qi>d,则bj=0成立”。
<<HFEv函数Ft的结构>>
HFEv函数Ft被表示为变换S的映射、中心映射F(=φm -1*f*φo)和变换T的映射的复合映射Ft=T*F*S(*是直积)。用以计算y=Ft(x)的算法如下:
(步骤1)通过变换S,将x=(ox1,…,oxo,vx1,…,vxv)∈Kn变换成x’=(ox1’,…,oxo,vx1’,…,vxv’)∈Kn
(步骤2)通过φo -1,将ox’∈Ko变换成X1’∈A。X2′被设定为X2′=vx∈Kv
(步骤3)通过中心映射f,将(X1’,X2’)∈A×Kv变换成Y’=f(X1’,X2’)∈B。
(步骤4)通过φm,将Y’∈B变换成y’=(y1’,…,ym’)∈Km
(步骤5)通过变换T,将y’∈Km变换成y=(y1,…,ym)∈Km
(步骤6)输出y∈Km
如在以上的公式(12)中所示,,与HFE函数一样,HFEv函数Ft包括基于非线性单变量多项式的中心映射f。因此,对应于单变量多项式的根集的原像{Z∈A|f(Z)=Y′}可具有上域A的某些元素Y’的多个元素。在该情形中,如图12中所示,针对值域的元素y,关于HFEv函数Ft的原像的元素数是多个(在图12的示例中为3)。
另外,针对上域A的某些元素Y′,可能在原像{Z∈A|f(Z)=Y′}中不存在元素。在该情形中,不包括元素的原像{Z∈A|f(Z)=Y′}的上域元素并未被包括在值域中,并且因此,如图12中所示,上域和值域是不同的。由于以上属性,即使上域元素被均匀地输入,通过HFEv函数Ft的反向运算所获得的域的元素不是均匀分布的。
以下,将更加详细地描述HFEv函数Ft的计算算法。
<<前向计算算法>>
HFEv函数Ft的前向计算算法包括通过将给定的x∈Kn替换到HFEv函数Ft(x)中来获得y=Ft(x)∈Kn的步骤。如果域的一个元素x被输入到前向计算算法中,则值域的一个元素y被输出。
<<反向计算算法>>
HFEv函数Ft的反向算法包括以下步骤1至步骤8。
(步骤1)通过将给定的y=(y1,…,ym)∈Km应用到变换T的逆变换T-1来获得y’=(y1’,…,ym’)∈Km
(步骤2)随机选择vx’=(vx1’,…,vxv’)∈Kv
(步骤3)通过φm -1,将y’=(y1’,…,ym’)∈Km变换成Y’∈B。vx∈Kv被设定为X2’∈Kv
(步骤4)计算集合{Z∈A|f(Z,X2′)=Y′}。
(步骤5)从集合{Z∈A|f(Z,X2′)=Y′}中选择一个元素X1′。如果集合{Z∈A|f(Z,X2′)=Y′}是空集,则返回到步骤2,以重新选择醋变量vx′。例如,通过将多项式f(X1,X2′)-Y′因式分解为关于X2′的因子来确定集合{Z∈A|f(Z,X2′)=Y′}。
(步骤6)通过φo,通过将X1’∈A变换成ox=(ox1,…,oxo)∈Ko来获得x’=(ox1’,…,oxo’,vx1’,…,vxv’)。
(步骤7)通过变换S的逆变换S-1,将x’∈Kn变换成x=(ox1,…,oxo,vx1,…,vxv)∈Kn
(步骤8)输出x∈Kn
在上述步骤4中,集合{Z∈A|f(Z,X2′)=Y′}的元素数α=|{Z∈A|f(Z,X2′)=Y′}|可以是α=0或α≥2。因此,即使具有均匀分布的上域的元素被输入,反向计算算法的输出值也不是均匀分布的。另外,在上述步骤5中,如果元素数α为0,则处理返回到步骤2,以重新选择醋变量vx′。如果重新选择了醋变量vx′,则HFEv函数Ft的值域变化,并且因此,即使输入显示了均匀的分布,反向计算算法的输出分布也是不均匀的。因此,为了确保针对选定消息攻击的安全,需要校正这种分布偏差的发明。
[4-2.HFEv签名方法]
到此为止,已经描述了HFEv函数Ft。接下来,将描述利用HFEv函数Ft的电子签名方法(HFEv签名方法)。此处,利用HFEv函数的FDH签名方法(HFEv+FDH签名方法)将作为HFEv签名方法的示例来描述。
<<HFEv+FDH签名方法>>
将描述HFEv+FDH签名方法中的签名生成算法Sig和签名验证算法Ver。在HFEv+FDH签名方法中,签名密钥sk被设定为Ft陷门S、T、aij、bij、ci,而验证密钥pk被设定为Ft,其中,aij∈A,并且,bi、c:Kv→A。
(签名生成算法Sig(反向计算算法))
在消息M和签名密钥sk被输入之后,签名生成算法Sig通过以下步骤1至步骤9来计算电子签名σ(σ←Sig(sk,M))。
(步骤1)通过利用消息M来计算哈希值y∈Km←H(M)。
(步骤2)通过将y=(y1,…,ym)∈Km应用到变换T的逆变换T-1来获得y’=(y1’,…,ym’)∈Km
(步骤3)随机选择vx’=(vx1’,…,vxv’)∈Kv
(步骤4)通过φm -1,将y’=(y1’,…,ym’)∈Km变换成Y’∈B。vx∈Kv被设定为X2’∈Kv
(步骤5)计算集合{Z∈A|f(Z,X2′)=Y′}。
(步骤6)从集合{Z∈A|f(Z,X2′)=Y′}中选出一个元素X1′。如果{Z∈A|f(Z,X2′)=Y′}是空集,则返回到步骤3,以重新选择醋变量vx′。例如,通过将多项式f(X1,X2′)-Y′因式分解为关于X2′的因子来确定集合{Z∈A|f(Z,X2′)=Y′}。
(步骤7)通过φo,通过将X1’∈A变换成ox=(ox1,…,oxo)∈Ko来获得x’=(ox1’,…,oxo’,vx1’,…,vxv’)。
(步骤8)通过变换S的逆变换S-1,将x’∈Kn变换成x=(ox1,…,oxo,vx1,…,vxv)∈Kn
(步骤9)输出电子签名σ=x。
(签名验证算法Ver(前向算法))
在验证密钥pk=Ft、消息M和电子签名σ=x已经被输入之后,签名验证算法Ver通过以下步骤1至步骤3来验证消息M的电子签名σ的真实性(0/1←Ver(pk,M,σ))。
(步骤1)通过利用M来计算哈希值y←H(M)。
(步骤2)通过将包括在电子签名σ中的x=(ox1,…,oxo,vx1,…,vxv)∈Kn替换到OV函数Ft中来计算y”。
(步骤3)如果y=y”,则输出1,并且,如果y≠y”,则输出0。
(HFEv+FDH签名方法的特点)
如上所述,HFEv函数Ft是HFE函数和OV函数的组合。因此,如图13中所示,(A)由于HFE函数的特点,即使给出了上域的相同元素y,元素y的原像的元素数可能不是1。(B)由于OV函数的特点,值域的大小依赖于醋变量vx如何被选择而变化,并且因此,元素x的出现概率根据包括在上域的某些元素y的原像的元素x中的醋变量vx而变化。因此,HFEv签名方法不能确保针对选定消息攻击的安全。
因此,本申请的发明人设计了能够解决这种问题的方法(扩展的HFEv签名方法)。以下,将描述扩展的HFEv签名方法,但是,此处,将一起给出扩展的HFEv+FDH签名方法的签名生成算法Sig和签名验证算法Ver。
(签名生成算法Sig的细节)
首先,将参照图16描述由HFEv+FDH签名方法的签名生成算法Sig所进行的处理的流程。图16是示出了由HFEv+FDH签名方法的签名生成算法Sig所进行的处理的流程的说明示图。
如图16中所示,首先,签名方10准备消息M和签名密钥sk(步骤S202),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig通过利用消息M来计算哈希值y=H(M)(S204)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Ko计算中心映射F的上域中的元素y′∈Ko(S206)。接下来,签名生成算法Sig选择醋变量vx∈Kv(S208)。
接下来,签名生成算法Sig计算ox∈{z∈Ko|F(z,vx)=y′}来确定集合{z∈Ko|F(z,vx)=y′}是否有元素(S210)。如果集合{z∈Ko|F(z,vx)=y′}有元素,则签名生成算法Sig进行到步骤S212中的处理。另一方面,如果集合{z∈Ko|F(z,vx)=y′}没有元素,则签名生成算法Sig返回到步骤S208中的处理。如果处理进行到步骤S212,则签名生成算法Sig选择集合{z∈Ko|F(z,vx)=y′}中的一个元素ox(S212)。
接下来,签名生成算法Sig基于变换S的逆变换S-1将由步骤S212中所选的元素ox和步骤S208中所选的醋变量vx所组成的元素x’=(ox1,…,oxo,vx1,…,vxv)变换成x∈Kn(S214)。接下来,签名生成算法Sig输出电子签名σ=x(S216)。HFEv函数Ft的非均匀分布属性主要由步骤S210和S208中的对醋变量的重取处理和步骤S212中的选择处理所导致。
(签名验证算法Ver的细节)
接下来,将参照图17描述由HFEv+FDH签名方法的签名验证算法Ver所进行的处理的流程。图17是示出了由HFEv+FDH签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图17中所示,首先,验证方20从签名方10获取消息M、电子签名σ=x和验证密钥pk(S232),并且,将消息M、电子签名σ=x和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用消息M来计算哈希值y=H(M)(S234)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S236)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S238)。
已经描述了HFEv签名方法。
[4-3.第一扩展的HFEv签名方法]
接下来,将描述根据本发明的第三实施例的第一扩展的HFEv签名方法。第一扩展的HFEv签名方法是这样一种方法:与以上扩展的HFE签名方法一样,其以与值域中的某些元素的原像的元素数成正比的概率来重新选择醋变量。以下,将参照图20和图21来描述第一扩展的HFEv签名方法的签名生成算法Sig和签名验证算法Ver。
<<签名生成算法Sig>>
如20中所示,首先,签名方10准备消息M和签名密钥sk(S402),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig生成随机数r(S404)。接下来,签名生成算法Sig通过利用消息M和随机数r来计算哈希值y=H(M,r)(S406)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Kn计算中心映射f的上域中的元素Y′∈A(S408)。
接下来,签名生成算法Sig随机选择醋变量vx=X2′(S410)。接下来,签名生成算法Sig计算X1′∈{Z∈A|f(Z,X2′)=Y′},并且,以与集合{Z∈A|f(Z,X2′)=Y′}的元素数α成正比的概率p进行到步骤S414中的处理(S412)。另一方面,签名生成算法Sig以概率(1-p)返回到步骤S410的处理。如果处理进行到步骤S414,则签名生成算法Sig选择集合{Z∈A|f(Z,X2′)=Y′}中的一个元素X1′(S414)。
接下来,签名生成算法Sig基于变换S的逆变换S-1来从步骤S414中所选的元素X1′和步骤S4104中所选的醋变量X2′获得x=(ox,vx)∈Kn(S416)。接下来,签名生成算法Sig输出电子签名σ=(x,r)(S418)。通过基于与原像{Z∈A|f(Z,X2′)=Y′}的元素数α成正比的概率p来执行步骤S412中的分支处理,实现了第一扩展的HFEv函数Ft的均匀分布属性。
<<签名验证算法Ver>>
接下来,将参照图21描述由HFEv+FDH签名方法的签名验证算法Ver所进行的处理的流程。图21是示出了由HFEv+FDH签名方法的签名验证算法Ver所进行的处理的流程的说明示图。
如图21中所示,首先,验证方20从签名方10获取消息M、电子签名σ=(M,r)和验证密钥pk(S432),并且,将消息M、电子签名σ=(M,r)和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用包括在电子签名σ和消息M中的随机数r来计算哈希值y=H(M,r)(S434)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S436)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S438)。
已经描述了根据本发明的第三实施例的第一扩展的HFEv签名方法。
[4-4.第二扩展的HFEv签名方法]
接下来,将描述根据本发明的第三实施例的第二扩展的HFEv签名方法。通过如下操作来获得第二扩展的签名方法:将扩展的HFE签名方法的扩展A的发明和第一扩展的OV签名方法的扩展B的发明应用到HFEv签名方法。即,第二扩展的HFEv签名方法是这样一种方法,其以与值域的某些元素的原像的元素数成正比的概率重新选择值域的元素。以下,将参照图24和图25来描述第二扩展的HFEv签名方法的签名生成算法Sig和签名验证算法Ver。
<<签名生成算法Sig>>
如24中所示,首先,签名方10准备消息M和签名密钥sk(S602),并且,将消息M和签名密钥sk输入到签名生成算法Sig。接下来,签名生成算法Sig选择醋变量vx=X2′(S604)。接下来,签名生成算法Sig生成随机数r(S604)。接下来,签名生成算法Sig通过利用消息M和随机数r来计算哈希值y=H(M,r)(S608)。接下来,签名生成算法Sig基于变换T的逆变换T-1来从哈希值y∈Kn计算中心映射f的上域中的元素Y′∈A(S610)。
接下来,签名生成算法Sig计算X1′∈{Z∈A|f(Z,X2′)=Y′},并且,以与集合{Z∈A|f(Z,X2′)=Y′}的元素数α成正比的概率p进行到步骤S614中的处理。另一方面,签名生成算法Sig以概率(1-p)返回到步骤S606的处理。如果处理进行到步骤S614,则签名生成算法Sig从集合{Z∈A|f(Z,X2′)=Y′}中选择一个元素X1′(S614)。
接下来,签名生成算法Sig基于变换S的逆变换S-1来从步骤S614中所选的元素X1′和步骤S604中所选的醋变量X2′获得x=(ox,vx)∈Kn(S616)。接下来,签名生成算法Sig输出电子签名σ=(x,r)(S618)。因此,通过基于与原像{Z∈A|f(Z,X2′)=Y′}的元素数α成正比的概率p来执行步骤S612中的分支处理并以概率(1-p)重新选择随机数r而非新的醋变量vx,实现了第二扩展的HFEv函数Ft的均匀分布属性。
<<签名验证算法Ver>>
如图25中所示,首先,验证方20从签名方10获取消息M、电子签名σ=(M,r)和验证密钥pk(S632),并且,将消息M、电子签名σ=(M,r)和验证密钥pk输入到签名验证算法Ver。接下来,签名验证算法Ver通过利用包括在电子签名σ和消息M中的随机数r来计算哈希值y=H(M,r)(S634)。接下来,签名验证算法Ver通过利用验证密钥pk(Ft)来计算y”=Ft(x)(S636)。接下来,如果y=y”,则签名验证算法Ver接受(输出1),并且,如果y≠y”,则签名验证算法Ver拒绝(输出0)(S638)。
已经描述了根据本发明的第三实施例的第二扩展的HFEv签名方法。
如上所述,本发明的第三实施例涉及将扩展A应用到HFEv签名方法的示例和应用扩展A+扩展B的示例。通过当中心映射f的原像针对上域的某些元素具有多个元素时应用扩展A并将扩展A和扩展B一起应用到上述还使用醋变量的签名方法,输入和输出分布之间的偏差被消除,使得可确保针对选定消息攻击的安全。
第一扩展的OV签名方法是仅应用扩展B的示例。在很多情形中,针对上域的某些元素,中心映射f的原像的元素数可能不是1,并且,需要一起使用扩展A。但是,针对OV函数,无需一起使用扩展A,因为其具有如下特殊的属性:“当原像的部分vx是固定的时,如果存在针对上域的任意元素y的满足F(vx,z)=y的z,则其数目是恒定的,不管y是何值”。因此,通过适当地使用扩展A、扩展B和依赖于MPKC签名方法的类型的扩展A+扩展B,可消除函数Ft的输入和输出分布之间的偏差。顺便提及,第二扩展的OV签名方法可被组合,而非扩展B。
<5.补充>
已经描述了本发明的第一至第三实施例。这些实施例仅是体现了根据本发明的技术想法的示例,并且,本发明的范围并不限于这些示例。例如,在以上描述中,HFE签名方法、OV签名方法、HFEv签名方法和其导出形式被作为示例引用,但是,本发明并不限于这些示例,并且,还可被应用到其他MPKC签名方法。关于这种应用,从以上实施例的描述中所提及的内容所设想的范围以及本领域技术人员通过在应用时考虑技术所设想的范围自然地作为根据本发明的实施例而被包括在技术范围中。
某些上述签名方法使用随机数r。但是,此处所使用的随机数r可以是本质上由第三方所看作的随机数。例如,签名方10可使用通过将特定于签名方10的值δ(秘密管理的值)与消息M一起输入到哈希函数H′所获得的r=H’(M,r),而非随机数r。在以上的扩展的OV签名方法中的每一个中,可做出修改,诸如,将身份映射用作对第二秘密多项式的变换,以及省去关于对第二秘密多项式的变换(或逆变换)的处理。这种修改也属于根据本发明的实施例的技术范围。
[5-1.PSS签名方法的扩展]
PSS(概率签名机制)可与根据本发明的每个实施例的签名生成方法组合。PSS是用以从PFDH方法中的电子签名σ的一部分来生成随机数r或其一部分的机制。
[5-2.多层OV签名方法的扩展]
在上述第二实施例中,为了简单,示出了OV函数的基本配置,但是,还可应用多层OV函数(例如,彩虹签名方法的OV函数)。多层OV函数包括在以下所示的步骤中顺序计算油变量的算法。
(第一层运算步骤)
选择第一层醋变量并计算油变量。接下来,将第一层醋变量和所计算的旧变量设定为第二层醋变量。
(第二层运算步骤)
通过利用第二层醋变量来计算油变量。接下来,将第二层醋变量和所计算的旧变量设定为第三层醋变量。
(第三层运算步骤)
通过利用第三层醋变量来计算油变量。接下来,将第三层醋变量和所计算的旧变量设定为第四层醋变量。
(第N层运算步骤)
通过利用第(N-1)层醋变量来计算第N层油变量。
通过将以上扩展A或扩展B合适地应用到这种多层OV函数,也可消除输入和输出分布之间的偏差,使得可以实现均匀分布属性。通过执行这种扩展,可实现其中确保了针对选定消息攻击的安全电子签名方法。
[5-3.HFE函数Ft的减扩展方法]
在上述第一实施例中,扩展的HFE函数Ft被用作验证密钥pk,但是,如下修改也是可以的:扩展的HFE函数Ft的一部分被用作验证密钥pk(以下,称为减扩展方法)。例如,如果扩展的HFE函数Ft包括n个多项式,则在从这些n个多项式中排除m(m<n)个多项式之后的(n-m)个多项式可作为验证密钥pk被提供给验证方20。当如上述使用验证密钥pk时,使用输出具有(n-m)个元素的哈希值y的哈希函数H。还可采用如下配置,其中,使用了除了哈希函数H的输出值的(n-m)个元素以外的元素,该哈希函数H输出具有n个元素的哈希值y。
通过比较通过将电子签名σ应用到验证密钥pk所获得的(n-m)个值y”和通过将消息M和随机数r应用到哈希函数H所获得的(n-m)个哈希值y来进行对电子签名σ的验证。另一方面,通过将包括通过应用消息M和随机数r到哈希函数H所获得的(n-m)个元素和m个随机数的n个元素应用到反向计算算法中并将计算结果包括在电子签名σ的一部分中,电子签名σ通过计算原像而被生成。因此,根据上述第一实施例的技术可被应用于减扩展方法。通过应用减扩展方法,可进一步改进HFE函数Ft的强度。
<6.硬件配置示例>
例如,通过图31中所示的信息处理装置的硬件配置,可实现密钥生成装置100、签名生成装置150和签名验证装置200中的每一个结构元件的功能。即,通过利用计算机程序来控制图31中所示的硬件,实现了每个结构元件的功能。硬件的形式是任意的,并且,例如包括移动信息终端,诸如,个人计算机、移动电话、PHS和PDA、游戏机、有触点或无触点IC芯片、有触点或无触点IC卡,以及各种家用电子设备。以上PHS是个人手持电话系统的缩写。以上PDA是个人数字助理的缩写。
如图31中所示,硬件主要包括CPU 902、ROM 904、RAM 906、主机总线908和网桥910。另外,硬件包括外部总线912、接口914、输入单元916、输出单元918、存储单元920、驱动器922、连接端口924和通信单元926。以上CPU是中央处理单元的缩写。以上ROM是只读存储器的缩写。以上RAM是随机访问存储器的缩写。
利用,CPU 902用作算术处理单元或控制装置,并且,基于记录在ROM 904、RAM 906、存储单元920或可移动记录介质928中的各种程序来控制整个操作或每个结构元件的一部分。ROM 904是用以存储读入到CPU 902中的程序或用于操作的数据的单元。RAM 906临时地或永久地存储读入到CPU 902中的程序或在执行程序期间酌情变更的各种参数。
这些结构元件经由能够例如以高速度传输数据的主机总线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介质、蓝光介质、HD DVD介质、或各种半导体存储介质。可移动记录介质928例如还可以是安装了无触点IC芯片的IC卡或电子设备。以上IC是集成电路的缩写。
连接端口924是用以连接外部连接设备930的端口,例如,USB端口、IEEE1394端口、SCSI、RS-232C端口或光音频终端。外部连接设备930例如是打印机、移动音乐播放器、数码相机、数字摄像机或IC记录器。以上USB是通用串行总线的缩写。以上SCSI是小型计算机系统接口的缩写。
通信单元926是用以连接至网络932的通信设备,并且,例如是有线或无线LAN、蓝牙(注册商标)或WUSB的通信卡、光通信路由器、ADSL路由器、或有触点或无触点通信设备的设备。连接至通信单元926的网络932由有线或无线连接的网络所配置,并且,例如是因特网、家用LAN、红外通信、可见光通信、广播或卫星通信。以上LAN是局域网的缩写。以上WUSB是无线USB的缩写。以上ADSL是异步数字订户线的缩写。
<7.总结>
最后,将简要总结根据本发明的实施例的技术内容。此处所描述的技术内容例如可被应用到各种信息处理装置,诸如,PC、移动电话、移动游戏机、移动信息终端、家用电子设备,以及车辆导航系统和无触点或有触点智能卡和读取器/写入器。
以上信息处理装置的功能配置可由以下所述的两种方式表示。
(1)一种信息处理装置,包括:第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并且,通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A →A)的原像的元素X∈{Z∈A|f(Z)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作所述有限环Kn的元素x′,并且,通过第二秘密多项式S的逆变换S-1将所述有限环Kn的元素x′变换成所述有限环Kn的元素x。
如上所述,原像的每个元素被选择的概率变为等于原像的元素X被元素选择单元所选择的概率p,该概率p与原像的元素数α成正比。因此,如果具有在有限环Kn上的均匀分布的集合的元素y被输入到第一逆变换单元,则通过第一逆变换单元、元素计算单元、元素选择单元和第二逆变换单元所经历的处理所获得的元素x具有在有限环Kn上的均匀分布。即,对应于第一逆变换单元、元素计算单元、元素选择单元和第二逆变换单元的处理的映射Ft是双射的。通过以这种方式使映射Ft为双射,针对基于映射Ft的电子签名系统,针对选定消息攻击的安全被确保。
(2)一种密钥生成装置,包括:部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;数生成单元,该数生成单元生成数r;数据生成单元,该数据生成单元通过利用由所述数生成单元所生成的所述数r和电子数据M来生成所述有限环Kn的元素y;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将由所述数据生成单元所生成的有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过利用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致所述数生成单元生成不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1将包括由所述元素选择单元所选择的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ。
如上所述,如果不存在原像元素,则通过重新生成数r来变更元素y,以实现对应于第一逆变换单元、元素计算单元和第二逆变换单元的处理的映射Ft的双射,而非重新选择与原像的元素数相关的元素vx。通过以这种方式使映射Ft为双射,针对基于映射Ft的电子签名系统,针对选定消息攻击的安全被确保。
如上所述,如果不存在原像元素,则通过重新生成数r来变更元素y,以实现对应于第一逆变换单元、元素计算单元和第二逆变换单元的处理的映射Ft的双射,而非重新选择与原像的元素数相关的元素vx。通过以这种方式使得映射Ft为双射的,针对基于映射Ft的电子签名系统,确保了针对选定消息攻击的安全。
(最后)
图18中所示的扩展的HFE签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名生成装置150所执行。图19中所示的扩展的HFE签名方法的签名生成算法可由例如使用图31中所示的硬件的图28中所示的签名验证装置200所执行。
图20中所示的第一扩展的HFEv签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名生成装置150所执行。图21中所示的第一扩展的HFEv签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名验证装置200所执行。
图22中所示的第一扩展的OV签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名生成装置150所执行。图23中所示的第一扩展的OV签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名验证装置200所执行。
图24中所示的第二扩展的HFEv签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名生成装置150所执行。图25中所示的第二扩展的HFEv签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名验证装置200所执行。
图26中所示的第二扩展的OV签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名生成装置150所执行。图27中所示的第二扩展的OV签名方法的签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名验证装置200所执行。
在以上实施例中所描述的各种签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名生成装置150所执行。另外,在以上实施例中所描述的各种签名生成算法可由例如利用图31中所示的硬件的图28中所示的签名验证装置200所执行。
以上,已经参照附图描述了本发明的优选实施例,但是,本发明当然并不限于以上示例。本领域技术人员可找到所附权利要求范围内的各种变化和修改,并且,应当理解,它们自然在本发明的技术范围内。
参考标号列表
100密钥生成装置
150签名生成装置
200签名验证装置

Claims (18)

1.一种信息处理装置,包括:
第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;
元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并且,通过利用所述元素Y来计算由预定多变量多项式表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y};
元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p,选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及
第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作所述有限环Kn的元素x′,并且,通过第二秘密多项式S的逆变换S-1,将所述有限环Kn的元素x′变换成所述有限环Kn的元素x。
2.一种信息处理装置,包括:
部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;
第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将包括由m个数所组成的元素的有限环Km的元素y变换成所述有限环Km的元素y′;
元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Km的元素y′看作有限环K的m次扩展A的元素Y,并且,通过利用所述元素Y和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:A×Kv→B,B是所述有限环K的o次扩展)的原像的元素X∈{Z∈B|f(Z,vx)=Y};
元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p,选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及
第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作有限环Ko的元素ox,并且,通过第二秘密多项式S的逆变换S-1,将所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x。
3.根据权利要求1所述的信息处理装置,还包括:
数生成单元,该数生成单元生成数r;
数据生成单元,该数据生成单元通过利用电子数据M和由所述数生成单元所生成的数r来生成所述有限环Kn的元素y;以及
签名生成单元,该签名生成单元将由所述数据生成单元生成的所述有限环Kn的元素y输入到所述第一逆变换单元,以生成包括通过所述第一逆变换单元、所述元素计算单元、所述元素选择单元和所述第二逆变换单元的处理所获得的所述有限环Kn的元素x的电子签名σ,其中,如果所述元素选择单元输出了异常值,则所述签名生成单元使所述数生成单元生成不同的数r,并且,基于所述不同的数r,将由所述数据生成单元所生成的所述有限环Kn的元素y输入到所述第一逆变换单元,以生成包括通过所述第一逆变换单元、所述元素计算单元、所述元素选择单元和所述第二逆变换单元的处理所获得的所述有限环Kn的元素x的电子签名σ。
4.根据权利要求2所述的信息处理装置,还包括:
数生成单元,该数生成单元生成数r;
数据生成单元,该数据生成单元通过利用电子数据M和由所述数生成单元所生成的所述数r来生成所述有限环Kn的元素y;以及
签名生成单元,该签名生成单元将由所述数据生成单元生成的所述有限环Kn的元素y输入到所述第一逆变换单元,以生成包括通过所述第一逆变换单元、所述元素计算单元、所述元素选择单元和所述第二逆变换单元的处理所获得的所述有限环Kn的元素x的电子签名σ,其中,如果所述元素选择单元输出了异常值,则所述签名生成单元使所述数生成单元生成不同的数r,并且,基于所述不同的数r,将由所述数据生成单元所生成的所述有限环Kn的元素y输入到所述第一逆变换单元,以生成包括通过所述第一逆变换单元、所述元素计算单元、所述元素选择单元和所述第二逆变换单元的处理所获得的所述有限环Kn的元素x的电子签名σ。
5.一种密钥生成装置,包括:
秘密密钥生成单元,该秘密密钥生成单元生成由计算算法所使用的秘密密钥,该计算算法具有第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并且,通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p,选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作有限环Kn的元素x′,并且,通过第二秘密多项式S的逆变换S-1,将所述有限环Kn的元素x′变换成所述有限环Kn的元素x,其中,所述秘密密钥包括关于所述第一秘密多项式T、所述第二秘密多项式S和所述预定多变量多项式的信息;以及
公钥生成单元,该公钥生成单元生成公钥,该公钥包括关于由所述第一秘密多项式T、所述映射f和所述第二秘密多项式S所组成的复合映射F的信息。
6.一种密钥生成装置,包括:
部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;
秘密密钥生成单元,该秘密密钥生成单元生成由计算算法所使用的秘密密钥,该计算算法具有第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将包括由m个数所组成的元素的有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元将通过所述第一逆变换单元所获得的有限环Km的元素y′看作有限环K的m次扩展A的元素Y,并且,通过利用所述元素Y和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:A×Kv→B,B是所述有限环k的o次扩展)的原像的元素X∈{Z∈B|f(Z,vx)=Y};元素选择单元,该元素选择单元以与所述原像的元素数α成正比的概率p,选择由所述元素计算单元所计算的所述原像的一个元素X,并且,以概率(1-p)输出异常值;以及第二逆变换单元,该第二逆变换单元将由所述元素选择单元所选择的所述元素X看作有限环Ko的元素ox,并且,通过第二秘密多项式S的逆变换S-1,将所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x,其中,所述秘密密钥包括关于所述第一秘密多项式T、所述第二秘密多项式S和所述预定多变量多项式的信息;以及
公钥生成单元,该公钥生成单元生成公钥,该公钥包括关于由所述第一秘密多项式T、所述映射f和所述第二秘密多项式S所组成的复合映射F的信息。
7.一种信息处理装置,包括:
部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;
数生成单元,该数生成单元生成数r;
数据生成单元,该数据生成单元通过利用电子数据M和由所述数生成单元所生成的所述数r来生成包括由m个数所组成的元素的所述有限环Km的元素y;
第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将由所述数据生成单元所生成的有限环Km的元素y变换成所述有限环Km的元素y′;
元素计算单元,该元素计算单元通过利用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};
元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元使所述数生成单元生成不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;以及
第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1,将包括由所述元素选择单元所选择的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及
签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ。
8.一种信息处理装置,包括:
数据生成单元,该数据生成单元通过利用电子数据M来生成包括由m个数所组成的元素的有限环Km的元素y;
部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;
第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;
元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};
元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元导致使所述部分元素选择单元选择不同的数vx,并且,通过利用所述不同的数vx,选择通过所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;
第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1,将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及
签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ,其中,对于所述有限环K元素数q,m满足n≥m+β条件,并且,β满足q<<1条件。
9.一种信息处理装置,包括:
数据生成单元,该数据生成单元通过利用电子数据M来生成包括由m个数所组成的元素的所述有限环Km的元素y;
部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;
第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;
元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};
元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元使所述部分元素选择单元选择不同的数vx,并且,通过利用所述不同的数vx,选择通过所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;
第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1,将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及
签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ,其中,对于ox=(ox1,…,oxo)和vx=(vx1,…,vxv),映射f被表示为f(ox1,…,oxo,vx1,…,vxv)=L(vx1,…,vxv)(ox1,…,oxo)T+g(vx1,…,vxv),L被表示为L(vx1,…,vxv)=L1L2(vx1,…,vxv)L3,其中,L1和L3是非奇异矩阵,并且,L2是具有将vx1,…,vxv的函数lij(vx1,…,vxv)作为第i行第j列元素并将1作为对角线分量的上三角矩阵或下三角矩阵。
10.根据权利要求7所述的信息处理装置,其中,所述第二秘密多项式S是身份映射。
11.根据权利要求8所述的信息处理装置,其中,所述第二秘密多项式S是身份映射。
12.根据权利要求9所述的信息处理装置,其中,所述第二秘密多项式S是身份映射。
13.一种密钥生成装置,包括:
秘密密钥生成单元,该秘密密钥生成单元生成由计算算法所使用的秘密密钥,该计算算法具有部分元素选择单元和数生成单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx,该数生成单元生成数r;数据生成单元,该数据生成单元通过利用电子数据M和由所述数生成单元所生成的数r来生成包括由m个数所组成的元素的有限环Km的元素y;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将由所述数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元使所述数生成单元生成不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1,将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x的电子签名σ,其中,所述秘密密钥包括关于所述第一秘密多项式T、所述第二秘密多项式S和所述预定多变量多项式的信息;以及
公钥生成单元,该公钥生成单元生成公钥,该公钥包括关于由所述第一秘密多项式T、所述映射f和所述第二秘密多项式S所组成的复合映射F的信息。
14.一种签名验证装置,包括:
获取单元,该获取单元从签名生成装置获取关于由第一秘密多项式T、映射f和第二秘密多项式S所组成的复合映射F的信息、电子签名σ和电子数据M,该签名生成装置具有:部分元素选择单元,该部分元素选择单元选择包括由v个数所组成的元素的有限环Kv的元素vx;数生成单元,该数生成单元生成数r;第一数据生成单元,该第一数据生成单元通过利用所述电子数据M和由所述数生成单元所生成的数r来生成包括由m个数所组成的元素的有限环Km的元素y;第一逆变换单元,该第一逆变换单元通过第一秘密多项式T的逆变换T-1,将由所述第一数据生成单元所生成的所述有限环Km的元素y变换成所述有限环Km的元素y′;元素计算单元,该元素计算单元通过使用由所述第一逆变换单元所获得的所述有限环Km的元素y′和由所述部分元素选择单元所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};元素选择单元,如果存在所述原像的元素,则该元素选择单元选择由所述元素计算单元所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择单元使所述数生成单元选择不同的数r,并且,通过利用所述不同的数r,选择通过所述第一数据生成单元、所述第一逆变换单元和所述元素计算单元的处理所计算的所述原像的元素ox;第二逆变换单元,该第二逆变换单元通过第二秘密多项式S的逆变换S-1,将包括由所述元素选择单元所选的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及签名生成单元,该签名生成单元生成包括通过所述第二逆变换单元所获得的所述有限环Kn的元素x和由所述数生成单元所生成的数r的电子签名σ;
第二数据生成单元,该第二数据生成单元通过利用包括在所述电子签名σ中的数r和所述电子数据M来生成所述有限环Km的元素y1;
第三数据生成单元,该第三数据生成单元通过将包括在所述电子签名σ中的所述有限环Kn的元素x应用到所述复合映射F来生成所述有限环Km的元素y2;以及
验证单元,该验证单元验证由所述第二数据生成单元所生成的有限环Km的元素y1与由所述第三数据生成单元所生成的有限环Km的元素y2是否匹配。
15.一种信息处理方法,包括:
第一逆变换步骤,该步骤通过第一秘密多项式T的逆变换T-1,将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;
元素计算步骤,该步骤将所述第一逆变换步骤中所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并通过利用所述元素Y来计算由预定多变量多项式表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y};
元素选择步骤,该步骤以与所述原像的元素数α成正比的概率p,选择在所述元素计算步骤中所计算的所述原像的一个元素X,并以概率(1-p)输出异常值;以及
第二逆变换步骤,该步骤将在所述元素选择步骤中所选择的所述元素X看作所述有限环Kn的元素x′,并通过第二秘密多项式S的逆变换S-1,将所述有限环Kn的元素x′变换成所述有限环Kn的元素x。
16.一种信息处理方法,包括:
部分元素选择步骤,该步骤选择包括由v个数所组成的元素的有限环Kv的元素vx;
第一逆变换步骤,该步骤通过第一秘密多项式T的逆变换T-1将包括由m个数所组成的元素的有限环Km的元素y变换成所述有限环Km的元素y′;
元素计算步骤,该步骤将在所述第一逆变换步骤中所获得的有限环Km的元素y′看作有限环K的m次扩展A的元素Y,并通过利用所述元素Y和在所述部分元素选择步骤中所选择的所述元素vx来计算由预定多变量多项式表示的映射f(f:A×Kv→B,B是所述有限环K的o次扩展)的原像的元素X∈{Z∈B|f(Z,vx)=Y};
元素选择步骤,该步骤以与所述原像的元素数α成正比的概率p,选择所述元素计算步骤所计算的所述原像的一个元素X,并以概率(1-p)输出异常值;以及
第二逆变换步骤,该步骤将在所述元素选择步骤中所选择的所述元素X看作有限环Ko的元素ox,并通过第二秘密多项式S的逆变换S-1将所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x。
17.一种签名生成方法,包括:
部分元素选择步骤,该步骤选择包括由v个数所组成的元素的有限环Kv的元素vx;
数生成步骤,该步骤生成数r;
数据生成步骤,该步骤通过利用电子数据M和在所述数生成步骤中所生成的所述数r来生成包括由m个数所组成的元素的有限环Km的元素y;
第一逆变换步骤,该步骤通过第一秘密多项式T的逆变换T-1,将在所述数据生成步骤中所生成的有限环Km的元素y变换成所述有限环Km的元素y′;
元素计算步骤,该步骤通过利用在所述第一逆变换步骤中所获得的所述有限环Km的元素y′和在所述部分元素选择步骤中所选择的所述元素vx来计算由预定多变量多项式所表示的映射f(f:Kn→Ko,n=o+v)的元素ox∈{Z∈Ko|f(Z,vx)=y′};
元素选择步骤,如果存在所述原像的元素,则元素选择步骤选择在所述元素计算步骤中所计算的所述原像的所述元素ox,并且,如果不存在所述原像的元素,则该元素选择步骤使所述数生成步骤生成不同的数r,并且,通过利用所述不同的数r,选择通过所述数据生成步骤、所述第一逆变换步骤和所述元素计算步骤中的处理所计算的所述原像的元素ox;
第二逆变换步骤,该步骤通过第二秘密多项式S的逆变换S-1,将包括在所述元素选择步骤中所选择的所述元素ox的所述有限环Kn(n=o+x)的元素x’=(ox,vx)变换成所述有限环Kn的元素x;以及
签名生成步骤,该步骤生成包括在所述第二逆变换步骤中所获得的所述有限环Kn的元素x的电子签名σ。
18.一种程序,该程序使得计算机执行以下步骤:
第一逆变换步骤,该步骤通过第一秘密多项式T的逆变换T-1,将包括由n个数所组成的元素的有限环Kn的元素y变换成所述有限环Kn的元素y′;
元素计算步骤,该步骤将所述第一逆变换步骤中所获得的有限环Kn的元素y′看作有限环K的n次扩展A的元素Y,并通过利用所述元素Y来计算由预定多变量多项式所表示的映射f(f:A→A)的原像的元素X∈{Z∈A|f(Z)=Y};
元素选择步骤,该步骤以与所述原像的元素数α成正比的概率p,选择在所述元素计算步骤中所计算的所述原像的一个元素X,并以概率(1-p)输出异常值;以及
第二逆变换步骤,该步骤将在所述元素选择步骤中所选择的所述元素X看作所述有限环Kn的元素x′,并通过第二秘密多项式S的逆变换S-1,将所述有限环Kn的元素x′变换成所述有限环Kn的元素x。
CN2010800514096A 2009-11-19 2010-09-21 信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序 Pending CN102640451A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009264242A JP2011107528A (ja) 2009-11-19 2009-11-19 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム
JP2009-264242 2009-11-19
PCT/JP2010/066312 WO2011061994A1 (ja) 2009-11-19 2010-09-21 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム

Publications (1)

Publication Number Publication Date
CN102640451A true CN102640451A (zh) 2012-08-15

Family

ID=44059479

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010800514096A Pending CN102640451A (zh) 2009-11-19 2010-09-21 信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序

Country Status (7)

Country Link
US (1) US8675867B2 (zh)
EP (1) EP2503729A1 (zh)
JP (1) JP2011107528A (zh)
CN (1) CN102640451A (zh)
BR (1) BR112012011220A2 (zh)
RU (1) RU2012119502A (zh)
WO (1) WO2011061994A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108141226A (zh) * 2015-09-16 2018-06-08 西门子股份公司 用于创建不对称校验和的设备和方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086854B2 (en) * 2008-04-01 2011-12-27 Apple Inc. Content protection information using family of quadratic multivariate polynomial maps
CN102420691B (zh) * 2011-12-16 2014-04-16 河海大学 基于证书的前向安全签名方法及系统
TW201351195A (zh) 2012-03-02 2013-12-16 Sony Corp 演算裝置、控制方法、及程式
CN103200001B (zh) * 2013-03-27 2016-05-25 武汉大学 一种多变量公钥加密方法
CN103490897B (zh) * 2013-09-17 2017-04-05 华南理工大学 一种多变量公钥签名/验证系统及签名/验证方法
WO2016164496A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
CN109150506B (zh) * 2017-06-19 2021-12-10 深圳职业技术学院 一种彩虹签名的侧信道分析方法及装置
EP3806071B1 (en) * 2018-05-25 2023-03-22 Nippon Telegraph And Telephone Corporation Secret collective approximation system, secret calculation device, secret collective approximation method, and program
CN109981296A (zh) * 2019-04-03 2019-07-05 王晓兰 一种基于Rainbow的环签名方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1146676A (zh) * 1995-07-27 1997-04-02 Cp8川萨克公司 密码通信方法
JP2005253107A (ja) * 1999-04-29 2005-09-15 Bull Cp 8 Sa 公開鍵を署名する方法とシステム
CN1929383A (zh) * 2005-09-09 2007-03-14 佳能株式会社 图像处理方法、图像处理设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4575251B2 (ja) * 2005-07-25 2010-11-04 株式会社東芝 デジタル署名生成装置、デジタル署名検証装置、デジタル署名生成方法、デジタル署名検証方法、デジタル署名生成プログラム及びデジタル署名検証プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1146676A (zh) * 1995-07-27 1997-04-02 Cp8川萨克公司 密码通信方法
JP2005253107A (ja) * 1999-04-29 2005-09-15 Bull Cp 8 Sa 公開鍵を署名する方法とシステム
CN1929383A (zh) * 2005-09-09 2007-03-14 佳能株式会社 图像处理方法、图像处理设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108141226A (zh) * 2015-09-16 2018-06-08 西门子股份公司 用于创建不对称校验和的设备和方法

Also Published As

Publication number Publication date
RU2012119502A (ru) 2013-11-20
US8675867B2 (en) 2014-03-18
WO2011061994A1 (ja) 2011-05-26
EP2503729A1 (en) 2012-09-26
JP2011107528A (ja) 2011-06-02
BR112012011220A2 (pt) 2016-04-05
US20120233704A1 (en) 2012-09-13

Similar Documents

Publication Publication Date Title
CN102640451A (zh) 信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序
Usama et al. Chaos-based secure satellite imagery cryptosystem
CN100583755C (zh) 使用同源来设计密码系统
CN102263638B (zh) 认证设备、认证方法和签名生成设备
CN103748832A (zh) 签名验证设备、签名验证方法、程序和记录介质
CN101507176A (zh) 椭圆曲线点乘法
CN102263639A (zh) 认证装置、认证方法、程序和签名生成装置
CN101877639B (zh) 信息处理设备、密钥更新方法和程序
CN103678995A (zh) 信息处理装置、信息处理方法以及非暂态计算机可读介质
Verma et al. Efficient identity‐based blind message recovery signature scheme from pairings
CN115664675B (zh) 基于sm2算法的可追踪环签名方法、系统、设备及介质
Gupta et al. Session key based novel lightweight image encryption algorithm using a hybrid of Chebyshev chaotic map and crossover
JPWO2006114948A1 (ja) 署名生成装置および署名検証装置
CN110602190A (zh) 区块链共识的方法及区块链节点和存储装置
CN103718502A (zh) 信息处理设备、信息处理方法、程序和记录介质
Hu et al. Short and provably secure designated verifier proxy signature scheme
CN103748830A (zh) 信息处理设备、签名提供方法、签名验证方法、程序和记录介质
Chande et al. An improvement of a elliptic curve digital signature algorithm
CN111431715A (zh) 一种支持隐私保护的策略控制签名方法
Lin et al. F2p-abs: A fast and secure attribute-based signature for mobile platforms
Meshram et al. An efficient provably secure IBS technique using integer factorization problem
Xin et al. Identity-based quantum signature based on Bell states
CN103733563A (zh) 信息处理设备、签名产生设备、信息处理方法、签名产生方法和程序
CN103782331A (zh) 信息处理设备、签名产生设备、签名核查设备、信息处理方法、签名产生方法和签名核查方法
Gayathri et al. Efficient and provably secure pairing free ID-based directed signature scheme

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: 20120815