节点访问方法、装置、相关设备及计算机可读存储介质与流程

专利2022-05-09  150


本发明实施例涉及通信技术领域,尤其涉及一种节点访问方法、装置、相关设备及计算机可读存储介质。



背景技术:

物联网可以看做是万物互联,网络的节点可能是机器设备、家庭电器、移动设备、网络摄像头等等一切能够利用网络通讯协议进行交互的物体。节点之间以互相约定好的协议进行通讯,节点间的交互和控制都是通过通讯通道传输消息指令来达成。其中,一个节点判断是否接受另一个节点的操作请求的依据通常就是身份权限。

然而,现有的节点访问方式通常是被访问节点在验证访问节点的身份权限正确之后,便会执行访问节点发送的访问消息中的所有操作指令,这样,导致节点的访问控制灵活性比较差。



技术实现要素:

本发明实施例提供一种节点访问方法、装置、相关设备及计算机可读存储介质,以解决现有技术中节点的访问控制灵活性比较差的问题。

第一方面,本发明实施例提供一种节点访问方法,应用于第一节点,所述方法包括:

获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

第二方面,本发明实施例还提供一种节点访问方法,应用于服务器,所述方法包括:

获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限。

将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

第三方面,本发明实施例还提供一种节点访问方法,应用于第二节点,所述方法包括:

获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

基于所述权限认证码,生成第一访问消息;

向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

第四方面,本发明实施例还提供一种节点访问装置,应用于第一节点,所述装置包括:

第一获取模块,用于获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

执行模块,用于执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

第五方面,本发明实施例还提供一种节点访问装置,应用于服务器,所述装置包括:

第二获取模块,用于获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限。

第一发送模块,用于将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

第六方面,本发明实施例还提供一种节点访问装置,应用于第二节点,所述装置包括:

第三获取模块,用于获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

生成模块,用于基于所述权限认证码,生成第一访问消息;

第二发送模块,用于向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

第七方面,本发明实施例还提供一种第一节点,包括第一处理器,第一存储器,存储在所述第一存储器上并可在所述第一处理器上运行的计算机程序,所述计算机程序被所述第一处理器执行时实现第一节点侧节点访问方法的步骤。

第八方面,本发明实施例提供一种服务器,包括第二处理器,第二存储器,存储在所述第二存储器上并可在所述第二处理器上运行的计算机程序,所述计算机程序被所述第二处理器执行时实现服务器侧节点访问方法的步骤。

第九方面,本发明实施例提供一种第二节点,包括第三处理器,第三存储器,存储在所述第三存储器上并可在所述第三处理器上运行的计算机程序,所述计算机程序被所述第三处理器执行时实现第二节点侧节点访问方法的步骤。

第十方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被第一处理器执行时实现第一节点侧节点访问方法的步骤,或者被第二处理器执行时实现服务器侧节点访问方法的步骤,或者被第三处理器执行时实现第二节点侧节点访问方法的步骤。

本发明实施例中,通过第一节点获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;执行所述第一访问消息中与所述目标操作权限匹配的操作指令。从而可以通过第一访问消息中携带的权限认证码来确定第二节点访问第一节点的目标操作权限,这样,第二节点只有得到第一节点的权限认证码才能控制第一节点完成具体操作;并且,第一节点还可以通过不同的权限认证码对访问节点的不同操作权限进行分开控制,进而提高节点访问权限控制的灵活性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获取其他的附图。

图1是本发明实施例提供的节点访问方法的流程示意图之一;

图2是本发明实施例提供的节点访问方法的流程示意图之二;

图3是本发明实施例提供的节点访问方法的流程示意图之三;

图4是节点模式中节点访问系统中相关设备的访问交互图;

图5是服务中心模式中节点访问系统中相关设备的访问交互图;

图6是本发明实施例提供的节点访问装置的结构示意图之一;

图7是本发明实施例提供的节点访问装置的结构示意图之二;

图8是本发明实施例提供的节点访问装置的结构示意图之三;

图9是本发明实施例提供的第一节点的硬件结构示意图;

图10是本发明实施例提供的服务器的硬件结构示意图;

图11是本发明实施例提供的第二节点的硬件结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。

下面首先对本发明实施例提供的节点访问方法进行说明。

需要说明的是,本发明实施例提供的节点访问方法可以应用于节点访问系统中,所述节点访问系统可以有两种运行模块,第一种运行模式可以称之为节点模式,在该节点模式中,访问节点(第二节点)可以直接拿到被访问节点(第一节点)的通讯证书对应的私钥,进行签名后发送给第一节点。在该节点模式中,所述节点访问系统至少包括第一节点和第二节点,而所述第一节点和第二节点距离较远时,所述节点访问系统还包括服务器,所述服务器用于中转第二节点发送的第一访问消息。

第二种运行模式可以称之为服务中心模式,在该服务中心模式中,第一节点的通讯证书对应的私钥仅保存在服务器中,第二节点将请求访问第二节点的消息发送给服务器,服务器基于第一节点的通讯证书对应的私钥进行签名之后,发送给第二节点。在该服务中心模式中,所述节点访问系统包括第一节点、第二节点和服务器。

参见图1,图中示出了本发明实施例提供的节点访问方法的流程示意图之一,应用于第一节点。如图1所示,该方法可以包括如下步骤:

步骤101,获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

步骤102,执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

本实施例的节点访问方法应用于第一节点,用于获取针对第二节点的权限认证结果,并基于权限认证结果中所指示的第二节点具备的目标操作权限,执行第一访问消息中与目标操作权限匹配的操作指令。

在节点模式中,所述权限认证结果由所述第一节点基于所述第二节点发送的第一访问消息中携带的权限认证结果进行验证得到。而在服务中心模式中,所述权限认证结果由服务器基于所述第二节点发送的第一访问消息中携带的权限认证结果进行验证得到。

以下分别对这两种模式进行详细说明。

在节点模式中,可选的,所述步骤101具体包括:

接收第二节点的第一访问消息,所述第一访问消息中携带有权限认证码;

基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。

其中,在近程通信中,所述第二节点可以与第一节点直接通信,接收第二节点的第一访问消息可以理解为接收第二节点发送的第一访问消息,在远程通信中,所述第二节点需要通过服务器中转第二节点发送的第一访问消息至第一节点,接收第二节点的第一访问消息可以理解为接收服务器中转的第二节点发送的第一访问消息。

所述第一节点基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。具体的,所述第一节点基于权限认证码类型和节点预先的配置,对所述第二节点的操作权限进行验证,得到权限认证结果。

其中,所述权限认证码类型可以分为三种类型。

第一种类型可以为固定的秘密字符串,可选的,若所述权限认证码的类型为固定的秘密字符串;所述基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果,包括:

基于预先获取的第一操作权限列表对所述权限认证码进行匹配;

在匹配成功的情况下,将所述第一操作权限列表中目标秘密字符串对应的操作权限确定为所述第二节点具备的目标操作权限;其中,所述第一操作权限列表中包括至少一个秘密字符串和每个秘密字符串对应的操作权限,所述目标秘密字符串为所述第一操作权限列表中与所述权限认证结果匹配的秘密字符串。

所述第一节点出厂时可以预先配置第一操作权限列表,所述第一操作权限列表中包括至少一个秘密字符串和每个秘密字符串对应的操作权限,如此,第一节点可以通过不同的权限认证码对访问节点的不同操作权限进行分开控制。

可选的,所述第一操作权限列表中还可以包括每个秘密字符串对应的节点,即所述第一节点还可以通过秘密字符串对不同访问节点的操作权限分开控制。比如,针对秘密字符串a,其对应第二节点a1,即只有第二节点a1基于秘密字符串a才具备秘密字符串a对应的操作权限,而第二节点a2,基于秘密字符串a相应不具备秘密字符串a对应的操作权限。如此,可以更进一步的提高节点访问权限控制的灵活性。

所述第一节点可以基于所述第一操作权限列表对所述权限认证码进行匹配,在匹配成功的情况下,将所述第一操作权限列表中目标秘密字符串对应的操作权限确定为所述第二节点具备的目标操作权限。

可选的,所述第一节点还可以进一步的基于所述第二节点的标识信息如节点身份识别码id对所述第二节点进行匹配,以确定所述第二节点是否具备目标秘密字符串对应的操作权限。

第二种类型可以为动态应答码,可选的,若所述权限认证码的类型为动态应答码;所述基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果,包括:

将所述权限认证码与目标动态应答码进行比对;其中,所述目标动态应答码为服务器发送给所述第一节点的动态应答码,所述目标动态应答码为所述服务器在接收到所述第二节点请求访问所述第一节点的消息时随机生成的动态应答码;

在比对成功的情况下,将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限。

第二节点在请求访问第一节点时,组织登录消息至服务器,服务器在接收到所述第二节点请求访问所述第一节点的消息时可以随机生成动态应答码给第二节点,同时也可以将生成的动态应答码发送给第一节点。

第一节点将所述权限认证码与目标动态应答码进行比对;在比对成功的情况下,将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限。比如,智能锁(第一节点)预先设置开门的操作权限需要在移动终端(第二节点)对服务器生成的动态应答码应答正确的情况下,第二节点才具备开门的操作权限。

另外,可选的,所述将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限之前,所述方法还包括:

获取所述第二节点针对所述权限认证码的应答时间;

确定所述应答时间是否处于预设时间内;

在所述应答时间处于所述预设时间内的情况下,执行所述将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限的步骤。

也就是说,第一节点设置有动态应答码的应答时间,只有第二节点在预设时间内应答了动态应答码,且应答正确的情况下,所述第二节点才具备规定的操作权限。如此,可以避免第二节点的访问消息被拦截,提高第一节点的访问安全性。

所述预设时间可以根据实际情况进行设置,比如,可以设置为服务器在发送动态应答码的一分钟内,也可以设置为服务器在发送动态应答码的一天内,此处不做具体限制。

第三种类型可以为空,可选的,若所述权限认证码的类型为空;所述基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果,包括:

将预先设置的权限认证码类型为空对应的操作权限确定为所述第二节点具备的目标操作权限;或者,

确定所述第二节点具备的目标操作权限为所述第一节点可访问的最大操作权限。

所述第一节点可以允许第二节点发送一个类型为空的权限认证码,所述权限认证码的类型为空可以理解为第一节点无需验证权限认证码,即可以具备所设置的操作权限,该设置的操作权限可以为所述第一节点可访问的最大操作权限。也可以理解为服务器已经验证过第二节点发送的权限认证码,并发送给第一节点一个类型为空的权限认证码,默认已经验证了第二节点具备第一访问消息中所有操作指令的操作权限。

在服务中心模式中,可选的,所述步骤101具体包括:

接收服务器发送的第二访问消息;其中,所述第二访问消息包括针对第二节点的权限认证结果,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的。

在服务中心模式中,所述服务器验证第二节点发送的第一访问消息中携带的权限认证码与第一节点相同,此处不再对其进行赘述。

在步骤102中,所述第一节点相应执行所述第一访问消息中与所述目标操作权限匹配的操作指令,而超过权限的操作指令予以忽略。

本发明实施例中,通过第一节点获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;执行所述第一访问消息中与所述目标操作权限匹配的操作指令。从而可以通过第一访问消息中携带的权限认证码来确定第二节点访问第一节点的目标操作权限,这样,第二节点只有得到第一节点的权限认证码才能控制第一节点完成具体操作;并且,第一节点还可以通过不同的权限认证码对访问节点的不同操作权限进行分开控制,进而提高节点访问权限控制的灵活性。

进一步的,在进行操作权限认证之前,所述第一节点需要对所述第二节点进行身份认证。为保证访问安全性,所述第二节点需要将访问第一节点的消息经过加密,再经过签名即可以向第一节点发送访问消息。相应的,所述第一节点先进行解签,再进行解密,在解签和解密都成功的情况下,即完成了身份认证,允许第二节点对其进行访问。

可选的,所述第一访问消息中包括所述第二节点基于所述第一节点的通讯证书对应的私钥所生成的第一签名信息;所述获取针对第二节点的权限认证结果之前,所述方法还包括:

基于预先获取的通讯证书集对所述第一签名信息进行解签;其中,所述通讯证书集包括至少一个通讯证书,所述通讯证书用于验证所述第二节点的身份有效性;

在解签成功的情况下,执行所述获取针对第二节点的权限认证结果的步骤。

所述通讯证书可以理解为对节点发送的访问消息进行签名的证书,作用是发送消息的节点用通讯证书对应的私钥对消息进行签名,接收消息的节点使用通讯证书对消息进行验证。因此,通讯证书可以用来验证所述第二节点的身份有效性,在解签成功的情况下,即可确定所述第二节点发送的访问消息为合法消息,否则通讯失败,不予理会所述第二节点发送的访问消息。

所述通讯证书集中包括第一节点信任的通讯证书,第一节点信任的通讯证书是在第一节点初始化过程中注册至所述第一节点中的通讯证书。

为使第二节点能够访问所述第一节点,所述第二节点与第一节点的通讯证书需要预先写入至通讯证书集中。可选的,所述基于预先获取的通讯证书集对所述第一签名信息进行解签之前,所述方法还包括:

接收所述第二节点发送的写入消息;其中,所述写入消息中包括所述第二节点生成的通讯证书;

在所述写入消息验证通过的情况下,将所述第二节点生成的通讯证书写入至所述第一节点的通讯证书集中。

所述第一节点在初始化状态时,接收所述第二节点发送的写入消息。第一节点验证写入数据和状态是否正确,在验证通过的情况下,将所述第二节点生成的通讯证书写入所述第一节点的通讯证书集中。

可选的,所述第一访问消息为所述第二节点基于预先获取的所述第一节点的第一加密公钥对所述权限认证码进行加密后所生成的访问消息;所述获取针对第二节点的权限认证结果,包括:

基于所述第一加密公钥对应的第一加密私钥对所述第一访问消息进行解密,获得解密结果;

在所述解密结果表明校验成功的情况下,从解密后的第一访问消息中获取针对第二节点的权限认证结果。

可选的,所述执行所述第一访问消息中与所述目标操作权限匹配的操作指令之后,所述方法还包括:

基于所述第二节点的第二加密公钥对操作结果消息进行加密;其中,所述操作结果消息包括所述第一访问消息中操作指令的执行结果;

基于所述第一节点的签名私钥对加密后的操作结果消息进行签名,获得所述第一节点的第二签名信息;

向所述第二节点发送返回结果消息;其中,所述返回结果消息包括所述加密后的操作结果消息和所述第一节点的第二签名信息。

所述操作结果消息包括所述第一访问消息中操作指令的执行结果,比如,所述第一访问消息中包括操作指令a1、操作指令a2和操作指令a3,操作指令a1和操作指令a2执行结果为“成功”,而操作指令a3为超过权限的操作指令,其执行结果可以为“失败”,且失败的理由可以为超过权限,不响应执行。

本发明实施例中,可以通过验证访问消息的通讯证书签名来实现只接受具有通讯证书私钥的节点访问,通过访问消息的权限认证码来确定访问具体操作权限。这样,可以实现把服务中心建立在共有云上,控制服务中心并不能控制节点,只有得到对应节点的权限认证码才能完成具体操作,从而可以实现让特定节点只访问特定功能,使得节点的访问操作权限可以灵活控制。

并且,节点访问系统可兼容服务中心模式和节点模式的分布式访问权限控制,能适应不同规模和模式的网络结构。

另外,访问消息用被访问节点的设备加密证书的公钥进行加密,服务中心不能获取到访问消息的具体内容,使得服务中心的转发可以实现局域网的穿透,从而使得被访问节点可以不用具备固定的广域网络地址。

需要说明的是,本发明实施例中介绍的多种实施例,彼此可以相互结合实现,也可以单独实现,对此本发明实施例不作限定。

参见图2,图中示出了本发明实施例提供的节点访问方法的流程示意图之二,应用于服务器。如图2所示,该方法可以包括如下步骤:

步骤201,获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

步骤202,将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

在步骤201中,所述节点访问系统的模式为服务中心模式,第二节点在访问第一节点时必须借助于服务器。具体的,所述步骤201具体包括:

接收第二节点发送的第一访问消息;其中,所述第一访问消息中携带有权限认证码;

基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。

其中,基于所述权限认证码对所述第二节点的操作权限进行验证,得到权限认证结果的过程与第一节点相同,此处不再对其赘述。

在步骤202中,将携带有权限认证结果的第二访问消息发送给第一节点。其中,所述权限认证结果可以为第二节点所具备的目标操作权限,也可以为类型为空的权限认证码,这里不做具体限定。

服务中心模式与节点模式不同的是,服务中心模式中,第一节点的通讯证书对应的私钥仅存在于服务器中,因此,所述服务器在获取针对第二节点的权限认证结果之前,还需要对所述第二节点进行身份认证。

可选的,所述第一访问消息中包括所述第二节点基于所述第二节点的签名私钥所生成的第三签名信息;所述获取针对第二节点的权限认证结果之前,所述方法还包括:

获取所述第一节点的关联列表;其中,所述关联列表中包括所述第一节点关联的其他节点的签名公钥;

基于所述关联列表对所述第三签名信息进行解签;

在解签成功的情况下,执行所述获取针对第二节点的权限认证结果的步骤。

服务器中存储有可通讯节点之间的关联列表,比如,节点a和节点b可以通讯,则将节点a和节点b的签名公钥进行关联存储。因此,可以基于第一节点的签名公钥从服务器中获取第一节点的关联列表,所述关联列表中包括第一节点的签名公钥以及所述第一节点关联的其他节点的签名公钥。

为使第二节点能够访问所述第一节点,所述第二节点的签名公钥需要预先注册至第一节点中,所述第一节点将第二节点关联注册至服务器。可选的,所述获取所述第一节点的关联列表之前,所述方法还包括:

接收所述第一节点发送的注册消息;其中,所述注册消息包括所述第二节点的签名公钥和所述第一节点的签名公钥;

将所述第二节点的签名公钥和所述第一节点的签名公钥进行关联存储。

可选的,所述第二访问消息中还包括所述服务器基于所述第一节点的通讯证书对应的私钥所生成的第四签名信息;所述获取针对第二节点的权限认证结果之后,所述方法还包括:

基于所述第一节点的通讯证书对应的私钥对携带有所述权限认证结果的消息进行签名,生成所述第二访问消息;其中,所述第二访问消息中包括所述第四签名信息。

需要说明的是,本实施例作为图1所示的实施例对应的服务器的实施方式,其具体的实施方式可以参见图1所示的实施例相关说明,以及达到相同的有益效果,为了避免重复说明,此处不再赘述。

参见图3,图中示出了本发明实施例提供的节点访问方法的流程示意图之三,应用于第二节点。如图3所示,该方法可以包括如下步骤:

步骤301,获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

步骤302,基于所述权限认证码,生成第一访问消息;

步骤303,向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

可选的,所述向所述第一节点发送所述第一访问消息之后,所述方法还包括:

接收所述第一节点的返回结果消息;其中,所述返回结果消息包括所述第一访问消息中操作指令的执行结果。

需要说明的是,本实施例作为图1所示的实施例对应的第二节点的实施方式,其具体的实施方式可以参见图1所示的实施例相关说明,以及达到相同的有益效果,为了避免重复说明,此处不再赘述。

为了更好的理解本发明,以下通过具体实例对本发明的具体实现过程进行详细说明。

节点出厂时由物联网统一身份认证中心颁发一个设备身份证书即签名密钥对(包括签名私钥和对应的签名公钥)和设备加密证书即加密密钥对(包括加密私钥和对应的加密公钥),设备身份证书用来唯一标识节点。

节点连接到物联网络中时用设备身份证书向服务中心注册此节点,将设备信息包括设备加密证书注册到服务中心。其他节点向此节点发送消息时,使用设备加密证书对需要发送的消息加密,再用通讯证书对加密的消息签名,签名信息和加密过的消息组成完整的访问消息。

节点的通讯证书对应的私钥可以存放在访问节点上(如用户的手机上),或者存放在统一身份认证中心,由认证中心对节点做身份认证后用被访问节点的通讯证书对应的私钥对消息做签名生成最终的访问消息。

节点的权限认证码如秘密字符串可以在注册时保存到服务中心,由服务中心发给具有权限的其他节点,也可以由其他节点用其他途径(如从节点资料中)直接从对应的节点获取。比如,手机控制家中的智能家居可以使用此种方式,从智能家居的外壳上获取秘密字符串和节点的设备加密证书,通过因特网访问服务中心,控制智能家居。此种方式由于决定具体访问权限的秘密字符串只存在于控制的手机节点上,物联网中的其他节点都不具备访问的智能家居的完整权限。该种方式中,服务中心主要起通讯证书部署和消息转发局域网节点穿透的作用。如此,通过把权限认证码和设备加密证书通过节点直接获取,而不通过服务中心获取,可完美实现用户对节点的控制拥有高强度的安全性。

当节点规模较小,节点之间通讯链路可以不通过服务中心中转直接连接时,节点保存对方节点的设备加密证书和通讯证书,节点之间可以直接通讯。

节点验证其他节点身份的证书以下简称节点通讯证书,可以在节点接入网络初始化时由初始化程序写入。过程为初始化程序从节点厂商获取设备初始化密钥,将准备好的节点通讯证书用设备初始化密钥加密后通过节点设计的通讯方式传入,节点对传入的数据用内置的初始化密钥进行解密和数据合法性验证,成功则存储通讯证书。加密使用对称算法如sm4,数据合法性验证使用消息验证码hmac。

节点的初始化密钥可以附着在节点发行的资料中,节点的通讯证书写入完成后,如需要重新写入,需要恢复设备的出厂设置状态才可以进行,设备根据本身的用途设计不同的恢复出厂状态方式。

参见图4,图4示出了节点模式中节点访问系统中相关设备的访问交互图,如图4所示,包括以下步骤:

首先,第二节点在第一节点初始化时,将生成的通讯证书写入至第一节点,同时,第一节点可以连接服务中心,将第一节点的设备身份证书、通讯证书和设备加密证书注册到服务中心。

然后,第二节点发送访问消息。

其中,所述访问消息中可以包括密文操作指令即加密后的操作指令、基于所述第一节点的通讯证书对应的私钥所生成的第一签名信息和权限认证码,所述访问消息中还可以包括第一节点的设备身份证书,以在远程通信中,服务中心根据第一节点的设备身份证书查找到第一节点的网络地址,并基于第一节点的网络地址将访问消息发送给第一节点。

在近程通信中,所述第二节点直接将访问消息发送给第一节点;在远程通信中,所述第二节点将访问消息发送给服务中心,服务中心基于第一节点的设备身份证书查找到第一节点的网络地址,基于第一节点的网络地址将访问消息发送给第一节点。

接着,第一节点基于访问消息对第二节点进行身份认证。

其中,所述第一节点首先基于预先获取的通讯证书集对所述第一签名信息进行解签,在解签成功的情况下,对密文操作指令进行解密,获得明文操作指令即解密后的操作指令,在解密结果表明校验成功的情况下,第二节点的身份认证成功。

接着,第一节点在对第二节点身份认证成功的情况下,基于访问消息中的权限认证码,确定第二节点具备的目标操作权限。

接着,第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令,获得操作结果消息。

其中,操作结果消息包括所述第一访问消息中操作指令的执行结果。

接着,第一节点将操作结果消息进行加密和签名之后,生成返回结果消息。

其中,所述返回结果消息包括所述加密后的操作结果消息和所述第一节点的第二签名信息。

最后,第一节点向第二节点发送返回结果消息。

在近程通信中,第一节点直接将返回结果消息发送给第二节点;在远程通信中,第一节点将返回结果消息发送给服务中心,服务中心基于第二节点的设备身份证书查找到第二节点的网络地址,基于第二节点的网络地址将返回结果消息发送给第二节点。

参见图5,图5示出了服务中心模式中节点访问系统中相关设备的访问交互图,如图5所示,包括以下步骤:

首先,建立第一节点和第二节点的近程通信,第一节点在初始化状态获取第二节点的设备身份证书,将第一节点的设备身份证书和第二节点的设备身份证书注册至服务中心,服务中心绑定第一节点和第二节点。

然后,第二节点发送访问消息给服务中心。

其中,所述访问消息中可以包括密文操作指令即加密后的操作指令、基于所述第二节点的设备身份证书所生成的第三签名信息和权限认证码,所述访问消息中还可以包括第一节点的设备身份证书,以使服务中心根据第一节点的设备身份证书获取所述第一节点所绑定的节点,同时根据第一节点的设备身份证书查找到第一节点的网络地址,并基于第一节点的网络地址将访问消息发送给第一节点。

接着,服务中心查找到第一节点的关联列表对第二节点进行身份认证。

其中,所述第一节点的关联列表中包括有与第一节点绑定的其他节点的设备身份证书。基于所述关联列表对所述第三签名信息进行解签,在解签成功的情况下,确定第二节点的身份认证成功。

接着,服务中心基于访问消息中的权限认证码,对第二节点的操作权限进行验证,生成权限认证结果,所述权限认证结果指示有所述第二节点具备的目标操作权限。

接着,服务中心基于第一节点的通讯证书对应的私钥对携带有权限认证结果的消息进行签名,生成另一访问消息。

其中,该另一访问消息中包括服务中心基于所述第一节点的通讯证书对应的私钥所生成的第四签名信息。

接着,服务中心将另一访问消息发送给第一节点。

接着,第一节点在对第二节点身份认证成功的情况下,基于另一访问消息中的权限认证结果,确定第二节点具备的目标操作权限。

接着,第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令,获得操作结果消息。

其中,操作结果消息包括所述第一访问消息中操作指令的执行结果。

接着,第一节点将操作结果消息进行加密和签名之后,生成返回结果消息。

其中,所述返回结果消息包括所述加密后的操作结果消息和所述第一节点的第二签名信息。

接着,第一节点将返回结果消息发送给服务中心。

最后,服务中心将返回结果消息发送给第二节点。

以下举例以第一节点为门锁,第二节点为手机为具体实施例进行详细说明。

应用实施例一(节点模式下的门锁控制)

场景描述:门锁通过连接路由器wifi上网,用手机客户端程序控制门锁开门。

门锁初始化。具体的,从门锁资料中获取到初始化密码,用具有蓝牙功能的手机连接门锁,用手机的门锁控制app生成通讯证书,用初始化密码加密处理后写入门锁。相应的,门锁内部验证写入数据和状态,成功写入通讯证书。门锁连接服务中心,生成注册消息,用设备身份证书签名,将门锁的设备身份证书,通讯证书和设备加密证书注册到服务中心,并和服务中心保持不间断的网络连接。

从门锁资料中获取秘密字符串,门锁的设备加密证书和设备身份证书保存在手机的门锁控制app中。

用户通过手机的门锁控制app开门。具体的,手机的门锁控制app生成开门消息,开门消息生成需要用到手机的设备加密证书,秘密字符串和门锁的设备加密证书,用门锁的设备加密证书公钥对消息加密,和门锁的设备身份证书一起组成开门消息,再用通讯证书对应的私钥做签名。

如果手机能直接连接门锁即近程通信,则手机直接将此开门消息发送给门锁。如果手机不能直接连接门锁即远程通信,则将此开门消息发送给服务中心,服务中心根据门锁的设备身份证书找到门锁的网络地址,将开门消息发送给门锁。

门锁接收到开门消息后用通讯证书验证签名,并用门锁的设备加密证书私钥解密,验证成功且解密校验通过后,检查秘密字符串是否正确,正确后执行开门动作,并基于操作结果消息,生成返回结果消息。其中,返回结果消息使用手机的设备加密证书公钥加密,并使用门锁的设备身份证书签名。

近程通信时,直接将返回结果消息发送给手机,远程通信时,将返回结果消息发送给服务中心,服务中心再返回给手机。

手机的门锁控制app获取开门结果。具体的,手机使用门锁的设备身份证书验证收到的返回结果消息,验证通过后使用手机的设备加密证书对应的私钥进行解密,得到操作结果消息。

应用实施例二(服务中心模式下的门锁控制)

场景描述:门锁出厂预制有门锁的设备身份证书和对应私钥,设备加密证书和对应私钥,信任的通讯证书。门锁通过网络连接服务中心,门锁信任的通讯证书私钥只存储在服务中心,服务中心对通过认证的节点信息用通讯证书签名发给门锁,服务中心对节点认证使用节点的设备身份证书来进行,节点的设备身份证书在服务中心的初次存入使用门锁的设备身份证书来验证。门锁的设备身份证书由厂商上传到服务中心,服务中心使用预制的厂商证书进行验证。

门锁初始化。用户使用手机通过蓝牙和门锁连接,为门锁设置好局域网网络连接。手机的门锁控制app从个人证书中心下载设备身份证书,私钥保存在手机的门锁控制app中或安全密钥模块中。从门锁资料中获取门锁初始化密钥,用初始化密钥对手机的设备身份证书加密后发送给门锁。门锁验证通过后,提取手机的设备身份证书,加上门锁的设备加密证书和设备身份证书组成注册信息,用门锁的设备身份证书签名后发送给服务中心注册。服务中心验证成功后保存门锁的设备加密证书,将手机的设备身份证书和门锁的设备身份证书进行绑定。

从门锁资料中获取秘密字符串,门锁的设备加密证书和设备身份证书保存在手机的门锁控制app中。

手机的门锁控制app远程开门。具体的,手机的门锁控制app生成开门消息,用门锁的设备加密证书加密,和秘密字符串、门锁的设备身份证书一起组成开门消息,用手机的设备身份证书对开门消息签名后发送给服务中心。服务中心通过门锁的设备身份证书和手机的设备身份证书的绑定关系,得到手机的设备身份证书,并使用手机的设备身份证书对开门消息进行验证,验证通过后,基于秘密字符串对手机的操作权限进行验证,验证通过之后,生成权限认证结果,以告知门锁该手机是否具有开门的操作权限。

进一步的,服务中心使用门锁的通讯证书私钥对携带有权限认证结果的开门消息进行签名后发送给门锁,接收返回结果消息,并转发给手机。

手机的门锁控制app获取开门结果。具体的,手机使用门锁的设备身份证书验证收到的返回结果消息,验证通过后使用手机的设备加密证书对应的私钥进行解密,得到操作结果消息。

另外,手机的门锁控制app可以发送待签名的授权消息给门锁,门锁对接收的授权消息用设备身份证书签名后返回结果给手机的门锁控制app,在返回结果为门锁同意授权的情况下,手机的门锁控制app向服务中心发送此签名后的授权消息之后,服务中心验证通过之后可实现为另一用户添加门锁控制权限。

下面对本发明实施例提供的节点访问装置进行说明。

参见图6,图中示出了本发明实施例提供的节点访问装置的结构示意图之一。应用于第一节点,如图6所示,节点访问装置600包括:

第一获取模块601,用于获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

执行模块602,用于执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

可选的,所述第一获取模块601,包括:

第一接收单元,用于接收第二节点的第一访问消息,所述第一访问消息中携带有权限认证码;

验证单元,用于基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。

可选的,所述第一获取模块601,包括:

第二接收单元,用于接收服务器发送的第二访问消息;其中,所述第二访问消息包括针对第二节点的权限认证结果,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的。

可选的,若所述权限认证码的类型为固定的秘密字符串;所述验证单元,具体用于基于预先获取的第一操作权限列表对所述权限认证码进行匹配;在匹配成功的情况下,将所述第一操作权限列表中目标秘密字符串对应的操作权限确定为所述第二节点具备的目标操作权限;其中,所述第一操作权限列表中包括至少一个秘密字符串和每个秘密字符串对应的操作权限,所述目标秘密字符串为所述第一操作权限列表中与所述权限认证结果匹配的秘密字符串。

可选的,若所述权限认证码的类型为动态应答码;所述验证单元,具体用于将所述权限认证码与目标动态应答码进行比对;其中,所述目标动态应答码为服务器发送给所述第一节点的动态应答码,所述目标动态应答码为所述服务器在接收到所述第二节点请求访问所述第一节点的消息时随机生成的动态应答码;在比对成功的情况下,将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限。

可选的,所述验证单元,还用于获取所述第二节点针对所述权限认证码的应答时间;确定所述应答时间是否处于预设时间内;在所述应答时间处于所述预设时间内的情况下,执行所述将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限的步骤。

可选的,若所述权限认证码的类型为空;所述验证单元,具体用于将预先设置的权限认证码类型为空对应的操作权限确定为所述第二节点具备的目标操作权限;或者,确定所述第二节点具备的目标操作权限为所述第一节点可访问的最大操作权限。

可选的,所述第一访问消息中包括所述第二节点基于所述第一节点的通讯证书对应的私钥所生成的第一签名信息;所述节点访问装置600还包括:

第一解签模块,用于基于预先获取的通讯证书集对所述第一签名信息进行解签;其中,所述通讯证书集包括至少一个通讯证书,所述通讯证书用于验证所述第二节点的身份有效性;

第一触发模块,用于在解签成功的情况下,触发所述第一获取模块601。

可选的,所述节点访问装置600还包括:

第一接收模块,用于接收所述第二节点发送的写入消息;其中,所述写入消息中包括所述第二节点生成的通讯证书;

写入模块,用于在所述写入消息验证通过的情况下,将所述第二节点生成的通讯证书写入至所述第一节点的通讯证书集中。

可选的,所述第一访问消息为所述第二节点基于预先获取的所述第一节点的第一加密公钥对所述权限认证码进行加密后所生成的访问消息;所述第一获取模块601还包括:

第一获取单元,用于基于所述第一加密公钥对应的第一加密私钥对所述第一访问消息进行解密,获得解密结果;

第二获取单元,用于在所述解密结果表明校验成功的情况下,从解密后的第一访问消息中获取针对第二节点的权限认证结果。

可选的,所述节点访问装置600,还包括:

加密模块,用于基于所述第二节点的第二加密公钥对操作结果消息进行加密;其中,所述操作结果消息包括所述第一访问消息中操作指令的执行结果;

第一签名模块,用于基于所述第一节点的签名私钥对加密后的操作结果消息进行签名,获得所述第一节点的第二签名信息;

第三发送模块,用于向所述第二节点发送返回结果消息;其中,所述返回结果消息包括所述加密后的操作结果消息和所述第一节点的第二签名信息。

上述节点访问装置600能实现上述第一节点侧节点访问方法实施例中第一节点实现的各个过程,并能达到相同的技术效果,为避免重复,这里不再赘述。

参见图7,图中示出了本发明实施例提供的节点访问装置的结构示意图之二。应用于服务器,如图7所示,节点访问装置700包括:

第二获取模块701,用于获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限。

第一发送模块702,用于将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

可选的,所述第二获取模块701,具体用于接收第二节点发送的第一访问消息;其中,所述第一访问消息中携带有权限认证码;基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。

可选的,所述第一访问消息中包括所述第二节点基于所述第二节点的签名私钥所生成的第三签名信息;所述节点访问装置700还包括:

第三获取模块,用于获取所述第一节点的关联列表;其中,所述关联列表中包括所述第一节点关联的其他节点的签名公钥;

第二解签模块,用于基于所述关联列表对所述第三签名信息进行解签;

第二触发模块,用于在解签成功的情况下,触发所述第二获取模块701。

可选的,所述节点访问装置700还包括:

第二接收模块,用于接收所述第一节点发送的注册消息;其中,所述注册消息包括所述第二节点的签名公钥和所述第一节点的签名公钥;

关联存储模块,用于将所述第二节点的签名公钥和所述第一节点的签名公钥进行关联存储。

可选的,所述第二访问消息中还包括所述服务器基于所述第一节点的通讯证书对应的私钥所生成的第四签名信息;所述节点访问装置700还包括:

第二签名模块,用于基于所述第一节点的通讯证书对应的私钥对携带有所述权限认证结果的消息进行签名,生成所述第二访问消息;其中,所述第二访问消息中包括所述第四签名信息。

上述节点访问装置700能实现上述服务器侧节点访问方法实施例中服务器实现的各个过程,并能达到相同的技术效果,为避免重复,这里不再赘述。

参见图8,图中示出了本发明实施例提供的节点访问装置的结构示意图之三。应用于第二节点,如图8所示,节点访问装置800包括:

第三获取模块801,用于获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

生成模块802,用于基于所述权限认证码,生成第一访问消息;

第二发送模块803,用于向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

可选的,所述节点访问装置800,还包括:

第三接收模块,用于接收所述第一节点的返回结果消息;其中,所述返回结果消息包括所述第一访问消息中操作指令的执行结果。

上述节点访问装置800能实现上述第二节点侧节点访问方法实施例中第二节点实现的各个过程,并能达到相同的技术效果,为避免重复,这里不再赘述。

参见图9,图中示出了本发明实施例提供的第一节点的硬件结构示意图。如图9所示,第一节点900包括:第一处理器901、第一存储器902、第一用户接口903和第一总线接口904。

第一处理器901,用于读取第一存储器902中的程序,执行下列过程:

获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

在图9中,总线架构可以包括任意数量的互联的总线和桥,具体由第一处理器901代表的一个或多个处理器和第一存储器902代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。第一总线接口904提供接口。针对不同的用户设备,第一用户接口903还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。

第一处理器901负责管理总线架构和通常的处理,第一存储器902可以存储第一处理器901在执行操作时所使用的数据。

优选的,本发明实施例还提供一种第一节点,包括第一处理器901,第一存储器902,存储在第一存储器902上并可在所述第一处理器901上运行的计算机程序,该计算机程序被第一处理器901执行时实现上述第一节点侧节点访问方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

参见图10,图中示出了本发明实施例提供的服务器的硬件结构示意图。如图10所示,服务器1000包括:第二处理器1001、第二存储器1002、第二用户接口1003和第二总线接口1004。

第二处理器1001,用于读取第二存储器1002中的程序,执行下列过程:

获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

在图10中,总线架构可以包括任意数量的互联的总线和桥,具体由第二处理器1001代表的一个或多个处理器和第二存储器1002代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。第二总线接口1004提供接口。针对不同的用户设备,第二用户接口1003还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。

第二处理器1001负责管理总线架构和通常的处理,第二存储器1002可以存储第二处理器1001在执行操作时所使用的数据。

优选的,本发明实施例还提供一种服务器,包括第二处理器1001,第二存储器1002,存储在第二存储器1002上并可在所述第二处理器1001上运行的计算机程序,该计算机程序被第二处理器1001执行时实现上述服务器侧节点访问方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

参见图11,图中示出了本发明实施例提供的第二节点的硬件结构示意图。如图11所示,第二节点1100包括:第三处理器1101、第三存储器1102、第三用户接口1103和第三总线接口1104。

第三处理器1101,用于读取第三存储器1102中的程序,执行下列过程:

获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

基于所述权限认证码,生成第一访问消息;

向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

在图11中,总线架构可以包括任意数量的互联的总线和桥,具体由第三处理器1101代表的一个或多个处理器和第三存储器1102代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。第三总线接口1104提供接口。针对不同的用户设备,第三用户接口1103还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。

第三处理器1101负责管理总线架构和通常的处理,第三存储器1102可以存储第三处理器1101在执行操作时所使用的数据。

优选的,本发明实施例还提供一种终端设备,包括第三处理器1101,第三存储器1102,存储在第三存储器1102上并可在所述第三处理器1101上运行的计算机程序,该计算机程序被第三处理器1101执行时实现上述第二节点侧节点访问方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被第一处理器执行时实现上述第一节点侧节点访问方法实施例的各个过程,或者被第二处理器执行时实现上述服务器侧节点访问方法实施例的各个过程,或者被第三处理器执行时实现上述第二节点侧节点访问方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

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

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

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

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

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

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。


技术特征:

1.一种节点访问方法,其特征在于,应用于第一节点,所述方法包括:

获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

2.根据权利要求1所述的方法,其特征在于,所述获取针对第二节点的权限认证结果,包括:

接收第二节点的第一访问消息,所述第一访问消息中携带有权限认证码;

基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。

3.根据权利要求1所述的方法,其特征在于,所述获取针对第二节点的权限认证结果,包括:

接收服务器发送的第二访问消息;其中,所述第二访问消息包括针对第二节点的权限认证结果,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的。

4.根据权利要求2所述的方法,其特征在于,若所述权限认证码的类型为固定的秘密字符串;所述基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果,包括:

基于预先获取的第一操作权限列表对所述权限认证码进行匹配;

在匹配成功的情况下,将所述第一操作权限列表中目标秘密字符串对应的操作权限确定为所述第二节点具备的目标操作权限;其中,所述第一操作权限列表中包括至少一个秘密字符串和每个秘密字符串对应的操作权限,所述目标秘密字符串为所述第一操作权限列表中与所述权限认证结果匹配的秘密字符串。

5.根据权利要求2所述的方法,其特征在于,若所述权限认证码的类型为动态应答码;所述基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果,包括:

将所述权限认证码与目标动态应答码进行比对;其中,所述目标动态应答码为服务器发送给所述第一节点的动态应答码,所述目标动态应答码为所述服务器在接收到所述第二节点请求访问所述第一节点的消息时随机生成的动态应答码;

在比对成功的情况下,将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限。

6.根据权利要求5所述的方法,其特征在于,所述将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限之前,所述方法还包括:

获取所述第二节点针对所述权限认证码的应答时间;

确定所述应答时间是否处于预设时间内;

在所述应答时间处于所述预设时间内的情况下,执行所述将预先设置的类型为动态应答码对应的操作权限确定为所述第二节点具备的目标操作权限的步骤。

7.根据权利要求2所述的方法,其特征在于,若所述权限认证码的类型为空;所述基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果,包括:

将预先设置的权限认证码类型为空对应的操作权限确定为所述第二节点具备的目标操作权限;或者,

确定所述第二节点具备的目标操作权限为所述第一节点可访问的最大操作权限。

8.根据权利要求2所述的方法,其特征在于,所述第一访问消息中包括所述第二节点基于所述第一节点的通讯证书对应的私钥所生成的第一签名信息;所述获取针对第二节点的权限认证结果之前,所述方法还包括:

基于预先获取的通讯证书集对所述第一签名信息进行解签;其中,所述通讯证书集包括至少一个通讯证书,所述通讯证书用于验证所述第二节点的身份有效性;

在解签成功的情况下,执行所述获取针对第二节点的权限认证结果的步骤。

9.根据权利要求8所述的方法,其特征在于,所述基于预先获取的通讯证书集对所述第一签名信息进行解签之前,所述方法还包括:

接收所述第二节点发送的写入消息;其中,所述写入消息中包括所述第二节点生成的通讯证书;

在所述写入消息验证通过的情况下,将所述第二节点生成的通讯证书写入至所述第一节点的通讯证书集中。

10.根据权利要求1所述的方法,其特征在于,所述第一访问消息为所述第二节点基于预先获取的所述第一节点的第一加密公钥对所述权限认证码进行加密后所生成的访问消息;所述获取针对第二节点的权限认证结果,包括:

基于所述第一加密公钥对应的第一加密私钥对所述第一访问消息进行解密,获得解密结果;

在所述解密结果表明校验成功的情况下,从解密后的第一访问消息中获取针对第二节点的权限认证结果。

11.根据权利要求1所述的方法,其特征在于,所述执行所述第一访问消息中与所述目标操作权限匹配的操作指令之后,所述方法还包括:

基于所述第二节点的第二加密公钥对操作结果消息进行加密;其中,所述操作结果消息包括所述第一访问消息中操作指令的执行结果;

基于所述第一节点的签名私钥对加密后的操作结果消息进行签名,获得所述第一节点的第二签名信息;

向所述第二节点发送返回结果消息;其中,所述返回结果消息包括所述加密后的操作结果消息和所述第一节点的第二签名信息。

12.一种节点访问方法,其特征在于,应用于服务器,所述方法包括:

获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

13.根据权利要求12所述的方法,其特征在于,所述获取针对第二节点的权限认证结果,包括:

接收第二节点发送的第一访问消息;其中,所述第一访问消息中携带有权限认证码;

基于所述权限认证码,对所述第二节点的操作权限进行验证,得到权限认证结果。

14.根据权利要求12所述的方法,其特征在于,所述第一访问消息中包括所述第二节点基于所述第二节点的签名私钥所生成的第三签名信息;所述获取针对第二节点的权限认证结果之前,所述方法还包括:

获取所述第一节点的关联列表;其中,所述关联列表中包括所述第一节点关联的其他节点的签名公钥;

基于所述关联列表对所述第三签名信息进行解签;

在解签成功的情况下,执行所述获取针对第二节点的权限认证结果的步骤。

15.根据权利要求14所述的方法,其特征在于,所述获取所述第一节点的关联列表之前,所述方法还包括:

接收所述第一节点发送的注册消息;其中,所述注册消息包括所述第二节点的签名公钥和所述第一节点的签名公钥;

将所述第二节点的签名公钥和所述第一节点的签名公钥进行关联存储。

16.根据权利要求12所述的方法,其特征在于,所述第二访问消息中还包括所述服务器基于所述第一节点的通讯证书对应的私钥所生成的第四签名信息;所述获取针对第二节点的权限认证结果之后,所述方法还包括:

基于所述第一节点的通讯证书对应的私钥对携带有所述权限认证结果的消息进行签名,生成所述第二访问消息;其中,所述第二访问消息中包括所述第四签名信息。

17.一种节点访问方法,其特征在于,应用于第二节点,所述方法包括:

获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

基于所述权限认证码,生成第一访问消息;

向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

18.根据权利要求17所述的方法,其特征在于,所述向所述第一节点发送所述第一访问消息之后,所述方法还包括:

接收所述第一节点的返回结果消息;其中,所述返回结果消息包括所述第一访问消息中操作指令的执行结果。

19.一种节点访问装置,其特征在于,应用于第一节点,所述装置包括:

第一获取模块,用于获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

执行模块,用于执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

20.一种节点访问装置,其特征在于,应用于服务器,所述装置包括:

第二获取模块,用于获取针对第二节点的权限认证结果;其中,所述权限认证结果是所述服务器基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述权限认证结果中指示有所述第二节点具备的目标操作权限。

第一发送模块,用于将第二访问消息发送给第一节点;其中,所述第二访问消息包括所述权限认证结果,所述第二访问消息用于指示所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

21.一种节点访问装置,其特征在于,应用于第二节点,所述装置包括:

第三获取模块,用于获取权限认证码;其中,所述权限认证码用于目标设备验证得到权限认证结果,所述目标设备为第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;

生成模块,用于基于所述权限认证码,生成第一访问消息;

第二发送模块,用于向所述第一节点发送所述第一访问消息,以供所述第一节点执行所述第一访问消息中与所述目标操作权限匹配的操作指令。

22.一种第一节点,其特征在于,包括第一处理器,第一存储器,存储在所述第一存储器上并可在所述第一处理器上运行的计算机程序,所述计算机程序被所述第一处理器执行时实现如权利要求1至11中任一项所述的节点访问方法的步骤。

23.一种服务器,其特征在于,包括第二处理器,第二存储器,存储在所述第二存储器上并可在所述第二处理器上运行的计算机程序,所述计算机程序被所述第二处理器执行时实现如权利要求12至16中任一项所述的节点访问方法的步骤。

24.一种第二节点,其特征在于,包括第三处理器,第三存储器,存储在所述第三存储器上并可在所述第三处理器上运行的计算机程序,所述计算机程序被所述第三处理器执行时实现如权利要求17至18中任一项所述的节点访问方法的步骤。

25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被第一处理器执行时实现如权利要求1至11中任一项所述的节点访问方法的步骤,或者被第二处理器执行时实现如权利要求12至16中任一项所述的节点访问方法的步骤,或者被第三处理器执行时实现如权利要求17至18中任一项所述的节点访问方法的步骤。

技术总结
本发明提供一种节点访问方法、装置、相关设备及计算机可读存储介质。该方法包括:获取针对第二节点的权限认证结果;其中,所述权限认证结果是目标设备基于所述第二节点发送的第一访问消息中携带的权限认证码进行验证得到的,所述目标设备为所述第一节点或服务器,所述权限认证结果中指示有所述第二节点具备的目标操作权限;执行所述第一访问消息中与所述目标操作权限匹配的操作指令。本发明实施例能够提高节点访问权限控制的灵活性。

技术研发人员:刘源;龚国成;方绍波;马力;冯诗正;曹雪峰;孙震
受保护的技术使用者:中移物联网有限公司;中国移动通信集团有限公司
技术研发日:2020.02.03
技术公布日:2021.08.03

转载请注明原文地址:https://doc.8miu.com/read-2357.html

最新回复(0)