1.一种基于区块链的智能家居隐私保护系统的隐私保护方法,其特征在于,所述基于区块链的智能家居隐私保护系统,包括,智能家居设备(10);
节点(20),一方面用于对数据进行存储和处理;另一方面用于对所述节点(20)中数据的访问和控制权限策略进行管理;
管理节点(30),与所述节点(20)通信连接;用于存储所述节点(20)传来的加密设备运行数据副本、对智能家居设备的运维以及各类权限的秘钥进行管理和中转;
所述节点(20)作为所述智能家居设备(10)和所述管理节点(30)之间的通信中转节点;
所述节点(20)包括,
接口模块(201),用于与所述智能家居设备(10)交互数据;
存储模块(202),用于提供数据存储的存储空间;
处理器(203),用于数据处理和程序的执行;
程序存储模块(204),用于存储可执行的软件,所述程序存储模块(204)中设置有智能家居隐私保护装置,所述智能家居隐私保护装置包括: 秘钥管理模块(2041),用于对所述节点(20)具有数据访问和控制权限的秘钥进行管理;加密服务模块(2042),用于对数据进行对称加密和解密;权限管理模块(2043),用于对所述秘钥管理模块(2041)中的私钥权限进行管理;
通信模块(205),用于所述节点(20)之间的通信以及所述节点(20)与管理节点(30)的通信;所述处理器(203)分别与所述接口模块(201)、存储模块(202)、程序存储模块(204)和通信模块(205)通信连接;
基于区块链的智能家居隐私保护系统的隐私保护方法,包括以下步骤:
S1 以节点为单位,建立区块链系统,包括以下步骤:
S101 区块和存储的生成及动态连接;
在区块链系统初始化时,节点(20)开放本节点存储模块(202)可用存储空间的α%,0<α<100,用于创建区块;初始化状态下,整个区块链最末端区块所属节点(20)开放2α%的区块专属空间,其中的α%作为抵押空间;当有新的节点加入后,先前的末端区块所属节点释放抵押空间,新节点产生抵押空间;
S102 制定区块链系统的存储机制,所述存储机制中数据的存储方式包括所述智能家居设备(10)数据的节点本地化存储和私钥的区块链系统存储两种;所述私钥的区块链系统存储的处理方法为:所述各节点(20)的秘钥管理模块(2041)中都存放有本节点访问和控制操作相关的私钥,本节点的处理器(203)采用哈希算法对私钥加密后,广播到区块链的所有区块中存储;
S2 对智能家居设备的数据访问权限进行验证;所述S2步骤的具体实现方式为:
当节点i对节点j发起数据访问时,所述节点j解析到所述节点i的私钥签名后,所述节点j的处理器(203)首先查询自身秘钥管理模块(2041)中的秘钥,当查询到了所述节点i的私钥 后,所述节点j的处理器(203)采用哈希算法 对私钥 进行哈希计算得到 ;
然后所述节点j的处理器(203)从区块链系统中读取所述节点i的秘钥哈希加密结果,若共识结果中存在值为 的项,则认为所述节点i对所述节点j的数据访问权限通过了验证,所述节点i可以访问所述节点j的数据;若所述节点j解析到的所述节点i的私钥签名 ,从所述节点j的秘钥管理模块(2041)中没有查询到 ,或所述节点j的处理器(203)从区块链系统中读取的哈希加密结果没有 ,则认为所述节点i没有访问所述节点j中的数据的权限,所述节点i对所述节点j的数据访问请求被拒绝;
S3 对智能家居设备的远程控制权限进行认证;所述S3步骤的具体实现方式为,采用控制节点发起请求,管理节点(30)担保,目标节点认证的机制,具体处理方法为:当节点p对节点q发起远程控制请求时,请求的发起过程为,所述节点p将请求信息发送至管理节点(30),管理节点(30)解析出所述节点p的私钥 ,并从自身存储的数据中查询所述节点q的历史设备数据副本 ,记副本记录数为 ,并采用哈希算法 对 计算哈希值为 ;管理节点(30)将所述私钥 、副本记录数 、数据副本 的哈希
值 连接成字符串, ,“+”表示连接字符串;通过对称加密方
式,将 发送至所述节点q;
所述节点q通过所述通信模块(205)接收到加密后的 后,将其发送至所述处理器(203),所述处理器(203)调用所述加密服务模块(2042),解密后得到原始字符串 ,所述处理器(203)从原始字符串 中解析到私钥 、副本记录数 和哈希值 ;
所述节点q的处理器(203)从存储模块(202)中读取节点q的历史设备数据,并调用加密服务模块(2042)的解密服务,获取到解密后的历史设备数据,从历史设备数据中取得条记录,记为 ,并采用哈希算法 计算 条记录的哈希值,记为 ;
若 则认为管理节点担保成功;否则认为管理节点担保失败,节点p
对节点q的远程控制请求被拒绝;
当管理节点(30)担保成功时,节点q的处理器(203)从秘钥管理模块(2041)中查询是否有私钥 ,若没有查询到 的记录,则节点p对节点q的远程控制请求被拒绝;若查询到了的记录,处理器(203)将继续查询权限管理模块(2043),验证 是否具有远程控制权限,若经查询 没有远程控制节点q的权限,则节点p对节点q的远程控制请求被拒绝;
若经查询 具有远程控制节点q的权限,则处理器(203)采用哈希算法 计算秘钥的哈希值 ,并查询区块链系统中,是否有哈希值 的记录,若没有哈希值的记录,则节点p对节点q的远程控制请求被拒绝;若查询到了哈希值 的记
录,则节点p对节点q的远程控制请求被验证通过。
2.根据权利要求1所述的基于区块链的智能家居隐私保护系统的隐私保护方法,其特征在于,所述S102步骤中所述智能家居设备(10)数据的节点本地化存储的处理方法为:所述智能家居设备(10)通过接口模块(201)将设备数据发送给处理器(203),所述处理器(203)调用秘钥管理模块(2041)管理的私钥和加密服务模块(2042)中的加密服务;将设备数据加密后存储到本节点的存储模块(202)中,同时将加密后的设备数据发送至所述管理节点(30)作为副本。