基于区块链技术的云-边协作数据安全存储系统与方法
文献发布时间:2024-04-18 20:01:23
技术领域
本发明涉及一种基于区块链与云-边缘计算混合架构的物联网数据存储系统与方法。
背景技术
基于物联网技术的各类应用,诸如智慧城市、智能家居及车联网等新一代信息技术在提供生活便利的同时依然面临着诸多安全问题,如数据的隐私保护、访问控制、安全传输等问题。因此,研究如何解决各类物联网应用中所存在的隐私及数据安全隐患具有重要意义。此外,传统的基于云数据中心的物联网数据存储方案依然存在中心计算能力不够,数据隐私泄露和数据遭到破坏的可能。例如,存储在云数据中心的物联网数据存在恶意篡改、数据丢失及隐私嗅探等风险。
发明内容
为克服上述缺陷,本发明提供一种基于区块链技术的云-边协作数据安全存储系统与方法。
为达到上述目的,本发明的基于区块链技术的云-边协作数据安全存储系统,包括:
可信机构,用于对生成系统的密钥,并对尝试加入系统的任意实体提供唯一的认证;
云服务器,由可信机构认证后负责存储已加密的物联网数据;并对经过可信机构认证的实体的请求给予响应;
区块链,由可信机构认证后能提供去中心化的存储环境用以确保物联网数据不可被篡改,通过区块链-云端的数据映射关系以实现对存储在云端的数据的有效性校验;
边缘服务器,由可信机构认证后负责处理物联网设备所提供的物联网数据,并将处理过的数据上传到云服务器;
物联网设备:由可信机构认证后将数据提交至附近的边缘服务器进行分析和处理。
进一步地,所述的物联网设备为传感器设备。
进一步地,所述的传感器设备为感知环境信息的设备,包括:RFID、GPS、温度、湿度传感器。
进一步地,所述的任意实体包括:云服务器、区块链服务器、边缘服务器、物联网设备。
进一步地,所述的可信机构对任意实体认证的过程包括:
(1)选定哈希函数Hash(*),消息认证码函数HMAC(*),随机匿名函数,对称加密算法E
(2)可信机构输出系统的随机数T,消息认证码HAMC(*),设置私钥msk=T,由可信机构保存生成的私钥;可信机构根据生成的私钥T和时间戳TSnow生成系统公钥为mpk=g;可信机构向系统内的各个实体公布这些公用函数和公共参数;
(3)待认证实体Ei在本地运行密钥生成算法;待认证实体Ei根据可信机构公布的随机数函数,选择随机数Si作为其私钥Prik(Ei),根据可信机构公布的加密算法,计算其公钥为Pubk(Ei)
(4)待认证实体Ei与可信机构之间的通信运用Diffie-Helman密钥交换协议生成通信会话秘钥;待认证实体Ei将相关的个人参数(Si,Pubk(Ei))和系统公共参数(哈希函数,随机函数,加密算法)作为输入传给Diffie-Helman算法,输出待认证实体Ei与可信机构之间的会话密钥SKE->TA;
(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)},发送给可信机构
(6)可信机构接收到待认证实体Ei的身份信息之后,根据本地保存的的消息认证函数结合Reg(Ei)验证其有效性,并且将待认证实体Ei的身份信息以键值对的形式
进一步地,所述的可信机构对节点ESi加入区块链网络的过程的认证包括:
(1)申请加入区块链系统;
11):节点ES
ReqJion
了节点ES
12):节点ES
13):在确定ReqJion
(2):节点审核
21):当区块链节点Node
22):Node
23):Node
ResJion
(3)节点配置;
(31):在规定的时间间隔内收到超过三分之二的区块链节点的响应消息后,可信机构调用智能合约获取节点的表决结果;否则,这次请求无效;
(32):可信机构对接收到的表决结果进行分析,当超过三分之二的ResJion
(33):ES
为达到上述目的,本发明的基于区块链技术的云-边协作数据安全存储方法,所述的方法包括下述步骤:
71、传感器数据sData需汇集至传感器管理节点mNode
72:边缘节点ES
进一步地,所述的方法还包括下述步骤:
81、边缘服务器ES
82:边缘服务器ES
83:边缘服务器对敏感数据进行二次封装,增加ES
本发明提出了基于边缘计算设备构建区块链存储网络的方法,并执行节点申请与成员审核机制以保证区块链系统的可靠性。进一步的,提出了基于区块链与云-边计算混合架构的物联网数据安全存储与交互模型,该模型通过区块链与云服务器的相互协作并结合公钥密码学体制以确保存储数据的安全性。此外,模型使用Diffie-Hellman密钥交换协议以保证数据在传输过程中的机密性。
附图说明
图1本发明的系统架构图
图2为本发明中区块链构建申请流程图
图3为本发明边缘数据的聚合和存储示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
在本发明的描述中,需要理解的是,术语“中心”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
如图1所示,本发明包括如下几个部分组成
1、可信机构(Trusted Authority,TA)A:负责系统的初始化,生成系统的主要密钥以及其他公共参数。此外,任意实体尝试加入系统应向TA提供其身份信息并获取其唯一的认证证书。
2、边缘服务器(Edge Server,ES)B:距离传感器设备最近的边缘服务器,负责处理感知设备所提供的的物联网数据,包括计算感知数据的哈希值、加密数据并将处理过的数据上传到云服务器。
3、云服务器(Cloud Server,CS)C:由云服务器负责存储已加密的物联网数据。当授权实体请求访问云端数据时,云服务器请求TA验证身份的有效性,并将加密数据返回给请求者。
4、区块链(Blockchai,BC)D:区块链系统由不同地理分布的边缘服务器构建而成,能提供去中心化的存储环境用以确保物联网数据不可被篡改。此外,通过区块链-云端的数据映射关系可以实现对存储在云端的数据的有效性校验。
5、传感器设备(Sensors)E:部署于物联网应用场景中的各类传感器包括RFID、GPS及温度适度传感器等用以感知环境信息的设备。一般来说,受限于自身的存储和计算能力,传感器设备通常需要将感知的数据提交至附近的边缘服务器进行分析和处理。
进一步的,本发明分为四个主要的基本功能模块:系统初始化SF、实体注册EF、数据处理DF1、数据审计DF2。基本工作流程如下:
S1:系统初始化模块负责系统的初始化工作,TA运行系统的初始化程序,生成系统的主秘钥对
S2:基本初始化完成后,系统中的各实体(如边缘服务器ES、云服务器CS等)应生成实体密钥对
S3:当物联网中的边缘服务器,智能传感设备成为系统中的合法实体,则由底层物联网传感器所生成的各类数据可以上传至附近的边缘服务器。此外,边缘服务器还负责将收集到的数据同步到云服务器和区块链账本。
S4:经过授权的管理机构有权验证数据的完整性,获得授权的机构可向边缘服务器和云服务器发送数据的审核请求,并由系统返回数据的审核结果。
整个云-边安全交互存储系统可以分为两部分,节点安全管理和云-边数据安全存储。我们以实体E
实体Ei安全加入系统的过程如下:
1、TA选定哈希函数Hash(*),消息认证码函数HMAC(*),随机匿名函数,对称加密算法E
2、TA根据如上的选取的各种算法,输出系统的随机数T,消息认证码HAMC(*),设置私钥msk=T,由TA保存生成的私钥。TA根据生成的私钥T和时间戳TSnow生成系统公钥为mpk=g。TA向系统内的各个Ei公布这些公用函数和公共参数。
3、为了防止在通信过程中密钥泄露,保证私钥的安全,Ei在本地运行密钥生成算法。Ei根据TA公布的随机数函数,选择随机数Si作为其私钥Prik(Ei),根据TA公布的加密算法,计算其公钥为Pubk(Ei)
4、为了保证与TA通信的安全性,Ei与TA之间的通信运用Diffie-Helman密钥交换协议生成通信会话秘钥。Ei将相关的个人参数(Si,Pubk(Ei))和系统公共参数(哈希函数,随机函数,加密算法)作为输入传给Diffie-Helman算法,输出Ei与TA之间的会话密钥SKE->TA
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)},发送给TA
6、TA接收到Ei的身份信息之后,根据本地保存的的消息认证函数结合Reg(Ei)
验证其有效性,并且将Ei的身份信息以键值对的形式
至此,实体Ei的注册流程完成。
如图2所示,进一步的,如果实体为边缘服务器节点,需要加入区块链系统,如下以边缘服务器节点ESi为例分析加入区块链网络的过程。
节点ESi加入区块链网络可分为申请请求、节点审核、区块链节点配置三个主要阶段。
阶段一:申请加入区块链系统
步骤1:节点ES
ReqJion
步骤2:节点ES
步骤3:在确定ReqJion
阶段二:节点审核
步骤1:当区块链节点Node
步骤2:Node
步骤3:Node
反馈格式如下:
ResJion
阶段三:节点配置
步骤1:在规定的时间间隔内收到超过三分之二的区块链节点的响应消息后,TA调用智能合约获取节点的表决结果。否则,这次请求无效。
步骤2:TA对接收到的表决结果进行分析,当超过三分之二的ResJion
步骤3:ES
至此,节点ES
以上部分完成了节点安全管理部分。下面将说明云-边数据安全存储过程。
云-边数据的安全存储可以分为两部分,一是数据采集设备到边缘服务器的安全交互存储过程,可以称为数据聚合;二是边缘服务器与云服务器之间的安全交互存储过程,可以称为数据存储。
如图3所示,假设感知设备是部署在应用场景中的各类传感器,该类设备负责监控共L个特征属性。因此,由传感器设备生成的感应数据可以定义为SData={d
步骤1:传感器数据sData需汇集至传感器管理节点mNode
步骤2:边缘节点ES
由于物联网应用通常每天产生上千GB的数据,基于边缘服务器的区块链系统受限于有限的硬件资源,所以在本发明中设计由区块链系统存储非敏感类型的数据,由云服务器记录敏感类的数据。敏感数据的定义根据具体的应用场景来确定,一般工业用的敏感数据包含设备IP,关键设备运行数据等。
数据存储的详细步骤如下:
步骤1:边缘服务器ES
步骤2:边缘服务器ES
步骤3:边缘服务器对敏感数据进行二次封装,增加ES
至此,一套完整的系统流程执行完成,本发明提出的基于区块链技术的云-边协作数据安全存储系统提供了一种动态节点的安全管理策略,任意节点(传感器、边缘服务器)之间数据的安全传输方式;同时提供了一种安全有效的云-边协作数据不可逆不可篡改的存储方法。不仅解决了当前工业物联网普遍存在的工业数据数据存储和传输的安全性问题,还解决了集中式存储存在的性能和效率问题。
上面结合附图对本发明作了详细说明,但是本发明不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。对不脱离本发明的构思和范围做出许多其他改变和改型,应当视为本发明保护范围。
在本说明书的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
- 一种自动检测铝电解质过热度和电解温度的装置和方法
- 应用于马桶的电解装置及其电解方法
- 非水电解质蓄电元件用正极活性物质、非水电解质蓄电元件用正极、非水电解质蓄电元件、蓄电装置、非水电解质蓄电元件的使用方法和非水电解质蓄电元件的制造方法