CN109150526A - 密钥协商方法、设备、终端、存储介质以及系统 - Google Patents

密钥协商方法、设备、终端、存储介质以及系统 Download PDF

Info

Publication number
CN109150526A
CN109150526A CN201811302463.8A CN201811302463A CN109150526A CN 109150526 A CN109150526 A CN 109150526A CN 201811302463 A CN201811302463 A CN 201811302463A CN 109150526 A CN109150526 A CN 109150526A
Authority
CN
China
Prior art keywords
key
terminal
equipment
session
ciphertext data
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.)
Pending
Application number
CN201811302463.8A
Other languages
English (en)
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.)
Midea Group Co Ltd
Original Assignee
Midea Group 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 Midea Group Co Ltd filed Critical Midea Group Co Ltd
Priority to CN201811302463.8A priority Critical patent/CN109150526A/zh
Publication of CN109150526A publication Critical patent/CN109150526A/zh
Pending legal-status Critical Current

Links

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
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Abstract

本发明公开了一种密钥协商方法,包括以下步骤:设备根据设备发送的密钥协商请求报文生成并保存第一会话密钥,并根据第一会话密钥生成第一密钥校验值,根据第一密钥校验值生成第一密文数据,将第一密文数据返回至终端,其中,终端根据第一密文数据生成第二会话密钥,并获取第一密钥校验值,根据第二会话密钥生成第二校验值,在第二校验值与第一校验值一致时,保存第二会话密钥。这样,提高了设备与终端之间会话密钥的安全性,进而增强了设备与终端之间通信的安全性。本发明还公开了一种设备、终端、计算机可读存储介质以及密钥协商系统。本发明提高了设备与终端之间会话密钥的安全性,进而增强了设备与终端之间通信的安全性。

Description

密钥协商方法、设备、终端、存储介质以及系统
技术领域
本发明涉及信息安全技术领域,尤其涉及一种密钥协商方法、设备、终端、计算机可读存储介质以及密钥协商系统。
背景技术
随着信息技术的不断发展,智能设备广泛应用于生活中,比如用户通过终端向智能设备发送指令,以实现对智能设备的控制。现有的设备与终端一般通过固定的密钥进行通信,但是这种方式安全性较低,比如密钥一旦泄露,整个安全体系崩溃。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种密钥协商方法、设备、终端、计算机可读存储介质以及密钥协商系统,旨在提高设备与终端之间会话密钥的安全性,进而增强设备与终端之间通信的安全性。
为实现上述目的,本发明提供一种密钥协商方法,所述密钥协商方法包括以下步骤:
设备在接收到终端发送的密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥;
根据所述第一会话密钥生成第一密钥校验值;
根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端,其中,所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
优选地,所述根据所述密钥协商请求报文生成第一会话密钥的步骤包括:
根据所述密钥协商请求报文获取终端公钥;
根据所述终端公钥以及设备私钥生成所述第一会话密钥。
优选地,所述根据所述终端公钥以及设备私钥生成所述第一会话密钥的步骤包括:
将所述终端公钥与所述设备私钥进行拼接,得到拼接结果;
将所述拼接结果作为所述第一会话密钥。
优选地,所述根据所述第一会话密钥生成第一密钥校验值的步骤包括:
根据所述第一会话密钥对预定字节进行加密,得到加密结果;
将所述加密结果的预设字节作为所述第一密钥校验值。
优选地,所述根据所述第一密钥校验值生成第一密文数据的步骤包括:
根据设备公钥证书以及所述第一密钥校验值生成所述第一密文数据。
优选地,所述将所述第一密文数据返回至所述终端的步骤之后,还包括:
所述设备在接收到所述终端返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;
在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述终端。
优选地,所述根据所述密钥协商请求报文生成并保存第一会话密钥的步骤之前,还包括:
所述设备在接收到所述终端发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述终端,其中,所述终端在接收到所述第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端,所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备;
根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数;
在所述第二随机数与所述第一随机数一致时,则执行所述根据所述密钥协商请求报文生成并保存第一会话密钥的步骤。
为实现上述目的,本发明还提供一种密钥协商方法,所述密钥协商方法包括以下步骤:
终端发送密钥协商请求报文至设备,以供所述设备在接收到所述密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端;
所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
优选地,所述根据所述第一密文数据生成第二会话密钥的步骤包括:
根据所述第一密文数据获取设备公钥;
根据所述设备公钥以及终端公钥生成所述第二会话密钥。
优选地,所述根据所述第一密文数据生成第二会话密钥的步骤包括:
将所述设备公钥与所述终端私钥进行拼接,得到拼接结果;
将所述拼接结果作为所述第二会话密钥。
优选地,所述根据所述第二会话密钥生成第二校验值的步骤包括:
根据所述第二会话密钥对预定字节进行加密,得到加密结果;
将所述加密结果的预设字节作为所述第二密钥校验值。
优选地,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥的步骤之后,还包括:
所述终端利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;
将所述密钥协商确认信息发送至所述设备,以供所述设备在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述终端。
优选地,所述终端在接收到所述第一密文数据的步骤之前,还包括:
所述终端向所述设备发起随机数请求,并在接收到所述设备返回的第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端;
所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备,其中,所述设备在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数,在所述第二随机数与所述第一随机数一致时,则根据所述密钥协商请求报文生成并保存所述第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端。
为实现上述目的,本发明还提供一种设备,所述设备包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现上述密钥协商方法的步骤。
为实现上述目的,本发明还提供一种终端,所述终端包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现上述密钥协商方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有密钥协商程序,所述密钥协商程序被处理器执行时实现上述密钥协商方法的步骤。
为实现上述目的,本发明还提供一种密钥协商系统,所述密钥协商系统包括上述设备,以及上述终端。
本发明提供的密钥协商方法、设备、终端、计算机可读存储介质以及密钥协商系统,设备根据设备发送的密钥协商请求报文生成并保存第一会话密钥,并根据第一会话密钥生成第一密钥校验值,根据第一密钥校验值生成第一密文数据,将第一密文数据返回至终端,其中,终端根据第一密文数据生成第二会话密钥,并获取第一密钥校验值,根据第二会话密钥生成第二校验值,在第二校验值与第一校验值一致时,保存第二会话密钥。本发明提高了设备与终端之间会话密钥的安全性,进而增强了设备与终端之间通信的安全性。
附图说明
图1为本发明实施例方案涉及的终端的硬件运行环境示意图;
图2为本发明密钥协商方法第一实施例的流程示意图;
图3为本发明密钥协商方法第二实施例的流程示意图;
图4为本发明密钥协商方法第三实施例的流程示意图;
图5为本发明密钥协商方法第四实施例的流程示意图;
图6为本发明密钥协商方法第五实施例的流程示意图;
图7为本发明密钥协商方法第六实施例的流程示意图;
图8为本发明密钥协商方法第七实施例的流程示意图;
图9为本发明密钥协商方法第八实施例的流程示意图;
图10为本发明密钥协商方法第九实施例的流程示意图;
图11为本发明密钥协商方法第十实施例的流程示意图;
图12为本发明密钥协商方法第十一实施例的流程示意图;
图13为本发明密钥协商方法第十二实施例的流程示意图;
图14为本发明密钥协商方法第十三实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种密钥协商方法,提高了设备与终端之间会话密钥的安全性,进而增强了设备与终端之间通信的安全性。
如图1所示,图1是本发明实施例方案涉及的终端的硬件运行环境示意图。
本发明实施例终端可以是设备,比如空调器、空气调节器、电饭煲、智能门锁等,也可以是终端,比如手机、平板电脑、PC等。
如图1所示,该实施例终端可以包括:处理器1001,例如CPU,存储器1002,通信总线1003。其中,通信总线1003用于实现该服务器中各组成部件之间的连接通信。存储器1002可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1002可选的还可以是独立于前述处理器1001的存储装置。
如图1所示,作为一种计算机存储介质的存储器1002中可以包括密钥协商程序。
在图1所示的实施例终端中,处理器1001可以用于调用存储器1002中存储的密钥协商程序,并执行以下操作:
设备在接收到终端发送的密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥;
根据所述第一会话密钥生成第一密钥校验值;
根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端,其中,所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
根据所述密钥协商请求报文获取终端公钥;
根据所述终端公钥以及设备私钥生成所述第一会话密钥。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
将所述终端公钥与所述设备私钥进行拼接,得到拼接结果;
将所述拼接结果作为所述第一会话密钥。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
根据所述第一会话密钥对预定字节进行加密,得到加密结果;
将所述加密结果的预设字节作为所述第一密钥校验值。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
根据设备公钥证书以及所述第一密钥校验值生成所述第一密文数据。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
所述设备在接收到所述终端返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;
在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述终端。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
所述设备在接收到所述终端发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述终端,其中,所述终端在接收到所述第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端,所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备;
根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数;
在所述第二随机数与所述第一随机数一致时,则执行所述根据所述密钥协商请求报文生成并保存第一会话密钥的步骤。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
终端发送密钥协商请求报文至设备,以供所述设备在接收到所述密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端;
所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
根据所述第一密文数据获取设备公钥;
根据所述设备公钥以及终端公钥生成所述第二会话密钥。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
将所述设备公钥与所述终端私钥进行拼接,得到拼接结果;
将所述拼接结果作为所述第二会话密钥。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
根据所述第二会话密钥对预定字节进行加密,得到加密结果;
将所述加密结果的预设字节作为所述第二密钥校验值。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
所述终端利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;
将所述密钥协商确认信息发送至所述设备,以供所述设备在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述终端。
进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:
所述终端向所述设备发起随机数请求,并在接收到所述设备返回的第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端;
所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备,其中,所述设备在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数,在所述第二随机数与所述第一随机数一致时,则根据所述密钥协商请求报文生成并保存所述第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端。
参照图2,在第一实施例中,所述密钥协商方法包括:
步骤S10、设备在接收到终端发送的密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥;
本实施例中,执行主体为设备。设备可以是空调器、洗衣机、智能门锁等多种智能设备,终端中的APP可以通过云服务器与设备进行通信,即用户可以通过APP发送指令,以控制智能设备。在设备与终端进行安全传输之前,需要进行密钥协商。
终端生成终端公钥以及终端私钥,其中,终端公钥以及终端私钥可以是临时密钥对。优选地,终端根据终端公钥以及终端公钥有效期标识生成密钥协商请求报文发送至设备。设备利用设备私钥对终端公钥进行计算得到第一会话密钥,优选地,使用设备私钥通过ECDH算法对终端公钥计算得到第一会话密钥。需要说明的是,第一会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
步骤S11、根据所述第一会话密钥生成第一密钥校验值;
本实施例中,设备根据预设算法对第一会话密钥加密生成第一密钥校验值,其中,第一预设校验值用于校验会话密钥。优选地,根据预设算法对第一会话密钥加密生成第一密钥校验值的步骤可以是:根据第一会话密钥对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。
步骤S12、根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端,其中,所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
本实施例中,第一密文数据可以包括第一密钥校验值以及设备公钥,或者包括第一密钥校验值以及设备公钥证书。设备将第一密文数据返回至终端,以供终端利用终端私钥对设备公钥进行计算得到第二会话密钥,并根据预设算法对第二会话密钥加密生成第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,保存第二会话密钥。优选地,使用终端私钥通过ECDH算法对设备公钥计算得到第二会话密钥。并且,终端根据预设算法对第二会话密钥加密生成第二密钥校验值,其中,第二密钥校验值用于校验会话密钥。优选地,根据预设算法对第二会话密钥加密生成第二密钥校验值的步骤可以是:根据第二会话密钥对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第二密钥校验值。
需要说明的是,由于ECDH算法的特性,第一会话密钥与第二会话密钥是一致的,因此第一会话密钥与第二会话密钥为设备与终端之间的会话密钥。第一会话密钥以及第二会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
需要说明的是,第一密钥校验值以及第二密钥校验值也可以利用其它方式生成,本发明不做具体限定。比如,根据SHA256算法对第一会话密钥进行运算得到第一密钥校验值,终端根据SHA256算法对第二会话密钥进行运算得到第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,则第一会话密钥与第二会话密钥为设备与终端之间的会话密钥。
在第一实施例中,设备根据设备发送的密钥协商请求报文生成并保存第一会话密钥,并根据第一会话密钥生成第一密钥校验值,根据第一密钥校验值生成第一密文数据,将第一密文数据返回至终端,其中,终端根据第一密文数据生成第二会话密钥,并获取第一密钥校验值,根据第二会话密钥生成第二校验值,在第二校验值与第一校验值一致时,保存第二会话密钥。这样,提高了设备与终端之间会话密钥的安全性,进而增强了设备与终端之间通信的安全性。
在第二实施例中,如图3所示,在上述图2所示的实施例基础上,所述根据所述密钥协商请求报文生成第一会话密钥的步骤包括:
步骤S101、根据所述密钥协商请求报文获取终端公钥;
步骤S102、根据所述终端公钥以及设备私钥生成所述第一会话密钥。
本实施例中,终端根据终端公钥以及终端公钥有效期标识生成密钥协商请求报文发送至设备。设备利用设备私钥对终端公钥进行计算得到第一会话密钥,优选地,使用设备私钥通过ECDH算法对终端公钥计算得到第一会话密钥。需要说明的是,第一会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
在第二实施例中,根据终端公钥与设备私钥生成第一会话密钥,这样,保证了终端与设备之间通信的安全性。
在第三实施例中,如图4所示,在上述图2至图3任一项所示的实施例基础上,所述根据所述终端公钥以及设备私钥生成所述第一会话密钥的步骤包括:
步骤S1021、将所述终端公钥与所述设备私钥进行拼接,得到拼接结果;
步骤S1022、将所述拼接结果作为所述第一会话密钥。
本实施例中,设备利用设备私钥对终端公钥进行计算得到第一会话密钥,优选地,使用设备私钥通过ECDH算法对终端公钥计算得到第一会话密钥。需要说明的是,第一会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
在第三实施例中,将终端公钥与设备私钥的拼接结果作为第一会话密钥,这样,保证了终端与设备之间通信的安全性。
在第四实施例中,如图5所示,在上述图2至图4任一项所示的实施例基础上,所述根据所述第一会话密钥生成第一密钥校验值的步骤包括:
步骤S103、根据所述第一会话密钥对预定字节进行加密,得到加密结果;
步骤S104、将所述加密结果的预设字节作为所述第一密钥校验值。
本实施例中,设备根据预设算法对第一会话密钥加密生成第一密钥校验值,其中,第一预设校验值用于校验会话密钥。优选地,根据预设算法对第一会话密钥加密生成第一密钥校验值的步骤可以是:根据第一会话密钥对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。需要说明的是,预定字节可以是16字节,预设字节可以是前三字节。
需要说明的是,也可用其它方式校验会话密钥,本发明不做具体限定。比如,根据SHA256算法对第二会话密钥进行运算得到第一摘要信息,终端根据SHA256算法对第二会话密钥进行运算得到第二摘要信息,在第二摘要信息与第一摘要信息一致时,则第一会话密钥与第二会话密钥为设备与终端之间的会话密钥。
在第四实施例中,根据第一会话密钥对预定字节进行加密得到加密结果,并将加密结果的预设字节作为第一密钥校验值。这样,保证了终端与设备之间密钥协商的安全性。
在第五实施例中,如图6所示,在上述图2至图5任一项所示的实施例基础上,所述根据所述第一密钥校验值生成第一密文数据的步骤包括:
步骤S111、根据设备公钥证书以及所述第一密钥校验值生成所述第一密文数据。
本实施例中,设备公钥可以是设备生成,也可以从设备公钥证书中提取,其中,设备公钥证书在预设服务器生成,设备可通过解密预设服务器得到,需要说明的是,预设服务器可以是License服务器。终端对设备公钥证书中的签名结果进行验签,在验签通过时,通过根公钥索引来提取设备公钥证书中的公钥。该种方式增加了证书的随机性。
在从设备公钥证书中提取设备公钥之前,终端对设备公钥证书进行验证。具体地,设备公钥证书中包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识、设备公钥、签名结果以及第一哈希值,其中,签名结果为预设服务器利用预设服务器私钥对第一哈希值进行签名得到的,第一哈希值是预设服务器对预设信息进行哈希运算得到的,预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及设备公钥。
终端利用预设服务器公钥解密设备公钥证书中的签名结果,得到第三哈希值,在第三哈希值与第一哈希值一致时,终端对设备证书中的预设信息进行哈希运算得到第二哈希值,在第二哈希值与第一哈希值一致时,则判定证书合法,则从设备证书中提取设备公钥。
在第五实施例中,终端在对设备公钥证书验签通过后,从设备公钥证书中提取设备公钥,这样,提高了设备与终端之间会话密钥的安全性。
在第六实施例中,如图7所示,在上述图2至图6任一项所示的实施例基础上,所述将所述第一密文数据返回至所述终端的步骤之后,还包括:
步骤S13、所述设备在接收到所述终端返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;
步骤S14、在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述终端。
本实施例中,终端利用会话密钥对预设字段进行加密得到密钥协商确认信息,优选地,设备利用会话密钥对预设字段与随机数的拼接结果进行加密。终端将密钥协商确认信息发送至设备,以供设备利用会话密钥解密密钥协商确认信息得到解密结果,在解密结果中包含预设字段时,则发送密钥协商确认报文至设备。其中,预设字段可以是“OK”等字符。在解密结果中未包含预设字段时,则返回错误码至设备。
在第六实施例中,设备在接收到终端返回的密钥协商确认信息时,利用会话密钥解密密钥协商确认信息得到解密结果,在解密结果中包含预设字段时,则发送密钥协商确认报文至终端。这样,实现终端与设备之间的密钥协商。
在第七实施例中,如图8所示,在上述图2至图7任一项所示的实施例基础上,所述根据所述密钥协商请求报文获取第一密文数据的步骤之前,还包括:
步骤S15、所述设备在接收到所述终端发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述终端,其中,所述终端在接收到所述第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端,所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备;
步骤S16、根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数;
步骤S17、判断所述第二随机数是否与所述第一随机数一致;
步骤S18、在所述第二随机数与所述第一随机数一致时,则执行所述根据所述密钥协商请求报文生成并保存第一会话密钥的步骤。
本实施例中,在设备与终端进行密钥协商之前,设备对终端的合法性进行验签。首先,终端向设备发起APP鉴权请求,请求设备信息开始APP鉴权,其中,APP鉴权请求报文中包括随机数有效期标识、随机数长度等信息。设备在接收到APP鉴权请求报文时,生成第一随机数,并将第一随机数拼接设备Mac地址返回至终端。其中,随机数返回报文中包括随机数有效期标识、第一随机数以及设备Mac地址。终端在接收到设备发送的随机数返回报文时,通过HTTPS安全通道将第一随机数以及Mac地址上传至云服务器。云服务器通过预设服务器密钥对第一随机数进行加密得到第二密文数据,并将第二密文数据返回至终端。优选地,预设服务器可以是License服务器,云服务器访问License服务器的加密接口获得预设服务器密钥。终端在接收到第二密文数据时,根据第二密文数据生成密钥协商请求报文并发送至设备。
本实施例中,设备在接收到密钥请求报文时,通过预设服务器密钥对第二密文数据进行解密得到第二随机数,优选地,预设服务器可以是License服务器,设备中预先设置License密钥。当然也可以是云服务器通过云服务器私钥对第一随机数进行加密得到第二密文数据,并将第二密文数据发送至设备,设备通过云服务器公钥对第二密文数据进行解密得到第二随机数。加解密方法可根据实际情况进行设置,本发明不做具体限定。
本实施例中,将第二随机数与第一随机数进行比对,在第二随机数与第一随机数一致时,则判定终端合法,设备与终端进行密钥协商。
需要说明的是,判定终端是否合法的方法不限于以上所述,可根据实际情况进行设置。比如云服务器对第一随机数进行哈希运算加密得到第四哈希值,并通过第一预设密钥对第四哈希值进行签名得到哈希密文,将哈希密文以及第四哈希值返回至终端,终端根据哈希密文以及第四哈希值生成密钥协商请求报文并发送至设备。设备通过第二预设密钥对哈希密文进行解密运算得到第五哈希值,在第五哈希值与第四哈希值一致时,则判定终端合法,设备与终端进行密钥协商。其中,哈希算法可以是SHA256算法或者MD5算法。其中,第一预设密钥可以是云服务器私钥,第二预设密钥可以是云服务器公钥。
本实施例中,设备在接收到终端发送的随机数请求时,则生成第一随机数,并将第一随机数返回至终端,并且设备在接收到密钥协商请求报文时,根据密钥协商请求报文获取第二密文数据,并对第二密文数据进行解密得到第二随机数,在第二随机数与第一随机数一致时,则设备与终端进行密钥协商。这样,在设备与终端进行密钥协商时,首先确定终端的合法性,从而加强了密钥协商过程的安全性。
本发明还提供一种密钥协商方法,参照图9,在第八实施例中,所述密钥协商方法包括以下步骤:
步骤S20、终端发送密钥协商请求报文至设备,以供所述设备在接收到所述密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端;
步骤S21、所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
本实施例中,执行主体为终端,终端中的APP可以通过云服务器与设备进行通信,即用户可以通过APP发送指令,以控制智能设备。在设备与终端进行安全传输之前,需要进行密钥协商。
终端生成终端公钥以及终端私钥,其中,终端公钥以及终端私钥可以是临时密钥对。优选地,终端根据终端公钥以及终端公钥有效期标识生成密钥协商请求报文发送至设备。设备利用设备私钥对终端公钥进行计算得到第一会话密钥,优选地,使用设备私钥通过ECDH算法对终端公钥计算得到第一会话密钥。需要说明的是,第一会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
本实施例中,设备根据预设算法对第一会话密钥加密生成第一密钥校验值,其中,第一预设校验值用于校验会话密钥。优选地,根据预设算法对第一会话密钥加密生成第一密钥校验值的步骤可以是:根据第一会话密钥对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。
本实施例中,第一密文数据可以包括第一密钥校验值以及设备公钥,或者包括第一密钥校验值以及设备公钥证书。设备将第一密文数据返回至终端,以供终端利用终端私钥对设备公钥进行计算得到第二会话密钥,并根据预设算法对第二会话密钥加密生成第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,保存第二会话密钥。优选地,使用终端私钥通过ECDH算法对设备公钥计算得到第二会话密钥。并且,终端根据预设算法对第二会话密钥加密生成第二密钥校验值,其中,第二密钥校验值用于校验会话密钥。优选地,根据预设算法对第二会话密钥加密生成第二密钥校验值的步骤可以是:根据第二会话密钥对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第二密钥校验值。
需要说明的是,由于ECDH算法的特性,第一会话密钥与第二会话密钥是一致的,因此第一会话密钥与第二会话密钥为设备与终端之间的会话密钥。第一会话密钥以及第二会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
需要说明的是,第一密钥校验值以及第二密钥校验值也可以利用其它方式生成,本发明不做具体限定。比如,根据SHA256算法对第一会话密钥进行运算得到第一密钥校验值,终端根据SHA256算法对第二会话密钥进行运算得到第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,则第一会话密钥与第二会话密钥为设备与终端之间的会话密钥。
在第八实施例中,设备根据设备发送的密钥协商请求报文生成并保存第一会话密钥,并根据第一会话密钥生成第一密钥校验值,根据第一密钥校验值生成第一密文数据,将第一密文数据返回至终端,其中,终端根据第一密文数据生成第二会话密钥,并获取第一密钥校验值,根据第二会话密钥生成第二校验值,在第二校验值与第一校验值一致时,保存第二会话密钥。这样,提高了设备与终端之间会话密钥的安全性,进而增强了设备与终端之间通信的安全性。
在第九实施例中,如图10所示,在上述图9所示的实施例基础上,所述根据所述第一密文数据生成第二会话密钥的步骤包括:
步骤S211、根据所述第一密文数据获取设备公钥;
步骤S212、根据所述设备公钥以及终端公钥生成所述第二会话密钥。
本实施例中,终端利用终端私钥对设备公钥进行计算得到第二会话密钥,优选地,使用终端私钥通过ECDH算法对设备公钥计算得到第二会话密钥。需要说明的是,第二会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
在第九实施例中,根据设备公钥与终端私钥生成第二会话密钥,这样,保证了终端与设备之间通信的安全性。
在第十实施例中,如图11所示,在上述图9至图10任一项所示的实施例基础上,所述根据所述第一密文数据生成第二会话密钥的步骤包括:
步骤S2121、将所述设备公钥与所述终端私钥进行拼接,得到拼接结果;
步骤S2122、将所述拼接结果作为所述第二会话密钥。
本实施例中,终端利用终端私钥对设备公钥进行计算得到第二会话密钥,优选地,使用终端私钥通过ECDH算法对设备公钥计算得到第二会话密钥。需要说明的是,第二会话密钥的生成方式不限于ECDH算法,也可以是其它算法,比如ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。
在第十实施例中,将设备公钥与终端私钥的拼接结果作为第二会话密钥,这样,保证了终端与设备之间通信的安全性。
第十一实施例中,如图12所示,在上述图9至图11任一项所示的实施例基础上,所述根据所述第二会话密钥生成第二校验值的步骤包括:
步骤S213、根据所述第二会话密钥对预定字节进行加密,得到加密结果;
步骤S214、将所述加密结果的预设字节作为所述第二密钥校验值。
本实施例中,设备根据预设算法对第二会话密钥加密生成第二密钥校验值,其中,第二密钥校验值用于校验会话密钥。优选地,根据预设算法对第二会话密钥加密生成第二密钥校验值的步骤可以是:根据第二会话密钥对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第二密钥校验值。需要说明的是,预定字节可以是16字节,预设字节可以是前二字节。
需要说明的是,也可用其它方式校验会话密钥,本发明不做具体限定。比如,根据SHA256算法对第二会话密钥进行运算得到第一摘要信息,终端根据SHA256算法对第二会话密钥进行运算得到第二摘要信息,在第二摘要信息与第一摘要信息一致时,则第一会话密钥与第二会话密钥为设备与终端之间的会话密钥。
在第十一实施例中,根据第二会话密钥对预定字节进行加密得到加密结果,并将加密结果的预设字节作为第二密钥校验值。这样,保证了终端与设备之间密钥协商的安全性。
第十二实施例中,如图13所示,在上述图9至图12任一项所示的实施例基础上,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥的步骤之后,还包括:
步骤S22、所述终端利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;
步骤S23、将所述密钥协商确认信息发送至所述设备,以供所述设备在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述终端。
本实施例中,终端利用会话密钥对预设字段进行加密得到密钥协商确认信息,优选地,设备利用会话密钥对预设字段与随机数的拼接结果进行加密。终端将密钥协商确认信息发送至设备,以供设备利用会话密钥解密密钥协商确认信息得到解密结果,在解密结果中包含预设字段时,则发送密钥协商确认报文至设备。其中,预设字段可以是“OK”等字符。在解密结果中未包含预设字段时,则返回错误码至设备。
在第十二实施例中,设备在接收到终端返回的密钥协商确认信息时,利用会话密钥解密密钥协商确认信息得到解密结果,在解密结果中包含预设字段时,则发送密钥协商确认报文至终端。这样,实现终端与设备之间的密钥协商。
第十三实施例中,如图14所示,在上述图9至图13任一项所示的实施例基础上,所述终端在接收到所述第一密文数据的步骤之前,还包括:
步骤S24、所述终端向所述设备发起随机数请求,并在接收到所述设备返回的第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端;
步骤S25、所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备,其中,所述设备在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数,在所述第二随机数与所述第一随机数一致时,则根据所述密钥协商请求报文生成并保存所述第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端。
本实施例中,在设备与终端进行密钥协商之前,设备对终端的合法性进行验签。首先,终端向设备发起APP鉴权请求,请求设备信息开始APP鉴权,其中,APP鉴权请求报文中包括随机数有效期标识、随机数长度等信息。设备在接收到APP鉴权请求报文时,生成第一随机数,并将第一随机数拼接设备Mac地址返回至终端。其中,随机数返回报文中包括随机数有效期标识、第一随机数以及设备Mac地址。终端在接收到设备发送的随机数返回报文时,通过HTTPS安全通道将第一随机数以及Mac地址上传至云服务器。云服务器通过预设服务器密钥对第一随机数进行加密得到第二密文数据,并将第二密文数据返回至终端。优选地,预设服务器可以是License服务器,云服务器访问License服务器的加密接口获得预设服务器密钥。终端在接收到第二密文数据时,根据第二密文数据生成密钥协商请求报文并发送至设备。
本实施例中,设备在接收到密钥请求报文时,通过预设服务器密钥对第二密文数据进行解密得到第二随机数,优选地,预设服务器可以是License服务器,设备中预先设置License密钥。当然也可以是云服务器通过云服务器私钥对第一随机数进行加密得到第二密文数据,并将第二密文数据发送至设备,设备通过云服务器公钥对第二密文数据进行解密得到第二随机数。加解密方法可根据实际情况进行设置,本发明不做具体限定。
本实施例中,将第二随机数与第一随机数进行比对,在第二随机数与第一随机数一致时,则判定终端合法,设备与终端进行密钥协商。
需要说明的是,判定终端是否合法的方法不限于以上所述,可根据实际情况进行设置。比如云服务器对第一随机数进行哈希运算加密得到第四哈希值,并通过第一预设密钥对第四哈希值进行签名得到哈希密文,将哈希密文以及第四哈希值返回至终端,终端根据哈希密文以及第四哈希值生成密钥协商请求报文并发送至设备。设备通过第二预设密钥对哈希密文进行解密运算得到第五哈希值,在第五哈希值与第四哈希值一致时,则判定终端合法,设备与终端进行密钥协商。其中,哈希算法可以是SHA256算法或者MD5算法。其中,第一预设密钥可以是云服务器私钥,第二预设密钥可以是云服务器公钥。
在第十三实施例中,设备在接收到终端发送的随机数请求时,则生成第一随机数,并将第一随机数返回至终端,并且设备在接收到密钥协商请求报文时,根据密钥协商请求报文获取第二密文数据,并对第二密文数据进行解密得到第二随机数,在第二随机数与第一随机数一致时,则设备与终端进行密钥协商。这样,在设备与终端进行密钥协商时,首先确定终端的合法性,从而加强了密钥协商过程的安全性。
此外,本发明还提出一种设备,所述设备包括存储器、处理器及存储在存储器上并可在处理器上运行的密钥协商程序,所述处理器执行如上述设备为执行主体下的所述密钥协商方法的步骤。
此外,本发明还提出一种终端,所述终端包括存储器、处理器及存储在存储器上并可在处理器上运行的密钥协商程序,所述处理器执行如上述终端为执行主体下的所述密钥协商方法的步骤。
此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质包括密钥协商程序,所述密钥协商程序被处理器执行时实现如以上实施例所述的密钥协商方法的步骤。
此外,本发明还提出一种密钥协商系统,本发明还提出一种密钥协商系统,所述密钥协商系统包括上述设备,以及上述终端。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是电视机,手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (17)

1.一种密钥协商方法,其特征在于,所述密钥协商方法包括以下步骤:
设备在接收到终端发送的密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥;
根据所述第一会话密钥生成第一密钥校验值;
根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端,其中,所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
2.如权利要求1所述的密钥协商方法,其特征在于,所述根据所述密钥协商请求报文生成第一会话密钥的步骤包括:
根据所述密钥协商请求报文获取终端公钥;
根据所述终端公钥以及设备私钥生成所述第一会话密钥。
3.如权利要求2所述的密钥协商方法,其特征在于,所述根据所述终端公钥以及设备私钥生成所述第一会话密钥的步骤包括:
将所述终端公钥与所述设备私钥进行拼接,得到拼接结果;
将所述拼接结果作为所述第一会话密钥。
4.如权利要求1所述的密钥协商方法,其特征在于,所述根据所述第一会话密钥生成第一密钥校验值的步骤包括:
根据所述第一会话密钥对预定字节进行加密,得到加密结果;
将所述加密结果的预设字节作为所述第一密钥校验值。
5.如权利要求1所述的密钥协商方法,其特征在于,所述根据所述第一密钥校验值生成第一密文数据的步骤包括:
根据设备公钥证书以及所述第一密钥校验值生成所述第一密文数据。
6.如权利要求1所述的密钥协商方法,其特征在于,所述将所述第一密文数据返回至所述终端的步骤之后,还包括:
所述设备在接收到所述终端返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;
在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述终端。
7.如权利要求1所述的密钥协商方法,其特征在于,所述根据所述密钥协商请求报文生成并保存第一会话密钥的步骤之前,还包括:
所述设备在接收到所述终端发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述终端,其中,所述终端在接收到所述第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端,所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备;
根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数;
在所述第二随机数与所述第一随机数一致时,则执行所述根据所述密钥协商请求报文生成并保存第一会话密钥的步骤。
8.一种密钥协商方法,其特征在于,所述密钥协商方法包括以下步骤:
终端发送密钥协商请求报文至设备,以供所述设备在接收到所述密钥协商请求报文后,根据所述密钥协商请求报文生成并保存第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端;
所述终端在接收到所述第一密文数据时,根据所述第一密文数据生成第二会话密钥,并获取所述第一密钥校验值,根据所述第二会话密钥生成第二校验值,在所述第二校验值与所述第一校验值一致时,保存所述第二会话密钥,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥。
9.如权利要求8所述的密钥协商方法,其特征在于,所述根据所述第一密文数据生成第二会话密钥的步骤包括:
根据所述第一密文数据获取设备公钥;
根据所述设备公钥以及终端公钥生成所述第二会话密钥。
10.如权利要求9所述的密钥协商方法,其特征在于,所述根据所述设备公钥以及终端公钥生成所述第二会话密钥的步骤包括:
将所述设备公钥与所述终端私钥进行拼接,得到拼接结果;
将所述拼接结果作为所述第二会话密钥。
11.如权利要求8所述的密钥协商方法,其特征在于,所述根据所述第二会话密钥生成第二校验值的步骤包括:
根据所述第二会话密钥对预定字节进行加密,得到加密结果;
将所述加密结果的预设字节作为所述第二密钥校验值。
12.如权利要求8所述的密钥协商方法,其特征在于,所述第二会话密钥与所述第一会话密钥为所述设备与所述终端之间的会话密钥的步骤之后,还包括:
所述终端利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;
将所述密钥协商确认信息发送至所述设备,以供所述设备在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述终端。
13.如权利要求8所述的密钥协商方法,其特征在于,所述终端在接收到所述第一密文数据的步骤之前,还包括:
所述终端向所述设备发起随机数请求,并在接收到所述设备返回的第一随机数时,将所述第一随机数发送至云服务器,以供所述云服务器对所述第一随机数进行加密得到第二密文数据,并将所述第二密文数据返回至所述终端;
所述终端在接收到所述第二密文数据时,根据所述第二密文数据生成所述密钥协商请求报文并发送至所述设备,其中,所述设备在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述第二密文数据,并对所述第二密文数据进行解密得到第二随机数,在所述第二随机数与所述第一随机数一致时,则根据所述密钥协商请求报文生成并保存所述第一会话密钥,并根据所述第一会话密钥生成第一密钥校验值,根据所述第一密钥校验值生成第一密文数据,将所述第一密文数据返回至所述终端。
14.一种设备,其特征在于,所述设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现如权利要求1至7中任一项所述的密钥协商方法的步骤。
15.一种终端,其特征在于,所述终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现如权利要求8至13中任一项所述的密钥协商方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有密钥协商程序,所述密钥协商程序被处理器执行时实现如权利要求1至13中任一项所述的密钥协商方法的步骤。
17.一种密钥协商系统,其特征在于,所述密钥协商系统包括如权利要求14中所述的设备,以及如权利要求15中所述的终端。
CN201811302463.8A 2018-11-02 2018-11-02 密钥协商方法、设备、终端、存储介质以及系统 Pending CN109150526A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811302463.8A CN109150526A (zh) 2018-11-02 2018-11-02 密钥协商方法、设备、终端、存储介质以及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811302463.8A CN109150526A (zh) 2018-11-02 2018-11-02 密钥协商方法、设备、终端、存储介质以及系统

Publications (1)

Publication Number Publication Date
CN109150526A true CN109150526A (zh) 2019-01-04

Family

ID=64807550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811302463.8A Pending CN109150526A (zh) 2018-11-02 2018-11-02 密钥协商方法、设备、终端、存储介质以及系统

Country Status (1)

Country Link
CN (1) CN109150526A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110149206A (zh) * 2019-05-30 2019-08-20 全链通有限公司 会话密钥的传输方法、设备及计算机可读存储介质
CN110166426A (zh) * 2019-04-11 2019-08-23 北京媒球信息科技有限公司 信息发送终端、接收终端及其保密通信方法、存储介质
CN110460436A (zh) * 2019-07-12 2019-11-15 山东三未信安信息科技有限公司 硬件设备密钥管理方法、系统、存储介质及计算机设备
CN111600854A (zh) * 2020-04-29 2020-08-28 北京智芯微电子科技有限公司 智能终端与服务端建立安全通道的方法
CN112054906A (zh) * 2020-08-21 2020-12-08 郑州信大捷安信息技术股份有限公司 一种密钥协商方法及系统
CN113347147A (zh) * 2021-04-15 2021-09-03 中安云科科技发展(山东)有限公司 一种两点密钥安全同步方法、系统及设备
CN113408309A (zh) * 2021-08-19 2021-09-17 飞天诚信科技股份有限公司 一种数据处理方法、装置及计算机可读存储介质
CN113676448A (zh) * 2021-07-13 2021-11-19 上海瓶钵信息科技有限公司 一种基于对称秘钥的离线设备双向认证方法和系统
CN116132134A (zh) * 2022-12-30 2023-05-16 北京海泰方圆科技股份有限公司 一种数据传输方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081727A (zh) * 2009-11-30 2011-06-01 中兴通讯股份有限公司 一种射频识别安全认证方法及系统
CN102480713A (zh) * 2010-11-25 2012-05-30 中国移动通信集团河南有限公司 一种汇聚节点与移动通信网络间的通信方法、系统及装置
CN108650261A (zh) * 2018-05-09 2018-10-12 南京理工大学紫金学院 基于远程加密交互的移动终端系统软件烧录方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081727A (zh) * 2009-11-30 2011-06-01 中兴通讯股份有限公司 一种射频识别安全认证方法及系统
CN102480713A (zh) * 2010-11-25 2012-05-30 中国移动通信集团河南有限公司 一种汇聚节点与移动通信网络间的通信方法、系统及装置
CN108650261A (zh) * 2018-05-09 2018-10-12 南京理工大学紫金学院 基于远程加密交互的移动终端系统软件烧录方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166426A (zh) * 2019-04-11 2019-08-23 北京媒球信息科技有限公司 信息发送终端、接收终端及其保密通信方法、存储介质
CN110149206A (zh) * 2019-05-30 2019-08-20 全链通有限公司 会话密钥的传输方法、设备及计算机可读存储介质
CN110460436A (zh) * 2019-07-12 2019-11-15 山东三未信安信息科技有限公司 硬件设备密钥管理方法、系统、存储介质及计算机设备
CN111600854A (zh) * 2020-04-29 2020-08-28 北京智芯微电子科技有限公司 智能终端与服务端建立安全通道的方法
CN112054906A (zh) * 2020-08-21 2020-12-08 郑州信大捷安信息技术股份有限公司 一种密钥协商方法及系统
CN112054906B (zh) * 2020-08-21 2022-02-11 郑州信大捷安信息技术股份有限公司 一种密钥协商方法及系统
CN113347147A (zh) * 2021-04-15 2021-09-03 中安云科科技发展(山东)有限公司 一种两点密钥安全同步方法、系统及设备
CN113676448A (zh) * 2021-07-13 2021-11-19 上海瓶钵信息科技有限公司 一种基于对称秘钥的离线设备双向认证方法和系统
CN113408309A (zh) * 2021-08-19 2021-09-17 飞天诚信科技股份有限公司 一种数据处理方法、装置及计算机可读存储介质
CN113408309B (zh) * 2021-08-19 2021-11-26 飞天诚信科技股份有限公司 一种数据处理方法、装置及计算机可读存储介质
CN116132134A (zh) * 2022-12-30 2023-05-16 北京海泰方圆科技股份有限公司 一种数据传输方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN109150526A (zh) 密钥协商方法、设备、终端、存储介质以及系统
CN110380852B (zh) 双向认证方法及通信系统
CN109005028A (zh) 密钥协商方法、云服务器、设备、存储介质以及系统
CN109040149A (zh) 密钥协商方法、云服务器、设备、存储介质以及系统
CN109039628A (zh) 密钥协商方法、云服务器、设备、存储介质以及系统
CN109120649A (zh) 密钥协商方法、云服务器、设备、存储介质以及系统
CN110177354A (zh) 一种车辆的无线控制方法及系统
CN101409619B (zh) 闪存卡及虚拟专用网密钥交换的实现方法
CN109039657A (zh) 密钥协商方法、设备、终端、存储介质以及系统
CN102299930B (zh) 一种保障客户端软件安全的方法
CN103138939B (zh) 云存储模式下基于可信平台模块的密钥使用次数管理方法
CN110198295A (zh) 安全认证方法和装置及存储介质
CN109257170A (zh) 密钥协商方法、设备、终端、存储介质以及系统
CN103795534A (zh) 基于口令的认证方法及用于执行该方法的装置
CN106850207B (zh) 无ca的身份认证方法和系统
CN103095460A (zh) 一种智能卡安全通讯的方法
CN109194656A (zh) 一种配电无线终端安全接入的方法
CN101286849A (zh) 基于约定算法的第三方认证系统和方法
CN108199847B (zh) 数字安全处理方法、计算机设备及存储介质
CN102811224A (zh) 一种ssl/tls连接的实现方法、装置及系统
CN111181723B (zh) 物联网设备间离线安全认证的方法和装置
CN109245885A (zh) 密钥协商方法、设备、存储介质以及系统
CN110753321A (zh) 一种车载tbox与云服务器的安全通信方法
CN109309566B (zh) 一种认证方法、装置、系统、设备及存储介质
CN112672342B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190104

RJ01 Rejection of invention patent application after publication