物联网设备间离线安全认证的方法和装置与流程

文档序号:20779242发布日期:2020-05-19 21:05阅读:213来源:国知局
物联网设备间离线安全认证的方法和装置与流程

本申请涉及安全认证技术领域,尤其涉及一种物联网设备间离线安全认证的方法和装置。



背景技术:

随着物联网的发展,物联网设备间常常需要通信,为了保证通信的安全性,在通信前需要进行安全认证。

目前,mbedtls是进行安全认证的其中一种方案。该方案采用的传输层安全性协议(transportlayersecurity,tls)的数字证书dc,其中传输层安全性协议(transportlayersecurity,tls)及其前身安全套接层(securesocketslayer,ssl)是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。

然而,在互联网通信中,参与认证的对象可能是各种浏览器、独立的应用程序和服务端,这就要求dc需要包含尽可能多的信息,由于参与认证的对象的复杂性以及dc包含信息的多样性,所以mbedtls的认证流程复杂,并且需要接收和发送大量数据,因此会占用较大带宽。

而对于物联网设备来说,存储空间有限,cpu资源有限,带宽资源也有限,所以若使用mbedtls对物联网设备进行安全认证,会给物联网设备造成巨大压力。



技术实现要素:

本申请实施例提供了一种物联网设备间离线安全认证的方法和装置,能够实现物联网设备间的离线安全认证,并且不会给物联网设备造成巨大压力。

有鉴于此,本申请第一方面提供一种物联网设备间离线安全认证的方法,包括:

第一物联网设备生成第一临时公钥和第一随机数;

所述第一物联网设备根据预置的第一设备私钥对预置的第一设备唯一标识、所述第一临时公钥和所述第一随机数进行数字签名,生成第一签名数据;

所述第一物联网设备向第二物联网设备发送所述第一签名数据、预置的第一设备公钥、所述第一设备唯一标识、所述第一临时公钥和所述第一随机数,使得所述第二物联网设备根据所述第一设备公钥对所述第一签名数据进行第一解密,并验证所述第一设备唯一标识、所述第一临时公钥和所述第一随机数是否与第一解密后的内容一致;

若所述第一设备唯一标识、所述第一临时公钥和所述第一随机数与解密后的内容一致,所述第一物联网设备接收所述第二物联网设备发送的第二签名数据、第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数,所述第二签名数据由所述第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、生成的第二临时公钥以及生成的第二随机数进行数字签名得到的;

所述第一物联网设备根据所述第二设备公钥对所述第二签名数据进行第二解密,并验证第二设备唯一标识、所述第二临时公钥和所述第二随机数是否与第二解密后的内容一致。

本申请第二方面提供一种物联网设备间离线安全认证的方法,包括:

第二物联网设备接收所述第一物联网设备发送的第一签名数据、第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数,其中所述第一临时公钥和所述第一随机数由所述第一物联网设备生成;

所述第二物联网设备根据所述第一设备公钥对所述第一签名数据进行第一解密,并验证所述第一设备唯一标识、所述第一临时公钥和所述第一随机数是否与第一解密后的内容一致;

若所述第一设备唯一标识、所述第一临时公钥和所述第一随机数与解密后的内容一致,则所述第二物联网设备生成第二临时公钥和第二随机数;

所述第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、所述第二临时公钥和所述第二随机数进行数字签名,生成第二签名数据;

所述第二物联网设备向第一物联网设备发送所述第二签名数据、预置的第二设备公钥、所述第二设备唯一标识、所述第二临时公钥和所述第二随机数,使得所述第一物联网设备根据所述第二设备公钥对所述第二签名数据进行第二解密,并验证所述第二设备唯一标识、所述第二临时公钥和所述第二随机数是否与第二解密后的内容一致。

本申请第三方面提供一种物联网设备间离线安全认证的装置,包括:

第一生成单元,用于生成第一临时公钥和第一随机数;

第二生成单元,用于根据预置的第一设备私钥对预置的第一设备唯一标识、所述第一临时公钥和所述第一随机数进行数字签名,生成第一签名数据;

发送单元,用于向第二物联网设备发送所述第一签名数据、预置的第一设备公钥、所述第一设备唯一标识、所述第一临时公钥和所述第一随机数,使得所述第二物联网设备根据所述第一设备公钥对所述第一签名数据进行第一解密,并验证所述第一设备唯一标识、所述第一临时公钥和所述第一随机数是否与第一解密后的内容一致;

接收单元,用于当所述第一设备唯一标识、所述第一临时公钥和所述第一随机数与解密后的内容一致时,接收所述第二物联网设备发送的第二签名数据、第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数,所述第二签名数据由所述第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、生成的第二临时公钥以及生成的第二随机数进行数字签名得到的;

解密单元,用于根据所述第二设备公钥对所述第二签名数据进行第二解密,并验证第二设备唯一标识、所述第二临时公钥和所述第二随机数是否与第二解密后的内容一致。

在本申请实施例的第三方面的第一种实现方式中,所述第二生成单元,用于根据预置的第一设备唯一标识、所述第一临时公钥和所述第一随机数生成第一身份信息;

根据预置的第一设备私钥对所述第一身份信息进行数字签名,生成第一签名数据。

在本申请实施例的第三方面的第二种实现方式中,所述发送单元,还用于向所述第二物联网设备发送预置的第三签名数据,使得所述第二物联网设备根据预置的第二公司公钥对所述第三签名数据进行第三解密,并验证所述第一设备唯一标识和所述第一设备公钥是否与第三解密后的内容一致,所述第三签名数据由所述第一物联网设备的第一公司私钥对所述第一设备唯一标识和所述第一设备公钥进行数字签名得到的;

所述接收单元,还用于当所述第一设备唯一标识、所述第一临时公钥和所述第一随机数与第二解密后的内容一致,且所述第一设备唯一标识和所述第一设备公钥是否与第三解密后的内容一致时,接收所述第二物联网设备发送的预置的第四签名数据,所述第四签名数据由所述第二物联网设备的第二公司私钥对所述第二设备唯一标识和所述第二设备公钥进行数字签名得到的;

所述解密单元,还用于根据所述第一公司公钥对所述第四签名数据进行第四解密,并验证所述第二设备唯一标识和所述第二设备公钥是否与第四解密后的内容一致。

在本申请实施例的第三方面的第三种实现方式中,所述第一生成单元,还用于生成与所述第一临时公钥匹配的第一临时私钥;

所述装置还包括:第三生成单元,用于当所述第二设备唯一标识、所述第二临时公钥和所述第二随机数与第二解密后的内容一致时,根据所述第一临时私钥、所述第二临时公钥、第一随机数和第二随机数生成第一会话秘钥,所述第一会话秘钥用于对所述第一物联网设备与所述第二物联网设备之间的通信数据进行加密和解密。

本申请实施例第四方面提供一种物联网设备间离线安全认证的装置,包括:

接收单元,用于接收所述第一物联网设备发送的第一签名数据、第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数,其中所述第一临时公钥和所述第一随机数由所述第一物联网设备生成;

解密单元,用于根据所述第一设备公钥对所述第一签名数据进行第一解密,并验证所述第一设备唯一标识、所述第一临时公钥和所述第一随机数是否与第一解密后的内容一致;

第一生成单元,用于当所述第一设备唯一标识、所述第一临时公钥和所述第一随机数与解密后的内容一致时,生成第二临时公钥和第二随机数;

第二生成单元,用于根据预置的第二设备私钥对预置的第二设备唯一标识、所述第二临时公钥和所述第二随机数进行数字签名,生成第二签名数据;

发送单元,用于向第一物联网设备发送所述第二签名数据、预置的第二设备公钥、所述第二设备唯一标识、所述第二临时公钥和所述第二随机数,使得所述第一物联网设备根据所述第二设备公钥对所述第二签名数据进行第二解密,并验证所述第二设备唯一标识、所述第二临时公钥和所述第二随机数是否与第二解密后的内容一致。

在本申请实施例的第四方面的第一种实现方式中,所述第二生成单元,用于根据预置的第二设备唯一标识、所述第二临时公钥和所述第二随机数生成第二身份信息;

根据预置的第二设备私钥对所述第二身份信息进行数字签名,生成第二签名数据。

在本申请实施例的第四方面的第二种实现方式中,所述接收单元还用于接收所述第一物联网设备发送的预置的第三签名数据,所述第三签名数据由所述第一物联网设备的第一公司私钥对所述第一设备唯一标识和所述第一设备公钥进行数字签名得到的;

所述解密单元,还用于根据预置的第二公司公钥对所述第三签名数据进行第三解密,并验证所述第一设备唯一标识和所述第一设备公钥是否与第三解密后的内容一致;

所述发送单元,还用于当所述第一设备唯一标识、所述第一临时公钥和所述第一随机数与第二解密后的内容一致,且所述第一设备唯一标识和所述第一设备公钥是否与第三解密后的内容一致时,向所述第一物联网设备发送预置的第四签名数据,使得所述第一物联网设备根据所述第一公司公钥对所述第四签名数据进行第四解密,并验证所述第二设备唯一标识和所述第二设备公钥是否与第四解密后的内容一致,所述第四签名数据由所述第二物联网设备的第二公司私钥对所述第二设备唯一标识和所述第二设备公钥进行数字签名得到的。

在本申请实施例的第四方面的第三种实现方式中,所述第一生成单元还用于生成与所述第二临时公钥匹配的第二临时私钥;

所述装置还包括:第三生成单元,用于根据所述第二临时私钥、所述第一临时公钥、第一随机数和第二随机数生成第二会话秘钥,所述第二会话秘钥用于对所述第一物联网设备与所述第二物联网设备之间的通信数据进行加密和解密。

本申请实施例第五方面提供了一种物联网终端设备,包括:存储器、收发器、处理器以及总线系统;

其中,所述存储器用于存储程序;

所述处理器用于执行所述存储器中的程序,以实现本申请实施例第三方面或第四方面中任一项所述的装置的功能。

本申请实施例第六方面提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机实现本申请实施例第三方面或第四方面中任一项所述的装置的功能。

本申请实施例第七方面提供了一种包括的计算机程序产品,当其在计算机上运行时使得计算机实现本申请实施例第三方面或第四方面中任一项所述的装置的功能。

从以上技术方案可以看出,本申请实施例具有以下优点:

第一物联网设备先生成第一临时公钥和第一随机数,然后根据预置的第一设备私钥对预置的第一设备唯一标识、第一临时公钥和第一随机数进行数字签名,生成第一签名数据;再向第二物联网设备发送第一签名数据、预置的第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数,使得第二物联网设备根据第一设备公钥对第一签名数据进行第一解密,并验证第一设备唯一标识、第一临时公钥和第一随机数是否与第一解密后的内容一致;若第一设备唯一标识、第一临时公钥和第一随机数与解密后的内容一致,第一物联网设备接收第二物联网设备发送的第二签名数据、第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数,第二签名数据由第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、生成的第二临时公钥以及生成的第二随机数进行数字签名得到的;最后第一物联网设备根据第二设备公钥对第二签名数据进行第二解密,并验证第二设备唯一标识、第二临时公钥和第二随机数是否与第二解密后的内容一致,若两次验证结果均为一致,则表示第一物联网设备与第二物联网设备之间的安全认证成功,若有一次验证结果为不一致,则表示第一物联网设备与第二物联网设备之间的安全认证成功;

在本申请实施例中,实现了第一物联网设备和第二物联网设备的双向安全认证,并且安全认证的过程不依赖于互联网,可以在第一物联网设备和第二物联网设备所在的内网中进行,因此可以实现第一物联网设备和第二物联网设备的离线安全认证;另外,在安全认证的过程中,第一物联网设备和第二互联网设备之间发送的信息内容远少于mbedtls中数字证书中包含的信息内容,占用的存储空间、cpu资源以及带宽资源均有限;更重要的是,安全认证过程中采用了第一随机数和第二随机数,任意两次安全认证过程中,第一随机数是不同的,第二随机数也是不同的,从而将安全认证过程维持在较高的安全等级;不仅如此,本申请实施例的方法可以适用于多种物联网平台和物联网设备,适用范围广。

附图说明

图1为本申请实施例中物联网设备所在的系统的一个架构示意图;

图2为本申请实施例中对象控制的方法一个实施例示意图;

图3为本申请实施例中烧录系统的架构示意图;

图4为本申请实施例中生成第一签名数据的实施例示意图;

图5为本申请实施例提供的一种物联网设备间离线安全认证的方法的另一个实施例示意图;

图6为本申请实施例提供的一种物联网设备间离线安全认证的装置的一个实施例示意图;

图7为本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例示意图。

具体实施方式

本申请实施例提供了一种物联网设备间离线安全认证的方法和装置,能够实现物联网设备间的离线安全认证,并且不会给物联网设备造成巨大压力。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应理解,本申请应用于安全认证的场景,具体地,可以应用于物联网设备间的离线安全认证,例如,在内网中包含多个物联网设备,其中两个物联网设备之间需要进行通信,在通信前,为了保证通信的安全性,在通信前需要对双方进行安全认证。

因此本申请提出了一种物联网设备间离线安全认证的方法,该方法应用于图1所示的物联网设备所在的系统,请参阅图1,图1为本申请实施例中物联网设备所在的系统的一个架构示意图,如图所示,该系统包含多个物联网设备,具体包括智能音箱、智能空调、智能烟雾报警器、智能门锁和智能插座,这些物联网设备位于同一内网中。需要说明的是,物联网设备不仅限于图1所示的设备,还可以包括其他物联网设备,在此不一一列举。在特定场景下,两个物联网设备之间需要进行通信。例如,用户通过向智能音箱发送语音指令,该语音指令为关闭空调,则智能音箱需要通过将该语音指令发送至智能空调。为了保证通信的安全性,智能音箱和智能空调之间需要进行安全认证。

为此,本申请实施例提供了一种物联网设备间离线安全认证的方法,请参阅图2,本申请实施例提供的一种物联网设备间离线安全认证的方法的信令示意图。

在该实施例中,方法包括:

101,第一物联网设备生成第一临时公钥和第一随机数。

需要说明的是,生成第一临时公钥和第一随机数的方法包括多种,本申请实施例在此不做限定。为了保证生成第一临时公钥和第一随机数的过程的安全性,生成过程可以在安全模块(secureelement,se)中进行,其中se是一台微型计算机,通过安全芯片和芯片操作系统(cos)实现数据安全存储和加解密运算等功能,并且可以封装成各种形式。

本申请实施例对第一随机数的形式不做限定,例如可以是二进制,可以是十进制,还可以是其他进制。

102,第一物联网设备根据预置的第一设备私钥对预置的第一设备唯一标识、第一临时公钥和第一随机数进行数字签名,生成第一签名数据。

需要说明的是,数字签名是较成熟的技术,故在此不做详述,其中利用数字签名技术生成第一签名数据的方法有多种,本申请实施例对此不做限定。

103,第一物联网设备向第二物联网设备发送第一签名数据、预置的第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数。

相应地,第二物联网设备接收第一物联网设备发送的第一签名数据、第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数。

其中第一设备标识可以包括多种信息,例如可以包括第一物联网设备所属的公司id、设备类型id以及设备id。

需要说明的是,第一物联网设备发送的第一签名数据、预置的第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数构成了第一物联网设备的数字证书,第二物联网设备在收到该数字证书后,会根据数字证书对第一物联网设备进行认证。

104、第二物联网设备根据第一设备公钥对第一签名数据进行第一解密,并验证第一设备唯一标识、第一临时公钥和第一随机数是否与第一解密后的内容一致。

在认证过程中,第二物联网设备先根据第一设备公钥对第一签名数据进行第一解密,由于第一签名数据是由第一设备唯一标识、第一临时公钥和第一随机数得到的,所以第一解密内容中应该包含第一设备唯一标识、第一临时公钥和第一随机数,而第一物联网设备还通过明文的形式将第一设备唯一标识、第一临时公钥和第一随机数发送给第二物联网设备,因此第二物联网设备通过验证第一设备唯一标识、第一临时公钥和第一随机数是否与第一解密后的内容一致,能够实现对第一物联网设备身份合法性的验证。

可以理解的是,为了进一步保证验证结果的可靠性,第一物联网设备还可以向第二物联网设备发送该数字证书的有效期限,若第二物联网设备接收到数字证书的时间超过了有效期限,则可以认为该数字证书无效,即第一物联网设备身份验证失败。除此之外,第一物联网设备还可以向第二物联网设备发送其他验证信息,以使第二物联网设备对第一物联网设备进行进一步验证,本申请实施例对其他验证信息不做限定。

105、若第一设备唯一标识、第一临时公钥和第一随机数与解密后的内容一致,则第二物联网设备生成第二临时公钥和第二随机数。

可以理解的是,若第一设备唯一标识、第一临时公钥和第一随机数与解密后的内容一致,则说明第一物联网设备的身份合法,然后第一物联网设备还需对第二物联网设备的身份合法性进行验证。所以第二物联网设备生成第二临时公钥和第二随机数,生成第二临时公钥和第二随机数的过程与生成第一临时公钥和第一随机数的过程类似,具体可参阅步骤101的相关说明进行理解。

106,第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、第二临时公钥和第二随机数进行数字签名,生成第二签名数据。

为了实现第一物联网设备对第二物联网设备的身份合法性进行验证,第二物联网设备生成第二签名数据,其中第二物联网设备生成第二签名数据的过程与第一物联网设备生成第一签名数据的过程类似,具体可参阅步骤102的相关说明进行理解。

107,第二物联网设备向第一物联网设备发送第二签名数据、预置的第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数。

为了实现第一物联网设备对第二物联网设备的身份合法性进行验证,第二物联网设备向第一物联网设备发送第二物联网设备的数字证书,该数字证书包括第二签名数据、第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数,相应地第一物联网设备需要接收第二物联网设备发送的第二签名数据、第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数。

108,第一物联网设备根据第二设备公钥对第二签名数据进行第二解密,并验证第二设备唯一标识、第二临时公钥和第二随机数是否与第二解密后的内容一致。

需要说明的是,第一物联网设备解密第二签名数据的过程与第二物联网设备解密第一签名数据的过程相同,具体可参阅第二物联网设备解密第一签名数据的过程。

若第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致,则说明第二物联网设备的身份合法;由于第二物联网设备在第一物联网设备的身份合法的情况下向第一物联网发送数字证书,因此若第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致,则说明第一物联网设备和第二物联网设备相互认证成功,此后,第一物联网设备和第二物联网设备之间可以进行通信。

在上述安全认证的过程中,在第一物联网设备中预置有第一设备私钥、第一设备公钥和第一设备唯一标识,同样地,第二物联网设备中预置有第二设备私钥、第二设备公钥和第二设备唯一标识,所以在执行步骤101之前,需要将上述信息分别烧录至第一物联网设备和第二物联网设备,下面将对烧录过程进行具体介绍。

请参阅图3,本申请实施例中烧录系统的架构示意图。如图3所示,该烧录系统包括烧录设备和服务器。以第一物联网设备的烧录过程为例,具体地,烧录设备可以生成第一设备公钥和第一设备私钥,服务器可以生成多种设备唯一标识,然后,烧录设备向服务器发送第一设备公钥,然后服务器会多种设备唯一标识中选取一个设备唯一标识作为第一设备唯一标识,并将第一设备标识发送烧录设备,然后由烧录设备将第一设备唯一标识、第一设备公钥和第一设备私钥烧录至第一物联网设备中。为了能够有效对抗暴力枚举和破解,阻止对设备规模或数量的探测,生成第一设备标识和第一设备唯一标识的过程都可以是随机的。

第二物联网设备的烧录过程与第一物联网的烧录过程类似,本申请实施例在此不做详述。另外,需要说明的是,下文中预置的信息也可以采用同样地方式,由烧录设备预先烧录至第一物联网设备或第二物联网设备中。

在本申请实施例中,实现了第一物联网设备和第二物联网设备的双向安全认证,并且安全认证的过程不依赖于互联网,可以在第一物联网设备和第二物联网设备所在的内网中进行,因此可以实现第一物联网设备和第二物联网设备的离线安全认证;另外,在安全认证的过程中,第一物联网设备和第二互联网设备之间发送的信息内容远少于mbedtls中数字证书中包含的信息内容,占用的存储空间、cpu资源以及带宽资源均有限;更重要的是,安全认证过程中采用了第一随机数和第二随机数,任意两次安全认证过程中,第一随机数是不同的,第二随机数也是不同的,从而将安全认证过程维持在较高的安全等级。

基于上述实施例可知,生成第一签名数据的方法包括多种,下面将以一种方法为例进行具体介绍。

在本申请实施例提供的一种物联网设备间离线安全认证的方法的另一个实施例中,如图4所示,本申请实施例中生成第一签名数据的实施例示意图,第一物联网设备根据预置的第一设备私钥对预置的第一设备唯一标识、第一临时公钥和第一随机数进行数字签名,生成第一签名数据包括:

201,第一物联网设备根据预置的第一设备唯一标识、第一临时公钥和第一随机数生成第一身份信息。

需要说明的是,生成第一身份信息的方法也包括多种。例如,可以将第一设备唯一标识、第一临时公钥和第一随机数直接拼接形成第一身份信息,还可以根据预设的转换规则,将第一设备唯一标识、第一临时公钥和第一随机数转换为第一身份信息,使得不能直接从第一身份信息中得到第一设备唯一标识、第一临时公钥和第一随机数。

若第一身份信息时通过转换规则转换得到的,那么第二物联网设备中还需预置仙童的转换规则,以便第二物联网设备能够根据转换规则从第一身份信息中得到第一设备唯一标识、第一临时公钥和第一随机数。

另外,本申请实施例对第一身份信息的格式不做限定,例如,第一身份信息可以为一段二进制数,也可以为一段十进制数。

202,第一物联网设备根据预置的第一设备私钥对第一身份信息进行数字签名,生成第一签名数据。

在本申请实施例中,数字签名的直接对象为第一身份信息,而生成第一签名数据为较成熟的技术,本申请实施例在此不做详述。

类似地,第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、第二临时公钥和第二随机数进行数字签名,生成第二签名数据包括:

第二物联网设备根据预置的第二设备唯一标识、第二临时公钥和第二随机数生成第二身份信息;

第二物联网设备根据预置的第二设备私钥对第二身份信息进行数字签名,生成第二签名数据。

生成第二签名数据的过程与生成第一签名数据的过程类似,具体可参照步骤201和步骤202的相关说明进行理解。

本申请实施例提供了一种生成第一签名数据和第二签名数据的可行性方案,实用性强。

为了规范物联网设备间的通信过程,例如并非任意两个物联网设备均可通信,可以增加相关认证过程,认证两个物联网设备之间能否互相通信。该认证过程有多种方式,例如,可以比对第一设备唯一标识中的公司id与第二设备唯一标识中的公司id是否相同,若相同,则认为第一物联网设备和第二物联网设备可以互相通信。

然而,由于第一设备唯一标识和第二设备唯一标识是通过明文发送的,容易被篡改,因此安全性较差,即认证结果的参考性不高。为了以安全性较高的方式对两个物联网设备之间能够互相通信进行认证,本申请实施例提供了另外一种方案,下面将进行具体介绍。请参阅图5,本申请实施例提供的一种物联网设备间离线安全认证的方法的另一个实施例示意图。

本申请实施例提供了一种物联网设备间离线安全认证的方法的另一个实施例,在该实施例中,除了包含步骤101至步骤105外,还可以包含以下步骤:

301,第一物联网设备向第二物联网设备发送预置的第三签名数据,第三签名数据由第一物联网设备的第一公司私钥对第一设备唯一标识和第一设备公钥进行数字签名得到的。

相应地,第二物联网设备接收第一物联网设备发送的预置的第三签名数据。

该第三签名数据也是预置的,因此可以通过前述实施例中的烧录设备预先将第三签名数据烧录至第一物联网设备中。

需要说明的是,本申请实施例对步骤301与步骤103的执行先后顺序不做具体限定,例如,可以先执行步骤301,再执行步骤103,也可以同时执行步骤103和步骤301,即将第三签名数据与第一签名数据、预置的第一设备公钥、第一设备唯一标识、第一临时公钥以及第一随机数一起发送至第二物联网设备。

302,第二物联网设备根据预置的第二公司公钥对第三签名数据进行第三解密,并验证第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致。

第三签名数据是由第一公司私钥进行数字签名得到的,因此若第二物联网设备通过第二公司公钥对第三签名数据解密,得到的解密内容与通过明文接收到的第一设备唯一标识和第一设备公钥一致,则说明第一公司私钥和第二公司公钥是匹配的。

需要说明的是,本申请实施例对步骤302与步骤104的执行先后顺序也不做具体限定。

303,若第一设备唯一标识、第一临时公钥和第一随机数与第二解密后的内容一致,且第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致,第二物联网设备向第一物联网设备发送预置的第四签名数据,第四签名数据由第二物联网设备的第二公司私钥对第二设备唯一标识和第二设备公钥进行数字签名得到的。

相应地,第一物联网设备接收第二物联网设备发送的预置的第四签名数据。

在本申请实施例中,当第一设备唯一标识、第一临时公钥和第一随机数与第二解密后的内容一致,且第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致时,第二物联网设备才将第四签名发送至第一物联网设备。

可以理解的是,由于申请实施例对步骤302与步骤104的执行先后顺序不做具体限定,所以若先执行步骤302,后执行步骤104,并且执行步骤302后的结果是第一设备唯一标识和第一设备公钥与第三解密后的内容不一致,则可以直接认为安全认证失败,即不需执行步骤104以及步骤303。

304,第一物联网设备根据第一公司公钥对第四签名数据进行第四解密,并验证第二设备唯一标识和第二设备公钥是否与第四解密后的内容一致。

可以理解的是,对第四签名数据进行第四解密的过程与对第三签名数据进行第三解密的过程类似,具体可参阅步骤302的相关说明进行理解。经过步骤302后,可以判断出第一公司私钥和第二公司公钥是否匹配,而经过步骤304后,若第二设备唯一标识和第二设备公钥是与第四解密后的内容一致,则说明第一公司公钥和第二公司秘钥是匹配的。

在本申请实施例中,若第二设备唯一标识和第二设备公钥是与第四解密后的内容一致,并且第一设备唯一标识、第一临时公钥和第一随机数与第二解密后的内容一致,则认为第一物联网设备和第二物联网设备可以进行互相通信。

在本申请实施例中,经过步骤304的验证后,第二设备唯一标识、所述第二临时公钥和所述第二随机数与第二解密后的内容一致,并且经过步骤105的验证后,第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致,则可以认为第一物联网设备与第二物联网设备互相认证成功。

因此,第一物联网设备和第二物联网设备可以进行互相通信,具体地通信方式可以采用明文进行通信,还可以通过秘钥对通信内容进行加密。下面进行具体说明。

305,第一物联网设备生成与第一临时公钥匹配的第一临时私钥。

需要说明的是,步骤305可以与步骤101同时执行,即同时生成第一临时公钥和第一临时私钥。

306,第一物联网设备则根据第一临时私钥、第二临时公钥、第一随机数和第二随机数生成第一会话秘钥,第一会话秘钥用于对第一物联网设备与第二物联网设备之间的通信数据进行加密和解密。

需要说明的是,在本申请实施例中,包括步骤304的验证,也包括步骤108的验证,因此需要当第二设备唯一标识和第二设备公钥与第四解密后的内容一致,且第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致的情况下,即在步骤304后执行步骤306生成第一会话秘钥。

而在其他实施例中,可能只存在步骤108的验证,而不存在步骤304的验证,此时,则只需第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致,即在步骤108后即可执行步骤306。

307,第二物联网设备生成与第二临时公钥匹配的第二临时私钥。

需要说明的是,步骤307可以与步骤105同时执行,即同时生成第一临时公钥和第一临时私钥。

308,第二物联网设备根据第二临时私钥、第一临时公钥、第一随机数和第二随机数生成第二会话秘钥,第二会话秘钥用于对第一物联网设备与第二物联网设备之间的通信数据进行加密和解密。

需要说明的是,在本申请实施例中,存在步骤304的验证,也包括步骤108的验证,第二物联网设备可以在执行完步骤303后直接执行步骤308生成第二会话秘钥,也可以在步骤304执行完成,且收到第一物联网设备的验证成功消息后,执行步骤308。

而在其他实施例中,可能只存在步骤108的验证,而不存在步骤304的验证,此时,则只需第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致,即在步骤108后可执行步骤308。

在本申请实施例中,通过步骤301至步骤304实现了第一物联网设备和第二物联网设备之间能否互相通信的安全认证,并且通过第一会话秘钥和第二会话秘钥可以实现对通信数据的加密传输,保证了通信的安全性。

请参阅图6,本申请实施例提供的一种物联网设备间离线安全认证的装置的一个实施例示意图。

本申请实施例提供一种物联网设备间离线安全认证的装置的一个实施例,包括:

第一生成单元401,用于生成第一临时公钥和第一随机数;

第二生成单元402,用于根据预置的第一设备私钥对预置的第一设备唯一标识、第一临时公钥和第一随机数进行数字签名,生成第一签名数据;

发送单元403,用于向第二物联网设备发送第一签名数据、预置的第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数,使得第二物联网设备根据第一设备公钥对第一签名数据进行第一解密,并验证第一设备唯一标识、第一临时公钥和第一随机数是否与第一解密后的内容一致;

接收单元404,用于当第一设备唯一标识、第一临时公钥和第一随机数与解密后的内容一致时,接收第二物联网设备发送的第二签名数据、第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数,第二签名数据由第二物联网设备根据预置的第二设备私钥对预置的第二设备唯一标识、生成的第二临时公钥以及生成的第二随机数进行数字签名得到的;

解密单元405,用于根据第二设备公钥对第二签名数据进行第二解密,并验证第二设备唯一标识、第二临时公钥和第二随机数是否与第二解密后的内容一致。

在本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例中,第二生成单元402,用于根据预置的第一设备唯一标识、第一临时公钥和第一随机数生成第一身份信息;

根据预置的第一设备私钥对第一身份信息进行数字签名,生成第一签名数据。

在本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例中,发送单元403,还用于向第二物联网设备发送预置的第三签名数据,使得第二物联网设备根据预置的第二公司公钥对第三签名数据进行第三解密,并验证第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致,第三签名数据由第一物联网设备的第一公司私钥对第一设备唯一标识和第一设备公钥进行数字签名得到的;

接收单元404,还用于当第一设备唯一标识、第一临时公钥和第一随机数与第二解密后的内容一致,且第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致时,接收第二物联网设备发送的预置的第四签名数据,第四签名数据由第二物联网设备的第二公司私钥对第二设备唯一标识和第二设备公钥进行数字签名得到的;

解密单元405,还用于根据第一公司公钥对第四签名数据进行第四解密,并验证第二设备唯一标识和第二设备公钥是否与第四解密后的内容一致。

在本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例中,第一生成单元401,还用于生成与第一临时公钥匹配的第一临时私钥;

装置还包括:第三生成单元406,用于当第二设备唯一标识、第二临时公钥和第二随机数与第二解密后的内容一致时,根据第一临时私钥、第二临时公钥、第一随机数和第二随机数生成第一会话秘钥,第一会话秘钥用于对第一物联网设备与第二物联网设备之间的通信数据进行加密和解密。

请参阅图7,本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例示意图。

本申请实施例提供一种物联网设备间离线安全认证的装置的另一个实施例,包括:

接收单元501,用于接收第一物联网设备发送的第一签名数据、第一设备公钥、第一设备唯一标识、第一临时公钥和第一随机数,其中第一临时公钥和第一随机数由第一物联网设备生成;

解密单元502,用于根据第一设备公钥对第一签名数据进行第一解密,并验证第一设备唯一标识、第一临时公钥和第一随机数是否与第一解密后的内容一致;

第一生成单元503,用于当第一设备唯一标识、第一临时公钥和第一随机数与解密后的内容一致时,生成第二临时公钥和第二随机数;

第二生成单元504,用于根据预置的第二设备私钥对预置的第二设备唯一标识、第二临时公钥和第二随机数进行数字签名,生成第二签名数据;

发送单元505,用于向第一物联网设备发送第二签名数据、预置的第二设备公钥、第二设备唯一标识、第二临时公钥和第二随机数,使得第一物联网设备根据第二设备公钥对第二签名数据进行第二解密,并验证第二设备唯一标识、第二临时公钥和第二随机数是否与第二解密后的内容一致。

在本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例中,第二生成单元504,用于根据预置的第二设备唯一标识、第二临时公钥和第二随机数生成第二身份信息;

根据预置的第二设备私钥对第二身份信息进行数字签名,生成第二签名数据。

在本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例中,接收单元501还用于接收第一物联网设备发送的预置的第三签名数据,第三签名数据由第一物联网设备的第一公司私钥对第一设备唯一标识和第一设备公钥进行数字签名得到的;

解密单元502,还用于根据预置的第二公司公钥对第三签名数据进行第三解密,并验证第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致;

发送单元505,还用于当第一设备唯一标识、第一临时公钥和第一随机数与第二解密后的内容一致,且第一设备唯一标识和第一设备公钥是否与第三解密后的内容一致时,向第一物联网设备发送预置的第四签名数据,使得第一物联网设备根据第一公司公钥对第四签名数据进行第四解密,并验证第二设备唯一标识和第二设备公钥是否与第四解密后的内容一致,第四签名数据由第二物联网设备的第二公司私钥对第二设备唯一标识和第二设备公钥进行数字签名得到的。

在本申请实施例提供的一种物联网设备间离线安全认证的装置的另一个实施例中,第一生成单元503还用于生成与第二临时公钥匹配的第二临时私钥;

装置还包括:第三生成单元506,用于根据第二临时私钥、第一临时公钥、第一随机数和第二随机数生成第二会话秘钥,第二会话秘钥用于对第一物联网设备与第二物联网设备之间的通信数据进行加密和解密。

本申请实施例还提供了一种物联网终端设备,包括:存储器、收发器、处理器以及总线系统;

其中,存储器用于存储程序;

处理器用于执行存储器中的程序,以实现本申请实施例中如图5和图6所示的联网设备间离线安全认证的装置的功能。

本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机实现本申请实施例中如图5和图6所示的联网设备间离线安全认证的装置的功能。

本申请实施例还提供了一种包括的计算机程序产品,当其在计算机上运行时使得计算机实现本申请实施例中如图5和图6所示的联网设备间离线安全认证的装置的功能。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1