基于区块链技术的云-边协作数据安全存储系统与方法与流程

文档序号:37061530发布日期:2024-02-20 21:12阅读:24来源:国知局
基于区块链技术的云-边协作数据安全存储系统与方法与流程

本发明涉及一种基于区块链与云-边缘计算混合架构的物联网数据存储系统与方法。


背景技术:

1、基于物联网技术的各类应用,诸如智慧城市、智能家居及车联网等新一代信息技术在提供生活便利的同时依然面临着诸多安全问题,如数据的隐私保护、访问控制、安全传输等问题。因此,研究如何解决各类物联网应用中所存在的隐私及数据安全隐患具有重要意义。此外,传统的基于云数据中心的物联网数据存储方案依然存在中心计算能力不够,数据隐私泄露和数据遭到破坏的可能。例如,存储在云数据中心的物联网数据存在恶意篡改、数据丢失及隐私嗅探等风险。


技术实现思路

1、为克服上述缺陷,本发明提供一种基于区块链技术的云-边协作数据安全存储系统与方法。

2、为达到上述目的,本发明的基于区块链技术的云-边协作数据安全存储系统,包括:

3、可信机构,用于对生成系统的密钥,并对尝试加入系统的任意实体提供唯一的认证;

4、云服务器,由可信机构认证后负责存储已加密的物联网数据;并对经过可信机构认证的实体的请求给予响应;

5、区块链,由可信机构认证后能提供去中心化的存储环境用以确保物联网数据不可被篡改,通过区块链-云端的数据映射关系以实现对存储在云端的数据的有效性校验;

6、边缘服务器,由可信机构认证后负责处理物联网设备所提供的物联网数据,并将处理过的数据上传到云服务器;

7、物联网设备:由可信机构认证后将数据提交至附近的边缘服务器进行分析和处理。

8、进一步地,所述的物联网设备为传感器设备。

9、进一步地,所述的传感器设备为感知环境信息的设备,包括:rfid、gps、温度、湿度传感器。

10、进一步地,所述的任意实体包括:云服务器、区块链服务器、边缘服务器、物联网设备。

11、进一步地,所述的可信机构对任意实体认证的过程包括:

12、(1)选定哈希函数hash(*),消息认证码函数hmac(*),随机匿名函数,对称加密算法es(*),对称解密算法ds(*);

13、(2)可信机构输出系统的随机数t,消息认证码hamc(*),设置私钥msk=t,由可信机构保存生成的私钥;可信机构根据生成的私钥t和时间戳tsnow生成系统公钥为mpk=g;可信机构向系统内的各个实体公布这些公用函数和公共参数;

14、(3)待认证实体ei在本地运行密钥生成算法;待认证实体ei根据可信机构公布的随机数函数,选择随机数si作为其私钥prik(ei),根据可信机构公布的加密算法,计算其公钥为pubk(ei)

15、(4)待认证实体ei与可信机构之间的通信运用diffie-helman密钥交换协议生成通信会话秘钥;待认证实体ei将相关的个人参数(si,pubk(ei))和系统公共参数(哈希函数,随机函数,加密算法)作为输入传给diffie-helman算法,输出待认证实体ei与可信机构之间的会话密钥ske->ta;

16、(5)待认证实体ei的身份信息为info(ei)={configs,affiliation,type,…,location},info(ei)中包含了待认证实体ei的详细信息;随后,待认证实体ei使用会话秘钥ske->ta加密info(ei),生成的加密信息为reg(ei)={pubk(ei),tsnow,hamc(pubk(ei)&tsnow)},发送给可信机构

17、(6)可信机构接收到待认证实体ei的身份信息之后,根据本地保存的的消息认证函数结合reg(ei)验证其有效性,并且将待认证实体ei的身份信息以键值对的形式<ei,reg(ei)>备份于云服务器;如果待认证实体ei身份验证通过,则由可信机构为其生成假名ps(ei),颁布其唯一合法的数字证书cert(ei)一并发送给待认证实体ei。

18、进一步地,所述的可信机构对节点esi加入区块链网络的过程的认证包括:

19、(1)申请加入区块链系统;

20、11):节点esi定义加入区块链系统的申请请求;格式如下:

21、reqjioni={cert(esi),type:”jion”,ipaddr,hostname.ps(esi),tsnnow},其中reqjioni包含

22、了节点esi的证书cert(esi),type标识请求的类型,ipaddr和hostname分别代表了申请节点的ip地址和主机名,ps(esi)为节点的假名;

23、12):节点esi加密reqjioni之后发送给可信机构,可信机构先对reqjioni解密,对其中包含的数字证书cert(esi)进行核验确定esi为一注册的合法节点;

24、13):在确定reqjioni为合规请求后,可信机构查询区块链的配置详情表,搜索区块链系统中的有效成员节点,并且将reqjioni转发给区块链中的成员节点,随后由成员节点对请求reqjioni进行投票;

25、(2):节点审核

26、21):当区块链节点nodei收到reqjioni消息以后,需要验证该消息是否过期,(tsnow-reqjioni.tsnow)<t(t为预设值的网络传输时间阈值)则代表该条消息没有过期,并且跳转至步骤2,否则丢弃;

27、22):nodei:需验证reqjioni是否经过可信机构的认证,验证其cert(esi)的有效性,ipaddr地址是否真实。如果验证结果都为true,调用智能合约对请求reqjioni进行投票。

28、23):nodei在完成对请求reqjioni的投票之后,反向可信机构反馈响应消息说明其投票结果。反馈格式如下:

29、resjioni={result:true,from:pubk(nodei),status:“complete”,tsnow}

30、(3)节点配置;

31、(31):在规定的时间间隔内收到超过三分之二的区块链节点的响应消息后,可信机构调用智能合约获取节点的表决结果;否则,这次请求无效;

32、(32):可信机构对接收到的表决结果进行分析,当超过三分之二的resjioni中result为true,则代表节点esi通过了入链申请;可信机构将区块链节点所需的配置信息infoconfig(esi)发送给节点esi;

33、(33):esi根据收到的infoconfig(esi)设置自身节点为区块链成员节点,并且将自身节点的配置更新config(esi)={ps(esi),ipaddr,tsnow,status},发送给可信机构;由可信机构将config(esi)添加至维护的区块链节点配置表中。

34、为达到上述目的,本发明的基于区块链技术的云-边协作数据安全存储方法,所述的方法包括下述步骤:

35、71、传感器数据sdata需汇集至传感器管理节点mnodeii,使用esi的公钥pubk(esi)对sdata进行加密;mnodei使用其私钥prik(mnodei)对sdata生成数字签名γ,再加上时间戳tsnow之后将加密处理后的sdata发送给esi,格式定义如rmsg(mnodei)={sdata,γ,pubk(esi),tsnow}

36、72:边缘节点esi对接收到的数据进行验证;首先对数据包中所含的时间戳判断该数据包是否已过期;通过验证消息中包含的数字签名来判断该数据包是否来自mnodei节点;当所有条件都满足,结束本次存储流程。

37、进一步地,所述的方法还包括下述步骤:

38、81、边缘服务器esi将收到的rmsg(mnodei)数据集进行解析,根据系统的敏感数据判定规则,假设判定规则为ip白名单;消息中的ip地址在白名单内,这些sdata就是非敏感数据,跳转至步骤82;否则,就是敏感数据,跳转至步骤83;

39、82:边缘服务器esi验证sdata消息的时间戳tsnow进行有效性验证,再对其数字签名γ验证;验证通过后调用本地的智能合约实现对sdata的上链存储,将sdata的数据加入esi维护的区块链账本中;

40、83:边缘服务器对敏感数据进行二次封装,增加esi的属性信息以及与数据的对应关系,发送给云服务器cs;云服务器cs验证srd消息的时间戳tsnow进行有效性验证,再对其数字签名γ验证;验证通过后存储在本地数据库。

41、本发明提出了基于边缘计算设备构建区块链存储网络的方法,并执行节点申请与成员审核机制以保证区块链系统的可靠性。进一步的,提出了基于区块链与云-边计算混合架构的物联网数据安全存储与交互模型,该模型通过区块链与云服务器的相互协作并结合公钥密码学体制以确保存储数据的安全性。此外,模型使用diffie-hellman密钥交换协议以保证数据在传输过程中的机密性。

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