CN112054906A - 一种密钥协商方法及系统 - Google Patents
一种密钥协商方法及系统 Download PDFInfo
- Publication number
- CN112054906A CN112054906A CN202010851143.9A CN202010851143A CN112054906A CN 112054906 A CN112054906 A CN 112054906A CN 202010851143 A CN202010851143 A CN 202010851143A CN 112054906 A CN112054906 A CN 112054906A
- Authority
- CN
- China
- Prior art keywords
- key
- service platform
- security module
- key negotiation
- digital certificate
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提出一种密钥协商方法,终端设备获取第一密钥协商参数,并构造密钥协商请求信息发送至服务平台;服务平台将第一密钥协商参数和获取的第二密钥协商参数构造成数据aData后,并对其进行摘要计算获得会话密钥sKey,再对摘要值aHash进行签名和加密后生成加密数据encData,并与第二密钥协商参数中的信息构造成密钥协商回复信息返回至终端设备;终端设备对加密数据encData解密后获得包括签名值signMsg的参数信息后,将第一密钥协商参数和第二密钥协商参数构造成数据bData,并进行摘要计算生成摘要值bHash后,再对签名值signMsg进行验签,最终通过摘要值bHash获得会话密钥uKey。
Description
技术领域
本发明涉及信息安全技术领域,具体涉及一种密钥协商方法及系统。
背景技术
密钥协商是一种密钥建立技术,系统中的两个或者多个参与方共同提供信息,各自推导出一个任何一方不能预先确定结果的共享密钥,特别是随着通信环境的日益复杂、信息技术的不断发展和计算能力的不断提高,通信环境中的攻击手段也不断发展,使得很多密钥协商方法都存在不同程度的安全隐患;现有的终端设备与服务平台一般通过固定的密钥进行通信或者采用简单的加密方式进行会话密钥的生成、传输,安全性较低,一旦会话密钥泄露,整个安全体系将面临重大的安全隐患。
因此如何使设计一种密钥协商方法,使得双方能够安全高效地获得通信的会话密钥,建立双方通信的安全通道是目前急需解决的问题。
发明内容
本发明针对上述问题,有必要提供一种密钥协商方法及系统,使得双方能够安全高效地获得通信的会话密钥,建立双方通信的安全通道。
本发明第一方面提出一种密钥协商方法,包括:
终端设备通过第一安全模块获取第一密钥协商参数,并将所述第一密钥协商参数构造成密钥协商请求信息reqMsg发送至服务平台;
所述服务平台通过第二安全模块获取第二密钥协商参数,并将所述第二密钥协商参数和第一密钥协商参数构造成数据aData,其中,所述第一密钥协商参数为所述服务平台对所述密钥协商请求信息reqMsg进行解析后获得;
所述服务平台通过所述第二安全模块对所述数据aData进行摘要计算生成摘要值aHash,并根据所述摘要值aHash获得会话密钥sKey后,对所述摘要值aHash进行签名获得签名值signMsg;
所述服务平台通过所述第二安全模块对包括所述签名值signMsg的参数信息进行加密生成加密数据encData,将所述加密数据encData与所述第二密钥协商参数中的信息构造成密钥协商回复信息ackMsg返回至所述终端设备;
所述终端设备对所述密钥协商回复信息ackMsg进行解析获得所述加密数据encData和所述第二密钥协商参数中的信息,再通过所述第一安全模块对所述加密数据encData进行解密获得包括所述签名值signMsg的参数信息;
所述终端设备将所述第一密钥协商参数和所述第二密钥协商参数构造成数据bData后,通过所述第一安全模块对所述数据bData进行摘要计算生成摘要值bHash,再对所述签名值signMsg进行验签,最终通过所述摘要值bHash获得会话密钥uKey。
基于上述,所述第一密钥协商参数包括用户数字证书uCert、随机数rA和第一安全模块硬件号ID;
所述终端设备构造密钥协商请求信息reqMsg时,执行:将所述用户数字证书uCert、随机数rA、第一安全模块硬件号ID顺次拼接构造生成密钥协商请求信息reqMsg;所述密钥协商请求信息reqMsg=uCert||rA ||ID。
基于上述,所述服务平台对接收的所述密钥协商请求信息reqMsg进行解析获得所述第一密钥协商参数后,还包括:对其中的所述用户数字证书uCert进行验证;
所述第二密钥协商参数包括服务平台数字证书sCert和随机数rB;
所述服务平台构造数据aData时,执行:将所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB顺次拼接构造生成数据aData;所述数据aData=reqMsg||sCert||rB 。
基于上述,根据所述摘要值aHash获得会话密钥sKey的方法为:
所述服务平台通过所述第二安全模块对数据aData使用摘要算法进行摘要计算生成摘要值aHash后,取所述摘要值aHash的部分字节作为会话密钥sKey;
所述获得所述签名值signMsg的方法为:
所述服务平台通过所述第二安全模块使用其私钥对所述摘要值aHash进行签名获得签名值signMsg。
基于上述,所述构造成密钥协商回复信息ackMsg的方法具体包括:
所述服务平台通过所述第二安全模块使用用户数字证书uCert中的用户公钥PA 对所述签名值signMsg和随机数rB 进行加密后生成加密数据encData,所述加密数据encData=PA (signMsg||rB);
所述服务平台将所述加密数据encData与所述第二密钥协商参数中的服务平台数字证书sCert拼接构造生成密钥协商回复信息ackMsg,并返回至所述终端设备,密钥协商回复信息ackMsg=(encData||sCert)。
基于上述,获得包括所述签名值signMsg的参数信息的方法为:
所述终端设备对接收的所述密钥协商回复信息ackMsg进行解析后获得所述加密数据encData和服务平台数字证书sCert,对所述服务平台数字证书sCert进行验证,并从所述服务平台数字证书sCert取出平台公钥PB;
所述终端设备通过所述第一安全模块使用用户私钥对所述加密数据encData进行解密后获得所述签名值signMsg和随机数rB。
基于上述,获得会话密钥uKey的方法为:
所述终端设备将所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB拼接构造生成数据bData;所述数据bData=reqMsg||sCert||rB;
所述终端设备通过所述第一安全模块对数据bData使用摘要算法进行摘要计算后生成摘要值bHash;
所述终端设备通过所述第一安全模块使用所述平台公钥PB对所述签名值signMsg进行验签,若验签通过,则表示密钥协商数据完整,否则断开连接协商过程中止;
所述终端设备通过所述第一安全模块取所述摘要值bHash的部分字节作为会话密钥uKey。
基于上述,获得会话密钥uKey后,所述终端设备通过所述第一安全模块使用所述会话密钥uKey对所述第一安全模块硬件号ID加密生成密钥验证标识eTag,并发送至所述服务平台进行确认;
所述服务平台通过所述第二安全模块使用所述会话密钥sKey对所述密钥验证标识eTag进行解密后获得第一安全模块硬件号ID,并与之前获得的第一安全模块硬件号ID进行比较,若比较成功,则协商的会话密钥可用;否则,断开连接协商过程中止。
基于上述,所述密钥协商请求信息reqMsg还可以通过所述用户数字证书uCert、随机数rA 、第一安全模块硬件号ID和获取的终端时间戳uTime拼接构造生成;
所述密钥协商回复信息ackMsg还可以通过所述加密数据encData与服务平台数字证书sCert、获取的服务端平台时间戳sTime拼接构造生成;
所述数据aData还可以通过所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB 和获取的服务端平台时间戳sTime拼接构造生成;
所述数据bData还可以通过所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB 和获取的服务端平台时间戳sTime拼接构造生成。
本发明第二方面提供一种密钥协商系统,包括用于进行密钥协商的终端设备和服务平台,所述终端设备包括第一安全模块,所述服务平台包括第二安全模块,进行密钥协商时,所述终端设备和所述服务平台执行所述的密钥协商方法。
本发明具有突出的实质性特点和显著的进步,具体的说:
(1)服务平台在接收到终端设备发送的密钥协商请求信息后,先对用户数字证书进行验证;以及终端设备在接收到服务平台发送的密钥协商回复信息后,先对服务平台数字证书进行验证;只有在对对方身份验证通过后才能继续进行密钥协商的过程,提高了终端设备和服务平台的身份验证及密钥协商过程的安全性;
(2)服务平台通过第一密钥协商参数和第二密钥协商参数构造生成数据aData,并进行摘要计算后生成摘要值aHash后,再对摘要值aHash进行签名获得签名值signMsg,最后再对签名值signMsg和随机数rB 进行加密后生成加密数据encData,将加密数据encData与服务平台数字证书sCert拼接构造生成密钥协商回复信息ackMsg;终端设备对密钥协商回复信息ackMsg进行解析后获得加密数据encData与服务平台数字证书sCert,先对加密数据encData进行解密后获得所述签名值signMsg和随机数rB,再通过第一密钥协商参数和第二密钥协商参数构造生成数据bData,进行摘要计算后生成摘要值bHash,最后再对签名值signMsg进行验签,只有验签通过,才表明密钥协商数据完整,提高了密钥协商过程的安全性;
(3)终端设备取摘要值bHash的部分字节作为会话密钥uKey,服务平台取摘要值aHash的同样部分字节作为会话密钥sKey,且摘要值bHash与摘要值aHash一致,保证了会话密钥的一致性和安全性;
(4)终端设备通过使用会话密钥uKey对终端设备的第一安全模块硬件号ID加密后生成密钥验证标识eTag发送至服务平台,服务平台使用会话密钥sKey对密钥验证标识eTag进行解密后获得第一安全模块硬件号ID,并与之前获得的第一安全模块硬件号ID进行比较,一致则表明协商的会话密钥为可用,同样提高了会话密钥协商的安全性;
(5)终端设备构造的密钥协商请求信息reqMsg和数据bData、以及在服务平台构造的密钥协商回复信息ackMsg和数据aData中还可包括有时间戳信息,能够防止抗重放攻击,提高密钥协商的安全性。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出本发明一种密钥协商方法流程图;
图2示出本发明一种密钥协商方法的实施例流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,当一个组件被认为是“连接”另一个组件,它可以是直接连接到另一个组件或者可能同时存在居中组件。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
实施例1
如图1所示,本实施例提出一种密钥协商方法,包括:
S1、终端设备获取第一密钥协商参数,并将所述第一密钥协商参数构造成密钥协商请求信息reqMsg发送至服务平台;
S2、服务平台获取第二密钥协商参数,并将所述第二密钥协商参数和第一密钥协商参数构造成数据aData,其中,所述第一密钥协商参数为所述服务平台对所述密钥协商请求信息reqMsg进行解析后获得;
S3、所述服务平台对所述数据aData进行摘要计算生成摘要值aHash,并根据所述摘要值aHash获得会话密钥sKey后,对所述摘要值aHash进行签名获得签名值signMsg;
S4、所述服务平台对包括所述签名值signMsg的参数信息进行加密生成加密数据encData,将所述加密数据encData与所述第二密钥协商参数构造成密钥协商回复信息ackMsg返回至所述终端设备;
S5、所述终端设备对所述密钥协商回复信息ackMsg进行解析获得所述加密数据encData和所述第二密钥协商参数,再对所述加密数据encData进行解密获得包括所述签名值signMsg的参数信息;
S6、所述终端设备将所述第一密钥协商参数和所述第二密钥协商参数构造成数据bData后,对所述数据bData进行摘要计算生成摘要值bHash,再对所述签名值signMsg进行验签,最终通过所述摘要值bHash获得会话密钥uKey。
具体的,所述第一密钥协商参数包括用户数字证书uCert、随机数rA和第一安全模块硬件号ID;所述终端设备构造密钥协商请求信息reqMsg时,执行:将所述用户数字证书uCert、随机数rA、第一安全模块硬件号ID顺次拼接构造生成密钥协商请求信息reqMsg。
所述第二密钥协商参数包括服务平台数字证书sCert和随机数rB;所述服务平台构造数据aData时,执行:将所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB顺次拼接构造生成数据aData。
根据所述摘要值aHash获得会话密钥sKey的方法为:
所述服务平台对数据aData使用摘要算法进行摘要计算生成摘要值aHash后,取所述摘要值aHash的部分字节作为会话密钥sKey。
所述构造成密钥协商回复信息ackMsg的方法具体包括:
所述服务平台使用用户数字证书uCert中的用户公钥PA 对所述签名值signMsg和随机数rB 进行加密后生成加密数据encData,所述加密数据encData= PA (signMsg||rB);
所述服务平台将所述加密数据encData与所述第二密钥协商参数中的服务平台数字证书sCert拼接构造生成密钥协商回复信息ackMsg,并返回至所述终端设备,密钥协商回复信息ackMsg=(encData||sCert)。
获得包括所述签名值signMsg的参数信息的方法为:
所述终端设备对接收的所述密钥协商回复信息ackMsg进行解析后获得所述加密数据encData和服务平台数字证书sCert,对所述服务平台数字证书sCert进行验证,并从所述服务平台数字证书sCert取出平台公钥PB;
所述终端设备使用用户数字证书uCert中的用户私钥对所述加密数据encData进行解密后获得所述签名值signMsg和随机数rB。
获得会话密钥uKey的方法为:
所述终端设备将所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB拼接构造生成数据bData;所述数据bData=reqMsg||sCert||rB;
所述终端设备对数据bData使用摘要算法进行摘要计算后生成摘要值bHash;
所述终端设备使用所述平台公钥PB对所述签名值signMsg进行验签,若验签通过,则表示密钥协商数据完整,否则断开连接协商过程中止;
所述终端设备取所述摘要值bHash的部分字节作为会话密钥uKey。
需要说明的是,终端设备取摘要值bHash的部分字节作为会话密钥uKey,服务平台取摘要值aHash的部分字节作为会话密钥sKey,必须保证终端设备和服务平台取摘要值的部分字节为同样的字节。
在其它实施例中,获得会话密钥uKey后,所述终端设备使用所述会话密钥uKey对所述第一安全模块硬件号ID加密生成密钥验证标识eTag,并发送至所述服务平台进行确认;
所述服务平台使用所述会话密钥sKey对所述密钥验证标识eTag进行解密后获得第一安全模块硬件号ID,并与之前获得的第一安全模块硬件号ID进行比较,若比较成功,则协商的会话密钥可用;否则,断开连接协商过程中止。
在其它实施例中,所述密钥协商请求信息reqMsg还可以通过所述用户数字证书uCert、随机数rA 、第一安全模块硬件号ID和获取的终端时间戳uTime拼接构造生成;
所述密钥协商回复信息ackMsg还可以通过所述加密数据encData与服务平台数字证书sCert、获取的服务端平台时间戳sTime拼接构造生成;
所述数据aData还可以通过所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB 和获取的服务端平台时间戳sTime拼接构造生成;
所述数据bData还可以通过所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB 和获取的服务端平台时间戳sTime拼接构造生成。
实施例2
如图2所示,本实施例提供一种密钥协商系统,包括用于进行密钥协商的终端设备和服务平台,在具体实现密钥协商时,终端设备中设置的第一安全模块为TF密码卡、服务平台中设置的第二安全模块为PCI密码卡;终端设备与服务平台之间进行密钥协商的完整过程具体为:
生成密钥协商请求信息reqMsg时,终端设备具体工作为:
A1:调用TF密码卡接口,读取终端用户数字证书uCert;
A2:调用TF密码卡内随机数发生器产生随机数rA ∈ [1, n-1];
A3:调用TF密码卡读取安全芯片硬件ID;
A4:拼接uCert||rA ||ID||uTime(终端时间戳),记为密钥协商请求信息reqMsg发送给服务平台。
生成会话密钥sKey和密钥协商回复信息ackMsg时,服务平台具体工作为:
B1:解析reqMsg,取出终端用户数字证书,验证证书有效期、颁发者信息,加载CA根证书,通过证书链验证过程验证证书有效性和完整性。如果验证失败,回复认证失败消息,认证过程结束,断开与终端设备连接;
B2:从终端用户数字证书中取出用户公钥PA;
B3:调用PCI密码卡内随机数发生器产生随机数rB ∈ [1, n-1];
B4:从PCI密码卡中读取服务平台数字证书,记为sCert,同时取服务平台时间戳sTime;
B5:拼接reqMsg||sCert||rB||sTime为aData,并使用SM3算法计算摘要,aHash=SM3(aData);
B6:取aHash前16字节做为会话密钥,记为sKey;
B7:使用服务平台数字证书对应的私钥对aHash进行签名,得到signMsg;
B8:拼接signMsg||rB,使用终端用户数字证书中的公钥PA进行加密,记为encData。encData=PubKey(signMsg||rB);
B9:拼接encData||sCert||sTime做为密钥协商回复信息,记为ackMsg;
B10:将ackMsg发送给终端设备。
生成会话密钥uKey时,终端设备具体工作为:
A5:收到ackMsg,解析数据包,得到服务平台数字证书,验证证书有效期,从TF密码卡加载CA根证书,通过证书链验证过程验证平台证书有效性和完整性;验证失败,回复认证失败消息,认证过程结束,断开与服务平台连接。
A6:从服务平台数字证书中取平台公钥Pb;
A7:从ackMsg中取加密数据encDataB ,并使用TF密码卡内用户私钥解密encData 得到signMsg和rB ;
A8:拼接uCert||rA ||ID||utime||sCert||rB||sTime为bData,使用SM3算法计算bData摘要,记为bHash。bHash=SM3(bData);
A9:使用服务平台证书公钥验签signMsg,如果验签不通过,表示密钥协商数据不完整,断开连接协商过程中止;
A10:取bHash前16字节做为会话密钥,记为uKey;
A11:TF密码卡将会话密钥uKey存入到指定的密钥文件内。TF密码卡内密钥文件属性都为更新和使用,拒绝读取,防止密钥被非法读取或拷贝。
当需要验证会话密钥的可用性时,终端设备和服务平台的具体工作为:
终端设备使用uKey加密芯片硬件ID做为密钥正确性验证标识,记为eTag,eTag=Enc(cardID),将eTag发送给服务平台做密钥协商回复确认;
服务平台收到终端设备回复的协商结果,使用之前计算的会话密钥sKey解密eTag,将得到的结果与第一步收到的用户硬件ID做比较;
如果比较成功,密钥协商过程完成,标记会话密钥可用;
比较失败,关闭与客户端的连接,密钥协商过程中止。
需要说明的是,本实施例中的第一安全模块和第二安全模块可以为内置在终端设备和服务平台上的安全芯片,也可以为其他包括有安全芯片的硬件密码设备。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种密钥协商方法,其特征在于,包括:
终端设备通过第一安全模块获取第一密钥协商参数,并将所述第一密钥协商参数构造成密钥协商请求信息reqMsg发送至服务平台;
所述服务平台通过第二安全模块获取第二密钥协商参数,并将所述第二密钥协商参数和第一密钥协商参数构造成数据aData,其中,所述第一密钥协商参数为所述服务平台对所述密钥协商请求信息reqMsg进行解析后获得;
所述服务平台通过所述第二安全模块对所述数据aData进行摘要计算生成摘要值aHash,并根据所述摘要值aHash获得会话密钥sKey后,对所述摘要值aHash进行签名获得签名值signMsg;
所述服务平台通过所述第二安全模块对包括所述签名值signMsg的参数信息进行加密生成加密数据encData,将所述加密数据encData与所述第二密钥协商参数中的信息构造成密钥协商回复信息ackMsg返回至所述终端设备;
所述终端设备对所述密钥协商回复信息ackMsg进行解析获得所述加密数据encData和所述第二密钥协商参数中的信息,再通过所述第一安全模块对所述加密数据encData进行解密获得包括所述签名值signMsg的参数信息;
所述终端设备将所述第一密钥协商参数和所述第二密钥协商参数构造成数据bData后,通过所述第一安全模块对所述数据bData进行摘要计算生成摘要值bHash,再对所述签名值signMsg进行验签,最终通过所述摘要值bHash获得会话密钥uKey。
2.根据权利要求1所述的密钥协商方法,其特征在于:所述第一密钥协商参数包括用户数字证书uCert、随机数rA和第一安全模块硬件号ID;
所述终端设备构造密钥协商请求信息reqMsg时,执行:将所述用户数字证书uCert、随机数rA、第一安全模块硬件号ID顺次拼接构造生成密钥协商请求信息reqMsg;所述密钥协商请求信息reqMsg=uCert||rA ||ID。
3.根据权利要求2所述的密钥协商方法,其特征在于:
所述服务平台对接收的所述密钥协商请求信息reqMsg进行解析获得所述第一密钥协商参数后,还包括:对其中的所述用户数字证书uCert进行验证;
所述第二密钥协商参数包括服务平台数字证书sCert和随机数rB;
所述服务平台构造数据aData时,执行:将所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB顺次拼接构造生成数据aData;所述数据aData=reqMsg||sCert||rB。
4.根据权利要求3所述的密钥协商方法,其特征在于,根据所述摘要值aHash获得会话密钥sKey的方法为:
所述服务平台通过所述第二安全模块对数据aData使用摘要算法进行摘要计算生成摘要值aHash后,取所述摘要值aHash的部分字节作为会话密钥sKey;
所述获得所述签名值signMsg的方法为:
所述服务平台通过所述第二安全模块使用其私钥对所述摘要值aHash进行签名获得签名值signMsg。
5.根据权利要求4所述的密钥协商方法,其特征在于,所述构造成密钥协商回复信息ackMsg的方法具体包括:
所述服务平台通过所述第二安全模块使用用户数字证书uCert中的用户公钥PA 对所述签名值signMsg和随机数rB进行加密后生成加密数据encData,所述加密数据encData= PA (signMsg||rB);
所述服务平台将所述加密数据encData与所述第二密钥协商参数中的服务平台数字证书sCert拼接构造生成密钥协商回复信息ackMsg,并返回至所述终端设备,密钥协商回复信息ackMsg=(encData||sCert)。
6.根据权利要求5所述的密钥协商方法,其特征在于,获得包括所述签名值signMsg的参数信息的方法为:
所述终端设备对接收的所述密钥协商回复信息ackMsg进行解析后获得所述加密数据encData和服务平台数字证书sCert,对所述服务平台数字证书sCert进行验证,并从所述服务平台数字证书sCert取出平台公钥PB;
所述终端设备通过所述第一安全模块使用用户私钥对所述加密数据encData进行解密后获得所述签名值signMsg和随机数rB。
7.根据权利要求6所述的密钥协商方法,其特征在于,获得会话密钥uKey的方法为:
所述终端设备将所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB拼接构造生成数据bData;所述数据bData=reqMsg||sCert||rB;
所述终端设备通过所述第一安全模块对数据bData使用摘要算法进行摘要计算后生成摘要值bHash;
所述终端设备通过所述第一安全模块使用所述平台公钥PB对所述签名值signMsg进行验签,若验签通过,则表示密钥协商数据完整,否则断开连接协商过程中止;
所述终端设备通过所述第一安全模块取所述摘要值bHash的部分字节作为会话密钥uKey。
8.根据权利要求7所述的密钥协商方法,其特征在于:获得会话密钥uKey后,所述终端设备通过所述第一安全模块使用所述会话密钥uKey对所述第一安全模块硬件号ID加密生成密钥验证标识eTag,并发送至所述服务平台进行确认;
所述服务平台通过所述第二安全模块使用所述会话密钥sKey对所述密钥验证标识eTag进行解密后获得第一安全模块硬件号ID,并与之前获得的第一安全模块硬件号ID进行比较,若比较成功,则协商的会话密钥可用;否则,断开连接协商过程中止。
9.根据权利要求8所述的密钥协商方法,其特征在于,所述密钥协商请求信息reqMsg还可以通过所述用户数字证书uCert、随机数rA、第一安全模块硬件号ID和获取的终端时间戳uTime拼接构造生成;
所述密钥协商回复信息ackMsg还可以通过所述加密数据encData与服务平台数字证书sCert、获取的服务端平台时间戳sTime拼接构造生成;
所述数据aData还可以通过所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB和获取的服务端平台时间戳sTime拼接构造生成;
所述数据bData还可以通过所述密钥协商请求信息reqMsg、服务平台数字证书sCert、随机数rB和获取的服务端平台时间戳sTime拼接构造生成。
10.一种密钥协商系统,其特征在于,包括用于进行密钥协商的终端设备和服务平台,所述终端设备包括第一安全模块,所述服务平台包括第二安全模块,进行密钥协商时,所述终端设备和所述服务平台执行权利要求1-9任一项所述的密钥协商方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010851143.9A CN112054906B (zh) | 2020-08-21 | 2020-08-21 | 一种密钥协商方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010851143.9A CN112054906B (zh) | 2020-08-21 | 2020-08-21 | 一种密钥协商方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112054906A true CN112054906A (zh) | 2020-12-08 |
CN112054906B CN112054906B (zh) | 2022-02-11 |
Family
ID=73599827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010851143.9A Active CN112054906B (zh) | 2020-08-21 | 2020-08-21 | 一种密钥协商方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112054906B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822011A (zh) * | 2021-02-24 | 2021-05-18 | 南京航灵信息科技有限公司 | 一种基于芯片的特征及区块链的物联网认证方法 |
CN113242212A (zh) * | 2021-04-15 | 2021-08-10 | 杭州链城数字科技有限公司 | 网络节点双向通信认证方法及装置、电子设备、存储介质 |
CN113300842A (zh) * | 2021-05-26 | 2021-08-24 | 清创网御(北京)科技有限公司 | 一种提高对称加密算法安全性的方法 |
CN113796058A (zh) * | 2021-02-27 | 2021-12-14 | 华为技术有限公司 | 一种密钥的传输方法和装置 |
CN114554485A (zh) * | 2021-12-22 | 2022-05-27 | 卓望数码技术(深圳)有限公司 | 异步会话密钥协商和应用方法、系统、电子设备及介质 |
CN115242471A (zh) * | 2022-07-07 | 2022-10-25 | 成都卫士通信息产业股份有限公司 | 信息传输方法、装置、电子设备及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030044019A1 (en) * | 1995-04-21 | 2003-03-06 | Vanstone Scott A. | Key agreement and transport protocol |
US20060236106A1 (en) * | 2005-04-18 | 2006-10-19 | Sarvar Patel | Providing fresh session keys |
CN101582906A (zh) * | 2009-06-23 | 2009-11-18 | 中国人民解放军信息工程大学 | 密钥协商方法和装置 |
CN105634742A (zh) * | 2015-12-28 | 2016-06-01 | 飞天诚信科技股份有限公司 | 一种协商会话密钥的方法及智能密钥设备 |
CN109150526A (zh) * | 2018-11-02 | 2019-01-04 | 美的集团股份有限公司 | 密钥协商方法、设备、终端、存储介质以及系统 |
CN110048849A (zh) * | 2019-03-11 | 2019-07-23 | 广东安创信息科技开发有限公司 | 一种多层保护的会话密钥协商方法 |
WO2020094475A1 (en) * | 2018-11-05 | 2020-05-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Authentication and key agreement for a terminal device |
CN111211894A (zh) * | 2018-11-21 | 2020-05-29 | 顺丰科技有限公司 | 一种数据传输方法、装置及系统 |
CN111262811A (zh) * | 2018-11-30 | 2020-06-09 | 中移物联网有限公司 | 一种数据加密传输方法及装置、设备和存储介质 |
-
2020
- 2020-08-21 CN CN202010851143.9A patent/CN112054906B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030044019A1 (en) * | 1995-04-21 | 2003-03-06 | Vanstone Scott A. | Key agreement and transport protocol |
US20060236106A1 (en) * | 2005-04-18 | 2006-10-19 | Sarvar Patel | Providing fresh session keys |
CN101582906A (zh) * | 2009-06-23 | 2009-11-18 | 中国人民解放军信息工程大学 | 密钥协商方法和装置 |
CN105634742A (zh) * | 2015-12-28 | 2016-06-01 | 飞天诚信科技股份有限公司 | 一种协商会话密钥的方法及智能密钥设备 |
CN109150526A (zh) * | 2018-11-02 | 2019-01-04 | 美的集团股份有限公司 | 密钥协商方法、设备、终端、存储介质以及系统 |
WO2020094475A1 (en) * | 2018-11-05 | 2020-05-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Authentication and key agreement for a terminal device |
CN111211894A (zh) * | 2018-11-21 | 2020-05-29 | 顺丰科技有限公司 | 一种数据传输方法、装置及系统 |
CN111262811A (zh) * | 2018-11-30 | 2020-06-09 | 中移物联网有限公司 | 一种数据加密传输方法及装置、设备和存储介质 |
CN110048849A (zh) * | 2019-03-11 | 2019-07-23 | 广东安创信息科技开发有限公司 | 一种多层保护的会话密钥协商方法 |
Non-Patent Citations (2)
Title |
---|
SOUMYA BANERJEE,ET ALL: "Provably Secure and Lightweight Anonymous User Authenticated Session Key Exchange Scheme for Internet of Things Deployment", 《IEEE INTERNET OF THINGS JOURNAL (VOLUME:6,ISSUE:5,OCT.2019)》 * |
施荣华;翁丽萍;王国才: "基于单向哈希链的Ad Hoc网络密钥协商协议", 《湖南大学学报(自然科学版)》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822011A (zh) * | 2021-02-24 | 2021-05-18 | 南京航灵信息科技有限公司 | 一种基于芯片的特征及区块链的物联网认证方法 |
CN112822011B (zh) * | 2021-02-24 | 2022-08-05 | 南京航灵信息科技有限公司 | 一种基于芯片的特征及区块链的物联网认证方法 |
CN113796058A (zh) * | 2021-02-27 | 2021-12-14 | 华为技术有限公司 | 一种密钥的传输方法和装置 |
WO2022178890A1 (zh) * | 2021-02-27 | 2022-09-01 | 华为技术有限公司 | 一种密钥的传输方法和装置 |
CN113242212A (zh) * | 2021-04-15 | 2021-08-10 | 杭州链城数字科技有限公司 | 网络节点双向通信认证方法及装置、电子设备、存储介质 |
CN113300842A (zh) * | 2021-05-26 | 2021-08-24 | 清创网御(北京)科技有限公司 | 一种提高对称加密算法安全性的方法 |
CN114554485A (zh) * | 2021-12-22 | 2022-05-27 | 卓望数码技术(深圳)有限公司 | 异步会话密钥协商和应用方法、系统、电子设备及介质 |
CN114554485B (zh) * | 2021-12-22 | 2024-03-12 | 卓望数码技术(深圳)有限公司 | 异步会话密钥协商和应用方法、系统、电子设备及介质 |
CN115242471A (zh) * | 2022-07-07 | 2022-10-25 | 成都卫士通信息产业股份有限公司 | 信息传输方法、装置、电子设备及计算机可读存储介质 |
CN115242471B (zh) * | 2022-07-07 | 2024-01-09 | 成都卫士通信息产业股份有限公司 | 信息传输方法、装置、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112054906B (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112054906B (zh) | 一种密钥协商方法及系统 | |
CN109756485B (zh) | 电子合同签署方法、装置、计算机设备及存储介质 | |
CN109309565B (zh) | 一种安全认证的方法及装置 | |
CN110881048B (zh) | 基于身份认证的安全通讯方法及装置 | |
CN101350723B (zh) | 一种USB Key设备及其实现验证的方法 | |
CN113472793B (zh) | 一种基于硬件密码设备的个人数据保护系统 | |
CN111884811B (zh) | 一种基于区块链的数据存证方法和数据存证平台 | |
CN112055019B (zh) | 一种建立通信信道的方法及用户终端 | |
CN104660412A (zh) | 一种移动设备无密码安全认证方法及系统 | |
CN112733129B (zh) | 一种服务器带外管理的可信接入方法 | |
CN112437068B (zh) | 认证及密钥协商方法、装置和系统 | |
CN110380859B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统 | |
CN111224784B (zh) | 一种基于硬件可信根的角色分离的分布式认证授权方法 | |
CN114520976A (zh) | 用户身份识别卡的认证方法及装置、非易失性存储介质 | |
CN108632042A (zh) | 一种基于对称密钥池的类aka身份认证系统和方法 | |
CN108599926A (zh) | 一种基于对称密钥池的HTTP-Digest改进型AKA身份认证系统和方法 | |
CN115473655B (zh) | 接入网络的终端认证方法、装置及存储介质 | |
CN111641651B (zh) | 一种基于哈希链的访问验证方法及装置 | |
US20120284787A1 (en) | Personal Secured Access Devices | |
US20060053288A1 (en) | Interface method and device for the on-line exchange of content data in a secure manner | |
CN110493177A (zh) | 基于非对称密钥池对和序列号的量子通信服务站aka密钥协商方法和系统 | |
Miculan et al. | Automated Symbolic Verification of Telegram's MTProto 2.0 | |
CN115694833A (zh) | 一种协同签名方法 | |
CN116015647A (zh) | 敏感信息安全获取方法、系统、装置及电子设备 | |
CN116132986A (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 | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A Key Negotiation Method and System Effective date of registration: 20230412 Granted publication date: 20220211 Pledgee: China Construction Bank Corporation Zhengzhou Jinshui sub branch Pledgor: ZHENGZHOU XINDA JIEAN INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2023980037751 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |