一种基于区块链的IOT设备管理方法及装置与流程

文档序号:18406097发布日期:2019-08-10 00:24阅读:177来源:国知局
一种基于区块链的IOT设备管理方法及装置与流程

本发明实施例涉及金融科技(fintech)领域,尤其涉及一种基于区块链(blockchain)的iot(internetofthings,物联网)设备管理方法及装置。



背景技术:

随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(finteh)转变,消息存储技术也不例外,但由于金融、支付行业的安全性、实时性要求,也对技术提出的更高的要求。

目前,iot设备在需要传输数据到云服务商时,必须经过云服务商的授权才可以传输数据。具体实现过程可以为:iot设备的公私钥对是由中心化的云服务商的iot设备管理平台管理的,iot设备厂家需要在iot设备管理平台上注册iot设备,才能获得相应的iot设备的公私钥对。iot设备厂家把获取的公私钥对分别写入到相应的iot设备中。iot设备通过嵌入授权的公私钥发送消息到云服务商,才能实现传输数据。iot设备厂家在需要查看iot设备的公私钥对状态时,也需要通过云服务商的iot设备管理平台去查看设备激活及吊销状态。如果iot设备管理平台出现技术故障,此时iot设备厂家就无法及时获知iot设备的存活及吊销状态。



技术实现要素:

本发明实施例提供一种基于区块链的iot设备管理方法及装置,用以管理iot设备的密钥信息的存储状态,提高iot设备通信的安全性。

第一方面,本发明实施例提供的一种基于区块链的iot设备管理方法,包括:

iot设备厂家获取用户申请iot设备的请求信息,所述请求信息包括所述用户的资料信息;

所述iot设备厂家向云服务商发送密钥请求信息,所述密钥请求信息包括所述用户的资料信息和所述用户申请的iot设备的标识信息,以使所述云服务商生成所述iot设备的密钥信息;所述iot设备厂商和所述云服务商位于同一区块链中;

所述iot设备厂家在接收到所述云服务商发送的密钥信息之后,向所述iot设备下发所述密钥信息,并将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态,所述iot设备管理合约用于管理iot设备的公钥状态和生命周期。

上述技术方案中,通过区块链中的iot设备管理合约来管理iot设备的存活状态和操作时间,可以使得iot设备厂家可以随时获取iot设备的存活状态,提高iot设备的管理效率,防止iot设备的公钥状态被篡改,提高了iot设备通信的安全性。

可选的,在所述iot设备厂家获取用户的申请iot设备的请求信息之前,还包括:

所述iot设备厂家在所述区块链上部署所述iot设备管理合约。

可选的,所述iot设备管理合约为图(map)存储结构。

可选的,所述iot设备厂家在将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态之后,还包括:

所述iot设备厂家获取所述iot设备管理合约中的所述iot设备的公钥状态;

若所述iot设备的公钥状态为吊销状态,则所述iot设备厂家在确认所述iot设备回收后重新下发所述iot设备的密钥信息。

第二方面,本发明实施例还提供了一种基于区块链的iot设备管理方法,包括:

云服务商获取iot设备厂家发送的密钥请求信息,所述密钥请求信息是所述iot设备厂家获取到用户申请iot设备的请求信息之后发送的,所述密钥请求信息包括所述用户的资料信息和所述用户申请的iot设备的标识信息;所述iot设备厂商和所述云服务商位于同一区块链中;

所述云服务商生成所述iot设备的密钥信息;

所述云服务商将所述iot设备的密钥信息发送给所述iot设备厂家,以使所述iot设备厂家将所述密钥信息下发给所述iot设备,并通过所述区块链中的iot设备管理合约将所述密钥信息中的公钥进行存储,设置公钥状态设置为公钥生成完成状态;所述iot设备管理合约用于管理iot设备的公钥状态和生命周期。

可选的,所述云服务商在将所述iot设备的密钥信息发送给所述iot设备厂家之后,还包括:

所述云服务商获取用户的注销请求信息,所述注销请求信息包括所述用户的资料信息和待注销iot设备的标识信息;

所述云服务商根据所述用户的资料信息对所述用户验证通过后,根据所述待注销iot设备的标识信息吊销所述待注销iot设备的密钥信息,并将所述iot设备管理合约中的所述待注销iot设备的公钥状态设置为吊销状态。

第三方面,本发明实施例还提供了一种基于区块链的iot设备管理装置,包括:

获取单元,用于获取用户申请iot设备的请求信息,所述请求信息包括所述用户的资料信息;

发送单元,用于向云服务商发送密钥请求信息,所述密钥请求信息包括所述用户的资料信息和所述用户申请的iot设备的标识信息,以使所述云服务商生成所述iot设备的密钥信息;iot设备厂商和所述云服务商位于同一区块链中;

处理单元,用于在接收到所述云服务商发送的密钥信息之后,向所述iot设备下发所述密钥信息,并将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态,所述iot设备管理合约用于管理iot设备的公钥状态和生命周期。

可选的,所述处理单元还用于:

在获取用户的申请iot设备的请求信息之前,在所述区块链上部署所述iot设备管理合约。

可选的,所述iot设备管理合约为map存储结构。

可选的,所述处理单元还用于:

在将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态之后,控制所述获取单元获取所述iot设备管理合约中的所述iot设备的公钥状态;

若所述iot设备的公钥状态为吊销状态,则在确认所述iot设备回收后重新下发所述iot设备的密钥信息。

第四方面,本发明实施例还提供了一种基于区块链的iot设备管理装置,包括:

获取单元,用于获取iot设备厂家发送的密钥请求信息,所述密钥请求信息是所述iot设备厂家获取到用户申请iot设备的请求信息之后发送的,所述密钥请求信息包括所述用户的资料信息和所述用户申请的iot设备的标识信息;所述iot设备厂商和云服务商位于同一区块链中;

处理单元,用于生成所述iot设备的密钥信息;控制发送单元将所述iot设备的密钥信息发送给所述iot设备厂家,以使所述iot设备厂家将所述密钥信息下发给所述iot设备,并通过所述区块链中的iot设备管理合约将所述密钥信息中的公钥进行存储,设置公钥状态设置为公钥生成完成状态;所述iot设备管理合约用于管理iot设备的公钥状态和生命周期。

可选的,所述处理单元,还用于:

在将所述iot设备的密钥信息发送给所述iot设备厂家之后,控制所述获取单元获取用户的注销请求信息,所述注销请求信息包括所述用户的资料信息和待注销iot设备的标识信息;

根据所述用户的资料信息对所述用户验证通过后,根据所述待注销iot设备的标识信息吊销所述待注销iot设备的密钥信息,并将所述iot设备管理合约中的所述待注销iot设备的公钥状态设置为吊销状态。

第五方面,本发明实施例还提供了一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述基于区块链的iot设备管理方法。

第六方面,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述基于区块链的iot设备管理方法。

附图说明

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

图1为本发明实施例提供的一种系统架构的示意图;

图2为本发明实施例提供的一种基于区块链的iot设备管理方法的流程示意图;

图3为本发明实施例提供的另一种基于区块链的iot设备管理方法的流程示意图;

图4为本发明实施例提供的一种基于区块链的iot设备管理装置的结构示意图;

图5为本发明实施例提供的一种基于区块链的iot设备管理装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1示例性的示出了本发明实施例所适用的一种系统架构,该系统架构可以包括多个iot设备厂家100、区块链系统200和云服务商300。该区块链系统200是由多个iot设备厂家100和云服务商300搭建的联盟链,该联盟链可以包括一个或多个区块链节点,以此能够做到机构内数据多活。

其中,iot设备厂家100用于与区块链系统200进行通信,在区块链系统200中管理iot设备管理合约。

区块链系统200由多个区块链节点210,分别与iot设备厂家100和云服务商300进行通信,用于存储云服务商300发送的公钥数据,以及接受iot设备厂家100和云服务商300对部署在区块链节点210上的iot设备管理合约进行管理。该多个区块链节点210可以相互连接通信,每个区块链节点中包括多个区块,区块用于存储iot设备的公钥数据。

需要说明的是,上述图1所示的结构仅是一种示例,本发明实施例对此不做限定。

基于上述描述,图2示例性的示出了本发明实施例提供的一种基于区块链的iot设备管理方法的流程,该流程可以由基于区块链的iot设备管理装置执行。下面将通过iot设备厂家、云服务商与区块链节点交互的方式来描述基于区块链的iot设备管理的流程。

如图2所示,该流程具体包括:

步骤201,用户向iot设备厂家发送申请iot设备的请求信息。

用户在使用iot设备时,需要向iot设备厂家申请,此时发送的请求信息中包括该用户的资料信息,该资料信息可以为用于用户的身份认证的资料信息,标识用户的身份,用以区别不同的用户。

步骤202,iot设备厂家向云服务商发送密钥请求信息。

iot设备厂家在接收到用户的申请iot设备的请求信息之后,就可以向云服务商发送密钥请求信息,以请求云服务商下发该用户申请的iot设备的密钥信息。该密钥请求信息中包括了用户的资料信息和用户申请的iot设备的标识信息,该iot设备的标识信息可以为该iot设备的id信息等可以标识出不同iot设备的唯一信息。在本发明实施例中,该密钥信息可以为公私钥对。

需要说明的是,iot设备厂家发送的密钥请求信息可以包括多个用户的资料信息及其对应的iot设备的标识信息,也就是可以批量申请iot设备的密钥信息。

步骤203,云服务商生成所述iot设备的密钥信息。

云服务商在接收到iot设备厂家发送的密钥请求信息之后,就可以根据iot设备的标识信息生成密钥信息,也就是生成该iot设备的公私钥对。在本发明实施例中,对生成iot设备的公私钥对的技术方案不做具体限定,对于目前的生成公私钥对的方式都适用。

步骤204,云服务商向iot设备厂家发送密钥信息。

云服务商在生成了公私钥对之后,就可以将iot设备的密钥信息发送给iot设备厂家,以使其将密钥信息下发给对应的iot设备。

步骤205,云服务商向区块链节点发送公钥。

云服务商向区块链节点发送公钥,以使区块链节点通过iot设备管理合约将该公钥进行存储,以及将所述iot设备管理合约中的公钥状态设置为公钥生成完成状态。该iot设备管理合约用于管理iot设备的公钥状态和生命周期。

需要说明的是,在上述步骤201之前,云服务商或iot设备厂家需要在区块链节点上部署iot设备管理合约,其中,该iot设备管理合约可以为map存储结构。例如,iot设备管理合约可以为(key,value)结构,其中key为iot设备的公钥,value为时间戳和公钥状态(map)。而map中同样可以为(key,value)结构,map中的key为时间戳、value为公钥状态。该公钥状态可以包括公钥生成完成状态、激活状态、吊销状态。例如可以通过设置状态位的方式来实现,0为公钥生成完成状态,1为激活状态,2为吊销状态。

需要说明的是,iot设备管理合约中的数据存储方式也可以为其它的存储形式,只需要确保各iot设备的公钥状态和时间戳可以被存储即可,本发明实施例仅是示例作用。

通过上述方式可以实现在区块链上管理iot设备的生命周期,实时获知吊iot设备的公钥状态存活情况。

步骤206,iot设备厂家向所述iot设备下发所述密钥信息。

iot设备厂家在收到云服务商发送的密钥信息之后,就可以向该密钥信息对应的iot设备下发该密钥信息,主要是向该iot设备嵌入该密钥信息,以使该iot设备根据该密钥信息向云服务商传输数据,实现云服务商的授权通信。

步骤207,iot设备厂家将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态。

iot设备厂家在向iot设备下发密钥信息之后,就可以将iot设备管理合约中的公钥状态设置为激活状态,以使区块链中其它厂商或云服务商随时查看相应的iot设备的公钥状态。

步骤208,iot设备厂家发放iot设备。

iot设备厂家在下发密钥信息之后,就可以将iot设备发放给申请的用户,此时,用户就可以使用该iot设备根据该iot设备中的密钥信息向云服务商传输数据。

需要说明的是,当用户不再使用iot设备时,可以向云服务商申请注销该iot设备。具体的,可以见如图3所示的基于区块链的物联网iot设备管理的流程中关于公钥注销的过程。

如图3所示,该流程具体包括:

步骤301,用户向云服务商发送iot设备的注销请求信息。

用户在确定不使用iot设备就可以发送注销请求信息,该注销请求信息中包括了该用户的资料信息和待注销iot设备的标识信息。以使云服务商对该用户进行身份验证。

步骤302,云服务商根据所述用户的资料信息对所述用户验证通过后,根据所述待注销iot设备的标识信息吊销所述待注销iot设备的密钥信息。

云服务商在接收到用户的注销请求信息之后,就可以根据用户的资料信息对用户进行身份验证,当验证通过之后,就可以根据待注销iot设备的标识信息来吊销该待注销iot设备的密钥信息,也就是删除该待注销iot设备的公私钥对,以完成对iot设备的注销。

步骤303,云服务商将所述iot设备管理合约中的所述待注销iot设备的公钥状态设置为吊销状态。

云服务商可以向区块链节点发送吊销信息,以使区块链节点通过iot设备管理合约将该待注销iot设备的公钥状态设置为吊销状态,用以提示该iot设对应的厂家可以获知该iot设备已被吊销,可以进行回收或重新申请公私钥对。

步骤304,区块链节点同步iot设备的公钥状态。

区块链节点在将待注销iot设备的公钥状态设置为吊销状态之后,就相当于对该公钥状态进行同步,位于同一区块链系统中的各个区块链节点都可以查询到该公钥状态。

步骤305,若所述iot设备的公钥状态为吊销状态,则iot设备厂家在确认所述iot设备回收后重新下发所述iot设备的密钥信息。

iot设备厂家可以获取iot设备管理合约中的iot设备的公钥状态,当发现某个iot设备的公钥状态为吊销状态后,在确定该iot设备已被回收,则可以重新下发该iot设备的密钥信息,也就是重新请求该iot设备的密钥信息,从而完成下发。

本发明实施例表明,iot设备厂家获取用户申请iot设备的请求信息,请求信息包括所述用户的资料信息,向云服务商发送密钥请求信息,密钥请求信息包括用户的资料信息和用户申请的iot设备的标识信息,以使云服务商生成iot设备的密钥信息,iot设备厂家在接收到云服务商发送的密钥信息之后,向iot设备下发所述密钥信息,并将区块链中的iot设备管理合约中的公钥状态设置为激活状态,iot设备管理合约用于管理iot设备的公钥状态和生命周期。通过区块链中的iot设备管理合约来管理iot设备的存活状态和操作时间,可以使得iot设备厂家可以随时获取iot设备的存活状态,提高iot设备的管理效率,防止iot设备的公钥状态被篡改,提高了iot设备通信的安全性。

基于相同的技术构思,图4示例性的示出了本发明实施例提供的一种基于区块链的iot设备管理装置的结构,该装置可以执行基于区块链的iot设备管理的流程。该装置可以为上述图1所示的iot设备厂家。

如图4所示,该装置具体包括:

获取单元401,用于获取用户申请iot设备的请求信息,所述请求信息包括所述用户的资料信息;

发送单元402,用于向云服务商发送密钥请求信息,所述密钥请求信息包括所述用户的资料信息和所述用户申请的iot设备的标识信息,以使所述云服务商生成所述iot设备的密钥信息;iot设备厂商和所述云服务商位于同一区块链中;

处理单元403,用于在接收到所述云服务商发送的密钥信息之后,向所述iot设备下发所述密钥信息,并将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态,所述iot设备管理合约用于管理iot设备的公钥状态和生命周期。

可选的,所述处理单元403还用于:

在获取用户的申请iot设备的请求信息之前,在所述区块链上部署所述iot设备管理合约。

可选的,所述iot设备管理合约为map存储结构。

可选的,所述处理单元403还用于:

在将所述区块链中的iot设备管理合约中的公钥状态设置为激活状态之后,控制所述获取单元401获取所述iot设备管理合约中的所述iot设备的公钥状态;

若所述iot设备的公钥状态为吊销状态,则在确认所述iot设备回收后重新下发所述iot设备的密钥信息。

基于相同的技术构思,图5示例性的示出了本发明实施例提供的一种基于区块链的iot设备管理装置的结构,该装置可以执行基于区块链的iot设备管理的流程。该装置可以为上述图1所示的云服务商。

如图5所示,该装置包括:

获取单元501,用于获取iot设备厂家发送的密钥请求信息,所述密钥请求信息是所述iot设备厂家获取到用户申请iot设备的请求信息之后发送的,所述密钥请求信息包括所述用户的资料信息和所述用户申请的iot设备的标识信息;所述iot设备厂商和云服务商位于同一区块链中;

处理单元502,用于生成所述iot设备的密钥信息;控制发送单元503将所述iot设备的密钥信息发送给所述iot设备厂家,以使所述iot设备厂家将所述密钥信息下发给所述iot设备,并通过所述区块链中的iot设备管理合约将所述密钥信息中的公钥进行存储,设置公钥状态设置为公钥生成完成状态;所述iot设备管理合约用于管理iot设备的公钥状态和生命周期。

可选的,所述处理单元502还用于:

在将所述iot设备的密钥信息发送给所述iot设备厂家之后,控制所述获取单元501获取用户的注销请求信息,所述注销请求信息包括所述用户的资料信息和待注销iot设备的标识信息;

根据所述用户的资料信息对所述用户验证通过后,根据所述待注销iot设备的标识信息吊销所述待注销iot设备的密钥信息,并将所述iot设备管理合约中的所述待注销iot设备的公钥状态设置为吊销状态。

基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述基于区块链的iot设备管理方法。

基于相同的技术构思,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述基于区块链的iot设备管理方法。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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