一种基于区块链的智能家居控制系统、方法及装置与流程

文档序号:15929428发布日期:2018-11-14 01:28阅读:204来源:国知局

本发明涉及智能家居领域,尤其涉及一种基于区块链的智能家居控制系统、方法及装置。

背景技术

随着生活水平的提高和技术的成熟,智能家居系统日益普遍,但在实际应用中,大部分智能家居提供商使用的都是在互联网上部署云端服务器的方式来对家居设备进行统一的远程控制,将用户数据都集中储存在云端服务器里,一旦断网或云端服务器崩溃,所有家居设备将失去控制,给用户生活造成了极大麻烦。同时由于用户数据都储存在云端服务器,用户隐私容易发生泄漏或者恶意修改,更严重的是如果被漏洞攻击和远程劫持,远程操控用户的家居设备,可能会造成极大的隐私泄漏和人身安全。

近年来,随着区块链技术的快速发展,其分布式建立的信任机制,使数据具有不可更改和不可撤销的特点,具有极大的应用前景,同时由于区块链的私有链具有交易速度快、数据不公开隐私有保障、交易成本低甚至为零、不破坏原有产品的生态体系的优点,在银行清结算、证券交易、互联网金融、版权保护、互联网彩票、电子合同等领域得以广泛应用,而在智能家居领域暂无行业应用。



技术实现要素:

为了解决上述现有技术的不足,本发明提供一种基于区块链的智能家居控制系统、方法及装置,在断网或遭受网络攻击时,依然能够正常运行,并且确保数据的准确、安全和不可更改。

本发明所要解决的技术问题通过以下技术方案予以实现:

一种基于区块链的智能家居控制系统,包括至少两个家居子系统,每个家居子系统中均包括一控制装置和与所述控制装置连接的至少一家居设备,各个家居子系统中的控制装置连接组成局域网,以建立起区块链数据库,每个控制装置都是所述区块链数据库上的一个节点;

所述控制装置,用于获取用户的操作指令,并依据操作指令对与其连接的家居设备进行控制;

所述家居设备,用于在所述控制装置的控制下执行相应功能;

所述区块链数据库,用于将写入有该控制系统的数据的区块链主链储存在其每个节点上。

进一步地,还包括:移动终端和云端服务器,所述云端服务器通过互联网分别连接至所述移动终端和各个控制装置;

所述移动终端,用于获取用户的操作指令,并将操作指令远程发送至所述云端服务器;

所述云端服务器,用于将所述移动终端远程发送的操作指令转发至对应的控制装置。

一种基于区块链的智能家居控制方法,应用于上述的控制系统中,包括:

步骤1:所述控制装置获取用户依据智能合约预先签订的数字签名,以登录对应的账户;

步骤2:所述控制装置创建新的区块,将登录账户的账户信息和数字签名写入新的区块内;

步骤3:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上;

步骤4:所述控制装置获取用户输入的操作指令;

步骤5:所述控制装置依据智能合约向用户分配私钥;

步骤6:所述控制装置创建新的区块,将用户的操作指令写入到新的区块中,并依据智能合约对操作指令进行检验,若为合法行为,则控制与其连接的家居设备执行相应功能;

步骤7:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

进一步地,在步骤4中,若操作指令是通过所述控制装置上的交互单元获取的话,则进行步骤5-7;若操作指令是通过所述控制装置上的互联网连接单元获取的话,则所述控制装置先依据智能合约判断该用户是否拥有远程操作权限,若有,则进行步骤5-7,若无,则进行步骤a和b;

步骤a:所述控制装置拒绝该用户访问对应的家居设备,并创建新的区块,将用户的操作指令和拒绝访问行为写入到新的区块内;

步骤b:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

进一步地,在步骤1之前还包括:

步骤01:所述控制装置与用户签订智能合约,生成数字签名;

步骤02:所述控制装置判断是否已存在区块链主链,若是,则进行步骤03和04;若否,则先创建创世区块,将智能合约写入到创世区块内,将创世区块发布储存形成区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上,再进行步骤03和04;

步骤03:所述控制装置创建新账户和新的区块,将新账户的账户信息写入到新的区块内;

步骤04:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

一种基于区块链的智能家居控制装置,应用于上述的控制系统中,包括:

电源单元,用于获取电能,为该控制装置供电;

交互单元,用于与用户进行人机交互,以获取用户的操作指令;

设备连接单元,用于连接至少一家居设备组成家居子系统;

局域网连接单元,用于与其他控制装置连接组成局域网,以建立起区块链数据库;

存储单元,用于储存供处理单元执行的计算机程序,以及,写入有所述控制系统的数据的区块链主链;

处理单元,用于执行所述存储单元内储存的计算机程序,分别与所述电源单元、交互单元、设备连接单元、局域网连接单元和存储单元电性连接。

进一步地,还包括:与所述处理单元电性连接的互联网连接单元,用于通过互联网连接至云端服务器,以获取用户通过移动终端远程发送并由云端服务器转发的操作指令。

进一步地,所述处理单元执行所述存储单元内储存的计算机程序时,进行如下步骤:

步骤1:获取用户输入的数字签名,以登录对应的账户;

步骤2:创建新的区块,将登录账户的账户信息和数字签名写入新的区块内;

步骤3:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上;

步骤4:获取用户输入的操作指令;

步骤5:依据智能合约向用户分配私钥;

步骤6:创建新的区块,将用户的操作指令写入到新的区块中,并依据智能合约对操作指令进行检验,若为合法行为,则控制与所述设备连接单元连接的家居设备执行相应功能;

步骤7:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

进一步地,所述处理单元在步骤4中,若操作指令是通过所述交互单元获取的话,则进行步骤5-7;若操作指令是通过所述互联网连接单元获取的话,则先依据智能合约判断该用户是否拥有远程操作权限,若有,则进行步骤5-7,若无,则进行步骤a和b;

步骤a:拒绝该用户访问对应的家居设备,并创建新的区块,将用户的操作指令和拒绝访问行为写入到新的区块内;

步骤b:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

进一步地,所述处理单元在步骤1之前,还进行如下步骤:

步骤01:与用户签订智能合约,生成数字签名;

步骤02:判断是否已存在区块链主链,若是,则进行步骤03和04;若否,则先创建创世区块,将智能合约写入到创世区块内,将创世区块发布储存到所述存储单元内形成区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上,再进行步骤03和04;

步骤03:创建新账户和新的区块,将新账户的账户信息写入到新的区块内;

步骤04:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

本发明具有如下有益效果:

1.利用区块链技术构建数据库,将整个控制系统的所有数据都储存在本地局域网的区块链数据库内,无需可靠信任的第三方数据库,不仅可以防止用户隐私外泄,所述区块链数据库的每个节点上都储存有整个控制系统的所有数据,在发生互联网断网或者遭受网络攻击导致互联网中断后,也依然能够保证各个家居设备的正常运转;

2.区块链上的数据具有不可更改不可撤回的特性,其借助私有链的特点,数据同步速度快、隐私性强、交易成本低、不破坏原有产品生态体系,有效保护了用户的隐私数据并保证了数据的准确性;

3.结合智能合约和生物识别等技术,增强了整个控制系统的防御能力安全,防御网络攻击,如果发生网络攻击等非法行为,对应的区块和控制装置将被自动隔离,有效防止网络劫持,保护整个控制系统及各个家居设备的安全。

附图说明

图1为本发明提供的智能家居控制系统的拓扑示意图;

图2为本发明提供的智能家居控制方法的创建账户步骤框图;

图3为本发明提供的智能家居控制方法的控制步骤框图;

图4为本发明提供的区块链主链的原理框图;

图5为本发明提供的智能家居控制装置的原理框图。

具体实施方式

下面结合附图和实施例对本发明进行详细的说明。

实施例一

如图1所示,一种基于区块链的智能家居控制系统,包括至少两个家居子系统,每个家居子系统中均包括一控制装置和与所述控制装置连接的至少一家居设备,各个家居子系统中的控制装置连接组成局域网,以建立起区块链数据库,每个控制装置都是所述区块链数据库上的一个节点;

所述控制装置,用于获取用户的操作指令,并依据操作指令对与其连接的家居设备进行控制;

所述家居设备,用于在所述控制装置的控制下执行相应功能;

所述区块链数据库,用于将写入有该控制系统的数据的区块链主链储存在其每个节点上。

其中,所述控制装置可以通过继电器、rs485、rs232等有线通讯或wifi、蓝牙等无线通讯的方式与家居设备连接以组成家居子系统;各个控制装置之间优选通过以太网口连接组成局域网。

所述家居设备依据不同场景而有所不同,比如客厅中的家居设备包括但不限于有电视、照明灯、电动门和电动窗帘等,房间中的家居设备包括但不限于有电脑、台灯和空调等,厨房中的家居设备包括但不限于有冰箱、烤箱和油烟机等,当然,依据不同的需求还可以包括摄像头、电子门锁等,也可以包括各种传感器,比如光线传感器、温度传感器、湿度传感器等。

在具体实现时,可以将客厅中的所有家居设备连接至第一控制装置,组成第一家居子系统,将房间中的所有家居设备连接至第二控制装置,组成第二家居子系统,将厨房中的所有家居设备连接至第三控制装置,组成第三家居子系统;所述第一控制装置、第二控制装置和第三控制装置之间连接组成局域网,以建立起区块链数据库,最终形成整个控制系统。

当然,用户还可以通过手机等移动终端来对该控制系统进行远程操作,此时,该控制系统还包括:移动终端和云端服务器,所述云端服务器通过互联网分别连接至所述移动终端和各个控制装置;

所述移动终端,用于获取用户的操作指令,并将操作指令远程发送至所述云端服务器;

所述云端服务器,用于将所述移动终端远程发送的操作指令转发至对应的控制装置。

实施例二

如图3所示,一种基于区块链的智能家居控制方法,应用于实施例一中所述的控制系统中,包括:

步骤1:所述控制装置获取用户输入的数字签名,以登录对应的账户;

该步骤1中,用户可以直接在所述控制装置上输入数字签名来登录账户,也可以在手机等移动终端的app上输入数字签名,经由云端服务器转发至所述控制装置上来远程登录账户。

所述数字签名是用户登录其账户的公钥,是在用户签订智能合约以创建账户时生成的。

因此,在该步骤1之前,所述控制装置需要先为用户创建账户,如图2所示,具体包括:

步骤01:所述控制装置与用户签订智能合约,生成数字签名;

同样的,该步骤01中,用户可以直接在所述控制装置上操作来签订智能合约,也可以在手机等移动终端的app上操作,经由云端服务器转发至所述控制装置上来远程签订智能合约。

步骤02:所述控制装置判断是否已存在区块链主链,若是,则进行步骤03和04;若否,则先创建创世区块,将智能合约写入到创世区块内,将创世区块发布储存形成区块链主链并同步储存到所述区块链数据库其他节点的控制装置上,再进行步骤03和04;

该步骤02中,创世区块指的是区块链主链上的第一个区块,用于启动和维护区块链主链的信息;所述智能合约写入到创世区块后,后续的其他账户都使用创世区块内写入的智能合约来创建。

步骤03:所述控制装置创建新账户和新的区块,将新账户的账户信息写入到新的区块内;

该步骤03中,账户信息除了账户名称和账户密码之外,还可包括人脸特征信息、指纹特征信息、虹膜特征信息或声纹特征信息等的至少一种。

步骤04:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

步骤2:所述控制装置创建新的区块,将登录账户的账户信息和数字签名写入新的区块内;

步骤3:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上;

步骤4:所述控制装置获取用户输入的操作指令;

另外,在步骤4中,若操作指令是通过所述控制装置上的交互单元获取的话,则进行步骤5-7;若操作指令是通过所述控制装置上的互联网连接单元获取的话,则所述控制装置先依据智能合约判断该用户是否拥有远程操作权限,若有,则进行步骤5-7,若无,则进行步骤a和b;

该步骤4中,所述交互单元指的是所述控制装置上用于与用户进行人机交互的部件,包括但不限于有触摸屏、显示屏、按键、喇叭、拾音器、摄像头等至少一种;所述互联网连接单元指的是所述控制装置上用于接入互联网的部件,以从云端服务器上获取用户通过手机等移动终端远程发送的操作指令,包括但不限于3/4/5g组件、网卡等至少一种。

步骤a:所述控制装置拒绝该用户访问对应的家居设备,并创建新的区块,将用户的操作指令和拒绝访问行为写入到新的区块内;

步骤b:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

步骤5:所述控制装置依据智能合约向用户分配私钥;

步骤6:所述控制装置创建新的区块,将用户的操作指令写入到新的区块中,并依据智能合约对操作指令进行检验,若为合法行为,则控制与其连接的家居设备执行相应功能;

该步骤6中,合法性认证包括但不限于人脸识别认证、指纹识别认证、虹膜识别认证和声纹识别认证中的至少一种。

在该步骤6中,若合法性认证为非法行为或遭入侵破坏,则所述控制装置不向与其连接的家居设备发出相应的控制指令。

步骤7:所述控制装置将新的区块发布储存到其区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

优选地,在上述的步骤6中,若合法性认证为非法行为或遭入侵破坏,则在该步骤7中,所述控制装置不将新的区块发布储存到其区块链主链上,并且自动脱离所述区块链数据库。

所述控制装置在脱离所述区块链数据库后,将无法接入所述区块链数据库,其创建的任何的区块也无法同步储存到所述区块链数据库的其他节点上,所述控制装置只有在修复重置后才能重新接入所述区块链数据库。

如图4所示,区块链主链中的每个区块均包括区块头和区块体两部分,区块头中的数据包括但不限于有该区块创建的时间戳、本区块体的hash值和上一区块的hash值(创世区块除外)等,依据不同应用场景,还可以包括默克尔根(merkletree)、随机数等;区块体中的数据除了上述的操作指令和账户信息之外,依据不同应用场景,还可以包括各个家居设备的运行参数、采集到的音视频数据等。其中,创世区块的区块体中的数据除了智能合约之外,还包括依据智能合约对区块链主链进行启动及维护的数据。

所述hash值为采用哈希算法对任意内容计算出一个长度相同的特征值,区块链的哈希长度是256位,无论原始数据不管为何种,都可计算出唯一一个256位的二进制数字,而且可以保证,只要原始内容不同,对应的hash值一定不同。因此,任一区块的区块体内的数据遭到改动,一定会导致该区块体的hash值发生改变,然后影响到下一区块的区块体内记录的上一区块hash值也发生改变,由此引起连锁反应,使得区块链主链中的数据一旦写入就不可更改、不可撤销。

实施例三

如图5所示,一种基于区块链的智能家居控制装置,应用于实施例一中所述的控制系统中,包括:

电源单元,用于获取电能,为该控制装置供电;

交互单元,用于与用户进行人机交互,以获取用户的操作指令;

设备连接单元,用于连接至少一家居设备组成家居子系统;

局域网连接单元,用于其他控制装置连接组成局域网,以建立起区块链数据库;

存储单元,用于储存供处理单元执行的计算机程序,以及,写入有所述控制系统的数据的区块链主链;

处理单元,用于执行所述存储单元内储存的计算机程序,分别与所述电源单元、交互单元、设备连接单元、局域网连接单元和存储单元电性连接。

所述电源单元包括但不限于电池、220v电源接口等至少一种,所述交互单元包括但不限于有触摸屏、显示屏、按键、喇叭、拾音器、摄像头等至少一种,所述设备连接单元优选但不限于通过继电器、rs485、rs232等有线通讯组件或wifi、蓝牙等无线通讯组件中至少一种,所述局域网连接单元优选为以太网口,所述存储单元包括但不限于闪存、硬盘等至少一种,所述处理单元包括但不限于x86或arm等架构,所述计算机程序包括但不限于基于linux/unix、wince或android等操作系统。

该控制装置还包括与所述处理单元电性连接的互联网连接单元,用于通过互联网连接至云端服务器,以获取用户通过移动终端远程发送并由云端服务器转发的操作指令。

所述互联网连接单元包括但不限于2/3/4g组件、网卡等至少一种。

所述处理单元执行所述存储单元内储存的计算机程序时,如图3所示,进行如下步骤:

步骤1:获取用户输入的数字签名,以登录对应的账户;

所述处理单元在该步骤1中,可以直接从所述交互单元上获取用户输入的数字签名,也可以从所述互联网连接单元上经由云端服务器通过手机等移动终端的app远程获取用户输入的数字签名。

所述数字签名是用户登录其账户的公钥,是在用户签订智能合约以创建账户时生成的。

因此,所述处理单元在步骤1之前,还需要先为用户创建账户,如图2所示,具体进行如下步骤:

步骤01:与用户签订智能合约,生成数字签名;

同样的,所述处理单元在该步骤01中,可以直接从所述交互单元上与用户签订智能合约,也可以从所述互联网连接单元上经由云端服务器通过手机等移动终端的app与用户远程签订智能合约。

步骤02:判断是否已存在区块链主链,若是,则进行步骤03和04;若否,则先创建创世区块,将智能合约写入到创世区块内,将创世区块发布储存到所述存储单元内形成区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上,再进行步骤03和04;

该步骤02中,创世区块指的是区块链主链上的第一个区块,用于启动和维护区块链主链的信息;所述智能合约只写入创世区块内,后续创建的其他账户都使用创世区块内写入的智能合约。

步骤03:创建新账户和新的区块,将新账户的账户信息写入到新的区块内;

该步骤03中,账户信息除了账户名称和账户密码之外,还可包括人脸特征信息、指纹特征信息、虹膜特征信息或声纹特征信息等的至少一种。

步骤04:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上;

步骤2:创建新的区块,将登录账户的账户信息和数字签名写入新的区块内;

步骤3:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上;

步骤4:获取用户输入的操作指令;

所述处理单元在该步骤4中,若操作指令是通过所述交互单元获取的话,则进行步骤5-7;若操作指令是通过所述互联网连接单元获取的话,则先依据智能合约判断该用户是否拥有远程操作权限,若有,则进行步骤5-7,若无,则进行步骤a和b;

步骤a:拒绝该用户访问对应的家居设备,并创建新的区块,将用户的操作指令和拒绝访问行为写入到新的区块内;

步骤b:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

步骤5:依据智能合约向用户分配私钥;

步骤6:创建新的区块,将用户的操作指令写入到新的区块中,并依据智能合约对操作指令进行检验,若为合法行为,则控制与所述设备连接单元连接的家居设备执行相应功能;

该步骤6中,合法性认证包括但不限于人脸识别认证、指纹识别认证、虹膜识别认证和声纹识别认证中的至少一种。

在该步骤6中,若合法性认证为非法行为或遭入侵破坏,则所述处理单元不向与所述设备连接单元连接的家居设备发出相应的控制指令。

步骤7:将新的区块发布储存到所述存储单元内的区块链主链上并同步储存到所述区块链数据库其他节点的控制装置上。

优选地,在上述的步骤6中,若合法性认证为非法行为或遭入侵破坏,则在该步骤7中,所述处理单元不将新的区块发布储存到所述存储单元内的区块链主链上,并且将该控制装置自动脱离所述区块链数据库。

该控制装置在脱离所述区块链数据库后,将无法接入所述区块链数据库,所述处理单元创建的任何的区块也无法同步储存到所述区块链数据库的其他节点上,只有将该控制装置修复重置后才能重新接入所述区块链数据库。

以上所述实施例仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制,但凡采用等同替换或等效变换的形式所获得的技术方案,均应落在本发明的保护范围之内。

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