会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 加密货币地址 / 一种基于区块链的物联网数据交易架构及其交易安全方法

一种基于区块链的物联网数据交易架构及其交易安全方法

申请号 CN201811122535.0 申请日 2018-09-26 公开(公告)号 CN109377363B 公开(公告)日 2020-08-18
申请人 电子科技大学; 发明人 廖丹; 裴黎爽; 张良嵩; 李慧; 金海焱; 张明;
摘要 本发明公开了一种基于区块链的物联网数据交易架构,包括:本地无线感知网络、数据提供节点、数据消费节点、数据存储节点、传单、交易凭据;以及一种基于物联网数据交易架构的交易安全方法,包括如下步骤:S1、传单构造发送阶段;S2、数据上传阶段;S3、交易准备阶段;S4、交易处理阶段;本发明解决了现有技术中由于集中式存储导致了大量物联网数据孤岛的存在,极大的妨碍了物联网数据的流通,浪费了物联网数据中蕴含的价值的问题。
权利要求

1.一种基于区块链的物联网数据交易架构,其特征在于,包括:

本地无线感知网络,用于实现物联网数据的收集和传输;

数据提供节点,用于接收本地无线感知网络的物联网数据,调用定义在客户端中的数据分析接口,对收集到的物联网数据进行统计分析,生成包含待交易数据各项信息的传单并发送到整个区块链网络,具体为将物联网数据按照物联网通信协议进行解码,并根据用户定义的隐私政策对数据进行分类,得到待交易数据,直到待交易数据达到用户设置上限值后,调用数据分析模块生成待交易数据的摘要,根据网络中历史交易,评估数据的价值,并根据用户的预设和数据的价值,设定数据的佣金将数据进行打包,并对生成的数据包进行加密,使用数据存储节点生成传单,并使传单记录加密后数据包的数据拥有者地址、摘要、hash值和id值,调用虚拟链的写入接口,并通过虚拟链将传单写入区块链网络,实现传单的发放;

数据消费节点,用于通过查询接口寻找自身需要的数据,并通过支付加密货币向数据提供节点购买相应的数据包;

数据存储节点,用于存储数据包的部分数据片,实现数据的分布式存储,提高整个区块链网络的安全性,并根据请求向数据消费节点发送对应的数据片;

传单,用于记录电子签名、数据摘要、数据包hash值以及售价和佣金,所述售价为数据价值;

交易凭据,用于记录交易参与者id、货币转移、时间戳以及交易数据的传单id的必要信息,标记系统中资金的流动,显示数据价值的转移;

所述数据提供节点、数据消费节点、数据存储节点、传单以及交易凭证均位于区块链网络中,所述数据提供节点与本地无线感知网络通信连接,数据提供节点分别与数据消费节点和数据存储节点通信连接,所述传单与数据提供节点通信连接,所述交易凭据通过智能合约与数据提供节点、数据存储节点和数据消费节点通信连接。

2.一种基于区块链的物联网数据交易安全方法,其特征在于,包括如下步骤:S1:使用数据提供节点收集自身代理的本地无线感知网络的物联网数据,对数据进行统计分析生成数据摘要并对数据包进行加密,向区块链网络发放传单,具体包括如下分步骤:S1-1:使用数据提供节点从本地感知网络中获取足够的物联网数据;

S1-2:将物联网数据按照物联网通信协议进行解码,并根据用户定义的隐私政策对数据进行分类,得到待交易数据;

S1-3:直到待交易数据达到用户设置上限值后,调用数据分析模块生成待交易数据的摘要;

S1-4:根据网络中历史交易,评估数据的价值,并根据用户的预设和数据的价值,设定数据的佣金;

S1-5:将数据进行打包,并对生成的数据包进行加密;

S1-6:使用数据存储节点生成传单,并使传单记录加密后数据包的数据拥有者地址、摘要、hash值和id值;

S1-7:调用虚拟链的写入接口,并通过虚拟链将传单写入区块链网络,实现传单的发放;

S2:使用数据存储节点接收传单信息,根据传单中的IP字段与数据提供节点建立P2P连接,并根据佣金存储对应的加密数据包的数据片;

S3:使用数据消费节点通过检索传单链寻找需求的数据节点,通过传单获取数据提供节点的地址并发起交易,使二者共同调用智能合约,并使用智能合约向区块链网络中的数据存储节点请求数据,在完整合并出原始数据后,根据贡献度对数据存储节点进行排序和选取;

S4:使用智能合约通过数据提供节点发送的密钥对加密数据包进行解密并验证数据有效性,验证通过后进入支付阶段,生成交易凭据并发送至区块链网络。

3.根据权利要求2所述的基于区块链的物联网数据交易安全方法,其特征在于,所述步骤S1-3中,所述摘要用于记录数据的类别、数目和范围的描述信息。

4.根据权利要求3所述的基于区块链的物联网数据交易安全方法,其特征在于,所述步骤S2包括如下步骤:S2-1:使用数据存储节点通过接口读取传单并查看对应的佣金数据,根据符合佣金条件的传单中的数据拥有者地址,连接数据存储节点和对应的数据提供节点;

S2-2:使用数据提供节点向对应连接的数据存储节点发送数据包的数据片,并更新本地的散列表;

S2-3:根据本地散列表,判断在规定时间段内数据包是否完全上传,若是则结束本次操作,实现数据片的上传,否则返回步骤S1-4,提高佣金值,重新构造传单并发送到区块链网络。

5.根据权利要求4所述的基于区块链的物联网数据交易安全方法,其特征在于,所述步骤S2-2中,所述散列表中的键值对分别对应的是数据存储节点地址和数据的hash值。

6.根据权利要求5所述的基于区块链的物联网数据交易安全方法,其特征在于,所述步骤S3包括如下步骤:S3-1:根据数据消费节点的需求,从传单链上检索对应传单,判断是否确认购买,若是则读取数据拥有者地址,连接数据消费节点和数据提供节点,并进入步骤S3-2,否则继续执行步骤S3-1;

S3-2:使用数据消费节点向数据提供节点发送待交易数据传单id,并使双方共同调用智能合约,使用数据提供节点将数据对应的散列表和传单id发送到智能合约;

S3-3:使用智能合约根据散列表向区块链网络中的数据存储节点请求数据片,并对接收到的数据片的正确性进行hash校验,即判断是否完整拼凑出原始数据,若是则进入步骤S3-4,否则交易失败,返回步骤S3-1;

S3-4:使用智能合约根据数据片贡献度对参与传输的数据存储节点进行排序,并选取前三名参与后续交易。

7.根据权利要求6所述的基于区块链的物联网数据交易安全方法,其特征在于,所述步骤S4包括如下步骤:S4-1:使用数据提供节点向智能合约发送解密密匙,进行数据包的解密,得到解密后数据;

S4-2:调用数据分析模块对解密后数据进行验证,判断验证是否通过,即数据的摘要是否保持一致,若是则进入步骤S4-3,否则结束交易;

S4-3:根据选取的数据存储节点,使用智能合约根据传单中标注的数据售价和佣金分配构造交易凭据,并发送到区块链网络中,待经过网络中各节点的共识后写入交易链中,实现数据交易。

说明书全文

一种基于区块链的物联网数据交易架构及其交易安全方法

技术领域

[0001] 本发明属于网络通信技术领域,具体涉及一种基于区块链的物联网数据交易架构及其交易安全方法。

背景技术

[0002] 区块链技术起源与2008年由化名为中本聪的学者发布一篇名为Bitcoin:A Peer-to-Peer Electro-nic Cash System的论文,随后发布的比特币是第一个被广泛使用的去信任化加密货币,目前已经平稳运行接近十年。随后,在比特币的基础上,涌现了许多其他形式的加密货币,加密货币的繁荣导致了其底层的区块链技术的快速发展,智能合约和智能财产等新概念从区块链技术中衍生出来并被市场快速接受。智能合约是一种执行合约条款的计算机交易协议,它容许在没有第三方的情况下进行可信交易,且能够保证这些交易可追踪性和不可逆转。
[0003] 物联网通过给每个物体分配唯一的地址并按照约定的协议来相互识别和通信。在物联网中,设备之间通过分享信息来反映现实中物体状态的变化和转移,来帮助人类更好的认知自身所处的环境。数据是物联网的基石,物联网相当一部分价值都体现在海量的物联网数据上。但在现有物联网环境下,数据都被集中存储在各个数据中心中,这造成了大量的数据孤岛,极大的妨碍了物联网数据的流通,浪费了物联网数据中蕴含的价值。

发明内容

[0004] 针对现有技术中的上述不足,本发明提供的一种流通速度快、流通范围广、系统可靠性高以及安全性好的基于区块链的物联网数据交易架构及其交易安全方法,实现了交易的去中心化,解决了现有技术中由于集中式存储导致了大量物联网数据孤岛的存在,极大的妨碍了物联网数据的流通,浪费了物联网数据中蕴含的价值的问题。
[0005] 为了达到上述发明目的,本发明采用的技术方案为:
[0006] 一种基于区块链的物联网数据交易架构,包括:
[0007] 本地无线感知网络,用于实现物联网数据的收集和传输;
[0008] 数据提供节点,用于接收本地无线感知网络的物联网数据,调用定义在客户端中的数据分析接口,对收集到的物联网数据进行统计分析,生成包含待交易数据各项信息的传单并发送到整个区块链网络;
[0009] 数据消费节点,用于通过查询接口寻找自身需要的数据,并通过支付加密货币向数据提供节点购买相应的数据包;
[0010] 数据存储节点,用于存储数据包的部分数据片,实现数据的分布式存储,提高整个区块链网络的安全性,并根据请求向数据消费节点发送对应的数据片;
[0011] 传单,用于记录电子签名、数据摘要、数据包hash值以及售价和佣金,售价为数据价值;
[0012] 交易凭据,用于记录交易参与者id、货币转移、时间戳以及交易数据的传单id的必要信息,标记系统中资金的流动,显示数据价值的转移;
[0013] 数据提供节点、数据消费节点、数据存储节点、传单以及交易凭证均位于区块链网络中,数据提供节点与本地无线感知网络通信连接,数据提供节点分别与数据消费节点和数据存储节点通信连接,传单与数据提供节点通信连接,交易凭据通过智能合约与数据提供节点、数据存储节点和数据消费节点通信连接。
[0014] 一种基于物联网数据交易架构的交易安全方法,包括如下步骤:
[0015] S1:使用数据提供节点收集自身代理的本地无线感知网络的物联网数据,对数据进行统计分析生成数据摘要并对数据包进行加密,向区块链网络发放传单;
[0016] S2:使用数据存储节点接收传单信息,根据传单中的IP字段与数据提供节点建立P2P连接,并根据佣金存储对应的加密数据包的数据片;
[0017] S3:使用数据消费节点通过检索传单链寻找需求的数据节点,通过传单获取数据提供节点的地址并发起交易,使二者共同调用智能合约,并使用智能合约向区块链网络中的数据存储节点请求数据,在完整合并出原始数据后,根据贡献度对数据存储节点进行排序和选取;
[0018] S4:使用智能合约通过数据提供节点发送的密钥对加密数据包进行解密并验证数据有效性,验证通过后进入支付阶段,生成交易凭据并发送至区块链网络。
[0019] 进一步地,步骤S1包括如下步骤:
[0020] S1-1:使用数据提供节点从本地感知网络中获取足够的物联网数据;
[0021] S1-2:将物联网数据按照物联网通信协议进行解码,并根据用户定义的隐私政策对数据进行分类,得到待交易数据;
[0022] S1-3:直到待交易数据达到用户设置上限值后,调用数据分析模块生成待交易数据的摘要;
[0023] S1-4:根据网络中历史交易,评估数据的价值,并根据用户的预设和数据的价值,设定数据的佣金;
[0024] S1-5:将数据进行打包,并对生成的数据包进行加密;
[0025] S1-6:使用数据存储节点生成传单,并使传单记录加密后数据包的数据拥有者地址、摘要、hash值和id值;
[0026] S1-7:调用虚拟链的写入接口,并通过虚拟链将传单写入区块链网络,实现传单的发放。
[0027] 进一步地,步骤S1-3中,摘要用于记录数据的类别、数目和范围的描述信息。
[0028] 进一步地,步骤S2包括如下步骤:
[0029] S2-1:使用数据存储节点通过接口读取传单并查看对应的佣金数据,根据符合佣金条件的传单中的数据拥有者地址,连接数据存储节点和对应的数据提供节点;
[0030] S2-2:使用数据提供节点向对应连接的数据存储节点发送数据包的数据片,并更新本地的散列表;
[0031] S2-3:根据本地散列表,判断在规定时间段内数据包是否完全上传,若是则结束本次操作,实现数据片的上传,否则返回步骤S1-4,提高佣金值,重新构造传单并发送到区块链网络。
[0032] 进一步地,步骤S2-2中,散列表中的键值对分别对应的是数据存储节点地址和数据的hash值。
[0033] 进一步地,步骤S3包括如下步骤:
[0034] S3-1:根据数据消费节点的需求,从传单链上检索对应传单,判断是否确认购买,若是则读取数据拥有者地址,连接数据消费节点和数据提供节点,并进入步骤S3-2,否则继续执行步骤S3-1;
[0035] S3-2:使用数据消费节点向数据提供节点发送待交易数据传单id,并使双方共同调用智能合约,使用数据提供节点将数据对应的散列表和传单id发送到智能合约;
[0036] S3-3:使用智能合约根据散列表向区块链网络中的数据存储节点请求数据片,并对接收到的数据片的正确性进行hash校验,即判断是否完整拼凑出原始数据,若是则进入步骤S3-4,否则交易失败,返回步骤S3-1;
[0037] S3-4:使用智能合约根据数据片贡献度对参与传输的数据存储节点进行排序,并选取前三名参与后续交易。
[0038] 进一步地,步骤S4包括如下步骤:
[0039] S4-1:使用数据提供节点向智能合约发送解密密匙,进行数据包的解密,得到解密后数据;
[0040] S4-2:调用数据分析模块对解密后数据进行验证,判断验证是否通过,即数据的摘要是否保持一致,若是则进入步骤S4-3,否则结束交易;
[0041] S4-3:根据选取的数据存储节点,使用智能合约根据传单中标注的数据售价和佣金分配构造交易凭据,并发送到区块链网络中,待经过网络中各节点的共识后写入交易链中,实现数据交易。
[0042] 本方案的有益效果为:
[0043] (1)通过将区块链引入物联网,解决了传统物联网中存在的数据孤岛问题,加快了物联网数据的流通速度,扩大了物联网数据的流通范围,为充分利用物联网数据提供了可能性。
[0044] (2)本文通过区块链构造了一个分布式的文件存储系统,通过hash校验保证文件的完整性,通过冗余备份保证了系统的可靠性,用经济驱动系统的运行,使得整个系统能够随着时间的推移拥有越来越强的安全性。
[0045] (3)通过以区块链技术构建的交易平台,实现了交易的去中心化,避免了外部第三方的引入,且所有的交易数据都记录在区块链中,避免了数据篡改的可能,保障了交易的安全。

附图说明

[0046] 图1为基于区块链的物联网数据交易架构框图;
[0047] 图2为基于区块链的物联网数据交易安全方法流程图;
[0048] 图3为发放传单的方法流程图;
[0049] 图4为上传数据片的方法流程图;
[0050] 图5为准备交易的方法流程图;
[0051] 图6为进行交易的方法流程图。

具体实施方式

[0052] 下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
[0053] 一种基于区块链的物联网数据交易架构,如图1所示,包括:
[0054] 本地无线感知网络,用于实现物联网数据的收集和传输;
[0055] 数据提供节点,用于接收本地无线感知网络的物联网数据,调用定义在客户端中的数据分析接口,对收集到的物联网数据进行统计分析,生成包含待交易数据各项信息的传单并发送到整个区块链网络;
[0056] 数据消费节点,用于通过查询接口寻找自身需要的数据,并通过支付加密货币向数据提供节点购买相应的数据包,为整个系统的运转提供动力,在利益的驱动下,整个系统会逐步扩大,逐渐促进整个物联网的发展;
[0057] 数据存储节点,用于存储数据包的部分数据片,实现数据的分布式存储,提高整个区块链网络的安全性,并根据请求向数据消费节点发送对应的数据片,在数据提供节点和交易者达成交易时,会按照传单中标注的佣金,按照各个数据存储节点对最终数据包贡献的数据片比例来进行分配,这就保证了拥有低延时高带宽存储更多数据片的数据存储节点在佣金获取方面有着更大的优势,有利于整个系统向着高响应低延迟的方向持续发展;
[0058] 传单,用于记录电子签名、数据摘要、数据包hash值以及售价和佣金,售价为数据价值,传单在构建完成后,被发送到区块链网络,在区块链网络产生下一个区块时将传单写入区块链中,使得传单对所有节点均可见但不能够篡改;
[0059] 交易凭据,用于记录交易参与者id、货币转移、时间戳以及交易数据的传单id的必要信息,交易凭据的存在,标记系统中资金的流动,显示数据价值的转移,交易凭据在构造完成后被写入区块链中,在一定时间段后,交易就无法撤销和被篡改,且所有的节点都可以验证交易的存在和其有效性;
[0060] 数据提供节点、数据消费节点、数据存储节点、传单以及交易凭证均位于区块链网络中,数据提供节点与本地无线感知网络通信连接,数据提供节点分别与数据消费节点和数据存储节点通信连接,传单与数据提供节点通信连接,交易凭据通过智能合约与数据提供节点、数据存储节点和数据消费节点通信连接。
[0061] 一种基于物联网数据交易架构的交易安全方法,如图2所示,包括如下步骤:
[0062] S1:使用数据提供节点收集自身代理的本地无线感知网络的物联网数据,对数据进行统计分析生成数据摘要并对数据包进行加密,向区块链网络发放传单,如图3所示,包括如下步骤:
[0063] S1-1:使用数据提供节点从本地感知网络中获取足够的物联网数据,数据是按照物联网协议进行编码的,并不能直接用于交易;
[0064] S1-2:将物联网数据按照物联网通信协议进行解码,并根据用户定义的隐私政策对数据进行分类,得到待交易数据;
[0065] S1-3:避免大量小额交易,减轻网络负担,直到待交易数据达到用户设置上限值后,调用数据分析模块生成待交易数据的摘要,摘要用于记录数据的类别、数目和范围的描述信息,不会泄露数据的具体值,保证了安全性;
[0066] S1-4:根据网络中历史交易,评估数据的价值,并根据用户的预设和数据的价值,设定数据的佣金;
[0067] S1-5:将数据进行打包,并对生成的数据包进行加密,提高了加密解密过程的速率;
[0068] S1-6:使用数据存储节点生成传单,并使传单记录加密后数据包的数据拥有者地址、摘要、hash值和id值,将数据包同数据提供节点绑定,便于交易的进行以及防止数据包被篡改;
[0069] S1-7:调用虚拟链的写入接口,并通过虚拟链将传单写入第三区块链网络,用于在自身区块链网络还不够强大时抵抗51%攻击,避免对用户造成巨大损失,实现传单的发放;
[0070] S2:使用数据存储节点接收传单信息,根据传单中的IP字段与数据提供节点建立P2P连接,并根据佣金存储对应的加密数据包的数据片,如图4所示,包括如下步骤:
[0071] S2-1:使用数据存储节点通过接口读取传单并查看对应的佣金数据,根据符合佣金条件的传单中的数据拥有者地址,根据RPC协议使用数据存储节点与数据提供节点建立P2P连接;
[0072] S2-2:使用数据提供节点向对应连接的数据存储节点发送数据包的数据片,数据片的数量由数据存储节点决定,并与数据存储节点的佣金正相关,使其再交易完成时更大可能的获取大比例的佣金,并更新本地的散列表,散列表中的键值对分别对应的是数据存储节点地址和数据的hash值;
[0073] S2-3:根据本地散列表,判断在规定时间段内数据包是否完全上传,若是则结束本次操作,实现数据片的上传,否则返回步骤S1-4,提高佣金值,重新构造传单并发送到区块链网络,根据测试结果,平均5个数据存储节点即可完全备份一个数据文件,在完成备份后再连接的数据存储节点为数据进行冗余备份,防止由于部分数据存储节点掉线以后导致无法在整个网络上拼凑出完整的原始数据;
[0074] S3:使用数据消费节点通过检索传单链寻找需求的数据节点,通过传单获取数据提供节点的地址并发起交易,使二者共同调用处理交易的智能合约,并使用智能合约向区块链网络中的数据存储节点请求数据,在完整合并出原始数据后,根据贡献度对数据存储节点进行排序和选取,如图5所示,包括如下步骤:
[0075] S3-1:根据数据消费节点的需求,从传单链上检索对应传单,判断是否确认购买,若是则读取数据拥有者的IP地址,并根据IP地址使用数据消费节点和数据提供节点建立RPC连接,并进入步骤S3-2,否则继续执行步骤S3-1;
[0076] S3-2:使用数据消费节点向数据提供节点发送待交易数据传单id,并使双方共同调用智能合约,使用数据提供节点将数据对应的散列表和传单id发送到智能合约;
[0077] S3-3:使用智能合约根据散列表向区块链网络中的数据存储节点请求数据片,并对接收到的数据片的正确性进行hash校验,即判断是否完整拼凑出原始数据,若是则进入步骤S3-4,否则交易失败,返回步骤S3-1;
[0078] S3-4:使用智能合约根据数据片贡献度对参与传输的数据存储节点进行排序,并选取前三名参与后续交易,保证拥有低延时高带宽存储更多数据片的数据存储节点在佣金获取方面有着更大的优势,有利于整个系统向着高响应低延迟的方向持续发展;
[0079] S4:使用智能合约通过数据提供节点发送的密钥对加密数据包进行解密并验证数据有效性,验证通过后进入支付阶段,生成交易凭据并发送至区块链网络,如图6所示,包括如下步骤:
[0080] S4-1:使用数据提供节点向智能合约发送解密密匙,进行数据包的解密,得到解密后数据;
[0081] S4-2:调用数据分析模块对解密后数据进行验证,统一的分析模块,使得到的数据摘要保持一致,避免数据提供节点利用虚假的数据来进行交易,判断验证是否通过,即数据的摘要是否保持一致,若是则进入步骤S4-3,否则结束交易;
[0082] S4-3:根据选取的数据存储节点,使用智能合约根据传单中标注的数据售价和佣金分配构造交易凭据,交易凭据包括记录交易参与者即选取的数据存储节点以及数据提供节点、货币转移、时间戳以及交易数据的传单id的必要信息,并发送到区块链网络中,待经过网络中各节点的共识后写入交易链中,实现数据交易。
[0083] 本发明提供的一种流通速度快、流通范围广、系统可靠性高以及安全性好的基于区块链的物联网数据交易架构及其交易安全方法,实现了交易的去中心化,解决了现有技术中由于集中式存储导致了大量物联网数据孤岛的存在,极大的妨碍了物联网数据的流通,浪费了物联网数据中蕴含的价值的问题。