CN114499848B - 会话密钥生成装置及方法 - Google Patents

会话密钥生成装置及方法 Download PDF

Info

Publication number
CN114499848B
CN114499848B CN202210096057.0A CN202210096057A CN114499848B CN 114499848 B CN114499848 B CN 114499848B CN 202210096057 A CN202210096057 A CN 202210096057A CN 114499848 B CN114499848 B CN 114499848B
Authority
CN
China
Prior art keywords
information
security module
key
identity
encrypted
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.)
Active
Application number
CN202210096057.0A
Other languages
English (en)
Other versions
CN114499848A (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.)
Wuxi Rongka Technology Co ltd
Original Assignee
Wuxi Rongka Technology 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 Wuxi Rongka Technology Co ltd filed Critical Wuxi Rongka Technology Co ltd
Priority to CN202210096057.0A priority Critical patent/CN114499848B/zh
Publication of CN114499848A publication Critical patent/CN114499848A/zh
Application granted granted Critical
Publication of CN114499848B publication Critical patent/CN114499848B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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
    • H04L9/0844Key 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 with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Abstract

本发明公开了一种会话密钥生成装置及方法。根据本发明实施例的会话密钥生成装置及方法,第一通信模块和第二通信模块通过第一身份验证信息和第二身份验证信息进行身份互认,并根据第一身份验证信息和第二身份验证信息生成会话密钥。根据本发明实施例的会话密钥生成装置及方法,在会话密钥的协商过程中对会话对象进行身份判断,不依赖公钥及CA证书体系即可实现身份验证,不仅提高了生成会话密钥的效率,并且提高了会话密钥的安全性。

Description

会话密钥生成装置及方法
技术领域
本发明涉及密钥协商技术领域,特别涉及一种会话密钥生成装置及方法。
背景技术
随着通信技术和信息处理技术的发展,信息在传输过程中的安全性越来越受到关注。在通信过程中采用加密密钥是目前加密通信中普遍使用的加密通信手段。密钥协商则主要是为了让通信双方建立临时的会话密钥,即系统中的两个或多个参与方共同提供信息,各自推导出一个任何一方不能预先确定结果的共享密钥。
由于加密密钥一旦被破解,会使得之后的加密信息都不再安全。因此,为了防止加密密钥被破解,各种不同的密钥协商机制应运而生。但是随着通信环境的日益复杂、信息技术的不断发展和计算能力的不断提高,通信环境中的攻击手段也不断发展,使得很多密钥协商方法都存在不同程度的安全隐患,以及协商过程复杂、效率低下以及性能相对较低等缺陷。
因此,希望能有一种新的会话密钥生成装置及方法,能够克服上述问题。
发明内容
鉴于上述问题,本发明的目的在于提供一种会话密钥生成装置及方法,从而提高生成会话密钥的效率以及会话密钥的安全性。
根据本发明的一方面,提供一种会话密钥生成装置,包括第一安全模块,用于生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;第一通信模块,与所述第一安全模块相连接以接收所述第一身份验证信息;所述第一通信模块向外部设备发送所述第一身份验证信息,并接收所述外部设备反馈的第二身份验证信息,其中,所述第一安全模块获取所述第二身份验证信息以验证所述外部设备的身份,并根据所述第二身份验证信息得到第三密钥;所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到第三加密信息;所述第三加密信息用于生成会话密钥。
优选地,所述第一安全模块使用共享保护密钥加密所述会话密钥以得到加密存储会话密钥,并存储所述加密存储会话密钥。
根据本发明的一方面,提供一种会话密钥生成装置,包括第二通信模块,用于接收外部设备提供的第一身份验证信息;第二安全模块,与所述第二通信模块相连接以获取所述第一身份验证信息,并对所述第一身份验证信息进行解密以验证所述外部设备的身份;所述第二安全模块根据所述第一身份验证信息得到第二密钥,其中,所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息;所述第二安全模块接收所述外部设备提供的第三加密信息,并生成第四验证信息;所述第二安全模块根据所述第三加密信息、所述第四验证信息和所述第二安全模块的身份信息得到会话密钥。
优选地,所述第二安全模块使用共享保护密钥加密所述会话密钥以得到加密存储会话密钥,并存储所述加密存储会话密钥;所述第二安全模块对所述第四验证信息和所述第二安全模块的身份信息进行加密以得到第四加密信息,并经由所述第二通信模块将所述第四加密信息发送至所述外部设备。
根据本发明的一方面,提供一种会话密钥生成装置,包括第一安全模块,用于生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;第一通信模块,与所述第一安全模块相连接以接收所述第一身份验证信息;第二通信模块,与所述第一通信模块相连接以获取所述第一身份验证信息;以及第二安全模块,与所述第二通信模块相连接以获取所述第一身份验证信息,并对所述第一身份验证信息进行解密以验证所述第一通信模块的身份;所述第二安全模块根据所述第一身份验证信息得到第二密钥;所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息,其中,所述第二安全模块将所述第二身份验证信息发送至所述第二通信模块,所述第二通信模块将所述第二身份验证信息发送至所述第一通信模块;所述第一安全模块与所述第一通信模块相连接以接收所述第二身份验证信息,并对所述第二身份验证信息进行解密以验证所述第二通信模块的身份;所述第一安全模块根据所述第二验证信息和所述第二密钥得到第三密钥;所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到第三加密信息;所述第一安全模块将所述第三加密信息发送至所述第一通信模块;所述第一通信模块将所述第三加密信息发送至所述第二通信模块;所述第二通信模块将所述第三加密信息发送至所述第二安全模块;所述第二安全模块对所述第三加密信息进行解密,得到所述第三验证信息和所述第一安全模块的身份信息;所述第二安全模块生成第四验证信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到会话密钥;所述第二安全模块使用所述第三密钥对所述第四验证信息和所述第二安全模块的身份信息进行加密得到第四加密信息;所述第二安全模块将所述第四加密信息发送至所述第二通信模块;所述第二通信模块将所述第四加密信息发送至所述第一通信模块;所述第一通信模块将所述第四加密信息发送至所述第一安全模块;所述第一安全模块对所述第四加密信息解密以得到所述第四验证信息和所述第二安全模块的身份信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥。
优选地,所述第一通信模块生成第一通信公钥和第一通信私钥,并将所述第一通信公钥发送至所述第一安全模块;所述第一安全模块使用所述第一通信公钥对所述会话密钥进行加密,得到第一加密会话密钥;所述第一通信模块与所述第一安全模块相连接以接收所述第一加密会话密钥,并对所述第一加密会话密钥进行解密以得到所述会话密钥;所述第二通信模块生成第二通信公钥和第二通信私钥,并将所述第二通信公钥发送至所述第二安全模块;所述第二安全模块使用所述第二通信公钥对所述会话密钥进行加密,得到第二加密会话密钥;所述第二通信模块与所述第二安全模块相连接以接收所述第二加密会话密钥,并对所述第二加密会话密钥进行解密以得到所述会话密钥;所述第一通信模块和所述第二通信模块使用所述会话密钥进行加密通信。
根据本发明的一方面,提供一种会话密钥生成方法,包括生成第一验证信息;使用第一密钥加密所述第一验证信息以得到加密第一验证信息;使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;向会话对象发送所述第一身份验证信息,并接收所述会话对象反馈的第二身份验证信息;根据所述第二身份验证信息验证所述会话对象的身份,并根据所述第二身份验证信息得到第三密钥;生成第三验证信息,并使用所述第三密钥对所述第三验证信息进行加密以得到第三加密信息;所述第三加密信息用于生成会话密钥。
优选地,所述会话密钥生成方法还包括对所述会话密钥进行加密以得到加密存储会话密钥,并存储所述加密存储会话密钥。
根据本发明的一方面,提供一种会话密钥生成方法,包括接收会话对象提供的第一身份验证信息;根据所述第一身份验证信息验证所述会话对象的身份,并根据所述第一身份验证信息得到第二密钥;生成第二验证信息;使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,并使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息;接收所述会话对象提供的第三加密信息;生成第四验证信息;根据所述第三加密信息、所述第四验证信息得到会话密钥。
优选地,所述会话密钥生成方法还包括对所述会话密钥进行加密以得到加密存储会话密钥,并存储所述加密存储会话密钥;对所述第四验证信息进行加密以得到第四加密信息,并将所述第四加密信息发送给所述会话对象。
根据本发明的一方面,提供一种会话密钥生成方法,包括第一通信模块向第二通信模块发送第一身份验证信息;所述第二通信模块接收并解密所述第一身份验证信息以验证所述第一通信模块的身份信息;所述第二通信模块根据所述第一身份验证信息生成第二身份验证信息,并向所述第一通信模块发送所述第二身份验证信息,其中,所述第一身份验证信息和所述第二身份验证信息用于生成会话密钥。
优选地,所述会话密钥生成方法还包括:
第一安全模块生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的所述第一身份验证信息;
所述第一通信模块接收所述第一安全模块发送的所述第一身份信息;
在所述第一通信模块向第二通信模块发送第一身份验证信息后,所述第二安全模块通过所述第二通信模块获取所述第一身份验证信息;
所述第二安全模块对所述第一身份验证信息进行解密以验证所述第一通信模块的身份;所述第二安全模块根据所述第一身份验证信息得到第二密钥;所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用所述传输密钥加密所述加密第二验证信息,得到用于身份认证的所述第二身份验证信息;
所述第二安全模块将所述第二身份验证信息发送至所述第二通信模块,所述第二通信模块将所述第二身份验证信息发送至所述第一通信模块;
所述第一安全模块通过所述第一通信模块获取所述第二身份验证信息,并对所述第二身份验证信息进行解密以验证所述第二通信模块的身份;
所述第一安全模块根据所述第二验证信息和所述第二密钥得到第三密钥;所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到第三加密信息;
所述第一安全模块将所述第三加密信息发送至所述第一通信模块;所述第一通信模块将所述第三加密信息发送至所述第二通信模块;所述第二通信模块将所述第三加密信息发送至所述第二安全模块;
所述第二安全模块对所述第三加密信息进行解密,得到所述第三验证信息和所述第一安全模块的身份信息;所述第二安全模块生成第四验证信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥;
所述第二安全模块使用所述第三密钥对所述第四验证信息和所述第二安全模块的身份信息进行加密得到第四加密信息;
所述第二安全模块将所述第四加密信息发送至所述第二通信模块;所述第二通信模块将所述第四加密信息发送至所述第一通信模块;所述第一通信模块将所述第四加密信息发送至所述第一安全模块;
所述第一安全模块对所述第四加密信息解密以得到所述第四验证信息和所述第二安全模块的身份信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥;
所述会话密钥生成方法还包括:
所述第一通信模块生成第一通信公钥和第一通信私钥,并将所述第一通信公钥发送至所述第一安全模块;
所述第一安全模块使用所述第一通信公钥对所述会话密钥进行加密,得到第一加密会话密钥;
所述第一通信模块通过所述第一安全模块接收所述第一加密会话密钥,并对所述第一加密会话密钥进行解密以得到所述会话密钥;
所述第二通信模块生成第二通信公钥和第二通信私钥,并将所述第二通信公钥发送至所述第二安全模块;
所述第二安全模块使用所述第二通信公钥对所述会话密钥进行加密,得到第二加密会话密钥;
所述第二通信模块通过所述第二安全模块获取所述第二加密会话密钥,并对所述第二加密会话密钥进行解密以得到所述会话密钥;
所述第一通信模块和所述第二通信模块使用所述会话密钥进行加密通信。
优选地,所述第一验证信息包括第一随机数;
所述第一密钥包括认证根密钥,所述认证根密钥分别存储在所述第一安全模块和所述第二安全模块中;
所述传输密钥分别存储在所述第一安全模块和所述第二安全模块中,所述传输密钥加密所述第一随机数和所述加密第一验证信息,得到所述第一身份验证信息;
所述第二安全模块对所述第一身份验证信息进行解密,得到所述第一随机数和所述加密第一验证信息,再将所述加密第一验证信息解密得到第一解密随机数;比对所述第一随机数和所述第一解密随机数,若二者相同,则认证成功;若二者不同,则认证失败;
根据SM3、所述第一随机数和所述认证根密钥得到所述第二密钥;
所述第二验证信息包括第二随机数,所述传输密钥加密所述第二随机数和所述加密第二验证信息,得到所述第二身份验证信息;
所述第一安全模块对所述第二身份验证信息进行解密,得到所述第二随机数和所述加密第二验证信息,再将所述加密第二验证信息解密得到第二解密随机数;比对所述第二随机数和所述第二解密随机数,若二者相同,则认证成功;若二者不同,则认证失败;
根据SM3、所述第二随机数和所述第二密钥得到所述第三密钥;
所述第三验证信息包括第三随机数,所述第三密钥加密所述第三随机数和所述第一安全模块的身份信息以得到所述第三加密信息;
所述第四验证信息包括第四随机数;
所述第一安全模块和所述第二安全模块中分别存储有共享保护密钥,所述第一安全模块和所述第二安全模块分别使用所述共享保护密钥加密所述会话密钥以得到加密存储会话密钥,并存储所述加密存储会话密钥;
所述第一安全模块中存储有所述第一通信公钥;所述第二安全模块中存储有所述第二通信私钥。
根据本发明的一方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前所述的会话密钥生成方法。
根据本发明的一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的会话密钥生成方法。
根据本发明实施例的会话密钥生成装置及方法,在会话密钥的协商过程中对会话对象进行身份判断,无需依赖公钥及CA证书体系即可实现身份验证,不仅提高了生成会话密钥的效率,而且提高了会话密钥的安全性。进一步地,由于会话密钥的安全性能高,无需每次通讯进行一次协商来确保密钥的安全,极大地提高了通讯的效率。
根据本发明实施例的会话密钥生成装置及方法,在会话密钥的协商过程中,使用随机数,及加密随机数组成的数据与会话对象通讯,达到双向身份验证的目的,安全性高。
根据本发明实施例的会话密钥生成装置及方法,第一安全模块和/或第二安全模块对协商得到的会话密钥加密后存储,提高了会话密钥的安全性。
根据本发明实施例的会话密钥生成装置及方法,在传输会话密钥时,传输的是经过公钥加密的密文,攻击者无法得到密钥明文,提高了密钥的安全性。
根据本发明实施例的会话密钥生成装置及方法,使用第一安全模块和/或第二安全模块进行密钥的过程处理与存储,在存储中使用保护密钥加密,在传递过程中使用公钥进行加密;第一通信模块和/或第二通信模块仅在使用时通过第一安全模块和/或第二安全模块获取协商后的会话密钥,使用对应的私钥进行解密得到会话密钥明文。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示出了根据本发明实施例一的会话密钥生成装置的结构示意图;
图2示出了根据本发明实施例二的会话密钥生成装置的结构示意图;
图3示出了根据本发明实施例三的会话密钥生成装置的结构示意图;
图4示出了根据本发明实施例一的会话密钥生成方法的方法流程图;
图5示出了根据本发明实施例二的会话密钥生成方法的方法流程图;
图6示出了根据本发明实施例三的会话密钥生成方法的方法流程图;
图7示出了根据本发明实施例四的会话密钥生成方法的方法流程图;
图8示出了根据本发明实施例四的会话密钥生成方法的方法流程图。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。此外,在图中可能未示出某些公知的部分。
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。在下文中描述了本发明的许多特定的细节,例如部件的结构、材料、尺寸、处理工艺和技术,以便更清楚地理解本发明。但正如本领域的技术人员能够理解的那样,可以不按照这些特定的细节来实现本发明。
应当理解,在描述部件的结构时,当将一层、一个区域称为位于另一层、另一个区域“上面”或“上方”时,可以指直接位于另一层、另一个区域上面,或者在其与另一层、另一个区域之间还包含其它的层或区域。并且,如果将部件翻转,该一层、一个区域将位于另一层、另一个区域“下面”或“下方”。
在通信过程中采用加密密钥是目前加密通信中普遍使用的加密通信手段。密钥协商则主要是为了让通信双方建立临时的会话密钥,即系统中的两个或多个参与方共同提供信息,各自推导出一个任何一方不能预先确定结果的共享密钥。
中国国家密码管理局将SM2、SM3、SM4等密码算法公开,标志着SM2、SM3、SM4密码算法进入了商用化阶段。其中,SM2算法有其自身满足密钥交换的功能特性,但SM2算法的密钥交换算法相对复杂,性能相对较低,在存储及使用的过程中都是直接使用协商后的密钥明文,容易被攻击者攻击导致明文泄露。其中,SM2是一种非对称加密,基于已公开的ECC(Elliptic Curve Cryptography,椭圆加密算法)算法。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA2048位高,但运算速度快于RSA。SM3是一种消息摘要算法,可以用MD5(Message DigestAlgorithm MD5,MD5信息摘要算法)作为对比理解。该算法已公开。校验结果为256位。SM4是一种无线局域网标准的分组数据算法,对称加密,密钥长度和分组长度均为128位。
在esim(Embedded-SIM,嵌入式用户识别卡)类型产品中,密钥协商环节常使用ECCECDH(椭圆曲线密钥交换体制)算法,协商出数据加密秘钥keylist1后,平台可以自主选择是否更换数据加密秘钥keylist2(密文传输):若平台选择不更换数据加密秘钥,再用keylist1通过对称算法对数据进行加密传输;若平台选择更换数据加密秘钥,再用keylist2通过对称算法对数据进行加密传输。尽管平台选择更换数据加密秘钥并通过密文传输时一定程度地保障了秘钥数值的安全性,但该秘钥协商过程也相对复杂,依然存在性能相对较低的缺陷。
发明人发现,上述的密钥协商方式以及其他的密钥协商方式,均存在不同方面的问题,并不能很好地满足现有的需求。因此,发明人提出了一种新的会话密钥生成装置及方法。
图1示出了根据本发明实施例一的会话密钥生成装置的结构示意图。如图1所示,根据本发明实施例一的会话密钥生成装置包括第一安全模块110和第一通信模块120。
具体地讲,第一安全模块110用于生成第一验证信息,并使用第一密钥加密第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息。
第一通信模块120与第一安全模块110相连接以接收第一身份验证信息。第一通信模块向外部设备发送第一身份验证信息,并接收外部设备反馈的第二身份验证信息。可选地,第一安全模块110与第一通信模块120双向通信以进行信息交互。可选地,第一安全模块110为第一通信模块120的一部分。
其中,第一安全模块110获取第二身份验证信息以验证外部设备的身份,并根据第二身份验证信息得到第三密钥。第一安全模块110生成第三验证信息,并使用第三密钥对第三验证信息和第一安全模块的身份信息进行加密以得到第三加密信息。第三加密信息用于生成会话密钥。
可选地,第一安全模块110使用共享保护密钥加密会话密钥以得到加密存储会话密钥,并存储加密存储会话密钥。
图2示出了根据本发明实施例二的会话密钥生成装置的结构示意图。如图2所示,根据本发明实施例二的会话密钥生成装置包括第二通信模块210和第二安全模块220。
具体地讲,第二通信模块210用于接收外部设备提供的第一身份验证信息。
第二安全模块220与第二通信模块210相连接以获取第一身份验证信息,并对第一身份验证信息进行解密以验证外部设备的身份。第二安全模块220根据第一身份验证信息得到第二密钥。可选地,第二安全模块220与第二通信模块210双向通信以进行信息交互。可选地,第二安全模块220为第二通信模块210的一部分。
其中,第二安全模块220生成第二验证信息,并使用第二密钥加密第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息。第二安全模块220接收外部设备提供的第三加密信息,并生成第四验证信息。第二安全模块220根据第三加密信息、第四验证信息和第二安全模块220的身份信息得到会话密钥。
可选地,第二安全模块220使用共享保护密钥加密会话密钥以得到加密存储会话密钥,并存储加密存储会话密钥。第二安全模块220对第四验证信息和第二安全模块220的身份信息进行加密以得到第四加密信息,并经由第二通信模块210将第四加密信息发送至外部设备。
图3示出了根据本发明实施例三的会话密钥生成装置的结构示意图。如图3所示,根据本发明实施例三的会话密钥生成装置包括第一安全模块110、第一通信模块120、第二通信模块210和第二安全模块220。
具体地讲,第一安全模块110用于生成第一验证信息,并使用第一密钥加密第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息。
第一通信模块120与第一安全模块110相连接以接收第一身份验证信息。
第二通信模块210与第一通信模块120相连接以获取第一身份验证信息。
第二安全模块220与第二通信模块210相连接以获取第一身份验证信息,并对第一身份验证信息进行解密以验证第一通信模块120的身份。第二安全模块220根据第一身份验证信息得到第二密钥。第二安全模块220生成第二验证信息,并使用第二密钥加密第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息。
其中,第二安全模块220将第二身份验证信息发送至第二通信模块210,第二通信模块210将第二身份验证信息发送至第一通信模块120。
第一安全模块110与第一通信模块120相连接以接收第二身份验证信息,并对第二身份验证信息进行解密以验证第二通信模块210的身份。
第一安全模块110根据第二验证信息和第二密钥得到第三密钥;第一安全模块110生成第三验证信息,并使用第三密钥对第三验证信息和第一安全模块110的身份信息进行加密以得到第三加密信息。
第一安全模块110将第三加密信息发送至第一通信模块120;第一通信模块120将第三加密信息发送至第二通信模块210;第二通信模块210将第三加密信息发送至第二安全模块220。
第二安全模块220对第三加密信息进行解密,得到第三验证信息和第一安全模块110的身份信息;第二安全模块220生成第四验证信息,并根据第三验证信息、第一安全模块110的身份信息、第四验证信息和第二安全模块220的身份信息得到会话密钥。
第二安全模块220使用第三密钥对第四验证信息和第二安全模块220的身份信息进行加密得到第四加密信息。
第二安全模块220将第四加密信息发送至第二通信模块210;第二通信模块210将第四加密信息发送至第一通信模块120;第一通信模块120将第四加密信息发送至第一安全模块110。
第一安全模块110对第四加密信息解密以得到第四验证信息和第二安全模块220的身份信息,并根据第三验证信息、第一安全模块110的身份信息、第四验证信息和第二安全模块220的身份信息得到会话密钥。
在本发明的可选实施例中,第一通信模块120生成第一通信公钥和第一通信私钥,并将第一通信公钥发送至第一安全模块110。第一安全模块110使用第一通信公钥对会话密钥进行加密,得到第一加密会话密钥。第一通信模块120与第一安全模块110相连接以接收第一加密会话密钥,并对第一加密会话密钥进行解密以得到会话密钥。第二通信模块210生成第二通信公钥和第二通信私钥,并将第二通信公钥发送至第二安全模块220。第二安全模块220使用第二通信公钥对会话密钥进行加密,得到第二加密会话密钥。第二通信模块210与第二安全模块220相连接以接收第二加密会话密钥,并对第二加密会话密钥进行解密以得到会话密钥。第一通信模块120和第二通信模块210使用会话密钥进行加密通信。
图4示出了根据本发明实施例一的会话密钥生成方法的方法流程图。如图4所示,根据本发明实施例一的会话密钥生成方法包括以下步骤:
在步骤S101中,生成第一验证信息;
第一安全模块生成第一验证信息。
在步骤S102中,使用第一密钥加密所述第一验证信息以得到加密第一验证信息;
第一安全模块使用第一密钥加密所述第一验证信息以得到加密第一验证信息。
在步骤S103中,使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;
第一安全模块使用传输密钥加密所述加密第一验证信息,得到用于身份认证的所述第一身份验证信息。
在步骤S104中,向会话对象发送所述第一身份验证信息,并接收所述会话对象反馈的第二身份验证信息;
第一安全模块将第一身份验证信息发送至第一通信模块。第一通信模块向会话对象发送所述第一身份验证信息,并接收所述会话对象反馈的第二身份验证信息。会话对象例如为第二通信模块。
在步骤S105中,根据所述第二身份验证信息验证所述会话对象的身份,并根据所述第二身份验证信息得到第三密钥;
第一通信模块将第二身份验证信息发送至第一安全模块。第一安全模块根据所述第二身份验证信息验证所述会话对象的身份,并根据所述第二身份验证信息得到第三密钥。
在步骤S106中,生成第三验证信息,并使用所述第三密钥对所述第三验证信息进行加密以得到第三加密信息;所述第三加密信息用于生成会话密钥。
第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息进行加密以得到第三加密信息。其中,所述第三加密信息用于生成会话密钥。
可选地,第一安全模块对所述会话密钥进行加密以得到加密存储会话密钥,并存储所述加密存储会话密钥。
图5示出了根据本发明实施例二的会话密钥生成方法的方法流程图。如图5所示,根据本发明实施例二的会话密钥生成方法包括以下步骤:
在步骤S201中,接收会话对象提供的第一身份验证信息;
第二通信模块接收会话对象提供的第一身份验证信息。会话对象例如为第二通信模块。
在步骤S202中,根据所述第一身份验证信息验证所述会话对象的身份,并根据所述第一身份验证信息得到第二密钥;
第二通信模块将第一身份验证信息发送至第二安全模块。第二安全模块根据所述第一身份验证信息验证所述会话对象的身份,并根据所述第一身份验证信息得到第二密钥。
在步骤S203中,生成第二验证信息;
第二安全模块生成第二验证信息。
在步骤S204中,使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,并使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息;
第二安全模块使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,并使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息。
在步骤S205中,接收所述会话对象提供的第三加密信息;
第二通信模块接收接收会话对象提供的第三加密信息,并将第三加密信息发送至第二安全模块。
在步骤S206中,生成第四验证信息;
第二安全模块生成第四验证信息。
在步骤S207中,根据所述第三加密信息、所述第四验证信息得到会话密钥。
第二安全模块根据所述第三加密信息、所述第四验证信息得到会话密钥。
可选地,第二安全模块对所述会话密钥进行加密以得到加密存储会话密钥,并存储所述加密存储会话密钥。第二安全模块对所述第四验证信息进行加密以得到第四加密信息,并将所述第四加密信息发送给所述会话对象。
图6示出了根据本发明实施例三的会话密钥生成方法的方法流程图。如图6所示,根据本发明实施例三的会话密钥生成方法包括以下步骤:
在步骤S301中,第一通信模块向第二通信模块发送第一身份验证信息;
第一安全模块生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的所述第一身份验证信息。所述第一通信模块接收所述第一安全模块发送的所述第一身份信息,并向第二通信模块发送第一身份验证信息。
在步骤S302中,所述第二通信模块接收并解密所述第一身份验证信息以验证所述第一通信模块的身份信息;
第二通信模块接收第一通信模块发送的第一身份验证信息。第二安全模块通过所述第二通信模块获取所述第一身份验证信息。所述第二安全模块对所述第一身份验证信息进行解密以验证所述第一通信模块的身份。
在步骤S303中,所述第二通信模块根据所述第一身份验证信息生成第二身份验证信息,并向所述第一通信模块发送所述第二身份验证信息。
第二安全模块根据所述第一身份验证信息得到第二密钥;所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用所述传输密钥加密所述加密第二验证信息,得到用于身份认证的所述第二身份验证信息。第二通信模块接收第二安全模块发送的第二身份验证信息,并向所述第一通信模块发送所述第二身份验证信息。其中,所述第一身份验证信息和所述第二身份验证信息用于生成会话密钥。
在本发明的可选实施例中,会话秘钥的生成方法还包括:第二安全模块将第二身份验证信息发送至第二通信模块,第二通信模块将第二身份验证信息发送至第一通信模块。
第一安全模块通过第一通信模块获取第二身份验证信息,并对第二身份验证信息进行解密以验证第二通信模块的身份。
第一安全模块根据第二验证信息和第二密钥得到第三密钥;第一安全模块生成第三验证信息,并使用第三密钥对第三验证信息和第一安全模块的身份信息进行加密以得到第三加密信息。
第一安全模块将第三加密信息发送至第一通信模块;第一通信模块将第三加密信息发送至第二通信模块;第二通信模块将第三加密信息发送至第二安全模块。
第二安全模块对第三加密信息进行解密,得到第三验证信息和第一安全模块的身份信息;第二安全模块生成第四验证信息,并根据第三验证信息、第一安全模块的身份信息、第四验证信息和第二安全模块的身份信息得到会话密钥。
第二安全模块使用第三密钥对第四验证信息和第二安全模块的身份信息进行加密得到第四加密信息。
第二安全模块将第四加密信息发送至第二通信模块;第二通信模块将第四加密信息发送至第一通信模块;第一通信模块将第四加密信息发送至第一安全模块。
第一安全模块对第四加密信息解密以得到第四验证信息和第二安全模块的身份信息,并根据第三验证信息、第一安全模块的身份信息、第四验证信息和第二安全模块的身份信息得到会话密钥。
在本发明的可选实施例中,会话秘钥生成方法还包括:第一通信模块生成第一通信公钥和第一通信私钥,并将第一通信公钥发送至第一安全模块。
第一安全模块使用第一通信公钥对会话密钥进行加密,得到第一加密会话密钥。
第一通信模块通过第一安全模块接收第一加密会话密钥,并对第一加密会话密钥进行解密以得到会话密钥。
第二通信模块生成第二通信公钥和第二通信私钥,并将第二通信公钥发送至第二安全模块。
第二安全模块使用第二通信公钥对会话密钥进行加密,得到第二加密会话密钥。
第二通信模块通过第二安全模块获取第二加密会话密钥,并对第二加密会话密钥进行解密以得到会话密钥。其中,第一通信模块和第二通信模块使用会话密钥进行加密通信。
图7和图8示出了根据本发明实施例四的会话密钥生成方法的方法流程图。在根据本发明实施例四的会话秘钥生成方法中,第一安全模块和第二安全模块事先共享三组秘钥,即传输秘钥Kt、认证根秘钥K1和共享秘钥的保护秘钥KC。
第一通信设备有自己的SM2保护密钥公钥Kpa,私钥Ksa。第二通信设备有自己的SM2保护密钥对Kpb,私钥Ksb。同时第一安全模块拥有设备第一通信设备的公钥Kpa,第二安全模块拥有第二通信设备的私钥Ksb。
第一通信设备与第二通信设备请求通信,第二通信设备同意通讯之后,第一通信设备向第一安全模块发送生成真实性检测指令,安全模块收到指令后,生成16字节的随机数R1,使用密钥K1对R1进行SM4加密运算,运算结果为E1,将R1与E1组成d1,使用密钥KT对d1进行SM4加密运算,运算结果为D1,返回D1到第一通信设备。
第一通信设备收到响应数据D1之后,将D1发送给第二通信设备表达自身真实性。
第二通信设备收到D1之后,将数据发送给第二安全模块。
第二安全模块收到数据后使用KT对D1进行SM4解密运算,得到R1与E1,再使用密钥K1对E1进行SM4解密运算得到C1,将C1与R1进行对比,如果相等则第一通信设备真实性检测成功。随后将R1与密钥K1组成的新数据进行SM3运算得到K2,生成随机数R2,使用K2对R2进行SM4加密运算得到E2,将R2与E2组成d2,使用密钥KT对d2进行SM4加密运算,运算结果为D2,返回D2到第二通信设备。
第二通信设备收到响应数据D2之后,将D2发送给第一通信设备表达自身真实性。
第一通信设备收到D2之后,将数据发送给第一安全模块。
第一安全模块收到数据后使用KT对D2进行SM4解密运算,得到R2与E2,再使用密钥K1对E2进行SM4解密运算得到C2,将C1与R2进行对比,如果相等则第二通信设备真实性检测成功。随后将R2与密钥K2组成的新数据进行SM3运算得到K3,生成随机数R3,使用K3对R3与第一安全模块的特征性数据SEID_A组成的数据进行SM4加密运算得到E3,返回E3到第一通信设备。
第一通信设备收到E3之后,将数据E3发送给第二通信设备。
第二通信设备收到E3之后,将E3发送给第二安全模块。第一安全模块收到数据E3后,使用K3对E3进行SM4解密运算得到R3与SEID_A。生成随机数R4,将R3,SEID_A,R4,SE_B的特征性数据SEID_B组成的数据一起进行SM3运算,得到协商的密钥Km(前16字节),使用KC对Km进行SM4加密运算存储在SE_B中。同时使用K3将R4与SEID_B进行SM4加密得到数据E4,返回给第二通信设备。
第二通信设备收到E4之后,将数据E4发送给第一通信设备。
第一通信设备收到E4之后,将E4发送给第一安全模块。第一安全模块使用K3对E4进行解密得到R4与SEID_B。将R3,SEID_A,R4,SEID_B组成的数据一起进行SM3运算,得到协商的密钥Km(前16字节),使用KC对Km进行SM4加密运算存储在SE_A中。
当第一通信设备需要使用进行通讯时,向第一安全模块请求协商密钥,SE_A使用KC对存储在安全模块内部的加密Km进行SM4解密算法得到明文的Km,然后使用第一通信设备的公钥Kpa对Km的明文进行SM2加密算法得到密文返回给第一通信设备,第一通信设备得到数据使用自身私钥Ksa进行SM2解密算法得到明文Km。第二通信设备使用情况等同于第一通信设备。
如图7和图8所示,根据本发明第四实施例的会话秘钥生成方法包括以下步骤:
第一通信模块向第二通信模块发起通信请求(步骤S901),第二通信模块同意请求(步骤S902)。第一通信模块向第一安全模块生成随机数命令(步骤S903)。第一安全模块生成随机数R1,用K1加密成E1,将R1和E1组成d1;用传输密钥Kt加密d1得到D1(步骤S904),第一安全模块返回D1至第一通信模块(步骤S905)。第一通信模块发送D1给第二通信模块(步骤S906)。第二安全模块接收第二通信模块的接受方认证命令(步骤S907)。第二安全模块将D1解密得到R1和E1,再将E1解密得到C1,C1和R1比对以验证身份(步骤S908)。第二安全模块计算K2=SM3(R1+K1),生成随机数R2,用K2加密成E2,将R2和E2组成d2,用传输密钥Kt加密d2得到D2(步骤S909)。第二安全模块返回D2至第二通信模块(步骤S910)。第二通信模块发送D2给第一通信模块(步骤S911)。第一安全模块接收第一通信模块的请求方认证命令(步骤S912)。第一安全模块将D2解密得到R2和E2,再将E2解密得到C2,C2和R2比对以验证身份(步骤S913)。第一安全模块计算K3=SM3(R2+K2),生成随机数R3,将R3+SEID-A用K3加密成E3步骤(S914)。第一安全模块返回E3至第一通信模块(步骤S915)。第一通信模块发送E3给第二通信模块(步骤S916)。第二安全模块接收第二通信模块的接受方生成Km命令(步骤S917)。第二安全模块将E3解密成R3和SEID-A,生成随机数R4,计算Km=SM3(R3+SEID-A+R4+SEID-B),将R4+SEID-B用K3加密成E4(步骤S918)。第二安全模块返回E4至第二通信模块(步骤S919)。第二通信模块发送E4给第一通信模块(步骤S920)。第二安全模块接收第二通信模块的请求方生成Km命令(S921)。第二安全模块解密E4得到R4和SEID-B,计算Km=SM3(R3+SEID-A+R4+SEID-B)(步骤S922)。
第一安全模块发送返回成功信息至第一通信模块(步骤S923)。第一安全模块使用Kc加密存储Km(步骤S924)。第一通信模块生成SM2公私钥对Kp和Ks(步骤S925)。第一安全模块获取第一通信模块的获取Km命令(步骤S925)。第一安全模块使用Kp加密Km(步骤S926)。第一安全模块返回加密的Km至第一通信模块(步骤S927)。第一通信模块使用Ks解密得到Km(步骤S928)。
第二安全模块使用Kc加密存储Km(步骤S929)。第二通信模块生成SM2公私钥对Kp和Ks(步骤S930)。第二安全模块接收第二通信模块的获取Km命令(步骤S931)。第二安全模块使用Kp加密Km(步骤S932)。第二安全模块返回加密的Km至第二通信模块(步骤S933)。第二通信模块使用Ks解密得到Km(步骤S934)。
第一通信模块和第二通信模块使用Km加解密语音或文件(步骤S935)。
需要说明的是,在上述实施例中涉及到了SM4加解密算法,以及SM3计算摘要算法,在信息传递过程中使用的是SM2加解密算法。但本发明并不限于上述算法,SM4可替代为其他的对称算法例如DES、3DES、AES等,SM3可替代为SHA1、SHA256、SHA512等摘要计算算法,SM2可替代为RSA等非对称算法。
根据本发明的一方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现任意一种如前所述的会话密钥生成方法。
根据本发明的一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现任意一种如前所述的会话密钥生成方法。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明仅受权利要求书及其全部范围和等效物的限制。

Claims (15)

1.一种会话密钥生成装置,其特征在于,包括:
第一安全模块,用于生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;
第一通信模块,与所述第一安全模块相连接以接收所述第一身份验证信息;所述第一通信模块向外部设备发送所述第一身份验证信息,并接收所述外部设备反馈的第二身份验证信息,
其中,所述第一安全模块获取所述第二身份验证信息以验证所述外部设备的身份,并根据所述第二身份验证信息得到第三密钥;
所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到第三加密信息;
所述第三加密信息用于生成会话密钥;
所述第一身份验证信息经由所述外部设备的第二通信模块提供至所述外部设备的第二安全模块,以使所述第二安全模块对所述第一身份验证信息进行解密以验证所述第一通信模块的身份;
所述外部设备的第二安全模块根据所述第一身份验证信息得到第二密钥;
所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的所述第二身份验证信息;
所述第三加密信息提供至所述第二安全模块;
所述第二安全模块生成第四验证信息,并根据所述第三加密信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥。
2.根据权利要求1所述的会话密钥生成装置,其特征在于,所述第一安全模块使用共享保护密钥加密所述会话密钥以得到加密存储会话密钥,并存储所述加密存储会话密钥。
3.一种会话密钥生成装置,其特征在于,包括:
第二通信模块,用于接收外部设备的第一通信模块提供的第一身份验证信息;
第二安全模块,与所述第二通信模块相连接以获取所述第一身份验证信息,并对所述第一身份验证信息进行解密以验证所述外部设备的身份;所述第二安全模块根据所述第一身份验证信息得到第二密钥,
其中,所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息;
所述第二安全模块接收所述外部设备提供的第三加密信息,并生成第四验证信息;
所述第二安全模块根据所述第三加密信息、所述第四验证信息和所述第二安全模块的身份信息得到会话密钥,
所述外部设备的第一安全模块生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的所述第一身份验证信息,并将所述第一身份验证信息提供至所述第一通信模块;
所述第二身份验证信息经由所述第一通信模块提供至所述第一安全模块;
所述第一安全模块根据所述第二身份验证信息以验证所述第二通信模块的身份,并根据所述第二身份验证信息得到第三密钥;
所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到所述第三加密信息。
4.根据权利要求3所述的会话密钥生成装置,其特征在于,所述第二安全模块使用共享保护密钥加密所述会话密钥以得到加密存储会话密钥,并存储所述加密存储会话密钥;
所述第二安全模块对所述第四验证信息和所述第二安全模块的身份信息进行加密以得到第四加密信息,并经由所述第二通信模块将所述第四加密信息发送至所述外部设备。
5.一种会话密钥生成装置,其特征在于,包括:
第一安全模块,用于生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;
第一通信模块,与所述第一安全模块相连接以接收所述第一身份验证信息;
第二通信模块,与所述第一通信模块相连接以获取所述第一身份验证信息;以及
第二安全模块,与所述第二通信模块相连接以获取所述第一身份验证信息,并对所述第一身份验证信息进行解密以验证所述第一通信模块的身份;所述第二安全模块根据所述第一身份验证信息得到第二密钥;所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息,
其中,所述第二安全模块将所述第二身份验证信息发送至所述第二通信模块,所述第二通信模块将所述第二身份验证信息发送至所述第一通信模块;
所述第一安全模块与所述第一通信模块相连接以接收所述第二身份验证信息,并对所述第二身份验证信息进行解密以验证所述第二通信模块的身份;
所述第一安全模块根据所述第二验证信息和所述第二密钥得到第三密钥;所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到第三加密信息;
所述第一安全模块将所述第三加密信息发送至所述第一通信模块;所述第一通信模块将所述第三加密信息发送至所述第二通信模块;所述第二通信模块将所述第三加密信息发送至所述第二安全模块;
所述第二安全模块对所述第三加密信息进行解密,得到所述第三验证信息和所述第一安全模块的身份信息;所述第二安全模块生成第四验证信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到会话密钥;
所述第二安全模块使用所述第三密钥对所述第四验证信息和所述第二安全模块的身份信息进行加密得到第四加密信息;
所述第二安全模块将所述第四加密信息发送至所述第二通信模块;所述第二通信模块将所述第四加密信息发送至所述第一通信模块;所述第一通信模块将所述第四加密信息发送至所述第一安全模块;
所述第一安全模块对所述第四加密信息解密以得到所述第四验证信息和所述第二安全模块的身份信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥。
6.根据权利要求5所述的会话密钥生成装置,其特征在于,所述第一通信模块生成第一通信公钥和第一通信私钥,并将所述第一通信公钥发送至所述第一安全模块;
所述第一安全模块使用所述第一通信公钥对所述会话密钥进行加密,得到第一加密会话密钥;
所述第一通信模块与所述第一安全模块相连接以接收所述第一加密会话密钥,并对所述第一加密会话密钥进行解密以得到所述会话密钥;
所述第二通信模块生成第二通信公钥和第二通信私钥,并将所述第二通信公钥发送至所述第二安全模块;
所述第二安全模块使用所述第二通信公钥对所述会话密钥进行加密,得到第二加密会话密钥;
所述第二通信模块与所述第二安全模块相连接以接收所述第二加密会话密钥,并对所述第二加密会话密钥进行解密以得到所述会话密钥;
所述第一通信模块和所述第二通信模块使用所述会话密钥进行加密通信。
7.一种会话密钥生成方法,其特征在于,包括:
生成第一验证信息;
使用第一密钥加密所述第一验证信息以得到加密第一验证信息;
使用传输密钥加密所述加密第一验证信息,得到用于身份认证的第一身份验证信息;
向会话对象发送所述第一身份验证信息,并接收所述会话对象反馈的第二身份验证信息;
根据所述第二身份验证信息验证所述会话对象的身份,并根据所述第二身份验证信息得到第三密钥;
生成第三验证信息,并使用所述第三密钥对所述第三验证信息进行加密以得到第三加密信息;所述第三加密信息用于生成会话密钥,
其中,所述会话对象根据所述第一身份验证信息验证身份,并根据所述第一身份验证信息得到第二密钥,并生成第二验证信息;
所述会话对象使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,并使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息;
所述会话对象接收所述第三加密信息,并生成第四验证信息,并根据所述第三加密信息、所述第四验证信息得到所述会话密钥。
8.根据权利要求7所述的会话密钥生成方法,其特征在于,所述会话密钥生成方法还包括:
对所述会话密钥进行加密以得到加密存储会话密钥,并存储所述加密存储会话密钥。
9.一种会话密钥生成方法,其特征在于,包括:
接收会话对象提供的第一身份验证信息;
根据所述第一身份验证信息验证所述会话对象的身份,并根据所述第一身份验证信息得到第二密钥;
生成第二验证信息;
使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,并使用传输密钥加密所述加密第二验证信息,得到用于身份认证的第二身份验证信息;
接收所述会话对象提供的第三加密信息;
生成第四验证信息;
根据所述第三加密信息、所述第四验证信息、所述第二身份验证信息得到会话密钥,
其中,所述会话对象生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,并使用传输密钥加密所述加密第一验证信息,得到用于身份认证的所述第一身份验证信息;
所述会话对象接收所述第二身份验证信息,根据所述第二身份验证信息验证身份,并根据所述第二身份验证信息得到第三密钥;
所述会话对象生成第三验证信息,并使用所述第三密钥对所述第三验证信息进行加密以得到第三加密信息。
10.根据权利要求9所述的会话密钥生成方法,其特征在于,所述会话密钥生成方法还包括:
对所述会话密钥进行加密以得到加密存储会话密钥,并存储所述加密存储会话密钥;
对所述第四验证信息进行加密以得到第四加密信息,并将所述第四加密信息发送给所述会话对象。
11.一种会话密钥生成方法,其特征在于,包括:
第一通信模块向第二通信模块发送第一身份验证信息;
所述第二通信模块接收并解密所述第一身份验证信息以验证所述第一通信模块的身份信息;
所述第二通信模块根据所述第一身份验证信息生成第二身份验证信息,并向所述第一通信模块发送所述第二身份验证信息,
其中,所述第一身份验证信息和所述第二身份验证信息用于生成会话密钥;
所述会话密钥生成方法还包括:
第一安全模块生成第一验证信息,并使用第一密钥加密所述第一验证信息以得到加密第一验证信息,以及使用传输密钥加密所述加密第一验证信息,得到用于身份认证的所述第一身份验证信息;
所述第一通信模块接收所述第一安全模块发送的所述第一身份验证信息;
在所述第一通信模块向第二通信模块发送第一身份验证信息后,第二安全模块通过所述第二通信模块获取所述第一身份验证信息;
所述第二安全模块对所述第一身份验证信息进行解密以验证所述第一通信模块的身份;所述第二安全模块根据所述第一身份验证信息得到第二密钥;所述第二安全模块生成第二验证信息,并使用所述第二密钥加密所述第二验证信息以得到加密第二验证信息,以及使用所述传输密钥加密所述加密第二验证信息,得到用于身份认证的所述第二身份验证信息;
所述第二安全模块将所述第二身份验证信息发送至所述第二通信模块,所述第二通信模块将所述第二身份验证信息发送至所述第一通信模块;
所述第一安全模块通过所述第一通信模块获取所述第二身份验证信息,并对所述第二身份验证信息进行解密以验证所述第二通信模块的身份;
所述第一安全模块根据所述第二验证信息和所述第二密钥得到第三密钥;所述第一安全模块生成第三验证信息,并使用所述第三密钥对所述第三验证信息和所述第一安全模块的身份信息进行加密以得到第三加密信息;
所述第一安全模块将所述第三加密信息发送至所述第一通信模块;所述第一通信模块将所述第三加密信息发送至所述第二通信模块;所述第二通信模块将所述第三加密信息发送至所述第二安全模块;
所述第二安全模块对所述第三加密信息进行解密,得到所述第三验证信息和所述第一安全模块的身份信息;所述第二安全模块生成第四验证信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥;
所述第二安全模块使用所述第三密钥对所述第四验证信息和所述第二安全模块的身份信息进行加密得到第四加密信息;
所述第二安全模块将所述第四加密信息发送至所述第二通信模块;所述第二通信模块将所述第四加密信息发送至所述第一通信模块;所述第一通信模块将所述第四加密信息发送至所述第一安全模块;
所述第一安全模块对所述第四加密信息解密以得到所述第四验证信息和所述第二安全模块的身份信息,并根据所述第三验证信息、所述第一安全模块的身份信息、所述第四验证信息和所述第二安全模块的身份信息得到所述会话密钥。
12.根据权利要求11所述的密钥生成方法,其特征在于,所述会话密钥生成方法还包括:
所述第一通信模块生成第一通信公钥和第一通信私钥,并将所述第一通信公钥发送至所述第一安全模块;
所述第一安全模块使用所述第一通信公钥对所述会话密钥进行加密,得到第一加密会话密钥;
所述第一通信模块通过所述第一安全模块接收所述第一加密会话密钥,并对所述第一加密会话密钥进行解密以得到所述会话密钥;
所述第二通信模块生成第二通信公钥和第二通信私钥,并将所述第二通信公钥发送至所述第二安全模块;
所述第二安全模块使用所述第二通信公钥对所述会话密钥进行加密,得到第二加密会话密钥;
所述第二通信模块通过所述第二安全模块获取所述第二加密会话密钥,并对所述第二加密会话密钥进行解密以得到所述会话密钥;
所述第一通信模块和所述第二通信模块使用所述会话密钥进行加密通信。
13.根据权利要求12所述的会话密钥生成方法,其特征在于,所述第一验证信息包括第一随机数;
所述第一密钥包括认证根密钥,所述认证根密钥分别存储在所述第一安全模块和所述第二安全模块中;
所述传输密钥分别存储在所述第一安全模块和所述第二安全模块中,所述传输密钥加密所述第一随机数和所述加密第一验证信息,得到所述第一身份验证信息;
所述第二安全模块对所述第一身份验证信息进行解密,得到所述第一随机数和所述加密第一验证信息,再将所述加密第一验证信息解密得到第一解密随机数;比对所述第一随机数和所述第一解密随机数,若二者相同,则认证成功;若二者不同,则认证失败;
根据SM3、所述第一随机数和所述认证根密钥得到所述第二密钥;
所述第二验证信息包括第二随机数,所述传输密钥加密所述第二随机数和所述加密第二验证信息,得到所述第二身份验证信息;
所述第一安全模块对所述第二身份验证信息进行解密,得到所述第二随机数和所述加密第二验证信息,再将所述加密第二验证信息解密得到第二解密随机数;比对所述第二随机数和所述第二解密随机数,若二者相同,则认证成功;若二者不同,则认证失败;
根据SM3、所述第二随机数和所述第二密钥得到所述第三密钥;
所述第三验证信息包括第三随机数,所述第三密钥加密所述第三随机数和所述第一安全模块的身份信息以得到所述第三加密信息;
所述第四验证信息包括第四随机数;
所述第一安全模块和所述第二安全模块中分别存储有共享保护密钥,所述第一安全模块和所述第二安全模块分别使用所述共享保护密钥加密所述会话密钥以得到加密存储会话密钥,并存储所述加密存储会话密钥;
所述第一安全模块中存储有所述第一通信公钥;所述第二安全模块中存储有所述第二通信私钥。
14.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求7至8中任一项所述的会话密钥生成方法,或者实现如权利要求9至10中任一项所述的会话密钥生成方法,或者实现如权利要求11至13中任一项所述的会话密钥生成方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求7至8中任一项所述的会话密钥生成方法,或者实现如权利要求9至10中任一项所述的会话密钥生成方法,或者实现如权利要求11至13中任一项所述的会话密钥生成方法。
CN202210096057.0A 2022-01-26 2022-01-26 会话密钥生成装置及方法 Active CN114499848B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210096057.0A CN114499848B (zh) 2022-01-26 2022-01-26 会话密钥生成装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210096057.0A CN114499848B (zh) 2022-01-26 2022-01-26 会话密钥生成装置及方法

Publications (2)

Publication Number Publication Date
CN114499848A CN114499848A (zh) 2022-05-13
CN114499848B true CN114499848B (zh) 2023-05-30

Family

ID=81475763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210096057.0A Active CN114499848B (zh) 2022-01-26 2022-01-26 会话密钥生成装置及方法

Country Status (1)

Country Link
CN (1) CN114499848B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106130716A (zh) * 2015-05-06 2016-11-16 三星Sds株式会社 基于认证信息的密钥交换系统及方法
CN106411528A (zh) * 2016-10-17 2017-02-15 重庆邮电大学 一种基于隐式证书的轻量级认证密钥协商方法
CN109462476A (zh) * 2018-11-23 2019-03-12 成都卫士通信息产业股份有限公司 密钥协商方法、装置、终端及计算机可读存储介质
CN110677418A (zh) * 2019-09-29 2020-01-10 四川虹微技术有限公司 可信声纹认证方法、装置、电子设备及存储介质
CN111447187A (zh) * 2020-03-19 2020-07-24 重庆邮电大学 一种异构物联网的跨域认证方法
CN111835752A (zh) * 2020-07-09 2020-10-27 国网山西省电力公司信息通信分公司 基于设备身份标识的轻量级认证方法及网关
CN113904805A (zh) * 2021-09-06 2022-01-07 河南信大网御科技有限公司 基于认证卸载的拟态通信方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7360075B2 (en) * 2001-02-12 2008-04-15 Aventail Corporation, A Wholly Owned Subsidiary Of Sonicwall, Inc. Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols
EP2981021B1 (en) * 2013-03-29 2020-04-29 Sony Corporation Integrated circuit, communication method, computer program, and communication device
EP2992696B1 (en) * 2013-04-29 2018-10-03 Hughes Network Systems, LLC Data encryption protocols for mobile satellite communications

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106130716A (zh) * 2015-05-06 2016-11-16 三星Sds株式会社 基于认证信息的密钥交换系统及方法
CN106411528A (zh) * 2016-10-17 2017-02-15 重庆邮电大学 一种基于隐式证书的轻量级认证密钥协商方法
CN109462476A (zh) * 2018-11-23 2019-03-12 成都卫士通信息产业股份有限公司 密钥协商方法、装置、终端及计算机可读存储介质
CN110677418A (zh) * 2019-09-29 2020-01-10 四川虹微技术有限公司 可信声纹认证方法、装置、电子设备及存储介质
CN111447187A (zh) * 2020-03-19 2020-07-24 重庆邮电大学 一种异构物联网的跨域认证方法
CN111835752A (zh) * 2020-07-09 2020-10-27 国网山西省电力公司信息通信分公司 基于设备身份标识的轻量级认证方法及网关
CN113904805A (zh) * 2021-09-06 2022-01-07 河南信大网御科技有限公司 基于认证卸载的拟态通信方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Mengbo Hou."An Enhanced Two-Party Key Agreement Protocol in the Key Escrow Mode".《2009 International Conference on Multimedia Information Networking and Security》.2009,全文. *
无线传感器网络可认证密钥协商协议;彭志娟;徐慧;严燕;;南通大学学报(自然科学版)(第03期);全文 *

Also Published As

Publication number Publication date
CN114499848A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
CN105684344B (zh) 一种密钥配置方法和装置
CN101640590B (zh) 一种获取标识密码算法私钥的方法和密码中心
CN107425971B (zh) 无证书的数据加/解密方法和装置、终端
CN109818747B (zh) 数字签名方法及装置
EP3001599B1 (en) Method and system for backing up private key of electronic signature token
CN110087240B (zh) 基于wpa2-psk模式的无线网络安全数据传输方法及系统
WO2018127118A1 (zh) 一种身份认证方法及装置
CN101600204A (zh) 一种文件传输方法及系统
WO2014032493A1 (zh) 一种卡片安全通讯的方法
CN113347143A (zh) 一种身份验证方法、装置、设备及存储介质
WO2022135391A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
CN114499848B (zh) 会话密钥生成装置及方法
CN116760530A (zh) 一种电力物联终端轻量级认证密钥协商方法
CN112398655A (zh) 一种文件传输方法、服务器及计算机存储介质
CN112019351B (zh) 基于SDKey的移动终端信息交互方法
CN115314284A (zh) 一种基于可信执行环境的公钥认证可搜索加密方法及系统
CN107733929A (zh) 认证方法和认证系统
WO2016112860A1 (zh) 无线设备的通讯方法、无线设备和服务器
CN114696999A (zh) 一种身份鉴别方法和装置
WO2022135385A1 (zh) 一种身份鉴别方法和装置
RU2807058C1 (ru) Способ и аппарат для аутентификации идентификационной информации, устройство, микросхема, носитель для хранения информации и программа
WO2022135418A1 (zh) 一种身份鉴别方法和装置
WO2022135377A1 (zh) 身份鉴别方法、装置、设备、芯片、存储介质及程序
WO2022135398A1 (zh) 身份鉴别方法、装置、设备、芯片、存储介质及程序
WO2022135384A1 (zh) 一种身份鉴别方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant