CN1132429A - 共享保密信息,产生数据签名和执行确认的方法和通信系统 - Google Patents

共享保密信息,产生数据签名和执行确认的方法和通信系统 Download PDF

Info

Publication number
CN1132429A
CN1132429A CN95115810A CN95115810A CN1132429A CN 1132429 A CN1132429 A CN 1132429A CN 95115810 A CN95115810 A CN 95115810A CN 95115810 A CN95115810 A CN 95115810A CN 1132429 A CN1132429 A CN 1132429A
Authority
CN
China
Prior art keywords
equipment
information
group
secret
security information
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.)
Granted
Application number
CN95115810A
Other languages
English (en)
Other versions
CN1092434C (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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from JP00818495A external-priority patent/JP3610106B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN1132429A publication Critical patent/CN1132429A/zh
Application granted granted Critical
Publication of CN1092434C publication Critical patent/CN1092434C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明的目的是通过实际的计算量和实际的通信量去执行可验证的保密共享,近而,使用该处理,产生共享的数字签名,或提供共享的鉴别服务器。

Description

共享保密信息,产生数据 签名和执行确认的方法和通信系统
本发明涉及一种方法,并借此可以在通过通信系统中的通讯路径结合在一起的信息处理仪器(以后称为“用户”)的一个中传输的保密信息能够被用户共享,并涉及使用该方法的通信系统。近而,本发明是关于为由大量用户中的一些构成的一组共享或产生数字签名,并涉及使用该方法的通信系统。另外,本发明涉及使大量的用户共享一确认功能的方法,该功能使信息的接收者可以确认,信息已经从正确的传送者(还没有被线路上的其它设备所更改)传送;并涉及使用这样方法的一通信系统。
通常的产生增加冗余数据的编码技术是一个公知的改进信息通信系统可靠性的技术之一。
特别是能够使在通信过程中已经产生的错误不是被检测出就是被加以校正的误差校正码经常被用来有效地实现高可靠性的通讯系统。
近而,A.Shamir证明了,通过共享保密信息而增加冗余的编码技术在通信系统中作为改进可靠性和同时对保密信息提供保护的一工具是有效的(见“如何共享保密”ACM通信,卷22,1979,11)。
在由大量用户组成的通信系统中,共享保密信息(即,由所有用户所保持和共享的保密信息)的保护并不仅仅依赖于由单个特定用户所提供的物理的保密,但它可能增加可靠性(可以实现失效公差),例如可用下述两个定义加以描述。
一个是可靠性,它确保保密信息受到保护和甚至它被共享时也不会被泄露,它被称为保密失效公差。
另一个是可靠性,它确保输出将是正确的,尽管非授权的行为已经在共享信息上执行;这被称为专有权的失效公差。值得注意的是,物理的安全意指,由特定用户保持的信息不泄露给任何其它用户,特定用户执行的计算不受任何另外用户的控制。
更具体而言,由所有用户共享和保持特定的保密信息X意指,各个单独用户i产生共同对应保密信息X的信息段和分配产生的信息段到其它的一些用户以满足如下的要求(a)和(b)。
(a)从t+1个用户获得的信息段被要求用来破译保密信息X。以后,t+1,需要用来破译保密信息的用户数目被称为阀值。
(b)当从用户获得的部份信息的数目低于阀值(t或更少)时,不能获得相关于保密信息的数据。
通常的基本的保密共享系统是由A.Shamir提出的(“如何共享保密”,ACM通信,卷22,1979,11)和该系统是按如下完成的。
为了和具有大量用户中的确定的源用户保密地共享信息,其常数项被描述为保密信息的-n次多项式f(x)随机地选出。并且对应n个不同值的多项式f(i)(i=1,···,n)的值分配给用户。分配给各个用户的多项式f(i)的值是上述的信息段。使用具有t+1个信息段的内插多项式就能够破译保密信息(使用t或更少信息段对于获得相关于保密信息的任何信息而言是太少了)。
以上述方式共享保密的系统被称为阀值方案和假设为能够实现上述的保密失效公差。值得注意的是,当在从t+1或更多的用户当中收集的保密信息X的共享的信息段当中存在着不正确的信息段时,仅使用上述的定义并不能破译初始的保密信息。即,可以发现,正确获得共享保密信息的失效公差不再能保证了。
为了在上述描述的共享系统内充分增加可靠性,必需考虑为了保密和为了正确获得取两者的失效公差。
提出的功能复制发生任何错误的一用户的作为保密共享方法的可验正的保密共享方法是通过在阀值方案要求(a)和(b)加下述要求(c)和(d)加以定义的。
(c)尽管当非正确的信息段和正确的信息段混合在一起,只要这里存在着t+1个正确的信息段,那对于破译初始保密信息也是足够的。
(d)当所有用户已经接收到涉及保密的信息段,他们可以验证,信息段对于破译特定的保密信息X是正确的信息段。
M.Ben-Or,S.Goldwasser,和A.Wigderson描述了通常的错误校正编码技术,该技术能满意地为具有保密通信信道的一通讯提供一可验证的保密共享系统(当阀值t满足于t<n/3)只要这些用户的数目少于全部用户的三之一,该可检证的保密共享系统就可以复制有任何错误的用户。(见非密码失效公差分布计算的完整理论,ACM STOC1988)。
近而,为了只要在用户小于全部用户有的一半时可以产生能复制具有任何错误的用户的可检证的保密共享系统,就需要附加的要求,假设,所有的用户都有他们可以验证所有的用户均已收到同样信息的广播通信信道,下边的两个方法已经公开了。
(1)使用在零知识证法系统中使用的被称为“切下和选取”的方法(见“密码和信息社会”由Tsujii和Kasahara,Shokodo,在1990写)并使用由A.Shamir提出的基本保密共享系统去共享初始的秘密S和去进一步共享配合的信息段S-i(i=1,···n)
更具体而言,由可验证的保密共享系统配给的所有信息段能被视为部分的矩阵,它是如此产生的以至于是对应保密信息段S-i的保密部分。通过使用“切下和选取”技术,可以满意地执行根据要求(a)的验证,使得在决定输出中错误将要发生的概率,指出是否执行了译码保密信息的正确的共享。当错误概率通过使用为安全设置的参数减少时,它可以忽略,由J.Rabin和M.Ben-Or提出的方法(见可验证的保密共享和具有诚实的大多数的多方协议书,ACMSTOC,1989)是一个特定的例子。
(2)使用不是对话型的单路函数的方法和具有特定代数性质。为了这样构成的保密共享系统的安全,必需对密码的假定提出要求,使得获得一单路函数的相反成份是很困难的,该单路函数满足代数性质(计算相反成分的实际算法并不存在),由P.Feldman已经提出了一特定实例(见“非相互可验证的保密共享的实际方案,”IEEE FDCS,1987)。
近而由T.Rabin,M.Ben Or(见“可验证的保密共享和具有诚实的大多数的多方协议书,ACM.STOC,1989),D Beaver(见“确保多方协议和允许少数失效的零知认证法系统”,密码术杂志,1991,4,75—122页;“使用电路随机化的有效的多方协议书”,密码术—密码先导′91,1992)和M.Franklin和S.Habtr(见“结合编码和信息—有效的确保计算”,密码术—密码先导′93,1994)所描述的,使用上述可验证的保密共享方法可以提供在给定的有限集内执行共享计算的电路。
对于上述的对话方法(1),然而,众所公知当安全参数是用K(通常使用值100)表示的,要求共享一位所需的通信量对于n保密部份是n^3K^2次(这里a^b指ab),而这种方法不是有效的。
而对非对话的密码方法,对n个保密部份必须对特殊次单路函数的计算n次。特别是当使用保密共享过程作为部分过程以完全地执行共享计算时,必须执行的保密共享过程的次数就必须增加(即,对共享多应用是n2次)。整个计算次数将不现实的巨大。
如上所述,在通常的技术中,对话方法(1)需要大量的通信,而编码法(2)需要巨大次数的计算。
在绝大多数通常的通信系统中,以称为包的数据块单元传送信息。甚至当包被传送到指定的目的地时,所有构成通信系统的设备(用户)能接收到那些包。近而,由于通过相同的通信讯通大量的设备被连在一起,这就很困难指定包的传送源。因此这样的通信系统倾向于自己公开地主动出击的过程,例如通过“窃听”,由此,借助于诡计,不正当地获得了传输到不同目的地的包,这里特定的设备不适当假设为其它设备的目的地。
让我们讨论上述通信系统如何保密的问题,该上述的通信系统确保传送的信息仅提供给被选作为指定的传输目的地的用户和这里没有非授权的获取(信息被保密)。编码技术(Ikeno和Koyama著,“当前编码理论”,页224—225,IEEE)是公知的有用的技术之一。
众所周知,密码技术不仅对于执行保持信息秘密的功能而且对于验证被接收信息的功能和被称之为“电子签名”的用于验证从所指定的设备接收已传输信息的第三者的功能都是有效的。通过使用具有数字签名的密码通信能预防窃听和不正当行为。
特别广泛公知的是使用KSA编码系统的验证和数字签名方法,该RSA编码系统是公共键密码系统之一(例如,见“获得数字签名和公共键密码系统的方法”R.Rivest,A.Shamir和L.Adleman著,ACM通信1978,2,21,页120—125或见USP4,405,828)。
不同于RSA密码系统使用一公共键密码系统的作为另一种公知数字签名的方法是由A.Fiat和A.Shamir提出的(见“如何验证你自己:识别和签名问题的实际解决方法”,密码术—密码先导′87,计算机科学的讲座注释,263,Spriner-Verlag,1988,页186—194或见USP 4,748,668)。依照该方法,执行下述过程为给定的信息提供有效的识别和数字签名。
(1)计算给定信息数字签名的一设备或作为通信系统的可靠中心的设备随机地从{1,···,N-1}选取一元素(这里N是两个素数p和q的积)和选取的元素视为计算一签名的该设备的保密信息。
(2)已经选取保密元素的设备计算a1mod N(注意1满足gcd(1,λ(N))=1,这里λ(N)=1cm(P-1,q-1),gcd(a,b)代表最大公约数,和1cm(a,b)代表最小公倍数),和使用结果作为验证由该设备产生的数字签名的公共信息。
(3)在通过设备执行去产生一给定信息m的数字签名过程中,R=r^1 modN,R它是通过使用以随机的方法在{1,···,N-1}选出的保密元素r而获得的,和R/m,该值是连续给定公共信息m而获得的,它们均视为输入,通过使用预先给定的函数h计算e=h(R/m)。此后使用上述的值作为输入计算S=r*a^e(mod N)。获得的结果S和R用来作为结定信息的数字签名。
(4)为了验证给定信息m的数字签名(S.R)而计算S^1modN和R*(a^1)^(h(R/m))mod N,当结果相同时就证实了数字签名。
依照由C.P.Schnorr提出的有效识别和获得一给定信息的数字签名的方法(看“Efficient Identification and Signatures ForSmart Card”Advances In Cryptology-Crypto 189,LectureNotes In Computer Science,435,Springer-Verlag,1990,页139-252,或看USP 4,995,082)执行下述的过程。
(1)计算给定信息数字签名的设备或作为通信系统可靠中心的设备随机地从{1,···,P}中选取一元素(这里P是素数),选取的元素视为计算签名的该设备的保密信息。
(2)已选取保密元素的该设备计算g-amodq(这里q是这样一素数,p是q-1的约数和属于有限集GF(q)的元素g的数字的数目是p)和使用计算的结果作为验证由该设备产生的数字签名的公共信息。
(3)由设备执行的为给定信息m产生数字签名的过程里,R=grmodq,它是使用从{1,···,p}随机选出的保密元素r获得的,和R/m,它是通过连续地给定公共信息m而获得的值,它们均视为输入,和使用预定的函数h计算e=h(R/m),此后使用上述的值作为输入计算S=r+a*e(modp),获得的结果S和R用来作为给定信息的数字签名。
(4)为了验证给定信息m的数字签名(S、R),计算h(g^S((g^(-a)^(h(R/m))))(mod q)/m(R/m))(注意x^y表示Xy),当这结果和e相等时就验证了数字签名。
依照由T.ElGamal提出的有效的识别和为给定信息获得数字签名的方法(看“A Pullic&—Key Cryptosystem And ASignature Scheme Based On Discrete Logarithms”,IEEETransactions On Information Theory,IT-31,4,1985,页469—472,American National Standard X9,30—199x,digitalSignature Algorithm,2月,1992),执行下述的过程。
(1)为给定信息计算数字签名的一设备,或作为通信系统可靠中心的设备随机地从{1,···,P}中选取一元素(这里P是素数),选取的元素视为计算签名的该设备的保密信息。
(2)选取保密信息的设备计算(g^(-a)modq(这里q是一素数,p是q-1的约数,属于有限集GF(q)的g元素的数字数目是p)和使用结果作为验证由这些设备所产生的数字签名的公共信息。
(3)由设备执行的去为给定信息m产生数字签字的过程中,使用R=gTmodq,它是使用从{1,···,p}随机选取的保密元素r而获得的,和e=h(m),它是从预定函数h而获得的值,而给定的公共信息m视为输入,计算S=(e+R*a)*r-1modp。获得的结果S和R作为给定信息的数字签名。
(4)为了验证给定信息m的数字签名(S,R),计算(g^(-a))^(g^r)^S和g^m(mod q),当这些值相等时,验证了数字签名。
换言之,对于上述的维持保密和实现验证的信息通信系统,Y.Desmedt和Y.Frankel提出来作为增加可靠性并同时保持信息秘密的工具和作为共享保密信息和共享为给定信息计算数字签名的方法,该结定信息是在用通信线路连接在一起的大量计算机中的。(这里的计算机以后称为一组签名人,属于该组的每一个计算机称为用户,组内计算机的数目表示为n)(看“ThresholdCryptosystem”,Advances in Cryptology—Crypto89,435,Springer—Verlay,1990,页.307—315;和“Shared Generationof Authenticators And Signatures”,Advances In Cryptology—Crypto 91,576,Springer—Verlag,1992,页457—469)
共享数字签名方法的基本部分是共享由上述满足前述的要求(a)和(b)的大量用户组成的通信系统内的保密信息,
由Y.Oesmedt和Y.Frankel提出的共享型数字签名方法使用了根据保密共享方法的RSA的保密系统并满足如下要求(I)和(II)。
(I)t+1用户协作对于为给定信息为一组签名人去产生数字签名是足够的
(II)当用户的数目少于一阀值(即t或更少)时,不能产生给定信息的数字签名。
在仅用要求(I)和(II)时,然而,当共享数字签名产生过程时,如果在协作的t+1或更多用户中有不正当的用户时,也不能执行数字签名的产生。
另一方面,众所公知,为每一个已有任何类型错误的每一个用户产生数字签名的方法可基于由前述要求(a)至(d)所定义的可验证的保密共享系统加以提供。换言之,可以实现满足下述要求的共享数字签名系统。
(I)尽管有不正当的用户出现在正当的用户之间,只要有t+1正当用户的协作,仍能产生给定信息的数字签名。
(II)当用户的数目少于阀值时(即,t或更少)不能产生给定信息的数字签名。
公知的是,通过使用上述可验证保密共享方法的共享和计算电路可以设计各种前述的数字签名方法的共享和产生系统。
公知的是,对满足上述要求(I)和(II)的共享数字签名所要求的通信量和计算量是实际的。然而如前所述,当参加签名共享和产生过程的用户执行不正当的事物时,就不能产生签名。
另一方面,如上所述,使用可验证的保密共享方法和共享和计算电路的共享数字签名系统满足要求(I)和(II),公知的是,根据对活型可验证的保密共享方法(1)所要求的通信量是不实际的,和根据非对话型的可验证的保密共享方法(2)所要求的计算量也是不实际的。
如上所述,通过使用通常的技术,对于根据对话型可验证保密共享方法(1)的共享数字签名系统而言,所要求的通信量是巨大的;通过使用通常的技术,对根据非对话型可验证的保密共享方法(2)的共享数字签名系统而所要求的计算量是巨大的。
作为减少由于窃听和伪装而造成危险的另一个措施,这里有一个被称为Kerberos网络公知的鉴别方法(看UNIX Security,byS.Gartinkel和G.Spafford/由Hide Yamaguchi编辑、翻译,ASCII,页349—357和页535—542,1993),它使用了需要少量计算的一公共键密码系统。
将解释特殊鉴别协议,它们是基于由Needham和Schroeder(看R.N.Needham和M.D. Schroeder:“Using Encryptionfor Authentication In Large Network of computers”CACM 21,12,页993-999,Dec.1978)的鉴别协议和由Birrell的SecureRPC(Remote Procedure Call)(看A.D. Birrell“SecureCommunications Using RemotePro Cedureudurt Calls”,ACMTransaction Computersystems,Vol.3 No.1,页114,2月。1985)的协议为基础的。
一般而言,在Kerberos内存在着为通信系统所有设备的管理保密信息(这相当于等同保密键)的鉴别服务器。鉴别服务器共同地使用带有各个独立设备i的保密键pKi,这如图31A所示。此后,需要鉴别的人称为声明人,而提供声明人鉴别的人称为认证人。
如图31B所示,当声明人A向认证人B要求鉴别时,A传送具有{A,B,R}形式的数据161给鉴别服务器。值得注意的是,A和B是公共识别信息项,它们指定了声明人A和认证人B,例如设备或用户姓名,而R是随机选取的数。
根据接收的数据161,鉴别服务器反回具有{鉴别元素R,B,CK}^pkA形式的数据162到A。值得注意的是,{M}^K代表使用键K通过编码信息M获得的数据。鉴别元素是使用时间标记T由{T,A,CK}^pkB构成的数据163,和CK代表由鉴别服务器产生的和此后为A和B之间的公共键保密通信所使用的公共键。
为声明人和认证人之间的公共键保密通信的保密公共键以后称为交谈键。鉴别服务器以后为交谈键作为传送服务器。最后,声明人A发送先前描述鉴别元素163到认证人B。认证人B用它的保密主键PKB合成接收的鉴别元素163去认证A,然后使用公共交谈键CK执行保密通信。
通过使用Kerberos鉴别协议书,可能因此使窃听和伪装造成的危险减少。相应于公共键的保密方法必须执行512位或更大的位数的整数次方系列的余数的计算,使得计算次数是巨大的。
近而,由于在公共键方法内的Kerberos协议内,鉴别服务器管理着构成通信系统包括由于物理原因是安全可靠的鉴别服务在内的所有设备的保密信息,这也是所要求的(类似地,对于公共键保密方法,管理所有公共键的集中控制中心是要求的)。因此,为了确保保密,通过把它放置在一加锁的室内而严格地控制着鉴别服务器。未经允许不许任何人入内。近而,由于发生失误或由于未授权的办理使鉴别服务器不再可靠,失效公差如此地加以减小,使得整个系统的保密性全垮了。
本发明的目的是提供可验证的保密共享方法,使用该方法时,当比较上述从对活系统(1)和保密系统(2)所获得的值时,所获得的计算量和通信量构成了实际幅度的次数。
本发明是如此安放到适当位置,使得它位于在对话型系统(1)和非对话型系统(2)的中间,和使用可验证的保密共享方法,通过使用该方法,所需的计算量和通信量均构成了实际的幅度次数,并提出了共享的数字签名系统(当执行非授权的用户的数目等于或大于阀值时,系统不产生数字签名,但能够识别这样的用户)该数字签名系统是安放在要求(I)(当执行非授权行为的用户存在时系统不产生签名)和要求(I′)(当执行非授权行为的用户的数目等于或少于特定的阀值时,系统能产生一个签名)之间的适当的位置。
本发明的另一个目的是克服了鉴别服务器可靠性的上述问题,使得提出了使用大量设备去共享和管理保密信息的共享鉴别服务器。
共享鉴别服务器的要求如下:
(1)对于声明人和认证人而言,共享鉴别协议书执行相同的鉴别函数作为由通常的中心化管理所提供的鉴别协议书。
(2)对声明人和认证人而言,共享鉴别协议书确保相同接口(数据格式)作为由通常中心化管理所提供的鉴别协议书。
(3)对声明人和认证人而言,通过执行和由执行和由通常中心化的管理所提供的鉴别协议书所需要的相同量的计算而实现共享的鉴别协议书。
(4)上述的要求被满足,除非当多于一半的构成共享鉴别服务器的设备不再可靠。
根据一方面,实现这些目标的本发明涉及一通信系统的保密信息处理方法,其中,通过保密通信信道连接大量的信息处理仪器,所有这些当中的每一个设备与设备中的另一个通过广播通信信道交换信息并且同时对任何剩下的设备保持信息保密,所有这些设备通常地和所有其它包括在内的设备交换信息,保密信息处理方法包括如下步骤:
作为大量设备并处理保密信息的第一个设备为大量第二组仪器从保密信息中产生一保密的数组;
使用第一个设备为第二组设备从保密数组中取出第一个信息段和通过保密通信信道传送该第一信息段到第二组设备;
使用第一个设备在保密数组部分的基础上执行预定的函数,和通过广播通信信道广播获得的输出值;
使用第二组设备产生随机数;和通过广播通信信道广播该随机数;
使用该第一个设备为第二组设备从保密数组并结合被广播出的随机数产生第二个信息段,通过广播通信信道广播第二个信息段;
使用第二组设备产生第三个信息段,该信息段作为使用第一仪器为该第二组设备产生的第二信息段,这些信息段与被接收的第一信息段和由第二组设备产生的诸多随机数相一致;和
使用第二组设备比较第三信息段和被广播的为第二组设备的第二信息段,验证保密信息是被第一个设备所共享的。
根据另一方面,实现这些目标的本发明涉及通信系统的签名产生方法,其中,通过保密通信信道连接在一起的大量设备,所有这些设备和其它设备通过广播通信信道交换信息并对剩下的仪器保持信息秘密,所有的设备中的每一个共同地与所有其它设备交换信息,签名产生方法包括以下步骤:
使用属于一签名组的设备的每一个随机地选取第一个保密信息,和组内的设备秘密地其享第一个保密信息;
使用诸设备在第一保密信息的基础上执行预定的第一个函数和广播获得的输出值到组内的所有设备;
在组内诸设备中的每一个共享第一个保密信息,和加第一个保密信息;
在组内仪中以乘法共享输出值,在由乘法获得的结果和一信息的基础上执行预定的第二函数;
在组内设备中共享第二个保密信息和使用对执行第二个函数所获得的结果,即由共享和加获得的一个结果,和一个变为公开的元素来计算第二个保密信息;
通过组内所有设备共同努力对共享的第二保密信息进行译码,和输出译码的第二保密信息并结合共享乘法获得的结果作为签名。
根据附加的一方面,完成这些目标的本发明涉及通信系统鉴别方法,其中,大量的设备连接在一起,属于特定组的那些设备共提供鉴别,鉴别方法包括如下的步骤:
传送包括声明人的标识符和认证人的标识符的鉴别请求信息从传送鉴别请求的声明人的设备和从认证人的设备到特定组的每一个设备;
产生用保密键编码的鉴别元素,该保密键涉及认证人和基于使用属于特定组内所有设备协同努力的鉴别请求信息,使用涉及声明人的保密键和鉴别元素进行编码而产生的鉴别信息;
传送从特定组每一个设备的鉴别信息到声明人的设备;
在接收到鉴别信息的基础上在声明人的设备内译码该鉴别信息,传送该译码的鉴别元素到认证人的设备;和
在认证人的设备内进行译码该鉴别元素和传送鉴别到声明人。
根据另一个方面,实现这些目标的本发明涉及具有大量信息处理设备和保密通信信道的一通信系统,所有这些当中的每一个设备能与另一个设备秘密地变换信息并同时对剩下的设备保密,和广播通信信道连接所有这些当中每一个设备共同地传送信息到所有其它的设备,大量信息处理设备的第一信息处理设备包括:
第一产生装置,用于从保密信息中产生预定的部分数组;
取出装置,用于从部分排列当中取出为任何剩下的信息处理设备的第一信息段和传送第一信息段到剩下的信息处理设备,
函数处理装置,用于对第一信息段执行预定的函数运算,和广播输出值,过广播通信信道到剩下的信息处理设备;和
第二产生装置,用于产生与用剩下信息处理设备广播产生的随机数相一致的第二个信息段,和通过广播通信信道广播第二信息段;剩下的信息处理设备的每一个包括:
随机数产生装置,用于产生一随机数,和通过广播通信信道广播随机数;
第三产生装置,用于以第一个信息段和该随机数相一致地产生第三个信息段,该第三个信息段由第一信息处理设备作为第二个信息段被产生;和
验证装置,用于比较第三个信息段和被广播的第二个信息段,和验证由第一信息处理设备所执行的共享的秘密。
根据另一方面,实现这些目标的本发明涉及具有大量信息处理设备和保密通信信道的一通信系统,所有这些当中每一个设备能和其它的设备秘密交换信息而同时对剩下的设备保持信息保密;和广播通信信道连接所有这些当中每一个设备共同地传送信息到所有其它的设备,在大量设备中属于同一组鉴名人的每一个设备包括:
共享装置,用于随机地选取第一个保密信息和在组内的设备当中秘密地共享第一个保密信息;
广播装置,用于对第一个保密信息执行预定的第一函数运算和广播所获得的值到组内所有剩下的设备;
加法装置,用于共享组内每一个设备所保持的第一个保密信息和加第一个保密信息;
处理装置,用于共享组内每一个设备保持的输出值和乘输出值,和对用乘法获得的结果和信息执行预定的第二函数运算;
计算装置,用于使用乘法结果,由共享和加获得的结果和在组内设备共享第二信息公开的一元素和计算第二信息;和
译码装置,用于通过共享第二保密信息组内所有设备的联合努力下对第二保密信息进行译码,和输出译码的第二保密信息并且结合由共享和乘法所获结果一起作为签名。
结合下述发明的优选的实施例,从上述讨论的其它目的和优点对于所属领域的技术人员而言将是明显的,在说明书中参考作为构成发明一部分的并且给出发明实例的附图。然而,这样的例子并不是发明的全部的各种实施例。因此参考下述描述确定发明范围的权利要求。
图1是本发明一实施例的通信系统结构的方框图;
图2是每一个用户使用的信息处理设备结构的方框图;
图3是保密和部分矩阵之间关系的框图;
图4是单路散列函数操作的处理的框图;
图5是保密共享处理过程的框图;
图6是保密译码处理过程的框图;
图7是解释共享和计算处理的框图;
图8A至8C是从输入信息获得散列值处理的框图;
图9是在共享时产生数字签名的通信系统结构的方框图;
图10A和10B解释保密键和公共键产生处理的过程的图形;
图11是解释共享保密线性组合处理的输入和输出关系的图形;
图12是解释共享签名产生处理过程的图形;
图13A和13B是解释保密键和公共键产生处理过程的图形;
图1 4是解释保密共享乘法处理的图形;
图15是解释共享保密线性组合处理的图形;
图16是解释共享签名产生处理过程的图形;
图17是解释可验证的保密共享乘法处理过程的图形;
图18是解释可验证的保密共享乘法处理过程的图形;
图19是解释保密共享和乘法处理过程的图形;
图20是解释共享签名产生过程的图形;
图21是为鉴别执行共享的通信系统结构的方框图;
图22是解释共享保密线性组合处理的图形;
图23A和23B是共享伪随机数产生处理过程的图形;
图24A和24B是保密键和编码处理过程的图形;
图25A和25B是共享鉴别协议书过程的图形;
图26是脱机伪随机数产生处理过程的图形;
图27是连机保密键传送处理过程的图形;
图28A和28B是共享鉴别协议书过程的图形;
图29A和29B是共享鉴别协议书过程的图形;
图30A和30B是共享鉴别协议书过程的图形;以及
图31A和31B是通常共享鉴别协议书过程的图形;
结合附图描述本发明优选的实施例
〔实施例1〕
首先描述本发明的原理
图3是保密S和P部分矩阵S之间关系的框图。
在这个实施例中用于保密S的部分矩阵S是保密段nxn的矩阵S=S(i,j)〕(i,j=1,···,n)它是如何得到的,这将在以后叙述,加被要求用于通常对话型可验证的保密共享系统所使用的部分矩阵。
首先,每一列的矢量S-r(i)=S(i,1),···,S(i,n)〕(i=1,···n)是保密S-r(i)的保密部份矢量(在特定保密的共享方法中元素j的矢量是用户j的保密部份)和每一行的矢量,S—C(j)=S(S(l,j〕,···S(n,j)〕(j=1,···n)是保密S-C(j)的保密部份矢量。
分别对应保密S-r(i)和S-C(j)的矢量〔S-r(1),···S-r(n)〕和〔S-C(1),···S-r(n)〕是保密元素的保密部份矢量。这样构成部分矩阵的行矢量i(i=1,···,n)和保密S-r(i)被传送到用户i作为每个用户i的一保密信息段。因此,在保密译码过程中。只要接收信息段的用户不执行非授权的行动,就有可能以非常高的概率验证是否用各个单独用户所广播的信息是正确的。
增加该实施例是为了验证,甚至当特有初始保密信息和并且已经配给了保密信息段的用户执行了非授权的行动,验证是否在保密译码过程中被广播的信息段是正确的,作为对应每一个用户i(i=1,···,n)的保密S-r(i)的鉴别元素的一个值在保密信息段被配给之前由单路散列函数所产生(看“ModernCryptologicalTheory,”by Ikeno和Royama,页.224-225,IEEE,1986)。
将解释单路散列函数
单路散列函数是一种函数,使用它可以执行数据压缩量化,使用该函数通过输入值获得输出值的计算是容易的,但是反过来从输出值求输入值的计算是困难的。在该实施例中,然而,和在通常的非对话型的可验证的保密共享系统所使用的单路函数相比较,特殊代数性质并不是必需的,这样可以使用提供高速计算的单路散列函数。
作为单路散列函数的特殊实例,R.Merkel已经提出了使用信息组编码术例如DES(数据编码标准的一单路散列函数(看“One—Way Hash Functions和DES”Advances in Cryptology—Crypto 189,Lecture Notes In Computer Science,Vol.345,Springer—Verlag,1990)
图8A至8C是单路散列函数特定结构的图形
在图8A中给出信息组编码,该编码是使DES执行的,和编码电路81是从64位输入或从56位键提供一64位的输出,(至图8A至8C中DES是用E表示)。
然后,图8B给出了输入长度是119位和输出长度是112位的函数F的处理,而DES被用来作为部分处理。标号82指示一函数操作电路。该处理定义如下。
首先输入被分为两部分K和X(注意K部分的长度是55位,而剩下部分X的长度是64位)。然后,X部分被用来作为DES的输入,而使用组合部分K和‘0’或获得的值‘0’,K被用来作为55位键。用获得的输出和X执行EXOR操作,而获得的结果被视为函数F输出左边的64位。使用同样的方式,同样的部分,X被用来作为输入,使组合剩下部分K和‘1’获得的值‘1’,K被用来作为一键,用获得的输出如X执行EXOR操作。从结果的64位中的48位(右边的48位)作为函数F剩余部分。然后由组合两个这样获得的输出所提供的结果是函数F的112位输出。
随着这个,图8C给出了一给定信息是输入和单路散到函数值是输出的处理,标号83代表散列函数操作单元,该过程按如下执行。
给定信息的前119位被用来作为上述函数F的输入,这样获得第一个112位的输出。然后,该输出再次用来作为112位的输入,和此后剩下的7位信息重复地输入到函数F,最后,当所有的信息被输入所获得的112位输出被用来作为信息的散列值(如果这里有过少的位去输入信息的最后7位时,根据需要加入‘0’)
R.Merkel在前述论文中陈述,用上述的计算获得的单路散列函数(即,当获得不同的输入信息时和当一个散列值被给出而为获得相同的散列值是非常困难的因子)是被提供作为数组编码的安全(当输入给定时,从键获得的输出是随机变化的,和输出给定时,从键获得的输入是随机变化的)例如上述所使用的DES。
近而,在同一篇论文里,也提出了比上述散列函数更困难的单路散列函数。另外,R Rivest已经提出了不使用数组编码的一有效的单路散列函数(看“The MD4 Massage Digest Algorithm,”Adances In Cryptology—Crgpto ′90,Lecture Notes InComputer Science,Vol.537,Sprviger—Verlag,1991.NistFederal Information Processing Standard For Secure Hash,American National Standard X9.30-199X).
在本实施例中将描述“切下和选取处理”。
为了验证是否所有用户在保密共享处理中已经收到的保密信息段是可验证共享保密的类似切下和选取的信息段,正如在通常对话型保密共享系统所执行的,配给了保密元素S的部分矩阵和散列值,和在与此同时配给了随机被选取的K保密11,···1K,的部分矩阵和散列值。所有涉及由所有用户随机确定的K/2(1i(1),···,1i(k/s)的保密信息被广播。当它是为利于k/2保密(1j(1),···,1j(k/2))时,所有涉及1j(1)+s,···,1j(k/2)+S的保密信息被广播了。当在所有广播信息中已出错的部分的数目超过t时,它就确定,保密共享处理已是不正确了。
以这样的方式能提供满足下列要求(c’)和(d’)而不是通常可验证保密共享方法要求(c)和(d)的一保密共享方法,使用该方法,能够实现安全地完成共享计算的方法和通信系统。
(c’)当不正确信息段和正确的信息段加以混合时,甚至带有t+1个正确的信息段时初始的保密信息并不被译码,但能够识别执行非授权行动的用户。
(d’)当单独的用户已经接收了保密的信息段时,信息段的内容对于保密信息X的译码不是正确的,在译码处理时,可以识别执行非授权行为的一用户。
这些要求使得检测出犯错误的用户即错误的检测成为可能,甚至通过通常的方法,当这里有在犯错的用户时,不能对保密进行译码,即不能执行错误校正。使用求(c)和(d),甚至当这里是犯错误的用户时,能够执行共享操作,近而,使用开关要求(c1),检测犯错误的用户是可能的,在给出警告之后,处理继续执行,可以获得正确地输出和能够实现适当的失效公差。
在该实施例中,提出了可验证的保密共享方法,该方法能够识别执行非授权行动的一用户,当这样用户存在时,甚至共享的保密不能被译码时也是如此。即,这就可能提供可验证的保密共享方法,该方法是在上述的对话型方法(1)和编码方法(2)之间的适当的位置,它对计算量和通信量的要求均在实际幅度的次数范围内。
图1是一根据本发明的一个实施例的信息处理系统的框图,它包括了共享的信息处理设备。
图1是由系统用户使用的信息处理仪11。在下述的解释中,使用该系统的每一个设备和用户被视为是相同的、和设备11被称为用户。广播通信信道12用来打开信息到所有的用户11,和保密通讯信道13被用来作为和每一个用户进行保密通信。
图2是信息处理仪11结构的方框图,在图2中,通信单元21被用来通过广播通信信道12或保密通信信道13和另一个设备11通信。一算法操作处理单元22执行各种算法操作,例如单路散列函数,和根据在存储器单元24的程序的处理决定,和控制着各个单元部分。一随机数产生单元23例如是一个伪随机数产生器,并且用来产生伪随机数、存储单元24被用来存储算法操作处理单元22执行的程序,例如在处理过程产生的算法操作结果的信息,从其它设备所接收的信息和各种参数。
在一给定的有限集F内执行可验证的共享保密的方法将在下面专门地加以描述。
首先,将专门地解释保密S的部分矩阵X。
在给定有限集中对保密元素S的部分矩阵S=S(i,j)〕(i,j=1,···,n〕中,每一个行矢量S-r(i)=S(i,1),···S(i,n)〕(i=1,···n)对应着n个不同的值i1,··in,是tth次方的多项式fi的值fi(i1),···fi(in),其中sr(i)作为常数项。每列矢量S-C(j)=S(l,j)···,S(n,j)〕(j=1,···,n)的元素对应着n个不同的值j1,···jn是有tth次方的多项式gj的值gj(j1),···,gj(jn),其中S—C(j)作为常数项。近而,当两个矢量〔S-r(1),···S-r(n)〕和〔S-C(1),···S-C(n)〕分别是tth次方的多项式f和g的值f(i1,···,in)和g(j1,···,jh),其中具有保密元素S作为常数项。
现解释该实施例的处理过程,它可分划为两个处理过程:保密共享过程,配给在有限集内的保密到所有的用户,使得保密在用户当中保持和共享;保密译码过程,由所有的用户对共享的保密进行译码或识别执行非授权行为的用户(假如非授权行为已经发生了)。
(1)保密共享过程
保密共享过程是持有保密元素S的用户d分配了它的保密部分的过程。图5是处理过程的图形,在图5中,由用户i在范围j内执行对Rj,i的处理。
此后,h代表有效的单路散列函数(包括了高速计算方法)。使用由高速数组编码形成的散列函数(看aforementioned“ModernCryptological Theory”)作为一例子,对于给定的K′,保密参数K满足K=nk,在这种情况下,依照切下和选取处理,保密共享处理的验证将失效的概率是2^(—K′(t+1))(看the aforementioned“Verifiable Secret Sharing和Multiparty Protocols With HonestMajority”,T.Rabin和M.Ben—Or).
(范围1)用户d使用随机数产生单元23分别为在给定的有限集随机选取的保密元素S和保密元素11,···,1k产生部分矩阵S,L1,···Lk。如图4所示,使用散列函数操作处理单元83获得保密值S-r(1),···,S-r(n),11r(1),···11-r(n),···11-r(n),···,1K-r(1),···,1Kr(n)的单路散列函数值S*。
用户d通过保密通信信道13传送每一个产生的矩阵列矢量S-C(i),L1-C(i),···,LK-C(i)和保密S-r(i),11-r(i),···1K-r(i)(信息Bi.i)到每一个用户i(i-1,···,n,包括他本身),然后通过广播通信信道12把散到值S*(信息B1,d)广播到所有用户(处理R1,d)。
(范围2)每一个用户i(i-1,···,n)使用随机数产生单元23来广播随机选取的(处理R2,i)K′位(信息B2.i)。随机选取的K′位的每一位被称为Bi-1,···,Bi-K′,和到所有n用户的位被称为B1,···Bk。
(范围3)如果在第二范围广播的每位Bj(j=1,···,K)是1,用户d广播由用户d在第一范围中产生的部分矩阵Lj,如果Bj是0,用户d广播的是把产生的部分矩阵S的每一个元素和在有限集的Lj(处理R3,d)相加而获得的结果(写为S+Lj).由用户d广播的信息表示为在图5中的B3.d。
(范围4)对于在范围1中已经秘密地接收到的信息B1.i的每一个值j(j=1,···,K),每一个用户i(i=1,···,n)验证是否列矢量Lj-C(i)和Lj-r(i)(当在范围2中被广播的位Bj是1)或Lj-C(i)+S-C(i)和Lj-r(i)+S-r(i)(当Bj是0)是等于在范围3中部分矩阵的列矢量和保密值,当它们不等于涉及的特定值j时,用户d的决定信息(信息B4.i)被广播(处理R4.i)。
(范围5)当在范围4中的决定信息被广播时,用户d广播它已经在范围1中秘密传送的信息B1.j到已经广播了决定信息(处理R5.d)的各个单元的用户j。
(后处理)当在第五范围中广播的信息不正确时,或当在第4范围广播的决定信息的数目大于阀值t时,每一个用户i(i=1,···,n)决定,用户d已经执行了非授机的行动(处理Pi)。
每一个用户i在范围1至范围5中已经收到的全部信息示为S-i。
(2)保密译码处理
保密译码处理是通过所有的用户从由各个用户所保持并且通过上述保密共享过程的信息S-i中获得保密元素S的处理,图6是该处理的过程。
(范围1)每一个用户i(i=1,···,n)广播保密值S-C(i)和包括在信息段S-i内的S-r(i)(处理R1、i)。
(范围2)每一个用户i(i=1,···,n)从在范围1广播的值中选取t+1个值S-C(i,1),···,S-C(i,t+1)和S-r(i,1),···,S-r(i,t+1)。然后,通过内插多项式获得结果S(C)和S(r)。用户i验证是否两个结果值是相等的,和保留的广播值对于对应S(C)=r的多项式是正确的值。当所有的值是正确的,可以确定保密元素S等于S(C)=S(r),译码过程结束。当不对应同一个多项式的值被广播时,包括在信息段S-i的列矢量S-C(i)(信息B2,i)被广播(处理R2,i)
(范围3)每一个用户i(i=1,···,n)从在第二范围内被广播的列矢量S-C(j)(j=1,···,n)中产生部份矩阵S′。然后,用户i从相对于总共所有的集t1,···,tm(m=nCT+1/(t+1)!(n-t-1)!)中选取列矢量集,T1,···,Tm,所有的该集t1,···,tm包括由1,···,n组成的t+1个不同的值。结果值S′-r(1),···,S′(r)和S′-C(1),···,S′-C(n)通过内插多项式而获得的相应的行和列。近而,使用内插多项式由上述值可以获得结果S′(r)和S′(c)。用户i验证是否这些结果值中的两个是否相等和这些列矢量的所有元素对于对应值S-C(1),···,S′-C(n)和S′-r(1),···,S′-r(n)的多项式来说均是正确的值。
在集T1,···,Tm当中包括t+1列矢量被这样验证了,对应不同正确部分矩阵的集的次数最大是t+1,和部分矩阵被称为S-1,···,S-T(这里T<t+1)。当这里仅存在一个正确部分矩阵(T=1)时,可以确定,对于该矩阵的保密S是等于初始的保密,而非对应的列矢量表示执行非授权行动的用户。当存在着两个或更多正确的部分矩阵时,每一个用户i(i=1,···,n)广播它所保持的(处理R3、i)的所有信息段(信息B3,i)。
(后处理)每一个用户i(i=1,···,n)使用在第三范围中所广播的信息S-j(j=1,···,n)去计算相同的单路散列函数,该计算方法在上述保密共享处理中已使用。这样,用户i验证是否所有的广播信息是正确的和对应着在第一范围的共享处理时被广播的值S*。这就可以确定,对应正确部分矩阵(这里可能存在最多仅有一个)的保密S′等于保密元素S。另一方面,如果没有找到正确的部分矩阵,可以确定,保密共享用户d已执行了非授权的行动(处理Pi)。
如上所述,根据此实施例,要求n^2k次方的通信量,而上述对于通常对话型方法(1)要求的通信量是n^3k^2次方。近而,在该实施例中仅要求一次计算单路散列函数,而对于通常的非对话型方法(2)要求计算一特定单路函数的n次方。这样,和所能提供的通常方法所要求的通信量和计算量加以比较,使用本发明方法的通信量和计算量均是实际的。
〔实施例2〕
如在实施例1中的可验证的保密共享处理和保密译码处理被用来作为通常安全共享方法的部分处理(看,例如,“SecureMultiparty Protocols和Zero—Knowledge ProofSystemsTolerating A Faulty Minority”,D. Beaver,JournalofCryptology,1991,或“A Note On Multiparty Protocols ToCompute Multiplicative Inverses,M.Cerecedo,T.Matsumoto,和H.Imai,SCIS  194,Biwako,Japan,January 1994),使得能提供更有效共享操作处理系统。
在共享操作系统中,共享和乘法处理和共享和加处理被用来作为基本的处理,部分加处理被用来作为部分乘法处理的部分处理。使用共享和乘法处理和共享和加处理这两者可以执行在给出的有限集的一般算法操作。将解释作为所有处理的基本部分处理的共享和加处理,可参看图7使用实施例1中的处理所执行的操作的情况。
当在给定有限集中两个保密元素X和Y被共享时(在这时,每一个用户保持着分别对应保密元素X和Y的保密部分X-i和Y-i),并不执行通信,对应在给出的有限集中的X+Y的保密部分(X+Y)-i按如下加以计算。
首先列矢量X-(a)和Y-C(i)的元素和每个用户保持的部分矩阵的保密值X-r(i)和Yr(i)的元素进行相加。这从部分矩阵的定义可以明显地看出(行和列的元素是多项式的值)加的结果是X-C(i)+Y-C(i)和x-r(i)+y-r(i)是列矢量和相关于X+Y的部分矩阵的保密值。
存储为验证在保密译码过程中信息段而使用的单路散列函数值X*和Y*。当时X+Y的加的结果执行译码过程时,这些值依需要而被使用,和这样验证了对应保密x+y的部分矩阵X+Y。
使用上述共享和加法过程作为部分处理可提供一般的共享的算法操作系统。
本发明并不限于在上述实施例中所描述的部分矩阵的维数,而可以是多维数的部分矩阵。近而,使用的函数可以是单路散列函数之外的函数,该函数只要确保获得单路特性就可以,至于切下和选取技术,它并不局限于在实施例1中所特别阐述的过程,它只要能涉及有验证特性而无泄露保密的任何方法。
如上所述,依照该实施例,使用当用户执行一非授权的行动而能被识别的处理保密信息的方法和系统,该方法和系统通过有效量的通信和有效量的计算就能实现。
另外,由于通信量和计算量小于在通常情况下为处理例如一需要重复地执行保密共享处理的一安全共享操作处理,可以减少在通信系统中的通信,由于小量计算使通信成本减小了,和由于小量计算该处理能在高速下执行。
由属于同一签名组的大量用户执行的数字签名共享产生的方法将使用上述保密共享方法。
在这个实施例中,使用上述的可验证的保密共享方法。属于一签名组的用户共享由组内它们所有的随机选出的保密元素和使用共享的保密作为在为译码共享输出的过程中生产生签名,该签名是通过执行共享算法操作而获得的。
在这个实施例中,因此,可以提供一共享的数字签名系统,用该系统,执行非授仅的用户可以被识别,计算量和通信量两者均在实际的幅度次数内。
图9是该实施例的图形。
在图9内信息处理仪11即系统中的用户使用的,广播通信信道12,保密通信信道13和图1的那些部分相同。这里用户A,B,C组成了一组签名人,信息处理仪11的数组结构如图2所示。
使用这样的安排,使用共享的数字签名的方法将特别地阐述〔实施例3〕
在该实施例中将描述,使用由C.P.Schnorr提出的上述数字签名的共享数字签名的方法的特别结构。
首先,在{1,···,P-1}中的保密元素为使用上述可验证保密共享方法所共享。该保密元素11,···,1K是随机的从{1,···,P-1}中选出。以这样方式,处理能被完成,那里签名人组的一特定用户的保密元素是由该组内的所有用户所共享和保持。
为共享数字签名系统,为使用保密共享方法去产生组的保密信息(它等同于一个保密键并为签名人组内所有用户所共享)和对应保密信息的公共信息(公共信息等同一公共键和它被用来验证产生的签名)的过程将给予解释。键产生过程(见图10A和10B)。
(范围1至5)每一个用户i随机的从{1,···,P-1}选取保密元素a(i)和通过执行上述的保密共享过程而在签名人组内的所有用户所共享。近而,每一个用户i计算g^(r(i))mod q(这里q是按上述方法选出的素数),然后通过广播通信信道广播它。
(范围6)执行保密共享过程的后处理。使用正确地共享保密元素r(i)(i=1,···,n)作为输入,使用将参照图7阐述的共享加而获得的共享输出定义为保密信息a。近而,值A(i)=g^(a(i))modq,该值在范围1至范围5相对于正确共享保密元素a(i)的前处理被广播的,并把该值加以相乘,获得结果A=g^amodq被用来作为验证由组产生的签名的公共信息(公共标号)。
为了象在共享加法那样执行共享一个保密元素x和公共元素a的共享乘法,通过用由用户保持部分元素矩阵的每一个元素相乘获得的结果是涉及x*a的部分矩阵的元素。
因此,能够执行两个共享保密元素x和y和公共元素a的线性组合a*x+b*y的共享计算而无须组内用户之间的对话。线性组合处理如图11所示。注意的是,在图11中给出了要被执行处理的名称,和该处理的每一个用户的输入和输出。用户i(i=1,···,n)的输入是相对于共享保密元素x和y的信息段x-i和y-i和公共元素a和b。输出是相对于线性组合结果x的信息段z-i。
使用通过上述处理获得的保密键,给定信息m的数字签名由该组产生了并同时被共享如下
签名产生处理(见图12)
(范围1至范围5)每一个用户i随机地从{1,···,P-1}选取保密元素r(i),和通过执行上述的保密共享过程使选取为签名人组内的所有用户共享。近而,每一用户i计算g^(r(i))modq(这里q是按上述方法选取的一个素数),和通过广播通信信道广播它。
(范围6)执行保密共享处理的后处理。使用正确的共享保密元素r(i)=(i=1,···,n)作为输入通过执行共享的加法而获得共享的结果r,近而计算R=g^modq,R是值R(i)=g^(r(i))modq乘积的结果并且在范围1至5时相关于正确地共享保密元素r(i)而被广播。
(范围7)每一个用户使用通过组合给定信息m和在范围6所获得值R而获得的值R/m和用上述预定的函数h计算输出e=h(R/m)通过执行共享的线性组合处理在签名人组内所有的用户内共享和计算S=r+h(R/m)*a。
(范围8至10)使用保密共享方法的保密译码处理对共享的保密S进行译码。给定信息的签名定义为(R,S)。使用公共键和执行数字签名方法的签名验证处理对产生的签名进行验证,当签名不正确时,可以确定这里是已执行了非授权行动的用户,保密共享万法的保密译码过程被执行去识别这样的用户。
〔实施例4〕
将描述使用由A.Fiant和A.Schamir提出的先前描述的数字鉴名方法的实现共享数字签名方法的特殊结构,首先是可验证保密执行元素在{1,…,N-1}内的特殊安排。
给定保密S的部分矩阵将特别地加以解释(见图3)。来自{1,…,N-1}的特定保密S相关的部分矩阵S=S(i,j)〕(i,j=1,…,n)是这样一个式子,那里每一个行矢量(S-r(i)=S(i,1)…,S(i,n)〕i=1…,n)的元素被定义如下:S(i,j)=S-r(i)*q-r(i,1)^(j)*q-r(i,2)^(j^2)*…*q-r(i,t)(j^t)mod N(j=1,…,n)
元素q-r(i,1)…q-r(i,1)是从{1,…,N-1}中选出的,使得满足下面的要求,每一个列矢量(S-C(j)=〔S(1,j),…,S(n,j)〕,j=1,…,n)被定义如下:S(j,i)=S-C(j)*q-C(j,1)^(K)*q-C(j,2)^(i^2)*…*q-C(j,t)^(i^t)mod N(i=1,…,n)
元素q-C(j,1)…,q-C(j,t)是从{1,…,N-1}中选出,使得满足下列要求,近而具有上述值的两矢量〔S-r(1),…,S-r(n)〕和〔S-C(i),…,S-C(n)〕满足对从{1,…,N-1}中取出的q-r(1),…q-r(t),q-C(1),…,q-C(t)的如下要求:
S-r(j)=S*q-r(1)^(j)*q-r(2)^(j^2)*…
*q-r(t)^(j^t)mod N(j=1,…,n),和
S-C(i)=S*q-C(1)^(i)*q-C(2)^(i^2)*…
        *q-C(t)^(i^t)mod N(i=1,…,n),这里S代表初始保密
保密共享过程分配给保密部分,使得保密元素S能有被属于同一签名人组的所有用户所共享和保持,译码这样共享的秘密或识别执行非授权行为(如果有这样行动发生了)的用户的保密译码过程以在第一实施例的处理(1)和(2)执行的方法加以执行。在保密译码处理(2)中,不使用多项式内插而进行如下的计算,以便从包括在每一个行矢量(S-r(i)=〔i,1),…,S(i,n)〕i=1,…,n)的t+1元素(S(i,j0),…,S(i,jt)〕中获得值S-r(i):
S-r(i)^(n!)=Prod-K(S(i,jk)^(prod-1(1*n!/(1-K)))mod N这里ProdK(f(K)代表当k=j0,…,jt时f(k)的乘积值,和Prod-1(g(1))代表值g(1)中的t=j0,…jt(1≠R)时g(1)的乘积值。
类似地,为了从在每一个列矢量(S-((i)=〔S(1,j),…,S(n,j)〕j=1,…,n)的t+1个元素(S(i0,j),…,S(it,j)中获得值S-C(j)要执行如下的计算。
S-C(j)^(n!)=Prod-k(S(ik,j)^(Prod-1(1*n!/(1-k)))modN
为了从部分矢量〔S-r(1)^(n!),…,Sr(n)^(n!)或〔S-C(1)^(n!)…,S-C(n)^(n!)的t+1个元素(S-r(i0)^(n!),…,S-r(it)^(n!)或(S-C(j0)^(n!),…S-C(jt)^(n!)中获得保密S,执行下述的计算(当S-r(i)^(n!))时:
S^(n!*n!)=Prod-k(S-r(k)^(n!*Prod--1(1*n!/(1-k)))modN
S=(S^(n!*n!))^u*(S^1)^mod N注意,然而,那个由A,Fiant和A,Shamir提出的数字签名方法所使用的1是如此选取,使得u和V满足u*n!*n!*+V*1=1,共享保密S的值S^1modN在以下将加以描述的签名产生处理中加以计算。
可以这样的方式处理,那里在签名人组内的特定用户保持的保密元素能被组内所有用户共享和保持,使用这个保密共享方法为组内签名人产生的保密信息(这是等同于为组内所有用户共享的保密键)和为保密信息(这等同于为验证该组所产生的签名而使用的公共键)键产生处理的共享数字签名系统,下面将解释这一过程。
(范围1至5)每一个用户i随机地从(1,…,N-1}选取保密元素a(i)和通过执行上述的保密共享过程使做出的选取为签名人组内所有的用户所共享。近而,每一个用户i计算a(i)^1modN(1是上述方法选取的元素)和通过广播通讯讯道广播它。
(范围6)执行保密共享处理的后处理。使用正确的共享的保密元素a(i)(i=1,…n)作为输入,和由如下共享乘法获得的共享输出被定义为保密信息a。近而,在相对于正确地共享保密元素a(i)的范围1至5的预处理时被广播的值A(i)=a(i)^1mod N加以相乘。获得的结果A=a^1mod N被用来作为验证由组产生的签名的公共信息。
参照图14将在范围6中解释使用的共享的乘法过程。
当在{1,…,n}内的两个保密元素X和Y是保密共享处理所共享时(每一个用户i保持着对应保密元素X和Y的保密部分X-i和y-i),通讯并不执行,包括在{1,…,N-1}的乘积X*Y的保密部分按如下加以计算。
从部分矩阵的定义可以明显地看出,由列矢量X-C(i)和Y-C(i)和每一个用户保持的部分矩阵的保密值X-r(i)和Y-r(i)加以相乘而获得的结果X-C(i)*C(i)和X-r(i)*Y-r(i)是部分矩阵X*Y的列矢量和保密值。存储在保密译码过程中验证信息段而使用的两个单路散列函数值X*Y*,在乘积结果X*Y的译码过程中,根据需要而使用它们去验证与保密X*Y相一致的部分矩阵X*Y。
类似地一共享保密元素X和公共元素a的指数乘积被共享,每一个用户具有的部分矩阵的元素和公共元素a的指数相乘而获得的结果是x^a部分矩阵的元素、这样把在上述过程共享的两个保密元素X和Y和公共元素ab加以组合为X^a*Y^b可以被共享和计算而无需加入组内用户间的相互对话,如它在图11中那样,该过程在图15中给出。
通过上述处理而获得的保密键被组使用为给定的信息m产生共享的数字签名如下。
(范围1至5)每一个用户i随机地从{1,…,N-1}中选取一个保密元素r(i),通过执行上述保密共享过程使选取为签名人组内所有的用户所共享。近而,每一个用户i计算r(i)^1mod N(这里1是上述方法选取的元素),和通过广播通讯讯道广播它。
(范围6)执行保密共享处理的后处理,使用正确地共享保密元素r(i)(i=1,…,n)作为输入,使用上述的共享乘法可以获得共享的结果r。近而计算R=r^1mod N,它是在范围1至5中相对于正确的共享保密元素r(i)被广播的值R(i)=r(i)^1mod N的乘法的值。
(范围7)每一个用户使用通过组合给定信息m和在范围6获得的值R而获得的值R/m为输入和用上述预定的函数h计算输出e=h(R/m),使用共享线性组合处理使得S=r*a^(h(R/m)被签名人组内所有用户所共享和加以计算。
(范围8至10)使用保密共享方法的保密译码处理对共享保密S进行译码,给定信息的签名被定义为(R,S)。使用公共键a和使用数字签名方法的签名验证的处理对产生的签名进行验证。当签名不正确时,可以确定这是已经执行了非授仅行动的用户,保密共享方法的保密译码的过程被执行去识别这样的用户。
〔实施例5〕
在该实施例中将描述使用由T.EIGamal(美国国家标准,数字签名算法)提出的数字签名方法的共享数字签名方法的特殊结构。
在实施例1描述的方法被用来作为签名人组内的特定用户选取的共享保密元素的和为组内所有用户所持有的一特殊方法。现在阐述使用保密共享方法去产生组的保密信息(这等效于由签名人组的所有用户所共享的保密键)和保密信息的公共信息(等效于公共键的公共信息被用来验证产生的签名)的过程和共享数字签名的系统。键产生过程(见图10A和10B)
(范围1至范围5)每一个用户i随机地从{1,…,P-1}选取保密元素a(i)和这样的选取通过执行上述的保密共享过程为签名人组所有的用户所共享。近而,每一个用户i计算g^(a(i))mod q(这里q是按上述方法选取的素数)和通过广播通讯讯道广播它。
(范围6)执行保密共享处理的后处理。使用正确地共享保密元素a(i)(i=1,…,n)作为输入,由如下共享加法而获得的共享输出定义为保密信息a。在范围1至5的相对于正确共享保密元素a(i)的处理时被广播的值A(i)=g^(a(i))modq被相乘,获得的结果A=g^mod q被用来作为验证由组产生的签名的公共信息(公共键)。
当在{1,…,P-1}内的两个保密元素X和Y为保密共享过程所共享时(每一个用户i持有对相对保密元素X和Y的保密部分X-i和Y-i时)并不执行通讯,包括在(1,…,P-1)内的和X+Y的保密部分(X+Y)-i依照实施例1所述方法计算。
当在保密共享处理中共享{1,…,P-1}的两个保密元素X和Y时,不执行通讯,包括在{1,…,P-1)内的积X*Y的保密部分(X*Y)-i按如下方式计算。
当一特定的用户d在{1,…,P-1)内执行可验证的共享保密S时,它安全地由保密S和先前共享的X计算共享的积S*X。这个过程被称为可验证的保密共享和乘法处理。可验证的保密共享和乘法处理(见图17和18)
此后h代表为实施例1中的有效的单路散列函数,对于特定的常数安全参数k′满足k=nk′。
(范围1)用户d使用随机数产生单元23去产生保密元素S和从{1,…,P-1}中随机选出的保密元素11,…,1k的部分矩阵。计算保密值S-r(1),…S-r(n),11-r(1),…,11r(n),…,1k-r(1),1k-r(n)的单路散列函数值S*(见图4)。
用户d传送列矢量S-(i),L1-C(i),…,LK-C(i)和每一个产生的部分矩阵的保密S-r(i),11-r(i),…,1K-r(i)通过保密通讯讯道到每一个用户i(i=1,…,n,包括它自己)。和散列值S*(图17的B1、d)通过广播通讯讯道广播到所有的用户(在图17中表示为处理R1、d)。
(范围2)每一个用户i(i=1,…,n)使用在范围1中收到的保密S-r(i),11-r(i),…,1K-r(i)和先前共享X的X-r(i)作为输入,计算t-r(i)=S-r(i)*X-r(i),ml-r(i)=11-r(i)*X-r(i),…,mk-r(i)*X-r(i)mod N。随机数23被使用去产生部分矩阵(它被称为T(i),M1(i)…MK(i),而先前共享的保密X的部分矩阵X-r(i)被称为X(i))作为获得的结果,然后计算保密值t(i)-r(i),…,t(i)-r(n),ml(i)-r(1),…,ml-r(n),…,mk(i)-r(i)…,mk(i)-r(n)的散列函数值(见图4)。每一个用户i传送列矢量T-C(j),M1-C(j),…,MK-C(j)和每一个产生的部分矩阵的保密t(i)-r(j),ml(i)-r(j),…,mk(i)-r(j)通过保密广播讯道到每一个用户j(j=1,…,n,包括它本身)和散列值S*通过广播通讯讯道被广播到所有的用户(在图17中表示为处理R2、i)。用户i已经广播的信息表示为图17中的Bs、i。
(范围3)每一个用户i(i=1,…,n)使用随机数产生装置去广播随机选取的位(图17中的过程R3、i)。随机选取的K′位的每一个被称为Bi-1,…,Bi-k和整个n个用户的位数的每一个被称为B1,…,Bk,用户i乙经广播的信息在图17中表示为B3、i。
(范围4)如果在范围3中广播的每一位Bj(j=1,…,k)是1,那么用户d广播在第一范围中由用户d产生的部分矩阵。如果Bj是0,用户广播通过加产生的部分矩阵S和在有限集的Lj而获得的结果(写为S+Lj)(图17的处理R4、d)。由用户d广播的信息在图17中表示为B4、d。
(范围5)对于在范围1中已经保密收到的信息B1,i的每一个值j(j=1,…,k),每一个用户i(i=1,…,n)验证是否列矢量Lj-C(i)和Lj-r(i)(当在第二范围广播的Bj是1时),或Lj-C(i)+S-C(i)和Lj-r(i)+S-r(i)(当Bj为0时)等于列矢量和在第4范围广播的部分矩阵的保密值。当它们不等于相关的特定值j时,决定信息是由用户d广播的(在图17中处理R5、i)。由用户i广播的信息在图17和18中表示为B5、i。
(范围6)如果在第3范围广播的每一位Bj(j=1,…,k)是1,每一个用户i广播在第二范围内由用户i所产生的部分矩阵Mj(i),如果Bj是0,用户d广播结果(写的T(i)+Mj(i)),该结果是通过加已产生的部分矩阵T(i)和有限集的Mj(i)(mod P)获得的(在图18处理R6、i),近而,用户d广播在第5范围确定的用户i的列矢量,用由户d广播的信息在图18表示为B6、i。
(范围7)对于每一个j(j=1,…,k),用户i验证在第5和第6范围中广播的信息,当正确的矩阵数大于阀值t和在第三范围广播的位Bj(j=1,…,k)是1时,下列的部分矩阵被广播:
(1j-r(i)^(-1)*Mj(i)-X(i)当Bj是0时,下面的部分矩阵被广播。
(S-r(i)-1j-r(r))^(-1)*(T(i)+Mj(i))-X(i)(在图18的处理R7、i),按前述执行部分矩阵的线性组合(对于每一个元素),用户i已经广播的信息在图18表示为B7、i。
(范围8)对于每一个j,0(j,0=1,…,k),每一个用户i(i=1,…,n)使用在第4范围广播的信息。当B0是1时,1j-r(0)被译码,下面计算列矢量,当计算列矢量获得的结果是相等的和对应着值0时,它得到验证:
(1j-r(0))^(-1)*Mj(0)-r(i)-X(0)-r(i)当B0是0,(S-r(0)+1j-r(0))被译码和下面计算的列矢量可验证矢量计算结果是相同的和对应着值0:(S-r(0)+1j-r(0)^(-1)*(T(0)-r(i)+Mj(0)-r(i))-X(0)-r(i)。当结果不能验证为对应着给定的值0时,用户0的决定信息被广播(图18的处理R8、i)。用户i已经广播的信息在图18中表示为R8.i。
(范围9)当决定信息在范围8广播给用户0时,他广播它自己的列矢量(图18的处理R9.0),用户i已经广播的信息在图18内表示为R9.i。
(范围10)每一个用户i验证所有的广播信息和广播已经执行了非授权行的用户0的决定信息(在图18的处理R10.i),用户i已经广播的信息在图18中表示为B10、i。
(后处理)正确的共享部分矩阵S(i)*X(i)的共享的线性组合为所有用户所执行(每一个用户i的处理表示在图18中的处理Pi),这样正确部分矩阵S*X被共享和计算,当由于非授权的行动不能产生矩阵时,错误的用户被识别和结果被广播。
通过上述过程,特定用户i已经随机地从{1,…,P-1}中选取的保密元素S被可验证的共享,和同时计算保密S和先前可验证共享保密X的乘积S*X。其次将描述通过执行上述的处理以获得两个共享保密X和Y的计算过程,该过程如图19。
(范围1至10)每个用户i随机地从{1,…,P-1}中选取保密元素r(i),和对选出的元素执行上述可验证的共享过程,和同时计算r(i)*Y。
(范围11)通过使用先前共享的加执行为所有用户j1(1=1,…,m)和为它们可验证地共享被正确执行的保密计算r=r(i)+r(j1),…,r(jm)和r*y=r(j1)*y+r(j2)*y+…+r(jm)*y。
(范围12)对保密和U=X-r执行共享的加。
(范围13—15)所有的用户对保密U进行译码,
(范围16)对保密线性组合Z=r*y-U*y=X*y执行共享的计算。
通过上述过程,两个共享的保密元素X和Y的积X*y能被加入该组的用户所共享和计算、使用上述处理获得的保密键,给定信息m的数字签名被组按如下方式所共享和产生。签名产生处理(见图20)
(范围1至5)每个用户i随机地从{1,…,P-1}中选出保密元素r(i),使用上述保密共享处理使得该选取为签名人组的所有用户所共享,近而,每一个用户i计算g^(r(i))modq(这里q是用上述方法选取的素数)和通过广播通讯讯道广播它。
(范围6)执行保密共享处理的后处理,使用正确地共享保密元素r(i)(i=1,…,n)作为输入,通过执行共享的加法获得共享的结果r。近而计算R=g^rmod q,该R是值R(i)=g^(r(i))modq的乘积,它是相对正确的共享保密元素r(i)在范围1至5中被广播的。
(范围7)每一个用户使用给定的信息m作为输入去计算上述预定函数h的输出e=h(m)。然后,使用共享线性组合处理,b=(e+R*a)被签名人组内的所有用户所共享和被计算。
(范围8至17)这里S=b*r^(-1)为使用上述共享乘积的签名人组的所有用户所共享和计算。为了避免共享r^(-1)g^((r(i)^-1)mod q的倒数元素处理,而在随机数产生处理中不使用g^(r(i))mod q(参看范围1—5)。
(范围18至20)使用保密共享方法的保密译码处理对共享的保密进行译码。给定信息m的签名定义为(R,S)。使用公共键和执行数字签名方法和签名验证过程来验证已产生的签名。当签名是不正确时,可以确定,这是执行非授权行动的用户,执行保密共享方法的保密译码处理就是识别这样的用户。
本发明并不局限于在上述实施例3至5中所描述的部分矩阵的维数,而可以是多维部分数矩阵。近而使用的函数不是确保获得单路特性的单路函数。至于切下和选取技术,这并不局限于实施例1中解释的特殊过程,而可以是验证特性而不泄露秘密的任何方法。
如上所述,依照本发明,它可以提供共享的数字签名方法,当被连接到通讯系统的大量计算机(签名人)组成的组的正确签名人数大于阀值t时,由组产生一签名,当签名人执行一非授权行动时,能识别该签名人,把发明和通常的共享数字签名方法加以比较,甚至当非授权的行动发生时正确地签名也能产生,该实施例的方法仅需要有效量的通讯和计算。
近而,和既不能识别犯错误的用户又不能产生签名的通常的共享数字签名方法加以比较,使用该方法可以识别犯错误的用户,因而本发明的方法安全多了。
更具体而言,由于需要计算最大量是指数乘法,要求为加入签名组的每一个签名人的计算量被假设为实质上和后者通常数字签名方法所需计算量相同。每一个签名人所需的通讯量是1*n^2*k次方(这里n代表用户数,k代表安全参数,和1代表使用整数的长度),因而比前者通常的数字签名方法所需的通讯量要实际的多。
假设,在保密译码处理时包括t+1个不同列矢量的m=n!/((t+1)!(n-t-1)!)的集数相一致(见范围3实施例1内的保密共享处理),如果n不是非常的小(n<20)识别犯错的用户实际上是困难的。因此,当用户数小时,依该实施例的保密共享方法是有效的。甚至当用户的数目是小的时候,通常可验证的保密共享方法却要求不切合实际的通讯和计算量。
如上所述使用该实施例的签名产生方法可以减少所需的通讯和计算量。另外,由于少量的通讯使得在通讯系统的通讯和通讯成本可以减少,由于少量的计算,可以执行高速的处理。
〔实施例6〕
将描述在通讯系统中使用大量仪器执行共享的鉴别的实施例。
图21是依本发明的一个实施例的通讯系统的图,本发明具有共享和执行鉴别信息处理仪器。
在图21中,广播通讯讯道12和保密通讯讯道1 3如图1的那些具有相同的功能。仪器14是仪器AS(1),…,AS(k)(以后称为″成员″),它们是共享鉴别服务器。为有效起见,在该情况下成员的数目被定义相对比较小,20或更少。
构成通讯系统的全部仪器的数目可以远大于成员的数目,而它们通过保密通讯讯道13被联接到诸成员。通过正常(不可靠的)通讯讯道16执行仪器之间的通讯。当一个仪器传送另一个仪器具有的服务请求时(即,文件传送,远程呼叫等等),进行这样请求的仪器被称为″挂号用户″(client),接收这样请求并提供这样服务的仪器被称为″服务器″在图21,仪器15是仪器C/S(1),…,C/S(n),它们作为挂号用户和一服务器。值得注意的是一成员可以是挂号用户或是一服务器。
在该实施例中,挂号用户和服务器被用来作为相互的鉴别和通讯内容的鉴别。近而,挂号用户和服务器共享执行保密通讯的保密键。另外,由于保密信息为成员所共享以控制和计算信息,在该实施例中的鉴别服务器比通常的鉴别服务器更可靠。当挂号用户要求识别自己要求服务器服务时,要求鉴别的挂号用户被称为声明人,而给出鉴别的服务器被称为认证人、包括成员在内的通讯系统的各个单独的仪器被安排在图2所示的数组结构内。
共享鉴别协议书的基本部分是上述的VSS(可验证的保密共享的)协议书。〔共享保密线性组合处理〕
当在给定的有限集两个保密元素X和Y被上述的两个可验证的保密共享处理所共享时(在此时,每一个用户i保持分别对应保密元素X和Y的保密部分X-i和Y-i),通讯并不执行,对应在给定的有限集的和X+Y的保密部分(X+Y)-i按如下加以计算。
首先把列矢量X-C(i)和Y-C(i)的元素和保密值X-r((i)的元素和由每一个用户保持的部分矩阵Y-r(i)相加,从部分矩阵的定义(行和列元素是多项式的值)可以明显看出,相加的结果X-C(i)+Y-C(i)和X-r(i)+Y-r(i)是列矢量和相对X+Y的部分矢量的保密值。
存储在保密译码处理中用来验证信息段所使用的单路散列函数值X*和Y*。当对加的结果X+Y执行译码处理时根据需要使用这些值,这样,就验证了对应保密X+Y的部分矩阵X+Y。
近而,为了执行一共享的保密元素X和公共元素a的共享的乘法,乘以用户保持的部分矩阵的一个元素获得的结果是相对X*a的部分矩阵的元素,这样,通过上述的过程,可以执行两个共享保密元素X和Y公共元素a和b的线性组a*X+b*y的计算而无需组内用户之间的对话。
在上述的方法中,保密可以为使用可验证方法的成员间所共享。
其次将阐述在成员的共享产生伪随机数的共享伪机保密产生协议书。〔共享的伪随机数保密产生协议〕
作为共享鉴别服务器的成员AS(1),…,AS(K)输出共享的随机保密r的保密部分r(i)(i=1,…,k)到控制r的成员AS(i)。协议按图23A和23B的所示的内容实现。
每一个成员AS(i)产生被表示为在一个有限集内的一个元素的伪随机保密ri(处理81)。
通过执行上述的可验证的保密共享过程使AS(i)保密地共享伪随机保密ri。由于每一个成员都执行该过程,每一个成员AS(j)(j=1,…,k)保持着各个成员的保密部分r1(j),…,rm(j),值得注意的是m(≤k)已经被证明和保密的共享已经正确地执行了的成员的数目(处理82)。
每个成员AS(j)加保密部分在一块而产生r(j)=r1(j)+…rm(j),该值是相对于AS(j)的伪随机保密r的保密部分(处理83)。
伪随机保密r是任何人均不能知道的数,除非大多数成员在一块秘密策划了,共享的伪随机保密是以上述的方式产生了,和所产生的为随机保密能够作为声明人和认证人之间的交谈键。
现解释在成员之中执行共享的保密键编码的协议,处理随情况而变化,在该情况下保密键编码的数据是共享的保密数据,在该情况下数据是公共数据。〔共享的保密数据的共享的保密键编码/译码〕
图24A是解释该协议的图,
一被形成N个数组m1,…,mN,并且是有长度为N的信息被定义为m。注意,VSS协议书在有限集GF(2L)上加以执行,保密部分m1(i),…,mN(i)被假设为在成员AS(i)中保密地共享。近而,和信息m一样具有相同长度的保密键pk被划分为每一个具有L长度的N个数组pk1,…,Pkn.这些数组在上述成员中保密地共享,使得成员AS(i)具有各个单独的保密部分pk(i),…,pkN(i)。
为了通过使用保密键pk对信息m执行保密键编码处理,每一个成员对在给定有限集的每一个数组执行加法如下:
d(i)=m1(i)+pk1(i),…,cN(i)=mN(i)+pkN(i)。
由于VSS协议书的的格式是半相等的,C1(i),…,cN(i)对应着通过划分编码的语句C为每个长度为L的N个数组而获得的保密部分C1,…,CN。因此,使用前述的保密译码处理对编码语句e进行译码,该编码的语句C成为公共的了。
具有保密键pk的通讯系统的仪器能够从公共编码语句C中译出初始的信息m。注意,保密键pk仅使用一次而决不再次使用。〔公共数据的共享的保密键编码/译码〕
对公共信息m而言,当使用上述编码协议时,通过把从已经为公共的编码语句C中减去信息m而使保密键pk为第三者所知,因为在图24B中的协议为公共数据所使用。
如在前例中所很好地给出的,信息m为具有长度为L的N个数组m1,…,mN所形成,信息m的内容为成员所公知的公共数据,保密键pk是信息m的两倍长和被分为长度L的2N数组pKN-1,pKN-2,…,pKN-!和pKN-2,pK为成员间保密地共享和成员AS(i)各个单独地保持保密部分pk1-1(i),pk1-2(i),…,pkN-1(i),pkN-2(i)。
为了通过使用保密键pk为信息m实现保密键pk编码处理,每一个成员AS(i)在给定的有限集上为每一个数组执行如下的算法操作,在下述的表示中·代表乘法和+代表加法:
C1(i)=m1·pk1-1(i)+pk1-2(i)…,
CN(i)=mN·pkN-1(i)+pkN-2(i)。
由于VSS协议书的信息对于由划分编码的语句C为每一个具有长度L的N数组而获得的保密部分C1,…,CN所对应线性组合C1(i),…CN(i)是半一致的。因此,编码语句C被使用执行前述保密解码处理进行解码,并成为公共的。
由上所述,由于协议书书使用个两种类型的键pkj-1和pkj-2(j=1,…,N)不管是否信息m成为公共数据这都没有机会泄露保密键pk。虽然使用短L进行编码容易些,犯错误的人修改语句C为错误编语句C′以提供错误信息m′的概率是2-L,出于安全的原因L值不能选得非常小,这样,合适的L值是约为32。
至于译码,在公共分解保密键pk和编码话句C为每一个长度L使用保密键的通讯系统的仪器执行pkj-,pkj-2和Cj(Cj-pkj-2)/pkj-1的算法操作以获得mj,通过这个过程,初始信息m能够被译码。保密键pk仅能使用一次和在这种情况下绝不再使用。〔鉴别协议〕
使用上述的协议通过共享鉴别服务器,而不使用通常的中心化的鉴别服务器可以实现带有公共键的鉴别如下
鉴别协议通讯,通过通讯声明人从共享的鉴别服务器接收鉴别信息,和通过通讯声明人为认证人提供鉴别数据,这被称为″连机处理″。
作为执行连机处理的前提,在共享鉴别服务器和作为声明人或认证人之间的保密键共享过程和由共享鉴别服务器的交谈键产生过程是必要的,每一次能执行脱机处理,在连机处理时保密键或交谈键是需要的,但连机处理所需要的时间和通讯时间被延长了。
当脱机处理是先于连机处理时,能有效地执行连机处理,″脱机处理″和连机处理将参看图25A和25B分别地加以描述。〔脱机处理〕
事先必须在共享鉴别服务器的成员间共享的信息是相对于所有仪器的该保密键的信息,正如在共享保密键编码/译码协议书中阐述的,然而,在信息编码或译码之后,在声明人和共享的鉴别服务器之间必须配置保密键。这样,必须产生很多键,通过如下的保密键传送处理可执行该处理,被用来作为声明人和认证人之间交谈键的共享伪随机保密产生过程在脱机处理期间也被执行如下。〔保密键传送处理〕
要求鉴别的通讯系统的仪器j执行保密共享处理先于共享,在成员之间,任意地选取了伪随机保密pkj-1,…,pkj-M的有效的大数M,成员AS(i)这样接收到伪随机保密的保密部分pkj-1(i),…,pkj-M(i),如果仪器j不正确地共享保密,仅仅仪器j不接收使用它自己保密键的鉴别服务。因此,为验证是否共享的信息是正确的后处理在这种情况下就不是必需要执行了,通过它所有的成员验证j不是错误的语句的广播通讯讯道没有必要被提供在仪器j和成员之间(见图27)。
在这个过程中,j保持有效大的保密键pkj-i(i=1,…,M)为一个表,而每一个成员h(h=1,…,k)保持保密部分pkj-i(h)(i=1,…,M)为一个表。如上所述,由于保密键仅使用一次,j和每一成员h分别保持指针(index)pkj和pkj(h),它们指示表中下次使用的键,当它能这样做时,仪器j产生一个新的保密键,当通讯系统不使用时,共享该保密键和持续地加以更新。〔伪随机保密产生处理〕
如图26所示,当在保密键传送处理时,是在声明人和认证人之间使用的交谈键的共享的伪随机保密r1,…RQ,在脱机处理时被产生和被保持在表中。为了产生共享的伪随机保密,如同在共享的伪随机保密产生协议书中所描述的那样,所有的成员必需执行伪随机保密共享过程,然而,由于所有的成员并不在同时执行那个处理,当没有处理被执行时和通讯系统不被使用时,它们能够执行处理和然后共享产生的伪随机保密到其它的成员。然后,每一个成员保持共享的伪随机保密r1(j)…,rQ(j)和使用时指示它的位置的指针为一个表。〔连机处理〕
从共享的鉴别服务器获得的连机鉴别协议书通讯系统挂号用户P(声明人)传送到服务器V(认证人)的鉴别元素将通过步S1至S4加以执行。
(步骤1)挂号用户P通过正常的通讯讯道传送给共享鉴别服务器的成员包括信息(id-P,id-V,S}的要求的信息101(见图28A),该要求信息被称为AUTH-REQUEST。注意id-P代表挂号用户P,id-V代表特定服务器V的数据,S代表任意选取的随机数。
(步骤2)已经收到AUTH-REQUEST的成员执行下述步S21至S26的过程(见图28B)。
(步骤21指示当前时间的时间标记被广播和公共的时间被确认。
(步骤22)当使用共享保密数据的共享保密键编码协议书时,用作为声明人和认证人之间的交谈键(k1,…,cka的伪随机保密rz,…,rz+a-1通过定义pkv-x,…,pkv-x+a-1为保密编码键而被编码。值得注意的是,a代表指示伪随机保密数和z和x代表伪随机表和保密键pk表的开始的指针。在这时,z和x分别被更新为z=2+a和x=x+a编码获得的结果为CT-1,…,CT-a。
(步骤23)使用公共数据的共享保密键编码协议书,和声明人标识符的公共时间标记id-P被使用在步22,对保密键pk表的2b保密键,pkv-x,…,pkv-x+2b加以编码。然后指针x被更新x=x+2b+1。编码获得的结果是CT-a+1,…,CT-a+b。该结果和步22获得结果相加到一块,该值再与在执行步22更新前的指针x相加。获得结果被定义为鉴别元素。
(步骤24)使用共享保密数据的共享保密键编码协议书,使用在步S22获得的为认证人的编码语句CT-1,…,CT-a+b和在步S22使用的公共键ck1,…,cka,和通过使用2a+b保密键pkp-y,…pkp-y+2a+b作为编码键进行编码。注意,y代表指示声明人保密键表开始的指针,它被更新为Y=Y+2a+b+1,这样编码的结果是CCT-1,…,CCT-2a+b。
(步骤S25)使用公共数据的共享保密键编码协议书,对在步S1已变为公共的伪随机保密S和认证人标识符的id-V使用从在步S24使用的保密键表的2C保密键pkp-y,…,pkp-y+2c进行编码。指针y被更新为y=y+2c+1。这样编码的结果为CCT-2a+b+1,…,CCT-2a+b+c。这样的结果与在步S24的结果相加,最终的结果是CCT-1,…CCT-2a+b+c。
(步骤S26)执行保密译码处理译出保密共享的CCT-1,…CCT-2a+b+c。译码获得的结果作为鉴别信息102并结合在步S24更新的指针y通过正常的通讯讯道传送给挂号用户P,他即是声明人。
(步骤3)声明人P参考收到的指针y和包括在他自己保密键表里的保密键pkp-y,…,pkp+2a;b;2c和使用公共数据的共享保密键译码协议书去从收到数据CCT-1,…,CCT-2a+b+c中译出伪随机保密ck。然后,声明人P验证译出的S和id-v是正确的,当它们被验证时,译出的伪随机保密ck作为认证人的公共键加以存储,和传送译出的鉴别元素103到认证人(见图29A)。
(步骤4)参考包括在鉴别元素内的指针X和包括在它自己的保密键表内的保密键pkv-y,…,pkv-y+a;2b,认证人V使用公共数据的共享保密键译码协议书从收到的鉴别元素中译出时间标记和声明人的标识符id-p,和使用共享保密数据的共享的保密键译码协议书去译出伪随机保密ck。认证人然后验证译出的时间标记和译出的标识符id-p是正确的,当他们被验证时,对声明人P给出鉴别,和译出的伪随机保密ck作为与认证人相结合的公共键加以存储(见图29B)。〔实施例7〕
在实施例6中,当犯错误的人窃听声明人传送给认证人的鉴别元素和存储了鉴别元素时,犯错误的人提交鉴别元素到认证人和能够要求认证人提供声明人并没有要求的服务,因此,声明人被干扰了,该行动被称为回应攻击。
在该实施例中,因此,为了防止回应攻击交换的时间信息被附加地提供给在步S3的实施例6中连机处理时由声明人传送给认证人的鉴别元素,这个过程在图30A和30B给出。在本实施例中的处理与实施例6中的内容相同,例外的是,在步S3′和S4′的过程附加到连机处理的步S3和S4上。下面将解释仅仅步S3′和S4′的过程。(步S3 )在实施例的步S3过程执行后,声明人使用获得的交谈键ck和编码新的时间标记T2和为获得{T2,id-p}^ck的声明人的标识符id-p。声明人传送认证人与鉴别元素相结合的{T2,id-p}^ck。
(步骤4′)认证人执行实施例6中的步24的过程去译出鉴别元素和使用获得的交谈键ck去译辅助信息{T2,id-p}^ck,认证人验证时间标记T2和声明人的标识符id-p,当T2是旧的一个时,他并不接收服务请求。
如上所述,依照该实施例,这就可以提供一个比通常中心化管理鉴别服务器性能有较高可靠性和安全性的鉴别服务器。
当共享鉴别服务器的大多数仪器是可靠的时,可以提供下述内容。
使用共享的鉴别协议,向声明人和认证人提供和通常中心化管理提供的鉴别协议的功能相同的鉴别功能,实现了高失效公差。
由于共享鉴别协议的连机处理为声明人和认证人确保了为通常鉴别协议接口一样的接口(数据格式),通常鉴别服务器能够容易地由本实施例中的鉴别服务器的取代。
对声明人和认证人而言,共享鉴别协议的连机处理能够提供和通常的鉴别协所要求的相同的计算量。
虽然本发明已经描述了具有特定特殊情况的优选的形式,在不脱离本发明的精神和范围的情况下可以实现许多明显不同的实施例,应当理解发明并不局限在特定的实施例内,它应由所附的权利要求加以确立。

Claims (31)

1.一种通信系统的保密信息处理方法,其中,大量的信息处理设备通过保密通信信道连接在一起,通过该信道所说该设备中的每一个和所说设备的另一个交换信息,并且与此同时使所说的信息对剩下的设备保密,通过该信道所说的设备与所有其它包括的设备共用地交换信息,所说的保密信息处理方法包括如下步骤:
从保密信息处产生用于第二设备的一个保密数组,这种产生是通过使用所说的多个设备的用以处理所说的保密信息的第一设备进行的;
使用所说的第一个设备从为所说的第二组设备的所说保密数组中取出第一个信息段,和通过所说保密通信信道传送所说的第一个信息段到所说的第二组设备;
使用所说第一个设备对所说保密数组的一部分执行一预定的函数和通过所说广播通信信道广播获得的输出值;
使用所说第二组设备产生随机数,和通过所说广播通信信道广播所说的随机数;
使用所说的第一个设备,从所说保密数组和被广播的与此相一致的所说的随机数中产生所说第二组设备的第二组信息段,和通过所说广播通信信道广播所说第二组信息段;
使用所说第二组设备产生第三组信息段,该信息段被产生如同使用所说第一个设备为所说第二组设备产生所说第二组信息段一样,第二组信息段与所说的第一组被接收的信息段和所说的由第二组设备产生的所说的随机数相一致;和
使用所说第二组设备,比较所说的第三组信息段和被广播的所说第二组设备的所说的第二组信息段,和验证所说的保密信息被所说的第一个设备所共享。
2.如权利要求1的保密信息处理方法,其中,在所说的验证步骤中,当所说的比较结果并不匹配时,所说第二组设备通过广播通信信道广播一信息,并且在被广播的所说信息和的基础上执行验证。
3.如权利要求1的保密信息处理方法,近而包括使用所有所说第二组设备在传送到所说第二组设备的所说第一个信息段的基础上对所说保密信息进行译码的步骤。
4.如权利要求3的保密信息处理方法,其中,在所说的译码步骤中,所说第二组设备分别单独地根据所说收到的第一信息段执行计算和根据计算的结果执行译码。
5.如权利要求1的保密信息处理方法,其中,所说的保密数组是确定用于所说保密信息的矩阵和随机选取的保密元素,和所说矩阵的行矢量和列矢量被定义为所说的第一信息段。
6.如权利要求1的保密信息处理方法,其中,所说预定的函数是一单路函数。
7.如权利要求1的保密信息处理方法,其中,所说的保密元素信息是在有限集中的一元素,在所说的产生步骤中,执行对所说在有限集内的所说元素进行计算。
8.一种如通信系统的签名产生方法,其中,大量的信息处理设备通过保密通信信道连接在一起,通过该信道的所说该设备与其它的设备交换信息,并且对剩下的设备保持信息保密,通过该信道的每一个所说的设备公共地与所有其的设备交换信息,所说的签名产生方法包括如下步骤:
使用属于同一签名人组的每一个所说的设备随机地选取第一个保密信息,和所说组的所说设备保密地共享第一个保密信息;
使用所说设备对所说第一个保密信息执行预定的第一函数和广播获得的输出值到组内所有的所说的设备。
共享在组内所说的设备中所说的每一个设备的第一个保密信息,和加所说的第一个保密信息;
共享所说组内所说设备乘积的输出值,和对由乘法所获结果和一信息执行预定的第二函数;
共享所说组内所说设备的第二保密信息和使用执行第二函数获得的结果计算所说第二保密信息、由共享和加获得的结果和变为公共的一元素;和
通过在所说组内所有所说设备的共同努力译出共享的所说第二保密信息,输出所说的译出的第二保密信息并且结合通过共享和乘法获得的所说的结果为签名。
9.如权利要求8的签名产生方法,其中,在所说的计算步骤中,执行所说第二保密信息的线性组合处理。
10.如权利要求8的签名产生方法,其中,在所说的计算步骤中,使用包括所说第二保密信息的指数乘法的乘积,执行组合处理。
11.如权利要求8的签名产生方法,其中,在所说的计算步骤中,执行线性组合处理和所说第二保密信息的乘法。
12.如权利要求8的签名产生方法,其中,所说第二函数是一单路函数。
13.如权利要求8的签名产生方法,其中,所说第一保密信息是在一有限集的一元素,并且在所说加法步骤中执行对所说有限集的加。
14.如权利要求8的签名产生方法,其中,所说共享第一保密信息的步骤包括如下的步骤:
从所述第一保密信息处,产生用于第二组设备的一个保密数组,这种产生是通过使用属于所述签名人并处理所述第一保密信息的一个第一设备进行的;
使用所说第一个设备为所说的第二组设备的所说保密数组取出第一个信息段和通过保密通信信道传送所说第一个信息段到所说第二组设备;
使用所说第一个设备对所说保密数组的部分执行预定的函数运算,和通过所说广播通信信道广播获得的输出值;
使用所说第二组设备产生随机数和通过广播通信信道广播所说的随机数;
使用所说第一设备从所说保密数组和被广播的与此一致的随机数为所说的第二组设备产生第二信息段,和通过所说广播通信讯道广播所说第二信息段;
使用所说第二组设备产生第三个信息段,该信息段如同使用所说第一设备为所说第二组设备产生所说第二信息段那样被产生,由所说第二组设备产生的所说随机数与被接收的所说第一信息段相一致;和
使用所说第二组设备,比较所说第三信息段和广播的所说第二组设备的所说第二信息段,和验证所说保密信息被所说第一个设备共享。
15.一种通信系统的鉴别方法,其中,大量的设备被联接在一起,和其中属于同一特定组的那些设备共同提供鉴别,所说的鉴别方法包括如下步骤:
传送包括声明人和认证人标识符的鉴别请求信息,从传送鉴别请求的所说声明人的设备和从认证人的设备传送到所说特别组的每一个所说的设备;
产生鉴别元素,该元素是使用保密键进行编码,该保密是涉及所说的认证人和根据使用属于所说特定组的所有设备共同努力的所说鉴别请求信息,和产生使用与所说声明人相关的保密键进行对所说的鉴别元素编码的鉴别信息;
从所说特定组的每一个所说的设备,传送所说的鉴别信息到所说的声明人的所说的设备;
根据收到的所说的鉴别信息在所说的声明人的所说的设备内对所说的鉴别信息进行译码,并传送所说的被译码的鉴别元素到所说认证人的所说的设备;和
在所说认证人的所说设备内对所说的鉴别元素进行译码,和传送鉴别到所说的声明人。
16.一种如权利要求15的鉴别方法,近而包括协作传送的步骤,从所说特定组的所说设备到所说的声明人和所说认证人的所说的设备,公共键被用来对所说设备两者之间的通信进行编码。
17.一种如权利要求15的鉴别方法,其中,使用一个公共键,用于所述声明的所述设备和认证人所述设备之间的保密通信,并且包括在所述鉴别信息内的公共键被传送到所说声明人的所说设备。
18.一种如权利要求15的鉴别方法,其中,在传送所说鉴别元素的所说步骤中,用来对所说声明人和所说认证人的所说设备之间的通信进行编码和其本身包括在所说鉴别信息内的公共键被传送到认证人的所说设备。
19.一种如权利要求15的鉴别方法,近而包括了使用可证明的保密共享处理,和使用所说的特定组的所说设备和用在所说声明人和所说认证人的设备之间用来进行编码通信的公共键协同地产生作为共享的伪随机保密的处理步骤。
20.一种如权利要求15的鉴别方法,其中,在所说的产生步骤中,通过把要被编码的数据分别大量的数组和加不同的保密键到预定的有限集内的所说数据组执行保密键的编码。
21.一种如权利要求15的鉴别方法,其中,在所说产生步骤中,通过把要被编码的数据分配到大量的数组,通过使用不同的保密键与在一预定的有限集的所说数据相乘,和通过进一步加不同的保密键到乘法的结果来执行保密键的编码。
22.一种如权利要求15的鉴别方法,近而包括共享和配给与通信系统每一个设备相关的保密键到所说特定组的所说设备的执行保密共享处理的步骤。
23.一种如权利要求15的鉴别方法,其中在所说的产生步骤中,使用为所说声明人和所说认证人的的所说设备的公共键把所说的鉴别元素和时间标记在一起编码,其结果被传送,而在所说的鉴别步骤中,所说认证人的所说设备对通过使用公共键从所说声明人的所说设备处接收的信息进行译码和验证所说的时间标记。
24.一种如通信系统,它有大量的信息处理设备;保密通信信道,通过该信道每一个所说的设备保密地和另一个设备交换信息而同时对剩下的设备保持信息保密;和广播通信信道和通过该信道,每一个所说的设备公共地传送信息到所有其它的设备;所说大量信息处理设备中的第一信息处理设备包括:
第一产生装置,用于从保密信息产生预定的部分数组;
提取装置,用于从所说部分配置中为任何剩余的信息处理设备取出第一信息段,和用于传送所说第一信息段到所说剩余的信息处理设备;
函数处理装置,用于对所说第一信息段执行预定的函数运算,和通过广播通信信道广播这样获得的输出值到剩余的信息处理装置;和
第二产生装置,用于产生第二信息段,该信息段与所说剩余信息处理设备广播的随民数相一致,和通过所说广播通信信道广播所说第二信息段;并且
每一个所说剩余信息处理设备包括:
随机数产生装置,用于产生随机数和通过广播通信信道广播所说随机数;
第三产生装置,用于以所说第一个信息段和所说随机数相一致地产生第三信息段,该第三信息段是被产生作为根据所说第一个信息处理设备的所说第二信息段;和
鉴别装置,用于比较第三信息段和被广播的所说第二信息段,和验证由所说第一个信息处理设备执行的保密共享。
25.一种如权利要求24的通信系统,其中,所说信息处理设备包括当所说的比较结果并不匹配时,用于通过所说广播通信信道广播信息的信息广播装置,其中,所说的验证装置根据被广播的全部信息进行验证。
26.一种如权利要求24的通信系统,其中,所说的信息处理设备具有译码装置,用于根据被传送的所说第一信息段使用所有所说的信息处理设备对所说的保密信息进行译码。
27.一种如权利要求24的通信系统,其中所说信息处理设备具有计算装置,用于根据被传送的所说第一信息段执行计算和其中,所说的译码装置根据所说的计算结果译出所说的保密信息。
28.一种如权利要求24的通信系统,其中,所说的部分数组是由所说保密信息和随机选取的保密元素所定义的部分矩阵,和所说部分矩阵的行矢量和列矢量是对应保密的保密部分,所说行矢量和所说列矢量的元素是所说矢量和所说列矢量的保密部分。
29.一种如权利要求24的通信系统,其中,所说预定的函数是单路函数。
30.一种如权利要求24的通信系统,其中,所说的保密信息是一有限集的元素,和其中所说的产生装置在所说有限集进行运算。
31.如一通信系统系统,它具有大量信息处理设备,保密通信讯道,通过该信道每一个所说的设备和另一个其它设备交换信息而保持对剩余的设备进行保密,和广播通信信道,通过该信道每一个所说的设备公共地传送信息到每一个其它的设备,在所说大量设备当中属于同一组签名人的每一个所说的设备包括:
共享装置,用于随机地选取第一个保密信息和用于与所说组的所说设备共享所说的第一保密信息;
广播装置,用于对所说第一保密信息执行预定的第一函数运算和用于广播所得到的信息到所有所说组内的所有剩余的设备
加法装置,用于共享所说组内的所说设备中的每一个所持有的第一保密信息和用于加所说第一个保密信息;
处理装置,用于共享由所说组内所说设备的每一个所说设备保持的所说输出值和乘所说输出值,用于对乘法的结果和一信息执行预定的第二函数运算;
计算装置,用于使用所说的乘法结果,共享和加所获得的结果和在所说组内的所说设备间为共享第二信息而成为公共的一元素去计算所说第二信息;和
译码装置,用于在共享第二保密信息的所说组内的所说所有仪器的协同努力而对所说第二保密信息进行译码和用于输出译出的第二保密信息和共享和和乘得到的结果作为签名。
CN 95115810 1994-07-29 1995-07-28 共享保密信息,产生数据签名和执行确认的方法和通信系统 Expired - Fee Related CN1092434C (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP17848394A JP3604737B2 (ja) 1994-07-29 1994-07-29 複数の情報処理装置を有する通信システムにおける秘密情報処理方法及びその通信システム
JP178483/94 1994-07-29
JP8184/95 1995-01-23
JP8185/95 1995-01-23
JP00818495A JP3610106B2 (ja) 1995-01-23 1995-01-23 複数の装置を有する通信システムにおける認証方法

Publications (2)

Publication Number Publication Date
CN1132429A true CN1132429A (zh) 1996-10-02
CN1092434C CN1092434C (zh) 2002-10-09

Family

ID=33161301

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 95115810 Expired - Fee Related CN1092434C (zh) 1994-07-29 1995-07-28 共享保密信息,产生数据签名和执行确认的方法和通信系统

Country Status (2)

Country Link
JP (1) JP3604737B2 (zh)
CN (1) CN1092434C (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103003857A (zh) * 2010-07-23 2013-03-27 日本电信电话株式会社 秘密分散系统、分散装置、分散管理装置、取得装置、秘密分散方法、程序及记录介质
CN105474575A (zh) * 2013-08-22 2016-04-06 日本电信电话株式会社 多方安全认证系统、认证服务器、中间服务器、多方安全认证方法以及程序
CN108155989A (zh) * 2017-12-28 2018-06-12 贵州玛迩比特通信科技有限公司 一种多用户认证方法及系统
CN115051802A (zh) * 2022-07-06 2022-09-13 国网四川省电力公司绵阳供电公司 一种五防锁管理系统及方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7389416B2 (en) 2001-03-16 2008-06-17 International Business Machines Corporation Method of verifiably sharing a secret in potentially asynchronous networks
JP5396352B2 (ja) * 2003-04-15 2014-01-22 エヌ・ティ・ティ・コミュニケーションズ株式会社 データ原本性確保方法およびシステム、ならびにデータ原本性確保用プログラム
US11157612B2 (en) * 2017-05-25 2021-10-26 Nippon Telegraph And Telephone Corporation Secret tampering detection system, secret tampering detection apparatus, secret tampering detection method, and program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103003857A (zh) * 2010-07-23 2013-03-27 日本电信电话株式会社 秘密分散系统、分散装置、分散管理装置、取得装置、秘密分散方法、程序及记录介质
CN103003857B (zh) * 2010-07-23 2015-03-11 日本电信电话株式会社 秘密分散系统、分散装置、分散管理装置、取得装置、秘密分散方法
CN105474575A (zh) * 2013-08-22 2016-04-06 日本电信电话株式会社 多方安全认证系统、认证服务器、中间服务器、多方安全认证方法以及程序
CN105474575B (zh) * 2013-08-22 2018-12-14 日本电信电话株式会社 多方安全认证系统、认证服务器、中间服务器、多方安全认证方法以及程序
CN108155989A (zh) * 2017-12-28 2018-06-12 贵州玛迩比特通信科技有限公司 一种多用户认证方法及系统
CN115051802A (zh) * 2022-07-06 2022-09-13 国网四川省电力公司绵阳供电公司 一种五防锁管理系统及方法

Also Published As

Publication number Publication date
JPH0846607A (ja) 1996-02-16
CN1092434C (zh) 2002-10-09
JP3604737B2 (ja) 2004-12-22

Similar Documents

Publication Publication Date Title
CN1242587C (zh) 高速、灵活的加密系统的方法及设备
CN1249972C (zh) 使用多个服务器的远程密码验证的系统和方法
CN1172474C (zh) 公用密钥密码系统方法及设备
CN1124545C (zh) 实现高速加密处理的设备和方法
CN1023282C (zh) 数据的传递方法和系统
CN1941699A (zh) 密码方法、主机系统、可信平台模块和计算机安排
CN1203431C (zh) 公用密钥加密装置
CN1131620C (zh) 用于验证文件的发送及其内容的设备和方法
CN1303065A (zh) 数据库管理装置和加密/解密系统
CN1282324C (zh) 数据加密装置和方法
CN100338907C (zh) 信息处理系统和方法、信息处理设备和方法
CN1315281C (zh) 保护和识别消息的保密设备和方法
CN1251715A (zh) 有限域离散对数密码系统的割圆多项式结构
CN1871810A (zh) 认证系统和远隔分散保存系统
CN1272010A (zh) 加密/解密方法和使用多仿射密钥系统的验证方法及装置
CN1535451A (zh) 可证实的秘密洗牌及其对于电子表决的应用
CN1460225A (zh) 数据处理系统、存储设备、数据处理装置、及数据处理方法、以及程序
CN1408153A (zh) 数据发布
CN1879138A (zh) 密码处理装置、密码处理方法及其计算机程序
CN1729645A (zh) 保密通信
CN1504028A (zh) 利用瞬时模数的密码验证
CN1656555A (zh) 鉴别通信系统、鉴别通信设备和鉴别通信方法
CN1661957A (zh) 用于使用密钥密码术实现消息的匿名通信的系统
CN1768502A (zh) 相互认证方法和装置
CN1338166A (zh) 公用与专用密钥加密方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee