CN1185821C - 密码通信方法 - Google Patents

密码通信方法 Download PDF

Info

Publication number
CN1185821C
CN1185821C CNB961108606A CN96110860A CN1185821C CN 1185821 C CN1185821 C CN 1185821C CN B961108606 A CNB961108606 A CN B961108606A CN 96110860 A CN96110860 A CN 96110860A CN 1185821 C CN1185821 C CN 1185821C
Authority
CN
China
Prior art keywords
map
value
polynomial
branch
ring
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.)
Expired - Fee Related
Application number
CNB961108606A
Other languages
English (en)
Other versions
CN1146676A (zh
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.)
CP8 Technologies SA
Bull CP8 SA
Original Assignee
Bull CP8 SA
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 Bull CP8 SA filed Critical Bull CP8 SA
Publication of CN1146676A publication Critical patent/CN1146676A/zh
Application granted granted Critical
Publication of CN1185821C publication Critical patent/CN1185821C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04KSECRET COMMUNICATION; JAMMING OF COMMUNICATION
    • H04K1/00Secret communication
    • 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

Abstract

一种新颖的非对称密码模式,可用于加密签名和鉴别。该模式基于具有有限域K中的值的低阶公开多项式方程。该机制不需要必须为双射的。保密密钥使之能用环K的扩充中的值隐藏多项式方程。如果有了私有密钥,解这些方程式就能执行只用公开密钥不可能执行的操作。

Description

密码通信方法
技术领域
本发明涉及一种非对称密码通信方法,用于在对话者之间处理消息和保护通信。该方法用于非对称地加密或标识消息,也可用于非对称的鉴别。
背景技术
众所周知的第一解决方案是在1977年提出来的。这个解决方案是由发明者Rivest、Shamir和Adleman于1977年12月14日提出申请的美国专利4405829的主题。该方法通常称为RSA,这是根据其发明者的名字而取名的,该方法使用了两种密钥。第一个密钥(Kp)用于消息加密,而第二个密钥(Ks)则用于解密。该为全世界所熟知的方法是非对称加密的基础,之所以这样叫是因为用于加密和解密的密钥不同。在同一网络中,每个成员(i)具有一对密钥。第一个(Kpi)是公开的,因此可以被任何人所知道;而第二个(Ksi)是保密的(secret),决不能用于通信。
在同一网络中的两个对话者(1)和(2)之间的加密通信按以下的方式进行:首先,(1)和(2)互相交换其公开密钥(Kp1)和(Kp2);然后,当(1)希望把消息加密,并且一旦该消息被(2)接收到,只能借助(2)所持有的保密密钥(Ks2)解密:
加密:M′=RSA(M,Kp2)
解密:M=RSA(M′,Ks2)
当(2)希望送消息给(1)时,用属于(1)的公开密钥(Kp1)对其加密,而用自己的保密密钥(Ks1)解密。
RSA方法也可用于签名:用某人的保密密钥对消息加密,然后把称为签名的被加密消息和采用不加密形式的消息一块发送;消息的接收者要求确认该人的公开密钥,并用其对签名解密;如果被解密的文本对应不加密的消息,则该签名被确认。
这种密码通信方法存在若干缺陷。所需处理的数字很大(目前一般为512位),这需要进行大量的计算,而导致签名很长。而且,如果在因子分解方面取得新的突破,RSA的安全性将受到损害。
已经提出的用于执行非对称加密或消息签名功能的还有其它非对称密码通信方法,例如使用基于“背包”的算法或MATSUMOTO-IMAT算法。然而,这两种算法都已经被表明其安全性程度并不完全令人满意。
发明内容
本发明提出的方法不存在这两种算法的缺陷,而且还保留了它们的某些优点。本发明使用了一种新颖的算法,称为“隐域算法”或HFE(隐域方程),象RSA一样,可用于鉴别、加密和签名等功能。然而,RSA主要基于对大的数字分解因子的问题,而HFE算法则基于一个完全不同的问题:解多变量低次方程(通常为2次或3次)。必须注意的是,MATSUMOTO-IMAI算法也具有这种特性,但正如已经指出的是,这种算法已经被表明其安全性程度是不能完全令人满意的,这使之不适于用在密码通信方法中。本发明的作者也是发现MATSUMOTO-IMAI算法在加密上不可靠的人。
对HFE算法的这种可靠性有贡献的新颖因素包括该算法不需要求一一对应(bijective),以及可以使用很一般的多项式方程。
本发明的另一个优点是,HFE算法具有计算超短签名(小于200位)的能力,而且目前已知的最短非对称签名为220或320位的数量级(借助SCHNORR算法或DSS算法得到的,这些算法只能用于签名或鉴别,不能用于加密/解密)。当使用RSA方法时,最好至少用512位。
定义:
1.环A的N阶“扩展(extension)”为任一同构(isomorphic)代数结构A〔X〕/g(X),其中,A〔X〕为具有A上的一个未知数的多项式的环,g(X)为n次多项式。
一种特别有利的情况是,A为有限域Fq,g为Fq上的一个n次不可约多项式。在这种情况下,A〔X〕/g(X)为Fqn的有限同构域。
2.n阶A的扩展Ln的“基”为Ln,(e1,e2,…,en)的n个元素族,这样,Ln的每个元素e所用下面的式子唯一表示:
e = Σ i = 1 n α i e i a∈A.
为此,本发明涉及一种密码通信方法,将由有限环K的n个元素表示的一个值X变换为由该环K的n′个元素表示的一个映象值Y,其特征在于:
a)映象值Y的每个元素n′采用由值X的元素n组成的,具有≥2的低次数D的一种公开多项式方程的形式;
b)映象值Y借助包括下面步骤的变换从值X中得到,至少下列步骤中的一个步骤要求知道加密情况:
b1)将由值X的元素n组成的次数为1的第一保密多项式变换应用到值x上,以便得到具有n个元素的第一映象I1;
b2)第一映象I1的n个元素被认为是代表属于环K的W次扩展Lw的变量(x,x′,x″,…,xk)中的一个变量或少数k个变量,满足W*k=n,将如下定义的变换作用到第一映象I1上:
f:Lw k→Lw k
(x,x′,x″,…,xk)→(y,y′,y″,…,yk)
应注意(y,y′,y″,…,yk)是(x,x′,x″,…,xk)经变换f得到的映象,已知f证实了下面的两个特性:
-b2.1)在环的扩展LW的基B中,映象(y,y′,y″,…,yk)的每个分量采用由在该基中的(x,x′,x″,…,xk)分量组成的多项式的形式表达,该多项式的总次数≤所述公开多项式方程的次数D;
-b2.2)用环的扩展LW表达,变换f使之对多数项能够计算存在的f的诸前项(antecedent);
b3)经这样变换的第一映象I1构成了第二映象I2;
b4)将由第二映象I2的元素组成的、次数为1的第二保密多项式变换t作用到第二映象I2上,以便得到具有预定数目元素的第三映象I3;并且
b5)从第三映象I3的元素集合中选择n′个元素,以便形成所述的映象值Y。
本发明还提供一种密码通信方法,将由有限环K的n个元素表示的值X转换为由环K的n′个元素表示的映象值Y,其特征在于:
a)映象值Y的每个元素n′采用由值X的元素n组成的具有≥2的低次数D的公开多项式方程的形式;
b)映象值Y是借助包括下列步骤的变换从值X中得到,下列步骤中的一个步骤要求知道加密情况:
b1)将由值X的n个元素组成的次数为1的第一保密多项式变换作用到值X上,以便得到具有n个元素的第一映象I1;
b2)形成一个或多个分支,其中的每个分支都由第一映象I1的元素组成,并且,
·至少在其中的一个分支e中,该分支的ne个元素被认为代表了属于环K的W次扩展LW的变量(x,x′,x″,…,xk)中的一个或少数k个变量,满足W*k=ne′,并且至少将如下定义的变换作用到该分支e上:
fe:Lw k→Lw k
(x,x′,x″,…,xk)→(y,y′,y″,…,yk)应注意(y,y′,y″,…,yk)是(x,x′,x″,…,xk)经变换fe′得到的映象,fe证实了下面的两个特性:
-b2.1)在环的扩展LW的基B中,映象(y,y′,y″,…,yk)的每个分量用该基中(x,x′,x″,…,xk)的分量组成的多项式表示,该多项式的总次数≤公开多项式方程的所述次数D;
-b2.2)变换fe用环的扩展LW表示,变换fe使之对多数项能够计算存在的f的诸前项;
将由具有环K中值的分量组成的次数≤所述次数D的多项式变换作用于其它的潜在分支上;
b3)将由此变换得到的分支或多个分支并置,构成第二映象I2;
b4)将由第二映象I2的元素组成的次数为1的第二保密多项式变换t应用到第二映象I2上,以便得到具有预定的元素个数的第三映象I3;并且
b5)从第三映象I3的元素集合中选择n′个元素,形成所述的映象值Y。
本发明还涉及使用上述通信方法非对称签名确认方法和非对称鉴别方法。
附图说明
本发明的其它细节和优点将在下面的几个优选但又非限定的实施例中结合附图加以描述,在附图中:
图1表示用于处理消息的多个变换的并置;
图2表示用于执行消息加密/解密过程的通信设备;以及
图3表示同一设备,用于执行消息的签名及其确认。
具体实施方式
在提出本发明之前,首先简单回顾和有限域的性质有关的数学概念。
有限域的描述和性质
1)函数f:
设K为基q和特征p的有限域(通常,但不必要,q=p=2),LN为K的N次扩展,βi,j,αi和μo为Ln的元素,θi,j,ψi,j和ξi为整数,并且识f为下面的应用:
f:LN→LN
X>→∑i,j βi,j*XQ+P+∑idi*XSo
其中,Q=qθi,j,P=qψi,j以及S=qξi
其中,f为X的多项式,(*)为乘号。注意,Q,P和S可能表示密码中的n个值,因为可能存在n个θi,j,ψi,j和ξi
此外,对于任何整数λ,x>→x为LN→LN的线性应用。所以,f是一个二次函数。
如果B为LN的基,则在基B中,f的表达式为:
f(x1,…,xN)=(P1(x1,…,xN),…,PN(x1,…,xN))
其中,P1,…,PN为由N个变量x1,…,xN组成的总次数为2的多项式。
利用LN的表达式(representation)计算多项式P1,…,PN。LN的表达式通常为K上不可约多项式的iN(X)的诸元(datum),次数为N,这将使之能识别具有K〔X〕/(iN(X))的LN。这样计算多项式P1,…,PN就很方便。
2)f的逆变换(inversion)
设μ为多项式f中x的次数。f不一是LN→LN的一个双射(一一对应);然而:
17)“a”为LN的一个元素,存在已知的算法,能相当方便地找出LN中x的所有值(如果存在的话),使得f(x)=a,当μ不太大时(例如μ≥1000)〕。
2)此外,对于LN的每个“a”,在f(x)=a中,关于x至多存在“μ”个解。
3)在某些情况中,f可能为一一对应的。
加密/解密系统的基本HFE算法
现在介绍新颖HFE算法的第一个版本,该版本不受限制,更通用的版本在随后的段落中介绍。
域K,包括q=pm个元素,是公开的。每个消息由K的几个元素构成。例如,如果p=2,每个消息具有n*m位。n也是公开的,被分成d个整数:n=n1+…+nd
这些整数中的每一个ne(1≤e≤d)与域K的ne次扩展Lne相应(符号≤指“少于或等于”)。
设“字”为由K的分量表示的一个值。例如,Lne(1≤e≤d)的一个元素可以被表示为长度为ne的一个字。在这里将描述的加密机制中,将用到二次函数f1,…,fd,这些函数类似于上述的函数f,其中,对f1,N=n1,对f2,N=n2,等等。这些函数将产生d个字。然后,这d个字将被组合成长度为n的一个字。
·保密对象是:
1)Kn→Kh的两个仿射双射变换s和t。这些仿射双射可以由次数为1和其系数在K中的多项式在一个基中表示。
2)n被分为d个整数:n=n1+…+nd
3)域Ln1,…,Lnd的表达式。这些“表达式”是选择d个不可约多项式的结果。ψne表示Kne到Lne的同构,这里1≤e≤d。
4)二次函数f1,…,fd和标题为“函数f”(使用N=ne和1≤e≤d)的段落中所描述的函数f具有相同的类型。
首先注意:所有这些目的是加密一个既定值,但实际上,上述2)、3)和4)点中的目的也可以是公开一个既定值。实际上,该算法的安全性主要体现在加密变换s和t中。
其次注意:s和t是一一对应的应用,但也可以是“准双射”,即,它们可以是只有几个前项的应用。
图1介绍加密机制。操作顺序从顶到底。首先从Kn→Kn的仿射双射变换s开始。
函数μ1,…,μd是Kn→Kne的映射函数(其中1≤e≤d),μ为逆并置函数。在某种意义上,函数μ1,…,μd将几个元素分为d个“分支”。
同构ψne从各种域Kne中被作用到各种域表达式Ln1,…,Lnd上,然后,二次函数f1,…,fd分别从Ln1,…,Lnd被作用到Ln1,…,Lnd上。接着,逆同构(ψne)-1从各种域表达式Ln1,…,Lnd被作用到各种域Kne上。
接着,逆并置函数μ从Kne被作用到Kn。最后,执行Kn→Kn的仿射双射变换t,该变换的一般形式类似于变换s。
F2为阶数≤(D)的函数,取决于最左边块的变量。更一般地,Fi(2≤i≤d)为阶数≤(D)的函数,这取决于块1,2,…,i-I的变量。
注意:这些函数F2,…,Fd在块中产生了Feistel图。通常,它们不用在HFE算法中,在这种情况下,F2=…=Fd=0。
必须注意,而且这是很重要的一点,所有这些操作的组合产生一个二次函数,当该函数借助其在某个基中的分量被表达时。所以,该函数可由其系数在K中的n个多项式(P1,…,Pn)给出,这些多项式使得能够按照非加密文本x的函数计算被加密文本(y)。
·公开的对象是:
1)1=pm个元素的域K,比及消息的长度n。
2)由K的几个变量组成的几个多项式(P1,…,Pn)。因此,任何人都能够加密某个消息(根据本发明的特征,加密算法是完全公开的)。而且,如果保密对象是已知的,就能够解密。实际上,图1所述的所有操作可以倒过来。因此,函数fe的逆变换包括解在域Lne’中具有一个未知数的多项式方程,如上述标题为“f的逆变换”段落中所指出的那样。然而,必须注意到,fe不一定是双射的。然后可能得到n个前提。在这种情况下,决定非加密文本的选择将借助于被插入非加密文本中的一个冗余码,而且被加密的文本也应该包括该冗余码。如果该函数不是双射的,就需要考虑将该冗余码有计划地插入到非加密的消息中。
在签名中利用该算法的例子
必须考虑到两种情况:
·函数为双射的
如果H是应用将被签名的报文的“杂凑”函数的结果(例如,H具有128位的格式),则签名S为S=HFE-1(H)。
因此,由于HFE加密函数是公开的,任何人都可以通过执行:H1=HFE(S)并确认H’=H,就能够确认该签名。签名的发送者显然必须知道密码,以便计算出S。
·函数为非双射的
在这种情况下,可以在HFE的输入上选择若干位,输入的位数大于输出的位数,以便利用HFE算法就几乎一定能计算出前几项。
例如,H可以用128位表示,而S为128+20=148位。
具体实施例
执行HFE算法有几种方式,所有这些方式都对其特定的执行和实现情况提供了极大的便利。
·只有一个分支的算法示例(即d=1)。
这个版本只有一个(大的)分支,因此,在每个方程中,所有的变量-即,消息的所有位都被包含在内。考虑到这个分支的大规模,这种执行的形式没有小规模分支的潜在弱点。
·具有相同函数f的小分支的情况
这种特殊的情况包含若干小的分支,例如12位的值,以及相同的函数f。这一版本特别便利,因为它可以在小的中央处理器(例如在单片卡中)中很方便地实现,而且可以借助程序或数学协处理器来实现。
HFE算法的第一种变化
用在每个分支中的函数f,正如在本文中所介绍的那样,是一个有限域中单变量x的多项式方程。采用基表示,函数f被表示为总次数为2的一个方程式。
实际上,也可以使用其它类型的函数f,它稍微不同于上面所定义的一般模式。这种新颖的类型包括依据几个有限域变量,例如两个变量x1和x2,选择f函数,这样,在一种基中,做为座标函数的表示保留了等于2的总次数,并且,总能够重新计算f的某个给定值的前几项,当这些前项存在时。
最好通过下面的数值例子来理解这种变化形式。考虑64位的值和p=2的算法分支,在这种变化形式中,让f取决于每个32位的两个变量x和x’,f(x,x’)=(y,y’),这样:
y=x4=x*x’=x’           (1)
y’=x17+x4*x’+x’3        (2)
(注:这种精确函数的使用不是必须这样做的,仅仅是做为一个例子给出)。
为了由(y,y’)确定(x,x’)可以采用下面的方法:
从等式(1)中,提取:x’=(y-x4)/(x+1)  (3)
因此,从等式(2)中,提取:
y’(x+1)3=x17(x+1)3+x4(y-x4)(x+1)2+(y-x4)3                                    (4)
请注意(4)为具有单个变量x的多项式方程。如上所述,数学工作者已经知道解这类方程的某些一般的方法,因此能够解出等式(4),也能够定义满足该方程的x值;然后,通地替换等式(3)中X的这些值,就可以推出x’的值。
注:目前已知的在有限域中解几个变量的方程的技术使得能够正确地解出其它类型的方程,而不仅仅是本例中所介绍的这一种。特别是对于这样的方程:不需要把某个变量表示为其它变量的函数并替换之。
HFE算法的第二种变化形式
当然,对HFE算法及其变化形式的描述并不限制本发明只使用次数为2的一类多项式方程:完全可以使用3次的;在这种情况下,存在3次的一种公开形式。
同样,4次或甚至5次都是可能的。然而,需要使次数足够低,以便由此导出的公开等式使计算机便于存储和计算。
参数的选择也是很重要的,以便保证最大的安全性,并尽可能躲开密码分析的攻击。在此,为安全起见,最好能做到:
1)在每个分支中,最少有一个32位的变量,而最好至少为64位的,
2)不存在这种形式的等式:
∑γijxixj+∑αixi∑βiyjo=0,其中,系数γij、αi,βj或δo中至少一个非空,并且,总是要验证yj的系数是否为被加密文本的部分以及xi的系数是否为非加密文本的部分。注:在其它方面,正是由于没有验证这样的条件,上述的Matsumoto-Imai算法被认为并不是十分完全。
3)不存在这种形式的等式:
∑γijkxiyjyk+∑αijxiyj+∑βijyiyk∑μixi+∑νiyio=0,即,总次数为3且X的次数为1,
4)更一般地,为完全起见,最好不存在“低”次等式,该等式总在非加密和加密消息的座标之间被确认,除了在小多项式中公开等式乘积的线性组合。
HFE算法的第三种变化形式
前面已经指出,为了使用HFE算法,当函数非双射时,可以把冗余码引入非加密文本中。
存在另一种可能性:如果K的新元素被插入加密值中,加密值Y的长度大于非加密值X的长度是可能的。这些新元素也来自由X的分量所形成的2次等式。更一般地,使用图1的表示法,s(x)的同一元素可以被送到几个分支中。还可以把由任意2次方程组成的一个或多个分支加入某个基中,在这种情况下,这些附加的分支被用来区分其它分支的正确前项。
HFE算法的第四种变化形式
不用使导出图1中最终函数的所有方程都成为公开的,而是让其中的一个或多个保持保密。这意味着,不用使(P1,…,Pn)全公开,而可以仅使这些方程中的部分公开,在这种情况中,只需通过计算公开的(P1,…,Pn)多项式来执行加密。
在解密过程中,非公开多项式Pi的所有可能的值都被试验,这就为几种可能的解密消息提供了一个先验值,而正确的消息如前一样被标识:或者把冗余码引入非加密消息,或者借助第三种变化形式中所介绍的方法。
注:这种删除一个或多个公开的方程式的事实在某些情况下将会使况得发现由HFE算法隐藏的域结构变得更加困难。
图2的说明
图2简单地说明了使用上述密码算法的加密/解密系统的例子。
假定有两个人A和B都属于相同的通信网络,他们中的每个人都有各自的消息发送/接收设备1和2。这种设备包括计算装置,例如计算机,用于执行消息的加密/解密过程;以及存储装置。这些计算或存储装置至少部分可以被定位在便携式的装置中,结合微处理器或微布线的逻辑线路,定义控制存取的区域,因此可以包括如加密密钥这样的加密信息(例如,参看法国专利No.2,401,459中所述的便携式装置)。
每个设备都装入了如上所述的HFE算法及其逆算法HFE-1,尤其采用程序的形式装入。
借助通信线路程3将两个设备互相连接起来。
A和B都分别拥有一对密钥:公开密钥CpA和CpB以及和对应的公开密钥CpA或CpB互相关联的保密密钥CsA和CsB。如果A和B不具备计算这对密钥的装置,这种计算工作可由网络来做,只要给它某些相应于网络每个成员的权限。如果这两个人想在保护模式下互相对话,即,没人能理解所交换的数据,则他们可执行下面的操作过程:
A将其公开密钥CpA送给B,而B则将其公开密钥发送给A。在一种变化形式中,网络可以将所有成员的公开密钥都保存在主存储器中,并且在根据请求将其传送给网络的成员。一旦A接收到公开密钥CpB,A将借助密码算法HFE对希望送给B的消息M和消息M’进行加密。而B一旦接收到该消息,将借助密码算法HFE-1和保密密钥CsB对该消息解密。只有B能对该消息解密,因为他是网络成员中唯一具有该密钥的人。对于从B到A的消息传输,其操作过程完全类似。
图3的说明
图3简单地说明了利用图2的系统执行计算和签名确认的过程,该过程使用了上述的加密算法。
在这种情况下,消息的传输必须和鉴别一块执行,即,消息M的接收者能确定消息来自某个特定的人。例如假定A想要给B发送一个被鉴别过的消息。这两个对话者将执行下面的操作过程:
首先,A将其公开密钥CpA发送给B,或者在一种变化形式中,B也可以从网络中请求得到该密钥。然后,A用其保密密钥CsA和加密算法HFE-1对消息加密。所得到的结果称为该消息的签名s。接着,消息(在这种情况下传送的是非加密的)及其签名被送到B。B借助密码算法HFE和前面收到的公开密钥CpA对签名解密。所得到的结果,用M”表示,必须和接收到的消息M相同。如果确实这样,那么就证明签名是借助保密密钥CsA计算的,因此也证明该消息确实来自A,因为A是网络中具有这一密钥的唯一成员。
对本系统的已知改进包括不但计算消息的签名,而且计算消息压缩的签名。这样,利用“杂凑”函数,就可以把一个相当大的消息压缩为诸元H,这是消息的特征。这种“杂凑”函数可用标准的杂凑函数(例如MD5或SHA)来实现。
总之,本发明导致了下面的发现:
1.发明人已经表明(参看文献Crypto’95,248页到261页)Matsumoto和Imai的原始算法的加密方式不可靠。该算法包括用公式f(b)=a1+Q隐藏双射f,其中,Q=qθ,借助两个仿射变换s和t。
2.发明的人已经表明,可以对f使用更一般化的函数。实际上,发明人已经表明,一方面,可以使用非双射函数f,另一方面,可以使用这样一个已知如何为多项式的各种变化相当大的形式计算前几项的事实,例如使用多项式或多项式合成的PGCD计算,或者利用GROBNER基。
3.需要至少一个不能太小的分支。实际上,发明人发现小分支导致HFE算法性能的降低。
4.而且,发明人注意到,有时,可能只选择构成第三映射(I3)的某些元素,第三映射(I3)是借助第二保密多项式变换从第二映射(I2)中得到的。

Claims (10)

1.一种密码通信的方法,将由有限环K的n个元素表示的一个值X变换为由该环K的n′个元素表示的一个映象值Y,其特征在于:
a)映象值Y的每个元素n′采用由值X的元素n组成的,具有≥2的低次数D的一种公开多项式方程的形式;
b)映象值Y借助包括下面步骤的变换从值X中得到,至少下列步骤中的一个步骤要求知道加密情况:
b1)将由值X的元素n组成的次数为1的第一保密多项式变换应用到值x上,以便得到具有n个元素的第一映象I1;
b2)第一映象I1的n个元素被认为是代表属于环K的W次扩展LW的变量(x,x′,x″,...,xk)中的一个变量或少数k个变量,满足W*k=n,将如下定义的变换作用到第一映象I1上:
f:LW k→LW k
(x,x′,x″,...,xk)→(y,y′,y″,...,yk)
应注意(y,y′,y″,...,yk)是(x,x′,x″,...,xk)经变换f得到的映象,已知f证实了下面的两个特性:
-b2.1)在环的扩展LW的基B中,映象(y,y′,y″,...,yk)的每个分量采用由在该基中的(x,x′,x″,...,xk)分量组成的多项式的形式表达,该多项式的总次数≤所述公开多项式方程的次数D;
-b2.2)用环的扩展LW表达,变换f使之对多数项能够计算存在的f的诸前项;
b3)经这样变换的第一映象I1构成了第二映象I2;
b4)将由第二映象I2的元素组成的、次数为1的第二保密多项式变换t作用到第二映象I2上,以便得到具有预定数目元素的第三映象I3;并且
b5)从第三映象I3的元素集合中选择n′个元素,以便形成所述的映象值Y。
2.如权利要求1所述的方法,其中,公开多项式方程的所述低次数D等于2。
3.如权利要求1所述的方法,其中,变量的数目k等于1。
4.如权利要求3所述的方法,其中,公开多项式方程的所述低次数D=2,K为有限域,并且所述变换F具有下面的形式:
f:LW→LW
x→∑i,jβi,j*xQ+P+∑iαi*xso
其中,q为域K的基;Q=qθi,j,P=qi,j,且S=qξi,βi,j,αI和μo为LW的元素,θi,j,i,j和ξi为整数,其中,多项式f中x的次数≤1000。
5.如权利要求1所述的方法,不存在这样的多项式方程:由(x,x′,x″,...,xk)和(y,y′,y″,...,yk)的分量而不是在小多项式中公开方程的乘积的线性组合组成的低总次数的多项式方程。
6.如权利要求1所述的方法,使之不存在这种形式的多项式:
∑γijxiyj+∑αixi∑βjyjo=0,并且系数γij,αi,βj或δo中至少一个非空,并且总是验证系数yj是否加密消息的分量,或者系数xi是否为非加密消息的分量。
7.如权利要求1所述的方法,其中,环K为有限域,且环的扩展LW为该环K的W次扩展,这意味着,LW和K〔X〕/g(X)是同构的,其中g为K上W次的不可约多项式。
8.一种密码通信方法,将由有限环K的n个元素表示的值X转换为由环K的n′个元素表示的映象值Y,其特征在于:
a)映象值Y的每个元素n′采用由值X的元素n组成的具有≥2的低次数D的公开多项式方程的形式;
b)映象值Y是借助包括下列步骤的变换从值X中得到,下列步骤中的一个步骤要求知道加密情况:
b1)将由值X的n个元素组成的次数为1的第一保密多项式变换s作用到值X上,以便得到具有n个元素的第一映象I1;
b2)形成一个或多个分支,其中的每个分支都由第一映象I1的元素组成,并且,
·至少在其中的一个分支e中,该分支的ne个元素被认为代表了属于环K的W次扩展LW的变量(x,x′,x″,...,xk)中的一个或少数k个变量,满足W*k=ne′,并且至少将如下定义的变换作用到该分支e上:
fe:LW k→LW k
(x,x′,x″,...,xk)→(y,y′,y″,...,yk)应注意(y,y′,y″,...,yk)是(x,x′,x″,...,xk)经变换fe′得到的映象,fe证实了下面的两个特性:
-b2.1)在环的扩展LW的基B中,映象(y,y′,y″,...,yk)的每个分量用该基中(x,x′,x″,...,xk)的分量组成的多项式表示,该多项式的总次数≤公开多项式方程的所述次数D;
-b2.2)变换fe用环的扩展LW表示,变换fe使之对多数项能够计算存在的f的诸前项;
·将由具有环K中值的分量组成的次数≤所述次数D的多项式变换作用于其它的潜在分支上;
b3)将由此变换得到的分支或多个分支并置,构成第二映象I2;
b4)将由第二映象I2的元素组成的次数为1的第二保密多项式变换t应用到第二映象I2上,以便得到具有预定的元素个数的第三映象I3;并且
b5)从第三映象I3的元素集合中选择n′个元素,形成所述的映象值Y。
9.如权利要求8所述的方法,其中,将次数≤D的多项式加到刚被变换的分支或其它的分支的输出中,该多项式只取决于直接位于该分支前面的分支的变量。
10.如权利要求8所述的方法,第一映象I1有若干个分支,其中的一个分支处理至少32位的值。
CNB961108606A 1995-07-27 1996-07-26 密码通信方法 Expired - Fee Related CN1185821C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9509179 1995-07-27
FR9509179A FR2737370B1 (fr) 1995-07-27 1995-07-27 Procede de communication cryptographique

Publications (2)

Publication Number Publication Date
CN1146676A CN1146676A (zh) 1997-04-02
CN1185821C true CN1185821C (zh) 2005-01-19

Family

ID=9481469

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB961108606A Expired - Fee Related CN1185821C (zh) 1995-07-27 1996-07-26 密码通信方法

Country Status (14)

Country Link
US (1) US5790675A (zh)
EP (1) EP0756399A3 (zh)
JP (1) JP3583555B2 (zh)
KR (1) KR100259179B1 (zh)
CN (1) CN1185821C (zh)
AR (1) AR003051A1 (zh)
AU (1) AU6075596A (zh)
BR (1) BR9603150A (zh)
CA (1) CA2181299C (zh)
FR (1) FR2737370B1 (zh)
IL (1) IL118857A (zh)
NO (1) NO321409B1 (zh)
SG (1) SG50745A1 (zh)
TW (1) TW367684B (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2744309B1 (fr) * 1996-01-26 1998-03-06 Bull Cp8 Procede de communicatin cryptographique asymetrique, et objet portatif associe
JP4068664B2 (ja) 1996-08-19 2008-03-26 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
CN1062591C (zh) * 1998-01-08 2001-02-28 北京市朝阳区高科应用技术研究所 无铅汽油抗爆添加剂及制备方法
RU2153191C2 (ru) 1998-09-29 2000-07-20 Закрытое акционерное общество "Алкорсофт" Способ изготовления вслепую цифровой rsa-подписи и устройство для его реализации (варианты)
RU2157001C2 (ru) 1998-11-25 2000-09-27 Закрытое акционерное общество "Алкорсофт" Способ проведения платежей (варианты)
ES2230814T3 (es) * 1999-04-29 2005-05-01 Cp8 Technologies Metodos y sistemas de firma de clave publica.
US6959085B1 (en) 1999-05-03 2005-10-25 Ntru Cryptosystems, Inc. Secure user identification based on ring homomorphisms
EP1190523A4 (en) * 1999-05-03 2004-08-04 Ntru Cryptosystems Inc RING HOMOMORPHISM-BASED SECURE USER IDENTIFICATION
US6304657B1 (en) * 1999-05-26 2001-10-16 Matsushita Electric Industrial Co., Ltd. Data encryption apparatus using odd number of shift-rotations and method
US6708049B1 (en) 1999-09-28 2004-03-16 Nellcor Puritan Bennett Incorporated Sensor with signature of data relating to sensor
US20020136401A1 (en) * 2000-07-25 2002-09-26 Jeffrey Hoffstein Digital signature and authentication method and apparatus
KR20020050680A (ko) * 2000-12-21 2002-06-27 배기봉 행열 다항식 환 과 체를 기반으로 한 공개키 암호시스템
EP1451967A1 (en) * 2001-12-07 2004-09-01 NTRU Cryptosystems, Inc. Digital signature and authentication method and apparatus
FR2859585A1 (fr) * 2003-09-04 2005-03-11 Gemplus Card Int Reduction modulaire pour un procede cryptographique, et coprocesseur pour la realisation d'une telle reduction modulaire
US7961876B2 (en) * 2005-01-11 2011-06-14 Jintai Ding Method to produce new multivariate public key cryptosystems
CN1870499B (zh) * 2005-01-11 2012-01-04 丁津泰 产生新的多变量公钥密码系统的方法
US8139764B2 (en) * 2008-05-06 2012-03-20 Harris Corporation Closed galois field cryptographic system
JP5564053B2 (ja) * 2008-10-20 2014-07-30 コーニンクレッカ フィリップス エヌ ヴェ 暗号鍵を生成する方法、ネットワーク及びコンピュータプログラム
JP2011107528A (ja) * 2009-11-19 2011-06-02 Sony Corp 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム
JP5594034B2 (ja) 2010-07-30 2014-09-24 ソニー株式会社 認証装置、認証方法、及びプログラム
JP5790319B2 (ja) * 2011-08-29 2015-10-07 ソニー株式会社 署名検証装置、署名検証方法、プログラム、及び記録媒体
CN103490897B (zh) * 2013-09-17 2017-04-05 华南理工大学 一种多变量公钥签名/验证系统及签名/验证方法
US9336092B1 (en) * 2015-01-01 2016-05-10 Emc Corporation Secure data deduplication
US11290273B2 (en) 2015-03-30 2022-03-29 Jintai Ding Multivariate digital signature schemes based on HFEv- and new applications of multivariate digital signature schemes for white-box encryption
CN112560091B (zh) * 2020-12-17 2021-07-13 北京百度网讯科技有限公司 数字签名方法、签名信息的验证方法、相关装置及电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0639907B1 (en) * 1993-08-17 1999-12-08 R3 Security Engineering AG Digital signature method and key agreement method
US5537475A (en) * 1994-02-01 1996-07-16 Micali; Silvio Efficient digital signature algorithm and use thereof technical field
US5577124A (en) * 1995-03-09 1996-11-19 Arithmetica, Inc. Multi-purpose high speed cryptographically secure sequence generator based on zeta-one-way functions

Also Published As

Publication number Publication date
FR2737370B1 (fr) 1997-08-22
US5790675A (en) 1998-08-04
CN1146676A (zh) 1997-04-02
IL118857A (en) 1999-08-17
JP3583555B2 (ja) 2004-11-04
AR003051A1 (es) 1998-05-27
SG50745A1 (en) 1998-07-20
CA2181299A1 (fr) 1997-01-28
TW367684B (en) 1999-08-21
NO963141D0 (no) 1996-07-26
NO321409B1 (no) 2006-05-08
NO963141L (no) 1997-01-28
EP0756399A2 (fr) 1997-01-29
IL118857A0 (en) 1996-10-31
JPH0946333A (ja) 1997-02-14
CA2181299C (fr) 2007-02-13
EP0756399A3 (fr) 1997-02-05
AU6075596A (en) 1997-01-30
KR100259179B1 (ko) 2000-06-15
KR970009022A (ko) 1997-02-24
BR9603150A (pt) 1998-04-22
FR2737370A1 (fr) 1997-01-31

Similar Documents

Publication Publication Date Title
CN1185821C (zh) 密码通信方法
CN1054245C (zh) 数据加密的装置和方法
CN1104118C (zh) 计算机支持的在两个计算机之间的密码交换方法
CN1282325C (zh) 能快速解密的密码系统与方法
EP2750323A1 (en) Encryption processing apparatus and method
CN1682479A (zh) 用于数据处理系统的有效加密和认证
JP5593458B2 (ja) 文字列がオートマトンに受理されるか否かを認証するシステム
CN1729647A (zh) 生成和/或使用附条件电子签名以报告状态变化的方法、装置以及计算机程序
CN1299545A (zh) 使用虚拟专用密钥的用户鉴别
CN1251715A (zh) 有限域离散对数密码系统的割圆多项式结构
CN1146184C (zh) 第一计算机单元和集群计算机单元之间的集群密码管理方法
CN1859090A (zh) 一种基于身份的密码方法和系统
CN1258359A (zh) 给对象签名和签章的方法和设备
CN111259435A (zh) 合同的加密和解密方法、装置及计算机可读存储介质
Ganeshkumar et al. Generating a digital signature based on new cryptographic scheme for user authentication and security
CN1836396A (zh) 用于加密和/或解密数据的可追踪方法和系统,及用于实现该方法的记录介质
WO2018043049A1 (ja) 暗号システム、暗号方法及び暗号プログラム
CN1178619A (zh) 非对称密码通信过程与相关的便携装置
CN110720194A (zh) 重加密密钥生成装置、重加密装置、重加密密文解密装置以及密码系统
US10938790B2 (en) Security system and method
Balogun et al. Multiple Ceaser Cipher Encryption Algorithm
TWI675578B (zh) 加解密系統、加密裝置、解密裝置和加解密方法
JP2007521676A (ja) ディフィー・ヘルマン・ディジタル署名の生成及び検証
JP2017038336A (ja) 復号方法
Soni Performance Analysis of Cascaded Hybrid Symmetric Encryption Models

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: CP8 TECHNOLOGY CO.,LTD.

Free format text: FORMER OWNER: BULL CP8

Effective date: 20061013

C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee

Owner name: BULL CP8

Free format text: FORMER NAME OR ADDRESS: CP 8 TRANSAC

CP03 Change of name, title or address

Address after: French Luwaxieen

Patentee after: BULL CP8

Address before: French Luwaxieen

Patentee before: CP8 TRANSAC

TR01 Transfer of patent right

Effective date of registration: 20061013

Address after: French Rowan F Nass

Patentee after: CP8 TECHNOLOGIES

Address before: French Luwaxieen

Patentee before: Bull CP8

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050119

Termination date: 20120726