CN114462096A - 基于区块链的物联网设备控制方法、装置、计算机设备及存储介质 - Google Patents
基于区块链的物联网设备控制方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114462096A CN114462096A CN202111643778.0A CN202111643778A CN114462096A CN 114462096 A CN114462096 A CN 114462096A CN 202111643778 A CN202111643778 A CN 202111643778A CN 114462096 A CN114462096 A CN 114462096A
- Authority
- CN
- China
- Prior art keywords
- internet
- intelligent contract
- block chain
- things
- event
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
- G16Y30/10—Security thereof
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y40/00—IoT characterised by the purpose of the information processing
- G16Y40/50—Safety; Security of things, users, data or systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及区块链技术领域,公开了一种基于区块链的物联网设备控制方法、装置、计算机设备及存储介质,该方法包括:获取设备控制规则,根据设备控制规则和预设的智能合约模板,生成智能合约,并将智能合约部署至区块链,若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收待处理事件信息,根据待处理事件信息和智能合约,得到请求区块交易,根据请求区块交易和智能合约,获取区块链事件集合,根据区块链事件集合和预设的调用协议,控制物联网设备,提高了对控制物联网设备的安全性。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链的物联网设备控制方法、装置、计算机设备及存储介质。
背景技术
随着网络和计算机技术的发展,物联网技术得到了很快的发展,越来越多的设备都可以连入网络,以实现对设备的智能监测和控制。物联网终端或物联网设备包括智能洗衣机、智能充电桩、智能吹风机、按摩椅、摇摇车、抓娃娃机、智能电视、智能灯具、智能空调等。
虽然物联网为人们的生活提供了便利和舒适,但由于物联网设备主要通过物联网云平台进行远程监控,而物联网云平台因需长时间向物联网设备或物联网终端开放接口,使得物联网设备或物联网终端容易遭受恶意攻击,如黑客攻击等网络威胁,在物联网云平台遭受黑客攻击等网络威胁时,入侵者可以对物联网设备进行未经授权的控制,并以多种方式伤害用户,例如,摄像头被黑客入侵,用户隐私被破坏,又或者通过禁用相关物联网设备来执行勒索软件攻击,并要求赎金作为回报,导致物联网终端或物联网设备的安全性较低,安全隐患大。
发明内容
本发明实施例提供一种基于区块链的物联网设备控制方法、装置、计算机设备和存储介质,以提高控制物联网设备的安全性。
为了解决上述技术问题,本申请实施例提供一种基于区块链的物联网设备控制方法,包括:
获取设备控制规则;
根据所述设备控制规则和预设的智能合约模板,生成智能合约,并将所述智能合约部署至区块链;
若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收所述待处理事件信息;
根据所述待处理事件信息和所述智能合约,得到请求区块交易;
根据所述请求区块交易和所述智能合约,获取区块链事件集合;
根据所述区块链事件集合和预设的调用协议,控制所述物联网设备。
为了解决上述技术问题,本申请实施例还提供一种基于区块链的物联网设备控制装置,包括:
规则获取模块,用于获取设备控制规则;
合约生成模块,用于根据所述设备控制规则和预设的智能合约模板,生成智能合约,并将所述智能合约部署至区块链;
信息接收模块,用于若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收所述待处理事件信息;
请求区块交易获取模块,用于根据所述待处理事件信息和所述智能合约,得到请求区块交易;
事件获取模块,用于根据所述请求区块交易和所述智能合约,获取区块链事件集合;
第一控制模块,用于根据所述区块链事件集合和预设的调用协议,控制所述物联网设备。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于区块链的物联网设备控制方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于区块链的物联网设备控制方法的步骤。
本发明实施例提供的基于区块链的物联网设备控制方法、装置、计算机设备及存储介质,通过获取设备控制规则,根据设备控制规则和预设的智能合约模板,生成智能合约,并将智能合约部署至区块链,若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收待处理事件信息,根据待处理事件信息和智能合约,得到请求区块交易,根据请求区块交易和智能合约,获取区块链事件集合,根据区块链事件集合和预设的调用协议,控制物联网设备,通过根据设备控制规则和预设的智能合约模板生成智能合约,并将智能合约部署至区块链,通过智能合约,提高了对控制物联网设备的安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性***架构图;
图2是本申请的基于区块链的物联网设备控制方法的一个实施例的流程图;
图3是根据本申请的基于区块链的物联网设备控制装置的一个实施例的结构示意图;
图4是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,如图1所示,***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的基于区块链的物联网设备控制方法由服务器执行,相应地,基于区块链的物联网设备控制装置设置于服务器中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器,本申请实施例中的终端设备101、102、103具体可以对应的是实际生产中的应用***。
请参阅图2,图2示出本发明实施例提供的一种基于区块链的物联网设备控制方法,以该方法应用在图1中的服务端为例进行说明,详述如下:
S201:获取设备控制规则。
具体的,用户可以通过填写表单,或是编写脚本的形式编写设备控制规则,该设备控制规则包括触发条件与动作,其中,触发条件可以是一个判断语句,即事件的某个属性是否满足某个条件,动作可以是一系列的操作,改工作可以包括但不限于计算、服务端RPC调用,除此之外,设备控制规则包括但不限于物联网涉笔的区块链账户地址、属性名、比较模式、数值。在本发明中,设备控制规则可以为IFTTT规则,IFTTT规则是一种服务,该服务可创建遵循“(IF)如果满足设定的条件(This),那么(Then)触发指定的操作(That)”这种简单逻辑指令的流程。
进一步的,在步骤S201,获取设备控制规则的步骤之后还包括:
对设备控制规则进行语法检查和服务调用检查。
具体的,设备控制规则还包括用户信息,根据用户信息和预设的用户注册信息,对设备控制规则进行服务调用检查,其中,用户信息可以是用户账号,服务调用检查是指查看用户信息是否对设备控制规则中的需要执行的动作中声明的物联网设备具有操作权限以及该物联网设备是否提供该服务,语法检查包括对设备控制规则中的设备名、设备方法是否包含非法字符,方法参数是否符合预设的格式,其中,预设的格式可以是json格式,例如填写触发条件(温度传感器,温度,大于,30),执行动作(空调,open,{“state”:1})。由物联网平台检查温度传感器、空调在***中是否存在,用户是否有权操作这两个设备,温度传感器是否有温度这个属性,空调是否有open这个方法。
S202:根据设备控制规则和预设的智能合约模板,生成智能合约,并将智能合约部署至区块链。
具体的,预设的智能合约模板包括多个占位符、VerifyEvents方法、GetAttribute方法、invoke方法和reply方法,其中,占位符用于与设备控制规则中的物联网设备的区块链账户地址、属性名、比较模式、数值、动作等进行替换,例如,#1,#2,#3,#4,#5是预设的智能合约模板中的占位符,根据设备控制规则对上述占位符进行替换,具体为用设备的区块链账户地址替换#1,属性名替换#2,比较模式替换#3,数值替换#4,动作替换#5;
VerifyEvents方法用于对物联网设备上传的待处理事件信息进行验证,具体包括:验证待处理事件信息中的签名是否是对设备名、属性名、属性值和时间戳采用加密算法(如哈希算法)进行计算得到的数字签名,以及验证物联网设备的设备地址是否是授权的;
GetAttribute方法用于从物联网设备上传的待处理事件信息中提取属性值;
invoke方法包括两个参数(uuid,events),其中,events是物联网设备发送给物联网平台的json格式的字符串报文,uuid是UUID是通用唯一识别码(Universally UniqueIdentifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分,在本申请中是物联网平台调用该合约方法时需要传入的特征码,用于关联之后的reply方法的返回;
reply方法包括两个参数(uuid,response),其中,response包括(是否成功,错误信息),调用reply方法将会产生区块链事件,区块链事件的主题是“RESPONSE”,内容是(requestId,response)封装成的字符串。
S203:若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收待处理事件信息。
具体的,待处理事件信息包括但不限于签名、设备名、属性名、属性值和时间戳,其中,数字签名可以采用加密算法(如哈希算法、非对称加密算法、对称加密算法)对设备名、属性名、属性值和时间戳进行计算得到,预设的服务协议为物联网设备与物联网平台约定的协议,常用的协议包括mqtt协议和http协议。
示例性的,待处理事件信息具体为:{“deviceID”:温度传感器,“temp”:35,“timestamp”:1637218269117,“signature”:“0094004b40e3f061c7e1c08c96d3c763df45150a0708ff3bf8f18ba42d116d3cdf2c0836ed87498ae5f115df80063c9ea9dd2b6e88708e83df580017d6d5c7388000”},其中,温度传感器为设备名,temp为属性名,35为属性值,1637218269117为时间戳,0094004b40e3f061c7e1c08c96d3c763df45150a0708ff3bf8f18ba42d116d3cdf2c0836ed87498ae5f115df80063c9ea9dd2b6e88708e83df580017d6d5c7388000为数字签名,数字签名是使用物联网设备的私钥对设备名、属性名、属性值和时间戳进行计算得到。
S204:根据待处理事件信息和智能合约,得到请求区块交易。
具体的,请求区块交易包括data字段、from字段、to字段和signature字段,在物联网平台收到物联网设备上传的待处理事件信息后,首先生成一个uuid,然后向区块链调用智能合约的invoke方法,把uuid和待处理事件信息作为invoke方法的参数,按照EVM智能合约调用约定,将uuid和待处理事件信息编码成16进制字符串,作为请求区块交易的data字段,将物联网平台的账户地址作为请求区块交易的from字段,将智能合约的地址作为请求区块交易的to字段,使用物联网平台的私钥对(from,to,data)字段进行签名,作为请求区块交易的signature字段。
S205:根据请求区块交易和智能合约,获取区块链事件集合。
具体的,区块链事件集合包括至少一个区块链事件,请求区块交易作为http协议的请求体body,通过http post请求不断向区块链发送sendTransaction交易(即请求区块交易)直至发送成功或超过预设的发送次数,其中,预设的发送次数根据实际应用场景进行定义,当发送成功时,区块链校验请求区块交易的合法性,即判断请求区块交易的signature字段是否能通过区块链的签名验证流程,验证通过后,调用并执行智能合约中的invoke方法,并输出相应的区块链事件。此处需要特别说明的是,一条设备控制规则可以触发多个动作,因此一个物联网设备上传的待处理事件信息可以产生多个区块链事件。例如,待处理事件信息中设置当温度高于30度时,包括打开空调、打开花洒给树木浇水等多个事件。
S206:根据区块链事件集合和预设的调用协议,控制物联网设备。
具体的,预设的调用协议为物联网平台和物联网设备约定的协议,常用的协议包括mqtt协议和http协议,通过预设的调用协议调用物联网设备提供的RPC服务方法,对物联网设备进行控制。
在本实施例中,获取设备控制规则,根据设备控制规则和预设的智能合约模板,生成智能合约,并将智能合约部署至区块链,若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收待处理事件信息,根据待处理事件信息和智能合约,得到请求区块交易,根据请求区块交易和智能合约,获取区块链事件集合,根据区块链事件集合和预设的调用协议,控制物联网设备,通过根据设备控制规则和预设的智能合约模板生成智能合约,并将智能合约部署至区块链,通过智能合约,提高了对控制物联网设备的安全性。
在本实施例的一些可选的实现方式中,步骤S202中,设备控制规则包括至少一个规则信息,预设的智能合约模板包括与规则信息对应的占位符,根据设备控制规则和预设的智能合约模板,生成智能合约包括:
采用预设的智能合约模板,对设备控制规则进行合法性验证,得到验证结果。
具体的,预设的智能合约模板包括VerifyEvents方法,设备控制规则携带数字签名,通过VerifyEvents方法验证设备控制规则的数字签名。
若验证结果为合法,则提取规则信息,并采用规则信息替换其对应的占位符,生成智能合约。
具体的,规则信息包括但不限于设备名,属性名,属性值,时间戳,数字签名,占位符为预设的智能合约模板中预设的符号,用于与规则信息中的参数或属性进行替换。
在本实施例中,通过预设的智能合约模板中的VerifyEvents方法对设备控制规则进行验证,提高了对控制物联网设备的安全性。
在本实施例的一些可选的实现方式中,步骤S204中,根据待处理事件信息和智能合约,得到请求区块交易包括:
当接收待处理事件信息时,生成事件请求编码。
具体的,事件请求编码为uuid,uuid是通用唯一识别码(Universally UniqueIdentifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分,在本申请中,uuid是物联网平台调用智能合约中的invoke方法时需要传入的特征码,用于关联之后的reply方法的返回。
调用智能合约,对待处理事件信息和事件请求编码进行封装处理,得到请求区块交易。
具体的,向区块链调用智能合约的invoke方法,将待处理事件信息和事件请求编码进行封装处理,得到请求区块交易。
在本实施例中,通过智能合约对待处理事件信息和事件请求编码进行封装,提高了控制物联网设备的安全性。
在本实施例的一些可选的实现方式中,步骤S205中,根据请求区块交易和智能合约,获取区块链事件集合包括:
将请求区块交易上传至区块链进行合法性验证,得到请求验证结果。
具体的,请求区块交易包括其对应的数字签名,请求区块交易为http请求体,通过http协议将http请求体上传至区块链,区块链调用智能合约中的VerifyEvents方法对请求区块交易的数字签名进行合法性验证,请求验证结果包括合法和不合法。
若请求验证结果为合法,则调用并执行智能合约,获取第一执行输出结果。
具体的,第一执行输出结果为区块链事件集合,该区块链事件集合包括至少一个区块链事件,区块链事件包括主题和内容,其中,主题可以为“RESPONSE”,内容可以为(requestId,response)封装成的字符串,通过调用并执行智能合约中的reply方法,区块链会输出第一执行输出结果。
将第一执行输出结果作为区块链事件集合。
在本实施例中,通过智能合约对请求区块交易进行合法性验证,提高了控制物联网设备的安全性。
在本实施例的一些可选的实现方式中,步骤S206中,根据区块链事件集合和预设的调用协议,控制物联网设备包括如下步骤S2060至步骤S2061:
步骤S2060:根据区块链事件集合和预设的调用协议,调用物联网设备的远程服务方法。
具体的,预设的调用协议可以是http协议,通过http协议调用对应的物联网设备的远程服务方法,其中,远程服务方法为物联网设备内置的RPC服务方法。
步骤S2061:根据远程服务方法,控制对应的物联网设备。
具体的,通过区块链事件集合和预设的调用协议,控制对应的物联网设备,提高了控制物联网设备的安全性。
在本实施例的一些可选的实现方式中,步骤S2061,根据区块链事件集合和预设的调用协议,调用物联网设备的远程服务方法之后还包括:
获取远程服务方法的调用结果。
根据调用结果,调用并执行智能合约,得到第二执行输出结果。
具体的,第二执行输出结果为区块链事件,物联网平台接收调用结果时,物联网平台调用智能合约的reply方法并执行,得到第二执行输出结果。
将第二执行输出结果作为区块链事件。
在对调用结果进行追溯时,将区块链事件发送至物联网设备。
在本实施例中,通过调用并执行智能合约,得到区块链事件,提高了控制物联网设备的安全性,并且通过将区块链事件发送至物联网设备供用户查阅,提高物联网平台控制物联网设备的透明度,进一步提高了用户对物联网平台的信任度,从而提高了物联网平台的可靠性。
进一步的,将第二执行输出结果添加到第一执行输出结果中,得到最终执行结果。
在对设备控制规则进行追溯时,将最终执行结果发送至物联网设备。
在本实施例中,通过将最终执行结果发送至物联网设备供用户查阅,提高物联网平台控制物联网设备的透明度,进一步提高了用户对物联网平台的信任度,从而提高了物联网平台的可靠性。
进一步的,在对设备控制规则进行追溯时,将第一执行输出结果和/或第二执行输出结果推送到消息队列服务。
根据消息队列服务,获得第一执行输出结果和/或第二执行输出结果并输出至对应的物联网设备。
具体的,通过订阅该消息队列服务的区块链事件,获得对应区块链事件,并输出至对应的物联网设备。
在本实施例中,通过第一执行输出结果和/或第二执行输出结果并输出至对应的物联网设备供用户查阅,提高物联网平台控制物联网设备的透明度,进一步提高了用户对物联网平台的信任度,从而提高了物联网平台的可靠性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图3示出与上述实施例基于区块链的物联网设备控制方法一一对应的基于区块链的物联网设备控制装置的原理框图。如图3所示,该基于区块链的物联网设备控制装置包括规则获取模块30、合约生成模块31、信息接收模块32、请求区块交易获取模块33、事件获取模块34和第一控制模块35。各功能模块详细说明如下:
规则获取模块30,用于获取设备控制规则。
合约生成模块31,用于根据设备控制规则和预设的智能合约模板,生成智能合约,并将智能合约部署至区块链。
信息接收模块32,用于若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收待处理事件信息。
请求区块交易获取模块33,用于根据待处理事件信息和智能合约,得到请求区块交易。
事件获取模块34,用于根据请求区块交易和智能合约,获取区块链事件集合。
第一控制模块35,用于根据区块链事件集合和预设的调用协议,控制物联网设备。
可选的,设备控制规则包括至少一个规则信息,合约生成模块31包括:
合法性验证模块,用于采用预设的智能合约模板,对设备控制规则进行合法性验证,得到验证结果。
判断模块,用于若验证结果为合法,则提取规则信息,并采用规则信息替换其对应的占位符,生成智能合约。
可选的,请求区块交易获取模块33包括:
编码生成模块,用于当接收待处理事件信息时,生成事件请求编码。
编码封装模块,用于调用智能合约,对待处理事件信息和事件请求编码进行封装处理,得到请求区块交易。
可选的,事件获取模块34包括:
交易上传模块,用于将请求区块交易上传至区块链进行合法性验证,得到请求验证结果。
合约执行模块,用于若请求验证结果为合法,则调用并执行智能合约,获取第一执行输出结果。
事件确定模块,用于将第一执行输出结果作为所述区块链事件集合。
可选的,第一控制模块35包括:
服务方法调用模块,用于根据区块链事件集合和预设的调用协议,调用物联网设备的远程服务方法。
第二控制模块,用于根据远程服务方法,控制物联网设备。
关于基于区块链的物联网设备控制装置的具体限定可以参见上文中对于基于区块链的物联网设备控制方法的限定,在此不再赘述。上述基于区块链的物联网设备控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备4包括通过***总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件连接存储器41、处理器42、网络接口43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或D界面显示存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作***和各类应用软件,例如电子文件的控制的程序代码等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器42在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的程序代码或者处理数据,例如运行电子文件的控制的程序代码。
所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有界面显示程序,所述界面显示程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于区块链的物联网设备控制方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (10)
1.一种基于区块链的物联网设备控制方法,其特征在于,所述基于区块链的物联网设备控制方法包括:
获取设备控制规则;
根据所述设备控制规则和预设的智能合约模板,生成智能合约,并将所述智能合约部署至区块链;
若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收所述待处理事件信息;
根据所述待处理事件信息和所述智能合约,得到请求区块交易;
根据所述请求区块交易和所述智能合约,获取区块链事件集合;
根据所述区块链事件集合和预设的调用协议,控制所述物联网设备。
2.如权利要求1所述的基于区块链的物联网设备控制方法,其特征在于,所述设备控制规则包括至少一个规则信息,所述预设的智能合约模板包括与所述规则信息对应的占位符,所述根据设备控制规则和预设的智能合约模板,生成智能合约包括:
采用所述预设的智能合约模板,对所述设备控制规则进行合法性验证,得到验证结果;
若所述验证结果为合法,则提取所述规则信息,并采用所述规则信息替换其对应的占位符,生成所述智能合约。
3.如权利要求1所述的基于区块链的物联网设备控制方法,其特征在于,所述根据所述待处理事件信息和所述智能合约,得到请求区块交易包括:
当接收所述待处理事件信息时,生成事件请求编码;
调用所述智能合约,对所述待处理事件信息和所述事件请求编码进行封装处理,得到请求区块交易。
4.如权利要求1所述的基于区块链的物联网设备控制方法,其特征在于,所述根据所述请求区块交易和所述智能合约,获取区块链事件集合包括:
将所述请求区块交易上传至区块链进行合法性验证,得到请求验证结果;
若所述请求验证结果为合法,则调用并执行所述智能合约,获取第一执行输出结果;
将所述第一执行输出结果作为所述区块链事件集合。
5.如权利要求1所述的基于区块链的物联网设备控制方法,其特征在于,所述根据所述区块链事件集合和预设的调用协议,控制所述物联网设备包括:
根据所述区块链事件集合和所述预设的调用协议,调用所述物联网设备的远程服务方法;
根据所述远程服务方法,控制所述物联网设备。
6.如权利要求5所述的基于区块链的物联网设备控制方法,所述根据所述区块链事件集合和所述预设的调用协议,调用所述物联网设备的远程服务方法之后还包括:
获取所述远程服务方法的调用结果;
根据所述调用结果,调用并执行所述智能合约,得到第二执行输出结果;
将所述第二执行输出结果作为区块链事件;
在对所述调用结果进行追溯时,将所述区块链事件发送至所述物联网设备。
7.一种基于区块链的物联网设备控制装置,其特征在于,所述基于区块链的物联网设备控制装置包括:
规则获取模块,用于获取设备控制规则;
合约生成模块,用于根据设备控制规则和预设的智能合约模板,生成智能合约,并将所述智能合约部署至区块链;
信息接收模块,用于若检测到物联网设备上传的待处理事件信息,则根据预设的服务协议,接收所述待处理事件信息;
请求区块交易获取模块,用于根据所述待处理事件信息和所述智能合约,得到请求区块交易;
事件获取模块,用于根据所述请求区块交易和所述智能合约,获取区块链事件集合;
第一控制模块,用于根据所述区块链事件集合和预设的调用协议,控制所述物联网设备。
8.如权利要求7所述的基于区块链的物联网设备控制装置,其特征在于,所述设备控制规则包括至少一个规则信息,所述合约生成模块包括:
合法性验证模块,用于采用所述预设的智能合约模板,对所述设备控制规则进行合法性验证,得到验证结果;
判断模块,用于若所述验证结果为合法,则提取所述规则信息,并采用所述规则信息替换其对应的占位符,生成所述智能合约。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的基于区块链的物联网设备控制方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的基于区块链的物联网设备控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111643778.0A CN114462096A (zh) | 2021-12-29 | 2021-12-29 | 基于区块链的物联网设备控制方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111643778.0A CN114462096A (zh) | 2021-12-29 | 2021-12-29 | 基于区块链的物联网设备控制方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114462096A true CN114462096A (zh) | 2022-05-10 |
Family
ID=81408117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111643778.0A Pending CN114462096A (zh) | 2021-12-29 | 2021-12-29 | 基于区块链的物联网设备控制方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114462096A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115334038A (zh) * | 2022-08-20 | 2022-11-11 | 信通院(江西)科技创新研究院有限公司 | 一种基于区块链的appid申请管理方法和*** |
CN116663026A (zh) * | 2023-06-01 | 2023-08-29 | 北京网藤科技有限公司 | 基于区块链的数据处理方法、装置、电子设备和介质 |
-
2021
- 2021-12-29 CN CN202111643778.0A patent/CN114462096A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115334038A (zh) * | 2022-08-20 | 2022-11-11 | 信通院(江西)科技创新研究院有限公司 | 一种基于区块链的appid申请管理方法和*** |
CN115334038B (zh) * | 2022-08-20 | 2024-03-26 | 信通院(江西)科技创新研究院有限公司 | 一种基于区块链的appid申请管理方法和*** |
CN116663026A (zh) * | 2023-06-01 | 2023-08-29 | 北京网藤科技有限公司 | 基于区块链的数据处理方法、装置、电子设备和介质 |
CN116663026B (zh) * | 2023-06-01 | 2024-01-26 | 北京网藤科技有限公司 | 基于区块链的数据处理方法、装置、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018177124A1 (zh) | 业务处理方法、装置、数据共享***及存储介质 | |
CN105282088A (zh) | 验证服务器控制方法及***,验证控制方法及*** | |
CN114462096A (zh) | 基于区块链的物联网设备控制方法、装置、计算机设备及存储介质 | |
CN103744686A (zh) | 智能终端中应用安装的控制方法和*** | |
CN112200949B (zh) | 门禁启动方法、装置以及身份验证*** | |
CN114070583A (zh) | 信息访问控制方法、装置、计算机设备及介质 | |
CN109769010B (zh) | 基于SDK访问CloudStack服务器的方法、装置、设备及存储介质 | |
CN113239397A (zh) | 信息访问方法、装置、计算机设备及介质 | |
CN113259342A (zh) | 登录验证方法、装置、计算机设备及介质 | |
CN112632605A (zh) | 一种防止越权访问的方法、装置、计算机设备及存储介质 | |
CN108092947B (zh) | 一种对第三方应用进行身份鉴别的方法及装置 | |
CN112260983B (zh) | 一种身份验证方法、装置、设备及计算机可读存储介质 | |
CN108574658B (zh) | 一种应用登录方法及其设备 | |
CN111953633A (zh) | 基于终端环境的访问控制方法及访问控制装置 | |
CN113434824B (zh) | 一种软件服务授权管理方法、装置、设备及存储介质 | |
CN115733685A (zh) | Web会话认证管理方法、装置、计算机设备及存储介质 | |
CN115525930A (zh) | 信息转移方法、装置及相关设备 | |
CN211557285U (zh) | 控制终端、签名服务器和任务服务器 | |
CN107153791B (zh) | 一种数据呈现方法及电子设备 | |
CN115242608B (zh) | 告警信息的生成方法、装置、设备及存储介质 | |
CN105323287B (zh) | 第三方应用程序的登录方法及*** | |
CN114697956B (zh) | 一种基于双链路的安全通信方法及设备 | |
CN112083949B (zh) | 自适应跨平台方法、装置、计算机设备及存储介质 | |
CN113839917B (zh) | 语音信息处理方法、数据处理平台和设备云端服务器 | |
CN113515767B (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 |