CN100338906C - 共享密钥生成装置、密钥交换装置以及密钥交换方法 - Google Patents

共享密钥生成装置、密钥交换装置以及密钥交换方法 Download PDF

Info

Publication number
CN100338906C
CN100338906C CNB2004100304959A CN200410030495A CN100338906C CN 100338906 C CN100338906 C CN 100338906C CN B2004100304959 A CNB2004100304959 A CN B2004100304959A CN 200410030495 A CN200410030495 A CN 200410030495A CN 100338906 C CN100338906 C CN 100338906C
Authority
CN
China
Prior art keywords
mentioned
key
public
random number
generating unit
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
CNB2004100304959A
Other languages
English (en)
Other versions
CN1543118A (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1543118A publication Critical patent/CN1543118A/zh
Application granted granted Critical
Publication of CN100338906C publication Critical patent/CN100338906C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • 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/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

一种安全的并且避开第三者进行公开的网络电子信息的传送的公开密钥生成装置、共享密钥生成装置、密钥交换装置以及密钥交换方法。对于共享密钥生成装置,将以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;由上述随机数ka、上述元g、上述素数q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;基于成为公开密钥分配对象的用户生成的公开密钥yb和上述随机数生成部生成的秘密密钥ka生成共享密钥Ka的共享密钥生成部集成于同一半导体集成电路上,从而秘密密钥ka只用于在半导体集成电路的芯片内部中生成公开密钥ya及共享密钥Ka,共享密钥生成装置的运算不会外泄。

Description

共享密钥生成装置、密钥交换装置以及密钥交换方法
技术领域
本发明涉及用来安全并且避开第三者进行公开的网络电子信息的传送的公开密钥生成装置、共享密钥生成装置、密钥交换装置以及密钥交换方法,特别是可以提供一种第三者极难挪用或改变的装置或其主要运算的公开密钥生成装置、共享密钥生成装置、密钥交换装置以及密钥交换方法。
背景技术
作为利用现有的有限群上的离散对数问题的密钥交换装置,公知的有Diffie-Hellman密钥交换装置(以下称其为DH密钥交换装置)(比如,参照专利文献1:日本专利特开2001-352319号公报(第9页,图4))。
在图5中示出DH密钥交换装置的现有例。在图5中,51是成为公开密钥分配来源的用户1的随机数生成单元、52是用户1的公开密钥生成单元、53是用户1的共享密钥生成单元。另外,54是用户2的随机数生成单元、55是成为公开密钥分配对象的用户2的公开密钥生成单元、56是用户2的共享密钥生成单元。
下面利用图5对藉助用户1的现有的DH密钥交换装置和用户2的现有的DH密钥交换装置,用户1和用户2共享密钥的方法予以说明。
在有限群F上定义乘法。将有限群F上的元设为g(g具有是素数的位数为q)。另外,有限群F、元g、素数q是公开的,至少在用户1和用户2之间是共享的。用户1和用户2经过以下的步骤可共享密钥。
(步骤1)
用户1利用随机数生成单元51生成随机数ka(0<ka<q),设其为用户1的秘密密钥ka。同样,用户2利用随机数生成单元54生成随机数kb(0<kb<q),设其为用户2的秘密密钥kb。
(步骤2)
用户1,利用公开密钥生成单元52生成公开密钥ya。此处:
ya=g^ka mod q…(式1)
其中ya是可在有限群F上进行运算而求出。mod q表示用q除得到的余数。就是说,公开密钥ya,是g的ka次方除以q的余数。同样,用户2,利用公开密钥生成单元55生成公开密钥yb。此处:
yb=g^kb mod q…(式2)
其中yb是可在有限群F上进行运算而求出。
(步骤3)
用户1,向用户2传送公开密钥ya,用户2,向用户1传送公开密钥yb。就是说,在用户1和用户2之间交换公开密钥ya和公开密钥yb。
(步骤4)
用户1利用共享密钥生成单元53生成密钥Ka。此处:
Ka=yb^ka  mod q
  =g^(ka×kb)mod q(式3)
其中Ka可在有限群F上运算而求出。
同样,用户2利用共享密钥生成单元56生成密钥Kb。此处:
Kba=ya^kb  mod q
   =g^(ka×kb)mod q(式4)
其中Kb可在有限群F上运算而求出。
藉助以上的步骤1~4,在用户1和用户2之间生成同一个共享密钥K=Ka=Kb。
上述的DH密钥交换装置,是根据有限群F的离散对数问题的解法困难而构成的装置。就是说,在素数q和元g给定时,由于从整数x计算y=g^x mod q(0<x<q)容易,而从y求满足y=g^x mod q(0<x<q)的整数x困难,这就是安全性的根据。
此处,作为根据有限群F的离散对数问题的解法困难的密码体制,公知的有椭圆曲线密码体制。就是说,如果假设有限体上的椭圆曲线为E(F),椭圆曲线为E(F)上的、在用户1和用户2之间预先共享的点为G,并定义椭圆曲线为E(F)上的与点x的运算xG,则可以将式1~式4分别改写为式5~式8。
ya=kaG mod q…(式5)
yb=kbG mod q…(式6)
Ka=ka(yb)mod q
=kakbG mod q(式7)
Kb=kb(ya)mod q
=kakbG mod q(式8)
如上所述,即使是使用椭圆曲线密码体制,在用户1和用户2之间,可生成同一共享密钥K=Ka=Kb。于是,已知,如果选择素数q为160比特(位)左右,则即使是使用现在已知的效率最高的计算算法,并且使用最新的计算机,在现实时间内求解是不可能的。
如前所述,在DH密钥交换装置中,g^x(椭圆曲线密码体制的xG)是密钥交换的主要运算处理。通常秘密密钥x采用与素数q相同程度的比特长(在椭圆曲线密码体制中大约为160比特),但如果用户1和用户2以外的具有恶意的第三者意欲挪用g^x(或xG)或将秘密密钥长度改变为更长,则也可以很容易构成更强固的公开密钥密码体制,因此,正在图5所示的现有的构成中,密码体制的保安情况不理想,特别是在主要的运算中使用高速运算算法的场合,还是受害甚大。
如上所述,现在存在由于在现有的密钥交换装置以及密钥交换方法中,采用的是对第三者的攻击没有任何考虑的DH密钥交换装置,万一具有恶意的第三者挪用或改变该密钥交换装置或该装置的主要运算式,密钥交换装置会不工作,会给国家的安全保障带来极大的损害的问题。
发明内容
本发明系为解决上述问题而完成的发明,其目的在于提供一种提供一种第三者极难挪用或改变主要运算的公开密钥生成装置、共享密钥生成装置、密钥交换装置以及密钥交换方法。
为解决上述问题,本发明(技术方案1)的公开密钥生成装置是一种其构成包括以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;由上述随机数ka、上述元g、上述素数q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;至少将上述随机数生成部和上述公开密钥生成部在同一半导体集成电路上集成,成为公开密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥ya,将该公开密钥ya传送到成为公开密钥分配对象的第二用户的装置。
另外,本发明(技术方案2)的公开密钥生成装置,是一种在技术方案1所述的公开密钥生成装置中,上述公开密钥生成部,利用上述随机数ka、上述元g和上述素数q,使上述公开密钥ya作为ya=g^kamod q,在上述有限群F上运算并输出的装置。
另外,本发明(技术方案3)的公开密钥生成装置,是一种在技术方案1所述的公开密钥生成装置中,使上述有限群F成为有限体上的椭圆曲线E(F),以上述的椭圆曲线E(F)的元为G,上述公开密钥生成部,利用上述随机数ka、上述元g和上述素数q,使上述公开密钥ya作为ya=ka G mod q,在上述椭圆曲线E(F)上运算并输出的装置。
本发明(技术方案4)的公开密钥生成装置,是一种在技术方案1所述的公开密钥生成装置中,上述随机数生成部,在上述公开密钥ya的运算结束后,生成新的随机数ka的装置。
另外,本发明(技术方案5)的共享密钥生成装置的特征在于,包括:以定义了乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成满足0<ka<q的随机数ka的随机数生成部;和利用由成为共享密钥分配对象的第二用户发生的、由满足0<kb<q的随机数kb生成的公开密钥yb和上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部,至少将上述随机数生成部和上述共享密钥生成部在同一半导体集成电路上集成,成为共享密钥分配来源的第一用户的控制部,从成为上述共享密钥分配对象的第二用户取得上述公开密钥yb,并且控制上述随机数生成部和上述共享密钥生成部,导出上述共享密钥Ka。
另外,本发明(技术方案6)的共享密钥生成装置,是一种上述共享密钥生成部,利用成为上述共享密钥分配对象的第二用户生成的上述公开密钥yb=g^kb mod q和上述随机数ka,作为Ka=yb^ka mod q生成上述共享密钥Ka,在上述有限群F上运算并输出的装置。
另外,本发明(技术方案7)的共享密钥生成装置,是一种在技术方案5所述的公开密钥生成装置中,以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,上述共享密钥生成部,藉助成为上述公开密钥分配对象的第二用户从上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kb G mod q和上述随机数ka,将上述共享密钥Ka作为Ka=ka yb mod q,在上述椭圆曲线E(F)上运算并输出的装置。
另外,本发明(技术方案8)的共享密钥生成装置,是一种在技术方案5至7中的任意一项所述的公开密钥生成装置中,上述随机数生成部,在上述共享密钥Ka的运算结束后,生成新的随机数ka的装置。
另外,本发明(技术方案9)的密钥交换装置的特征在于,包括:以定义了乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成满足0<ka<q的随机数ka的随机数生成部;利用上述随机数ka、上述元g、上述q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;和利用由成为共享密钥分配对象的第二用户发生的、由满足0<kb<q的随机数kb生成的公开密钥yb和上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部,至少将上述随机数生成部、上述公开密钥生成部和上述共享密钥生成部在同一半导体集成电路上集成,成为共享密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥yb,并且控制上述共享密钥生成部,导出上述共享密钥Ka。
另外,本发明(技术方案10)的密钥交换装置,是一种在技术方案9所述的密钥交换装置中,上述公开密钥生成部,利用上述随机数ka、上述元g、上述素数q,在上述有限群F上作为ya=g^ka mod q运算并输出上述公开密钥ya,上述共享密钥生成部,由成为上述共享密钥分配对象的第二用户利用上述随机数kb在上述有限群F上运算输出的上述公开密钥yb=g^kb mod q和上述随机数ka,在上述有限群F上作为Ka=yb^ka mod q运算并输出上述共享密钥Ka的装置。
另外,本发明(技术方案11)的密钥交换装置,是一种在技术方案9所述的密钥交换装置中,以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,上述公开密钥生成部利用上述随机数ka、上述G和上述素数q,在上述椭圆曲线E(F)上作为ya=kaG mod q运算并输出上述公开密钥ya;上述共享密钥生成部,利用成为上述共享密钥分配对象的第二用户,由上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kb G mod q和上述随机数ka,在上述椭圆曲线E(F)上作为Ka=ka yb mod q运算并输出上述共享密钥Ka。
另外,本发明(技术方案12)的密钥交换装置,是一种在技术方案9~11中的任何一项所述的密钥交换装置中,上述随机数生成部,在上述公开密钥ya和上述共享密钥Ka的运算一起结束后,生成新的随机数ka的装置。
另外,本发明(技术方案13)的密钥交换装置,是一种其构成包括以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;将上述随机数ka临时存储的秘密密钥保持部;利用上述随机数ka、上述元g、上述素数q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;由成为共享密钥分配对象的第二用户利用从成为发生的0<kb<q的随机数kb生成的公开密钥yb和上述秘密密钥保持部保持的上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部;至少将上述随机数生成部、上述秘密密钥保持部、上述公开密钥生成部、上述共享密钥生成部在同一半导体集成电路上集成,成为共享密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥ya,并且将该ya传送给成为上述共享密钥分配对象的第二用户,从成为上述共享密钥分配对象的第二用户取得上述公开密钥yb,并且控制上述共享密钥生成部导出上述共享密钥Ka的装置。
另外,本发明(技术方案14)的密钥交换装置,是一种在技术方案13所述的密钥交换装置中,上述公开密钥生成部,利用上述随机数ka、上述元g、上述素数q,在上述有限群F上作为ya=g^ka mod q运算并输出上述公开密钥ya,上述共享密钥生成部,由成为上述共享密钥分配对象的第二用户利用上述随机数kb在上述有限群F上运算输出的上述公开密钥yb=g^kb mod q和存储于上述秘密密钥保持部的随机数ka,在上述有限群F上作为Ka=yb^ka mod q运算并输出上述共享密钥Ka的装置。
另外,本发明(技术方案15)的密钥交换装置,是一种在技术方案13所述的密钥交换装置中,以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,上述公开密钥生成部利用上述随机数ka、上述G和上述素数q,在上述椭圆曲线E(F)上作为ya=kaG mod q运算并输出上述公开密钥ya;上述共享密钥生成部,利用成为上述共享密钥分配对象的第二用户由上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kb G mod q和上述秘密密钥保持部存储的上述随机数ka,在上述椭圆曲线E(F)上作为Ka=ka ybmod q运算并输出上述共享密钥Ka的装置。
另外,本发明(技术方案16)的密钥交换装置,是一种在技术方案13~15中的任何一项所述的密钥交换装置中,上述随机数生成部,在上述公开密钥ya的运算结束后,生成新的随机数ka,上述秘密密钥保持部将上述随机数生成部生成的上述新的随机数ka予以保持的装置。
另外,本发明(技术方案17)的密钥交换装置,是一种在技术方案13~15中的任何一项所述的密钥交换装置中,上述随机数生成部,在上述共享密钥Ka的运算结束后,生成新的随机数ka,上述秘密密钥保持部将上述随机数生成部生成的上述新的随机数ka予以保持的装置。
另外,本发明(技术方案18)的密钥交换方法的特征在于:使用上述任何一项密钥交换装置,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥。
附图说明
图1为示出本发明的实施形态1的公开密钥生成装置的构成的构成框图。
图2为示出本发明的实施形态2的共享密钥生成装置的构成的构成框图。
图3为示出本发明的实施形态3的密钥交换装置的构成的构成框图。
图4为示出本发明的实施形态4的密钥交换装置的构成的构成框图。
图5为示出现有的密钥交换装置的构成的构成框图。
具体实施方式
下面利用附图对本发明的实施形态予以说明。
(实施形态1)
图1为示出与本发明的技术方案1相对应的实施形态1的公开密钥生成装置的构成框图。
在图1中,11是随机数生成部,12是公开密钥生成部,13是收入一个封装的半导体集成电路(以下称其为LSI),14是控制上述随机数生成部11及公开密钥生成部12的控制部,15是包含上述半导体集成电路13、控制部14的作为公开密钥分配来源的用户1的公开密钥生成装置。
下面参照图1对本实施形态1的公开密钥生成装置的动作予以说明。
随机数生成部11,由控制部14控制,生成随机数ka,将其作为秘密密钥ka。此处,秘密密钥ka,在以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q时,满足0<ka<q。控制部14,设定生成随机数的定时及随机数的种类、初始值。对于控制部14,比如,可以使用微机。
公开密钥生成部12,由控制部14控制,生成公开密钥ya。公开密钥ya,根据上述的式1从随机数ka求出。生成的公开密钥ya,由控制部14传送给作为共享密钥分配对象的用户2。
在以上的构成中,如果至少将随机数生成部11、公开密钥生成部12集成于LSI13内部的话,那么要想将上述式1的运算挪用到其他密码处理或进行改变是非常困难的。加之如果将控制部14集成于LSI13的内部的话,则效果更好。另外,如果在公开密钥ya生成后,随机数生成部11新生成随机数ka时,每次输出公开密钥ya都可取不同的值。此时,从上述式1可知,公开密钥ya成为随机数ka的函数。所以,包含用户1在内的任何人,要想将本公开密钥生成装置15挪用到公开密钥ya的生成以外或改变它都极为困难。
如上所述,如果利用本实施形态1的公开密钥生成装置,因为公开密钥生成装置15具有的随机数生成部11和公开密钥生成部12是集成于一个LSI13中而构成的,所以在本公开密钥生成装置15中,是秘密密钥ka只用于在LSI13内部生成公开密钥ya的构成,并且作为该装置15的主要运算的生成公开密钥ya的式1的运算式,不会外泄,其结果,就可以使要想将本装置15的主要运算挪用到公开密钥ya的生成以外或改变都变得极为困难的状态,与现在这样利用没有采取任何安全对策的运算算法生成秘密密钥ka及公开密钥ya的场合相比,可以将本公开密钥生成装置15对于第三者的非法攻击的强固性得到极大的提高。
另外,在本实施形态1中,是根据上述式1,对公开密钥ya进行运算的示例进行说明,但使用椭圆曲线密码,根据上述式5运算公开密钥ya,也可以得到同样的效果。
另外,在本公开密钥生成装置中,如果使用基于离散对数问题的公开密钥密码体制,对于任何公开密钥密码体制也都可以得到同样的效果是自不待言的。
(实施形态2)
下面对利用与本发明的技术方案5相对应的实施形态2的共享密钥生成装置予以说明。
图2为示出本发明的实施形态2的共享密钥生成装置的构成框图。在图2中,与图1相同的符号表示同一或相当的部分,21是共享密钥生成部,22是包含随机数生成部11和共享密钥生成部21的LSI,23是控制上述随机数生成部11及上述共享密钥生成部21的控制部,24是根据成为共享密钥分配对象的用户2生成的公开密钥yb和由上述随机数生成部11生成的秘密密钥ka作成共享密钥Ka的作为共享密钥分配来源的用户1的共享密钥生成装置。
下面参照图2对本发明的实施形态2的共享密钥生成装置24予以说明。
随机数生成部11由控制部23控制,生成随机数ka,将其作为秘密密钥ka。此处秘密密钥ka,在以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q时,满足0<ka<q。控制部23,比如,设定生成随机数的定时及随机数的种类、初始值。对于控制部23,比如,可以使用微机。此外,控制部23,从成为共享密钥分配对象的用户2取得以式2表示的用户2的公开密钥yb。共享密钥生成部21,由控制部23控制生成共享密钥Ka。共享密钥Ka,根据式3利用用户1的秘密密钥ka和用户2的公开密钥yb进行运算。生成的共享密钥Ka,比如,由控制部23作为秘密密钥密码方式的密钥使用,使用于在用户1和用户2之间的利用此共同的共享密钥Ka的加密传送。
在以上的构成中,如果至少将上述随机数生成部11和共享密钥生成部21在LSI22中集成,那么要想将上述式3的运算挪用到其他密码处理或进行改变是非常困难的。加之如果将控制部23集成于LSI22的内部的话,则效果更好。另外,如果在共享密钥Ka生成后,随机数生成部11新生成随机数ka时,每次输出共享密钥Ka都可取不同的值。此时,从上述式3可知,共享密钥Ka成为随机数ka的函数。所以,包含用户1在内的任何人,要想将本共享密钥生成装置24挪用到共享密钥Ka的生成以外或改变都极为困难。
如上所述,如果利用本实施形态2的共享密钥生成装置,因为共享密钥生成装置24具有的随机数生成部11和共享密钥生成部21是集成于一个LSI22中而构成的,所以在本共享密钥生成装置24中,是秘密密钥ka只用于在LSI22内部生成共享密钥Ka的构成,并且作为该装置24的主要运算的生成共享密钥Ka的式3的运算,不会外泄,其结果,就可以使要想将本装置24的主要运算挪用到共享密钥Ka的生成以外或改变都变得极为困难的状态,与现在这样利用没有采取任何安全对策的运算算法生成秘密密钥ka及共享密钥Ka的场合相比,可以将本共享密钥生成装置24对于第三者的非法攻击的强固性得到极大的提高。
另外,在本实施形态2中,是根据上述式3,对共享密钥Ka进行运算的示例进行说明,但使用椭圆曲线密码,根据上述式7运算共享密钥Ka,也可以得到同样的效果。
另外,在本共享密钥生成装置中,如果使用基于离散对数问题的公开密钥密码体制,对于任何公开密钥密码体制也都可以得到同样的效果是自不待言的。
(实施形态3)
下面对利用与本发明的技术方案9相对应的实施形态3的交换密钥生成装置予以说明。
图3为示出本发明的实施形态3的密钥交换装置的构成的构成框图。
在图3中,与图1或图2相同的符号表示同一或相当的部分,31是包含随机数生成部11、公开密钥生成部12和共享密钥生成部21的LSI,32是控制随机数生成部11、公开密钥生成部12及上述共享密钥生成部21的控制部,33是根据成为公开密钥分配来源及共享密钥分配对象的用户2生成的公开密钥yb和由上述随机数生成部11生成的秘密密钥ka作成的共享密钥Ka的作为共享密钥分配来源的用户1的密钥交换装置。
下面参照图3对本发明的实施形态3的密钥交换装置33予以说明。
随机数生成部11由控制部32控制,生成随机数ka,将其作为秘密密钥ka。此处秘密密钥ka,在以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q时,满足0<ka<q。控制部32,比如,设定生成随机数的定时及随机数的种类、初始值。对于控制部32,比如,可以使用微机。公开密钥生成部12,由控制部32控制生成公开密钥ya。公开密钥ya,根据式1进行运算。生成的公开密钥ya,由控制部32传送给用户2。
此外,控制部32,从用户2取得以式2表示的用户2的公开密钥yb。共享密钥生成部21,由控制部32控制,生成共享密钥Ka。共享密钥Ka,根据式3利用秘密密钥ka和从用户2取得的公开密钥yb进行运算。生成的共享密钥Ka,比如,由控制部32作为秘密密钥密码方式的密钥使用,使用于在用户1和用户2之间的加密传送。
在以上的构成中,如果至少将上述随机数生成部11、公开密钥生成部12和共享密钥生成部21在LSI31中集成,那么要想将上述式1及式3的运算挪用到其他密码处理或进行改变是非常困难的。加之如果将控制部32集成于LSI31的内部的话,则效果更好。另外,如果在公开密钥ya和共享密钥Ka生成后,随机数生成部11新生成随机数ka时,每次输出公开密钥ya和共享密钥Ka都可取不同的值。此时,从上述式1及式3可知,公开密钥ya和共享密钥Ka成为随机数ka的函数。所以,包含用户1在内的任何人,要想将本密钥交换生成装置33挪用到公开密钥ya及共享密钥Ka的生成及在用户1和用户2之间的秘密密钥ya、yb的密钥交换处理以外或改变之都极为困难。
如上所述,如果利用本实施形态3的共享密钥交换装置,因为密钥交换装置33具有的随机数生成部11、公开密钥生成部12和共享密钥生成部21是集成于一个LSI31中而构成的,所以在本密钥交换装置中,是秘密密钥ka只用于在LSI31内部生成公开密钥ya及共享密钥Ka的构成,并且作为该装置33的主要运算的生成公开密钥ya的式1及生成共享密钥Ka的式3的运算,不会外泄,其结果,就可以使要想将本装置33的主要运算挪用到公开密钥ya及共享密钥Ka的生成以外或改变,以及将本装置33的主要运算挪用到密钥交换以外的加密处理或改变都变得极为困难,与现在这样利用没有采取任何安全对策的运算算法生成秘密密钥ka、公开密钥ya及共享密钥Ka的场合相比,可以将本密钥交换装置33对于第三者的非法攻击的强固性得到极大的提高。
另外,在本实施形态3中,是根据上述式1及式3,对公开密钥ya及共享密钥Ka进行运算的示例进行说明,但使用椭圆曲线密码,根据上述式5运算公开密钥ya和共享密钥Ka,也可以得到同样的效果。
另外,在本密钥交换装置中,如果使用基于离散对数问题的公开密钥密码体制,对于任何公开密钥密码体制也都可以得到同样的效果是自不待言的。
另外,通过用户2使用具有与本实施形态3的密钥交换装置33同样的构成的密钥交换装置,在用户1和用户2之间进行密钥交换处理可以极为安全是自不待言的。
(实施形态4)
下面对利用与本发明的技术方案13相对应的实施形态4的交换密钥生成装置予以说明。
图4为示出本发明的实施形态4的密钥交换装置的构成的构成框图。
在图4中,与图1或图2相同的符号表示同一或相当的部分,41是临时存储由随机数生成部11生成的秘密密钥ka的秘密密钥保持部41,42是包含上述随机数生成部11、公开密钥生成部12、共享密钥生成部21和秘密密钥保持部41的LSI,43是控制上述随机数生成部11、公开密钥生成部12及共享密钥生成部21的控制部,44是根据成为公开密钥分配来源及共享密钥分配对象的用户2生成的公开密钥yb和由上述随机数生成部11生成的秘密密钥ka作成的共享密钥Ka的作为共享密钥分配来源的用户1的密钥交换装置。
下面参照图4对本发明的实施形态4的密钥交换装置44予以说明。
随机数生成部11由控制部43控制,生成随机数ka,将其作为秘密密钥ka。此处秘密密钥ka,在以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q时,满足0<ka<q。控制部43,比如,设定生成随机数的定时及随机数的种类、初始值。对于控制部43,比如,可以使用微机。秘密密钥保持部41,临时存储秘密密钥ka。公开密钥生成部12,由控制部43控制生成公开密钥ya。公开密钥ya,根据式1进行运算。生成的公开密钥ya,由控制部43传送给用户2。
此外,控制部43,从用户2取得以式2表示的用户2的公开密钥yb。共享密钥生成部21,由控制部32控制,生成共享密钥Ka。共享密钥Ka,根据式3利用秘密密钥保持部41临时存储的秘密密钥ka和从用户2取得的公开密钥yb进行运算。生成的共享密钥Ka,比如,由控制部43作为秘密密钥密码方式的密钥使用,使用于在用户1和用户2之间的加密传送。
在以上的构成中,如果至少将上述随机数生成部11、公开密钥生成部12、共享密钥生成部21和秘密密钥保持部41在LSI42中集成,那么要想将上述式1及式3的运算挪用到其他密码处理或进行改变是非常困难的。加之如果将控制部43集成于LSI42的内部的话,则效果更好。
另外,如果在公开密钥ya生成后,随机数生成部11新生成随机数ka时,每次输出公开密钥ya都可取不同的值。此时,从上述式1可知,公开密钥ya成为随机数ka的函数。于是,在本实施形态4中,在共享密钥生成部21生成共享密钥Ka之前,即使是随机数生成部11新生成随机数ka,由于秘密密钥保持部41保持作为共享密钥Ka的基础的秘密密钥ka,共享密钥生成部21一直可以正确地生成共享密钥Ka。
加之,如果在利用共享密钥生成部21生成共享密钥Ka之后,随机数生成部11新生成随机数ka,并将该生成的随机数ka保持于秘密密钥保持部41的话,每次输出共享密钥Ka都可取不同的值。此时,从上述式3可知,共享密钥Ka成为随机数ka的函数。
所以,包含用户1在内的任何人,要想将本密钥交换生成装置44挪用到公开密钥ya共享密钥Ka的生成及在用户1和用户2之间的秘密密钥ya、yb的密钥交换处理以外或改变都极为困难。
另外,即使是观测共享密钥Ka,由于其值是随机数ka的函数,对公开密钥生成部12和共享密钥生成部21的构成是无法类推的。
如上所述,如果利用本实施形态4的共享密钥交换装置,因为密钥交换装置44具有的随机数生成部11、公开密钥生成部12和共享密钥生成部21是集成于一个LSI42中而构成的,所以在本密钥交换装置44中,是秘密密钥ka只用于在LSI42内部生成公开密钥ya及共享密钥Ka的构成,并且作为该装置44的主要运算的生成公开密钥ya的式1及生成共享密钥Ka的式3的运算,不会外泄,其结果,就可以使要想将本装置44的主要运算挪用到公开密钥ya及共享密钥Ka的生成以外或改变之,以及将本装置33的主要运算挪用到密钥交换以外的加密处理或改变之都变得极为困难,与现在这样利用没有采取任何安全对策的运算算法生成秘密密钥ka、公开密钥ya及共享密钥Ka的场合相比,可以将本密钥交换装置44对于第三者的非法攻击的强固性得到极大的提高。
加之,在本实施形态4中,因为在密钥交换装置44中备有临时存储由随机数生成部11生成的随机数ka的秘密密钥保持部41。在共享密钥生成部21生成共享密钥Ka之前,即使是随机数生成部11新生成随机数ka,共享密钥生成部21一直可以正确地生成共享密钥Ka。
另外,在本实施形态4中,是根据上述式1及式3,对公开密钥ya及共享密钥Ka进行运算的示例进行说明,但使用椭圆曲线密码,根据上述式5运算公开密钥ya和共享密钥Ka,也可以得到同样的效果。
另外,在本密钥交换装置中,如果使用基于离散对数问题的公开密钥密码体制,对于任何公开密钥密码体制也都可以得到同样的效果是自不待言的。
另外,通过用户2使用具有与本实施形态4的密钥交换装置44同样的构成的密钥交换装置,在用户1和用户2之间进行密钥交换处理可以极为安全是自不待言的。
如上所述,根据本发明的技术方案1的公开密钥生成装置,其构成包括以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;由上述随机数ka、上述元g、上述素数q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;至少将上述随机数生成部和上述公开密钥生成部在同一半导体集成电路上集成,成为公开密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥ya,将该公开密钥ya传送到成为公开密钥分配对象的第二用户。所以是秘密密钥ka只用于在半导体集成电路的芯片内部中生成公开密钥ya的构成,密钥交换装置的运算不会外泄,通过采用这种集成电路就可以使要想将本公开密钥生成装置挪用到公开密钥ya的生成以外或改变之都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案2的公开密钥生成装置,在技术方案1所述的公开密钥生成装置中,上述公开密钥生成部,利用上述随机数ka、上述元g和上述素数q,为使上述公开密钥ya成为ya=g^kamod q,在上述有限群F上运算并输出,所以在根据有限群F的离散对数问题的解法困难的密码体制中,将公开密钥生成装置挪用到公开密钥ya的生成以外或改变也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案3的公开密钥生成装置,在技术方案1所述的公开密钥生成装置中,使上述有限群F成为有限体上的椭圆曲线E(F),以上述的椭圆曲线E(F)的元为G,上述公开密钥生成部,利用上述随机数ka、上述元g和上述素数q,将上述公开密钥ya作为ya=ka G mod q,在上述椭圆曲线E(F)上运算并输出,所以即使是在椭圆曲线密码体制中,将公开密钥生成装置挪用到公开密钥ya的生成以外或改变之也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
根据本发明的技术方案4的公开密钥生成装置,在技术方案1所述的公开密钥生成装置中,上述随机数生成部,在上述公开密钥ya的运算结束后,生成新的随机数ka,所以每次输出公开密钥ya都可取不同的值,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案5的共享密钥生成装置,其构成包括以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;由成为共享密钥分配对象的第二用户利用从成为发生的0<ka<q的随机数kb生成的公开密钥yb和上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部;至少将上述随机数生成部和上述共享密钥生成部在同一半导体集成电路上集成,成为共享密钥分配来源的第一用户的控制部,从成为共享密钥分配对象的第二用户取得上述公开密钥yb,并且控制上述随机数生成部和上述共享密钥生成部,导出上述共享密钥Ka,所以是秘密密钥ka只用于在半导体集成电路的芯片内部中生成共享密钥Ka的构成,密钥交换装置的运算不会外泄,通过采用这种集成电路就可以使要想将本共享密钥生成装置挪用到共享密钥Ka的生成以外或改变之都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案6的共享密钥生成装置,在技术方案5所述的共享密钥生成装置中,利用成为上述共享密钥分配对象的第二用户生成的上述公开密钥yb=g^kb mod q和上述随机数ka,将上述共享密钥Ka作为Ka=yb^ka mod q,在上述有限群F上运算并输出,所以在根据有限群F的离散对数问题的解法困难的密码体制中,将共享密钥生成装置挪用到共享密钥Ka的生成以外或改变之也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案7的共享密钥生成装置,在技术方案5所述的公开密钥生成装置中,以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,上述共享密钥生成部,藉助成为上述公开密钥分配对象的第二用户从上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kb G mod q和上述随机数ka,将上述共享密钥Ka作为Ka=ka yb mod q,在上述椭圆曲线E(F)上运算并输出,所以即使是在椭圆曲线密码体制中,将共享密钥生成装置挪用到共享密钥Ka的生成以外或改变之也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案8的共享密钥生成装置,在技术方案5至7中的任意一项所述的公开密钥生成装置中,上述随机数生成部,在上述共享密钥Ka的运算结束后,生成新的随机数ka,所以每次输出共享密钥Ka都可取不同的值,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案9的密钥交换装置,其构成包括以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;由上述随机数ka、上述元g、上述素数q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;由成为共享密钥分配对象的第二用户利用从成为发生的0<ka<q的随机数kb生成的公开密钥yb和上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部;至少将上述随机数生成部、上述公开密钥生成部和上述共享密钥生成装置在同一半导体集成电路上集成,成为共享密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥yb,并且控制上述共享密钥生成部导出上述共享密钥Ka,所以是秘密密钥ka只用于在半导体集成电路的芯片内部中生成公开密钥ya及共享密钥Ka的构成,密钥交换装置的运算不会外泄,通过采用这种集成电路就可以使要想将本密钥交换装置挪用到密钥交换装置以外的加密处理或改变之都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案10的密钥交换装置,在技术方案9所述的密钥交换装置中,上述公开密钥生成部,利用上述随机数ka、上述元g、上述素数q,在上述有限群F上作为ya=g^ka mod q运算并输出上述公开密钥ya,上述共享密钥生成部,由成为上述共享密钥分配对象的第二用户利用上述随机数kb在上述有限群F上运算输出的上述公开密钥yb=g^kb mod q和上述随机数ka,在上述有限群F上运算并输出上述共享密钥Ka作为Ka=yb^ka mod q,所以在根据有限群F的离散对数问题的解法困难的密码体制中,将密钥交换装置挪用到密钥交换装置以外的加密处理或改变之都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案11的密钥交换装置,在技术方案9所述的密钥交换装置中,以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,上述公开密钥生成部利用上述随机数ka、上述G和上述素数q,在上述椭圆曲线E(F)上作为ya=kaG mod q运算并输出上述公开密钥ya;上述共享密钥生成部,利用成为上述共享密钥分配对象的第二用户由上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kb G mod q和上述随机数ka,在上述椭圆曲线E(F)上作为Ka=ka yb mod q运算并输出上述共享密钥Ka,所以即使是在椭圆曲线密码体制中,将密钥交换装置挪用到密钥交换以外的加密处理或改变之也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案12的密钥交换装置,在技术方案9至11中的任何一项所述的密钥交换装置中,上述随机数生成部,在上述公开密钥ya和上述共享密钥Ka的运算一起结束后,生成新的随机数ka,每次输出公开密钥ya及共享密钥Ka都可取不同的值,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案13的密钥交换装置,其构成包括以定义乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成成为0<ka<q的随机数ka的随机数生成部;将上述随机数ka临时存储的秘密密钥保持部;利用上述随机数ka、上述元g、上述素数q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;由成为共享密钥分配对象的第二用户利用从成为发生的0<kb<q的随机数kb生成的公开密钥yb和上述秘密密钥保持部保持的上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部;至少将上述随机数生成部、上述秘密密钥保持部、上述公开密钥生成部、上述共享密钥生成部在同一半导体集成电路上集成,成为共享密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥ya,并且将该ya传送给成为上述共享密钥分配对象的第二用户从成为上述共享密钥分配对象的第二用户取得上述公开密钥yb,并且控制上述共享密钥生成部导出上述共享密钥Ka,所以是秘密密钥ka只用于在半导体集成电路的芯片内部中生成公开密钥ya以及共享密钥Ka的构成,密钥交换装置的运算不会外泄,通过采用这种集成电路就可以使要想将本密钥交换装置挪用到密钥交换装置以外的加密处理或改变之都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高,加之在共享密钥生成部21生成共享密钥Ka之前,即使是随机数生成部新生成随机数,共享密钥生成部也一直可以正确地生成共享密钥Ka。
另外,根据本发明的技术方案14的密钥交换装置,在技术方案13所述的密钥交换装置中,上述公开密钥生成部,利用上述随机数ka、上述元g、上述素数q,在上述有限群F上作为ya=g^ka mod q运算并输出上述公开密钥ya,上述共享密钥生成部,由成为上述共享密钥分配对象的第二用户利用上述随机数kb在上述有限群F上运算输出的上述公开密钥yb=g^kb mod q和存储于上述秘密密钥保持部的随机数ka,在上述有限群F上作为Ka=yb^ka mod q运算并输出上述共享密钥Ka,所以在根据有限群F的离散对数问题的解法困难的密码体制中,将密钥交换装置挪用到密钥交换以外的加密处理或改变之也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案15的密钥交换装置,是一种在技术方案13所述的密钥交换装置中,以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,上述公开密钥生成部利用上述随机数ka、上述G和上述素数q,在上述椭圆曲线E(F)上作为ya=ka G mod q运算并输出上述公开密钥ya;上述共享密钥生成部,利用成为上述共享密钥分配对象的第二用户由上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kb G mod q和上述秘密密钥保持部存储的上述随机数ka,在上述椭圆曲线E(F)上作为Ka=ka yb mod q运算并输出上述共享密钥Ka,所以即使是在椭圆曲线密码体制中,将密钥交换装置挪用到密钥交换以外的加密处理或改变也都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案16的密钥交换装置,在技术方案13至15中的任何一项所述的密钥交换装置中,上述随机数生成部,在上述公开密钥ya的运算结束后,生成新的随机数ka,上述秘密密钥保持部将上述随机数生成部生成的上述新的随机数ka予以保持,所以每次输出公开密钥ya及共享密钥Ka都可取不同的值,可以获得对于第三者的非法攻击的强固性的极大的提高。
另外,根据本发明的技术方案17的密钥交换装置,在技术方案13至15中的任何一项所述的密钥交换装置中,上述随机数生成部,在上述共享密钥Ka的运算结束后,生成新的随机数ka,上述秘密密钥保持部将上述随机数生成部新生成的上述随机数ka予以保持,所以在共享密钥生成部生成共享密钥Ka之前,即使是随机数生成部新生成随机数,共享密钥生成部也一直可以正确地生成共享密钥Ka。
另外,根据本发明的技术方案18的密钥交换装置,在技术方案9至17中的任何一项所述的密钥交换装置中,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥,所以密钥交换装置的运算不会外泄,通过采用这种集成电路就可以使要想将本密钥交换装置挪用到密钥交换装置以外的加密处理或改变都变得极为困难,可以获得对于第三者的非法攻击的强固性的极大的提高。

Claims (16)

1.一种共享密钥生成装置,其特征在于,包括:
以定义了乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成满足0<ka<q的随机数ka的随机数生成部;和
利用由成为共享密钥分配对象的第二用户发生的、由满足0<kb<q的随机数kb生成的公开密钥yb和上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部,
至少将上述随机数生成部和上述共享密钥生成部在同一半导体集成电路上集成,
成为共享密钥分配来源的第一用户的控制部,从成为上述共享密钥分配对象的第二用户取得上述公开密钥yb,并且控制上述随机数生成部和上述共享密钥生成部,导出上述共享密钥Ka。
2.如权利要求1所述的共享密钥生成装置,其特征在于:
上述共享密钥生成部,
利用成为上述共享密钥分配对象的第二用户生成的上述公开密钥yb=g^kb mod q和上述随机数ka,在上述有限群F上作为Ka=yb^ka mod q运算并输出上述共享密钥Ka。
3.如权利要求1所述的共享密钥生成装置,其特征在于:
以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,
上述共享密钥生成部藉助成为上述公开密钥分配对象的第二用户利用上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kbG mod q和上述随机数ka,在上述椭圆曲线E(F)上作为Ka=kayb mod q运算并输出上述共享密钥Ka。
4.如权利要求1至3中的任意一项所述的共享密钥生成装置,其特征在于:
上述随机数生成部在上述共享密钥Ka的运算结束后,生成新的随机数ka。
5.一种密钥交换装置,其特征在于,包括:
以定义了乘法的有限群F上的元为g,以作为上述g的素数的位数为q,生成满足0<ka<q的随机数ka的随机数生成部;
利用上述随机数ka、上述元g、上述q,在上述有限群F上运算并输出公开密钥ya的公开密钥生成部;和
利用由成为共享密钥分配对象的第二用户发生的、由满足0<kb<q的随机数kb生成的公开密钥yb和上述随机数ka,在上述有限群F上运算并输出共享密钥Ka的共享密钥生成部,
至少将上述随机数生成部、上述公开密钥生成部和上述共享密钥生成部在同一半导体集成电路上集成,
成为共享密钥分配来源的第一用户的控制部,通过控制上述随机数生成部和上述公开密钥生成部取得上述公开密钥yb,并且控制上述共享密钥生成部,导出上述共享密钥Ka。
6.如权利要求5所述的密钥交换装置,其特征在于:
上述公开密钥生成部利用上述随机数ka、上述元g、上述q,在上述有限群F上作为ya=g^ka mod q运算并输出上述公开密钥ya,
上述共享密钥生成部利用成为上述共享密钥分配对象的第二用户利用上述随机数kb在上述有限群F上运算生成的上述公开密钥yb=g^kb mod q和上述随机数ka,在上述有限群F上作为Ka=yb^kamod q运算并输出上述共享密钥Ka。
7.如权利要求5所述的密钥交换装置,其特征在于:
以上述有限群F作为有限体上的椭圆曲线E(F),以上述椭圆曲线E(F)的元作为G,
上述公开密钥生成部利用上述随机数ka、上述元G和上述q,在上述椭圆曲线E(F)上作为ya=kaG mod q运算并输出上述公开密钥ya;
上述共享密钥生成部藉助成为上述共享密钥分配对象的第二用户利用上述随机数kb在上述椭圆曲线E(F)上运算生成的上述公开密钥yb=kbG mod q和上述随机数ka,在上述椭圆曲线E(F)上作为Ka=kayb mod q运算并输出上述共享密钥Ka。
8.如权利要求5至7中的任何一项所述的密钥交换装置,其特征在于:
上述随机数生成部在上述公开密钥ya和上述共享密钥Ka的运算都结束后,生成新的随机数ka。
9.如权利要求5至7中的任何一项所述的密钥交换装置,其特征在于,包括:
将上述随机数ka临时存储的秘密密钥保持部,
上述共享密钥生成部利用上述公开密钥yb和上述秘密密钥保持部存储的上述随机数ka,在上述有限群F上运算并输出上述共享密钥Ka。
10.如权利要求9所述的密钥交换装置,其特征在于:
上述随机数生成部在上述公开密钥ya的运算结束后,生成新的随机数ka,
上述秘密密钥保持部将上述随机数生成部生成的上述新的随机数ka予以保持。
11.如权利要求9所述的密钥交换装置,其特征在于:
上述随机数生成部在上述共享密钥Ka的运算结束后,生成新的随机数ka,
上述秘密密钥保持部将上述随机数生成部生成的上述新的随机数ka予以保持。
12.一种密钥交换方法,其特征在于:
使用如权利要求5至7中的任何一项所述的密钥交换装置,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥。
13.一种密钥交换方法,其特征在于:
使用如权利要求8所述的密钥交换装置,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥。
14.一种密钥交换方法,其特征在于:
使用如权利要求9所述的密钥交换装置,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥。
15.一种密钥交换方法,其特征在于:
使用如权利要求10所述的密钥交换装置,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥。
16.一种密钥交换方法,其特征在于:
使用如权利要求11所述的密钥交换装置,意欲共享公开密钥的第一用户和第二用户交换双方分别生成的上述公开密钥,基于该交换的公开密钥,第一用户和第二用户分别作成共享密钥。
CNB2004100304959A 2003-03-27 2004-03-25 共享密钥生成装置、密钥交换装置以及密钥交换方法 Expired - Fee Related CN100338906C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003088788A JP2004297578A (ja) 2003-03-27 2003-03-27 公開鍵生成装置、共有鍵生成装置、鍵交換装置、及び鍵交換方法
JP88788/2003 2003-03-27

Publications (2)

Publication Number Publication Date
CN1543118A CN1543118A (zh) 2004-11-03
CN100338906C true CN100338906C (zh) 2007-09-19

Family

ID=33402824

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100304959A Expired - Fee Related CN100338906C (zh) 2003-03-27 2004-03-25 共享密钥生成装置、密钥交换装置以及密钥交换方法

Country Status (3)

Country Link
US (1) US20040228484A1 (zh)
JP (1) JP2004297578A (zh)
CN (1) CN100338906C (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4937921B2 (ja) * 2004-11-11 2012-05-23 サーティコム コーポレーション 汎用鍵導出関数サポートのための安全インタフェース
US8316416B2 (en) * 2005-04-04 2012-11-20 Research In Motion Limited Securely using a display to exchange information
KR100891323B1 (ko) * 2005-05-11 2009-03-31 삼성전자주식회사 이진 필드 ecc에서 랜덤 포인트 표현을 이용하여 파워해독의 복잡도를 증가시키기 위한 암호화 방법 및 장치
US8005223B2 (en) 2006-05-12 2011-08-23 Research In Motion Limited System and method for exchanging encryption keys between a mobile device and a peripheral device
US8670566B2 (en) * 2006-05-12 2014-03-11 Blackberry Limited System and method for exchanging encryption keys between a mobile device and a peripheral output device
CN100583745C (zh) * 2006-12-06 2010-01-20 华为技术有限公司 一种基于Diameter服务器的密钥生成与分发方法及系统
JP2008245112A (ja) * 2007-03-28 2008-10-09 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置及びその暗号鍵の管理方法
WO2008146546A1 (ja) 2007-05-25 2008-12-04 Nec Corporation 鍵生成装置、暗号化装置及び復号装置
CN101321053B (zh) * 2007-06-08 2011-09-14 华为技术有限公司 一种生成组密钥的方法、系统和设备
CN102104481B (zh) * 2010-12-17 2013-04-10 中国科学院数据与通信保护研究教育中心 一种基于椭圆曲线的密钥交换方法
US9219604B2 (en) * 2011-05-09 2015-12-22 Cleversafe, Inc. Generating an encrypted message for storage
CN103023641B (zh) * 2012-10-25 2017-03-15 郑州云海信息技术有限公司 一种序列号生成验证方法
EP3232603B1 (en) * 2015-01-16 2023-05-31 Nippon Telegraph and Telephone Corporation Key-exchange method, key-exchange system, terminal device, and program
AU2017223129A1 (en) * 2016-02-23 2018-07-12 nChain Holdings Limited Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
US10237063B2 (en) * 2016-12-13 2019-03-19 Nxp B.V. Distributed cryptographic key insertion and key delivery
CN106549770B (zh) * 2017-01-13 2019-07-12 武汉理工大学 Sm2数字签名生成方法及系统
CN117792641A (zh) * 2024-02-27 2024-03-29 天津医康互联科技有限公司 联邦学习系统的全局评价指标获取方法及联邦学习系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604805A (en) * 1994-02-28 1997-02-18 Brands; Stefanus A. Privacy-protected transfer of electronic information
US5796840A (en) * 1994-05-31 1998-08-18 Intel Corporation Apparatus and method for providing secured communications
JP2001352319A (ja) * 2000-03-23 2001-12-21 Mitsuko Miyaji 統合装置
WO2002005483A1 (fr) * 2000-07-10 2002-01-17 Gemplus Procede de generation d'une cle electronique a partir d'un nombre premier compris dans un intervalle determine et dispositif de mise en oeuvre du procede

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4956863A (en) * 1989-04-17 1990-09-11 Trw Inc. Cryptographic method and apparatus for public key exchange with authentication
US6307936B1 (en) * 1997-09-16 2001-10-23 Safenet, Inc. Cryptographic key management scheme

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604805A (en) * 1994-02-28 1997-02-18 Brands; Stefanus A. Privacy-protected transfer of electronic information
US5796840A (en) * 1994-05-31 1998-08-18 Intel Corporation Apparatus and method for providing secured communications
JP2001352319A (ja) * 2000-03-23 2001-12-21 Mitsuko Miyaji 統合装置
WO2002005483A1 (fr) * 2000-07-10 2002-01-17 Gemplus Procede de generation d'une cle electronique a partir d'un nombre premier compris dans un intervalle determine et dispositif de mise en oeuvre du procede

Also Published As

Publication number Publication date
CN1543118A (zh) 2004-11-03
US20040228484A1 (en) 2004-11-18
JP2004297578A (ja) 2004-10-21

Similar Documents

Publication Publication Date Title
CN100338906C (zh) 共享密钥生成装置、密钥交换装置以及密钥交换方法
CN1144418C (zh) 用于鉴别第一实体和第二实体的方法和装置
CN1122213C (zh) 给对象签名和签章的方法和设备
CN1255692A (zh) 信息处理装置与ic卡
CN1665180A (zh) 数据处理电路及其控制方法
CN1281607A (zh) 能快速解密的密码系统与方法
CN1251715A (zh) 有限域离散对数密码系统的割圆多项式结构
CN1910848A (zh) 密码学密钥代的有效管理
CN1633774A (zh) 基于身份的分级加密与签名方案
CN101079701A (zh) 高安全性的椭圆曲线加解密方法和装置
CN1859090A (zh) 一种基于身份的密码方法和系统
CN1291744A (zh) 扩充密钥发生器、加密/解密单元、扩充密钥产生方法和存储媒体
CN101056196A (zh) 安全登录方法、客户端及其服务器
US9780948B1 (en) Generating integers for cryptographic protocols
CN1282323C (zh) 用于有效密钥长度控制的方法和设备
CN101051902A (zh) 一种代理签密方法及系统
CN111314050B (zh) 一种加解密方法及装置
CN1906622A (zh) 机密信息处理方法、机密信息处理装置及内容数据再现装置
CN1505306A (zh) 椭圆曲线加密解密方法和装置
CN1795638A (zh) 用于加密和解密数据块的设备和方法
CN1429360A (zh) 加密的方法和装置
CN1545242A (zh) 一种基于辫群共轭问题的数字签名方法
CN1571952A (zh) 用于椭圆曲线上的点的通用计算方法
CN1258148C (zh) 高安全等级对称密钥算法的加密、解密方法及加密器
CN1697365A (zh) 一种面向移动代理的安全传输方法

Legal Events

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

Granted publication date: 20070919