本申请涉及计算机领域,特别是涉及一种基于区块链的智能家居隐私保护系统及隐私保护方法。
背景技术:
随着网络和通信技术的发展,家居设施设备的智能化已经成为必然,并将很快普及到家家户户。然而所有设备都是暴露在公网,并且大部分是通过无线网络连接到公网,这样的物理特性导致隐私保护将面临很大的挑战,现有的智能家居完全依赖标准化加密和集中化云端管理,在面对定向攻击时,存在先天性技术缺陷,隐私和数据泄露只是时间问题。
技术实现要素:
为了解决上述问题,本发明提出一种基于区块链的智能家居隐私保护系统及隐私保护方法,所述基于区块链的智能家居保护系统,包括以下部分:
为实现上述目的,本发明采取的技术方案为:提供一种基于区块链的智能家居隐私保护系统,包括:
智能家居设备;
节点,一方面用于对数据进行存储和处理;另一方面用于对所述节点中数据的访问和控制权限策略进行管理;
管理节点,与所述节点通信连接;用于存储所述节点传来的加密设备运行数据副本、对智能家居设备的运维以及各类权限的秘钥进行管理和中转;
所述节点作为所述智能家居设备和所述管理节点之间的通信中转节点;
所述节点包括接口模块,用于与所述智能家居设备交互数据;存储模块,用于提供数据存储的存储空间;处理器,用于数据处理和程序的执行;程序存储模块,用于存储可执行的软件,所述程序存储模块中设置有智能家居隐私保护装置;通信模块,用于所述节点之间的通信以及所述节点与管理节点的通信;所述处理器分别与所述接口模块、存储模块、程序存储模块和通信模块通信连接。
进一步的,所述智能家居隐私保护装置包括:
秘钥管理模块,用于对所述节点具有数据访问和控制权限的秘钥进行管理;
加密服务模块,用于对数据进行对称加密和解密;
权限管理模块,用于对所述秘钥管理模块中的私钥权限进行管理。
本发明还提供了一种基于区块链的智能家居隐私保护系统的隐私保护方法,包括以下步骤:
s1以节点为单位,建立区块链系统,包括以下步骤:
s101区块和存储的生成及动态连接;
在区块链系统初始化时,节点开放本节点存储模块可用存储空间的α%(0<α<100)用于创建区块;初始化状态下,整个区块链最末端区块所属节点开放2α%的区块专属空间,其中的α%作为抵押空间;当有新的节点加入后,先前的末端区块所属节点释放抵押空间,新节点产生抵押空间;
s102制定区块链系统的存储机制,所述存储机制中数据的存储方式包括所述智能家居设备数据的节点本地化存储和私钥的区块链系统存储两种;
s2对智能家居设备的数据访问权限进行验证;
s3对智能家居设备的远程控制权限进行认证。
进一步的,所述s102步骤中所述智能家居设备数据的节点本地化存储的处理方法为:所述智能家居设备通过接口模块将设备数据发送给处理器,所述处理器调用所述秘钥管理模块管理的私钥和所述加密服务模块中的加密服务;将设备数据加密后存储到本节点的存储模块中,同时将加密后的设备数据发送至所述管理节点作为副本。
进一步的,所述s102步骤中所述私钥的区块链系统存储的处理方法为:所述各节点的秘钥管理模块中都存放有本节点访问和控制操作相关的私钥,本节点的处理器采用哈希算法对私钥加密后,广播到区块链的所有区块中存储。
进一步的,所述s2步骤的具体实现方式为:
当节点i对节点j发起数据访问时,所述节点j解析到所述节点i的私钥签名后,所述节点j的处理器首先查询自身秘钥管理模块中的秘钥,当查询到了所述节点i的私钥
进一步的,所述s3步骤的具体实现方式为,采用控制节点发起请求,管理节点担保,目标节点认证的机制,具体处理方法为:
当节点p对节点q发起远程控制请求时,请求的发起过程为,所述节点p将请求信息发送至管理节点,管理节点解析出所述节点p的私钥
所述节点q通过所述通信模块接收到加密后的
所述节点q的处理器从存储模块中读取节点q的历史设备数据,并调用加密服务模块的解密服务,获取到解密后的历史设备数据,从历史设备数据中取得
若
当管理节点担保成功时,节点q的处理器从秘钥管理模块中查询是否有私钥
若经查询
与现有技术相比,本发明的技术方案至少具有以下有益效果:
本发明的基于区块链的智能家居隐私保护系统及隐私保护方法,通过区块链中存放的数据仅有私钥的哈希加密结果的技术方案,既利用了区块链的防篡改特性,加强了隐私保护,又大大降低了对区块节点存储空间的占用,使得系统更高效,极大提升权限认证效率。同时,通过采用抵押空间的方式,令发起攻击代价巨大,可以安全可靠地保护智能家居设备的隐私安全的有益效果。
附图说明
图1本发明所述的基于区块链的智能家居隐私保护系统架构图;
图2本发明所述基于区块链的智能家居隐私保护系统节点的架构图;
图3本发明所述的智能家居隐私保护装置架构图。
具体实施方式
为了更好的说明本发明,下面将结合附图和具体实施例来做详细说明。
参照图1,所述基于区块链的智能家居隐私保护系统,包括以下部分:
智能家居设备10、节点20、管理节点30。
所述智能家居设备10,包括各类家居设备,例如电视机、冰箱、空调等具有数据收发模块的智能家居。所述智能家居设备10通过通信连接,连接有节点20,所述通信连接的方式包括但不限于网线、电缆、光纤、蓝牙、wifi、其它近场及远场无线通信等。
所述节点20,一方面用于对数据进行存储和处理,并作为智能家居设备10和管理节点30之间的通信中转节点;另一方面用于对节点20中数据的访问和控制权限策略进行管理。通过多个节点20构成区块链系统。所述节点20通过公共网络连接有管理节点30。
所述管理节点30,用于存储各节点20传来的加密设备运行数据副本、对智能家居设备10的运维以及各类权限的秘钥进行管理和中转。
作为本发明的一个实施例,
参照图1,本示例中共有n个节点20,每个节点20连接有一个或多个智能家居设备10,所有的节点20通过本发明智能家居隐私保护方法中的s1步骤所述的方法构成区块链和存储机制。所述智能家居设备10将设备运行数据发送给节点20,节点20接收到设备运行数据后,将数据对称加密后保存,并将加密数据的副本发送至管理节点30。另一方面,区块链中的节点20还对访问和控制所需的私钥和相应权限进行管理,并将私钥加密后广播到区块链中,用于确权;当其它节点20需要访问目标节点20时,通过本发明智能家居隐私保护方法中的s2步骤所述的方法由区块链系统对访问所需的私钥进行确权,以实现对目标节点20的数据访问;当其它节点20需要控制目标节点20时,按照本发明智能家居隐私保护方法中的s3步骤所述的方法通过管理节点30的担保和区块链系统的私钥确权实现控制目标节点。
管理节点30,一方面接收节点20发来的加密数据副本并保存;另一方面将各节点20的相关权限的私钥进行管理和转发到私钥相关的目标节点20中。当控制节点20需要控制目标节点20时,管理节点30为控制权限进行担保和协助目标节点20对控制节点20的私钥进行确权。
参照图2,所述节点20包括以下部分:
接口模块201、存储模块202、处理器203、程序存储模块204、通信模块205。
所述接口模块201,用于智能家居设备10交互数据,交互数据的接口形式包括但不限于网线、电缆、光纤、蓝牙、wifi、其它近场及远场无线通信接口。所述接口模块201与处理器203之间具有数据连接,可以交互数据。
所述存储模块202,用于提供数据存储的存储空间。存储模块202与处理器203之间通过数据连接,可以交互数据。
所述处理器203,用于数据处理和程序的执行。处理器203通过数据连接,连接有接口模块201、存储模块202、程序存储模块204和通信模块205。
所述程序存储模块204用于存储可执行的软件,其中安装有智能家居隐私保护装置;所述智能家居隐私保护装置参照图3所示,包括:
秘钥管理模块2041、加密服务模块2042、权限管理模块2043;
所述秘钥管理模块2041,用于对节点20具有数据访问和控制权限的秘钥进行管理;
所述加密服务模块2042,用于对数据进行对称加密和解密;
所述权限管理模块2043,用于对秘钥管理模块2041中的私钥权限进行管理。
所述秘钥管理模块2041、加密服务模块2042和权限管理模块2043通过程序存储模块204和处理器203之间的数据连接,与处理器203交互数据并为处理器203提供服务。
作为本发明的一个实施例,
对于系统中的某个节点m来说,节点m接收到管理节点30传来的节点m相关的私钥及权限加密数据后,节点m的处理器203首先调用加密服务模块2042的解密服务,得到私钥及权限数据;同时处理器203将解析到的私钥数据发送至秘钥管理模块2042中存储和管理,另一方面处理器203将解析到的私钥数据及对应权限发送至权限管理模块2043中存储和管理。节点m将私钥哈希值保存到区块链中时,节点m的处理器203首先从秘钥管理模块203中读取一条私钥记录并使用哈希算法
所述通信模块205,用于节点20与系统中其它节点20以及管理节点30之间的通信。所述通信方式包括但不限于网口、wifi、电缆、光纤等。
作为本发明的一个实施例,参照图2,智能家居设备10通过接口模块201将数据发送至处理器203,处理器203调用加密服务模块2042将数据加密后保存到本节点的数据存储模块202中,同时将加密数据副本通过通信模块205发送到管理节点30。
当区块链系统初始化时或某节点m相关的私钥和权限发生变化时,管理节点30将私钥及权限数据加密后通过公共网络发送至节点m的通信模块205,通信模块205接收到管理节点30传来的节点m相关的私钥及权限加密数据后,节点m的处理器203首先调用加密服务模块2042的解密服务,得到私钥及权限数据;同时处理器203将解析到的私钥数据发送至秘钥管理模块2042中存储和管理,另一方面处理器203将解析到的私钥数据及对应权限发送至权限管理模块2043中存储和管理。节点m将私钥哈希值保存到区块链中时,节点m的处理器203首先从秘钥管理模块203中读取一条私钥记录并使用哈希算法
当节点m对节点n发起数据访问请求时,节点m将私钥签名和数据访问请求加密后通过通信模块205发送给节点n的通信模块205,节点n的通信模块205将数据发送给处理器203,处理器203调用加密服务模块2042对私钥和数据访问请求解密,并对节点m的数据访问权限进行验证,验证通过后,节点m可以访问节点n的数据,否则数据访问请求被拒绝。
当节点m对节点n发起远程控制请求时,节点m将私钥签名和远程控制请求加密后通过通信模块205发送给管理节点30,并对节点m的远程控制请求权限进行验证,验证通过后,节点m可以对节点n进行远程控制,否则远程控制请求被拒绝。
基于上述智能家居隐私保护系统,本发明还提出了一种基于区块链的智能家居隐私保护方法,具体处理步骤如下:
s1以节点为单位,建立区块链系统。
根据现有区块链技术,将区块链系统部署到所有的节点20和管理节点30中。基于现有区块链技术,本发明创造性的采用以下机制:
s101区块和存储的生成及动态连接。
在区块链系统初始化时,系统中的节点20开放本节点存储模块202可用存储空间的α%(0<α<100)用于创建区块。初始化状态下,整个区块链最末端区块所属节点20需开放2α%的区块专属空间,其中的α%作为抵押空间。本发明所述基于区块链的智能家居隐私保护系统,后加入的节点,安全可信度是最低的,因此采用抵押空间的方式,加大发起攻击的代价。当有新的节点加入后,先前的末端区块所属节点释放抵押空间,新节点产生抵押空间。
能够连接到本发明所述的区块链系统的节点,无需共识验证,按系统时间戳先后顺序,连接到已有区块链的末端,并向系统中所有区块广播。
作为本发明的一个实施例,区块链系统初始化时,共有n个节点,按区块链的连接顺序,记为节点1,节点2…节点n,则初始化时节点1至节点(n-1)每个节点开放自身存储模块202的可用存储空间的15%(α=15)用于创建区块,节点n需开放自身存储模块202的可用存储空间的30%用于创建区块,其中15%作为抵押空间。
当系统中有新的节点(n+1)接入时,节点(n+1)直接连接到节点n的区块后面,此时节点(n+1)开放自身存储模块202的可用存储空间的30%用于创建区块,其中15%作为抵押空间,节点n释放15%的抵押空间。
s102制定区块链系统的存储机制
本发明采用的存储机制中,数据的存储方式包括节点本地化存储和区块链系统存储两种。
(1)智能家居设备10数据的节点本地化存储。
智能家居设备10通过接口模块201将设备数据发送给处理器203,处理器203调用程序存储模块204中秘钥管理模块2041管理的私钥和加密服务模块2042中的加密服务,所述加密服务的加密方式采用对称加密方式,为现有技术,此处不做过多阐述。将设备数据加密后存储到本节点的存储模块202中,同时将加密后的设备数据发送至管理节点30作为副本。
(2)私钥的区块链系统存储。
每个节点20的秘钥管理模块2041中都存放着本节点访问和控制操作相关的私钥。本节点的处理器203采用哈希算法
采用上述存储机制的有益效果是:区块链中存放的数据仅有私钥的哈希加密结果,既利用了区块链的防篡改特性,加强了隐私保护,又大大降低了对区块节点存储空间的占用,使得系统更高效,极大提升权限认证效率。
s2对智能家居设备的数据访问权限进行验证。
每个节点20的权限管理模块2043中,存放着具有访问或对本节点所连接的智能家居设备10进行控制权限的私钥及权限范围,权限管理模块2043对这些私钥对应的权限进行管理。
当节点i对节点j发起数据访问时,节点j解析到节点i的私钥签名后,节点j的处理器203首先查询自身秘钥管理模块2041中的秘钥,当查询到了节点i的私钥
采用上述数据访问权限验证方法的有益效果是:使用了被访问节点和区块链系统双重验证,既提高了验证效率,又彻底杜绝了伪装攻击的可能性。
s3对智能家居设备的远程控制权限进行认证。
本发明对智能家居设备的远程控制权限认证机制采用了控制节点发起请求,管理节点30担保,目标节点认证的机制。具体处理方法如下:
当节点p对节点q发起远程控制请求时,请求的发起过程为,节点p将请求信息发送至管理节点30,管理节点30解析出节点p的私钥
节点q通过通信模块205接收到加密后的
节点q的处理器203从存储模块202中读取节点q的历史设备数据,并调用加密服务模块2042的解密服务,获取到解密后的历史设备数据,从历史设备数据中取得
若
当管理节点30担保成功时,节点q的处理器203从秘钥管理模块2041中查询是否有私钥
若经查询
若查询到了哈希值
上述远程控制验证方法,采用了管理节点做担保,被控节点验证、区块链验证三重权限验证,可彻底防止伪装攻击、篡改攻击等。极大的加强了系统的安全性,并且通过简单的计算就能实现验证目的,大大提高了验证效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。