CN111949672A - 一种支持物联网数据增量更新的区块链存储方法 - Google Patents

一种支持物联网数据增量更新的区块链存储方法 Download PDF

Info

Publication number
CN111949672A
CN111949672A CN202010748945.7A CN202010748945A CN111949672A CN 111949672 A CN111949672 A CN 111949672A CN 202010748945 A CN202010748945 A CN 202010748945A CN 111949672 A CN111949672 A CN 111949672A
Authority
CN
China
Prior art keywords
data
storage
node
domain
contract
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010748945.7A
Other languages
English (en)
Other versions
CN111949672B (zh
Inventor
殷昱煜
叶炳跃
梁婷婷
李尤慧子
万健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN202010748945.7A priority Critical patent/CN111949672B/zh
Publication of CN111949672A publication Critical patent/CN111949672A/zh
Application granted granted Critical
Publication of CN111949672B publication Critical patent/CN111949672B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种支持物联网数据增量更新的区块链存储方法。本发明对数据进行分块操作,处理成碎片数据后再计算MD5值,处理后的MD5值被传输至全节点域。全节点调用智能合约,执行自适应PoW算法完成上链操作。碎片数据被传输至存储域进行存储,存储节点存储成功后,发送存储凭证至全节点域。在数据更新阶段,边缘节点对比修改前后的碎片数据的MD5值,筛选出发生数据变更的碎片进行上传,降低了存储空间的浪费。本发明实现了数据的增量更新,有效降低了数据服务器中存储空间的消耗。此外,利用难度自适应的PoW算法,提高了区块链网络的交易效率。

Description

一种支持物联网数据增量更新的区块链存储方法
技术领域
本发明涉及通过数据分块操作、智能合约、低功耗共识算法等技术实现一种支持物联网数据增量更新的区块链存储方法,尤其在当前物联网设备产生的数据越来越多的情况下,应用碎片数据存储、低功耗共识算法等技术,可以实现物联网数据增量更新、提高区块链网络的交易效率。
背景技术
越来越多的设备与互联网连接,成为物联网设备。随着这些设备收集数据的能力越来越强,其数据规模也越来越庞大。这些数据中往往蕴含了很大的价值,可以被用于分析一座城市的管理效率或是反映一个人的健康状况。因此,如何正确高效地对这些数据进行存储是利用这些数据的基础。
利用区块链技术,可以解决物联网数据存储中存在的安全性差、防篡改性弱等问题,即将物联网设备的数据存储在中心化数据服务器中,对应的索引信息存储在区块链上,一旦数据被篡改,其生成的索引信息也会发生改变,通过对比存储在区块链上的索引信息,就能判断数据是否被篡改。然而,这种区块链存储方案仍然存在如下问题:
1)数据服务器中会有大量存储空间被浪费。在数据更新阶段,为了保证链上索引信息的有效性,设备二次上传的数据不能覆盖原始数据,需要重新计算数据的存储地址进行存储,而二次上传的数据中必然会包含与原始数据内容相同的数据片段,这就会造成存储空间的浪费。
2)无法确保数据的可靠性。传统方案中,设备根据一致性哈希算法计算出数据的存储地址,并将数据存储在某台数据服务器中。一旦该数据服务器发生单点故障,存储的数据就有可能丢失。
3)传统的区块链共识算法不适合资源受限的物联网设备。参考比特币挖矿所需的算力,如果采用传统的工作量证明(Proof-of-Work,以下简称PoW)作为共识算法,运行在物联网设备上的区块链网络的交易效率会处于极低的水平。但如果选择降低PoW算法的难度,就会降低整个区块链网络的安全性。因此,为了适应物联网场景数据存储的特点,降低对设备算力的要求,需要设计一个低功耗的支持数据增量更新的区块链存储方法。
区块链是一种综合运用了分布式数据存储、点对点传输、共识算法、加密算法等多种计算机技术的新型应用程序模型,其本质是一个去中心化的数据库。区块链的底层数据结构是通过加密算法生成的一系列数据块,这些数据块被称作区块。区块中记录了区块链网络中关于交易的信息,同时还包含了前一个区块的哈希值。这个特性保证了这一系列区块是不可篡改的,并且是不能在密码学上伪造的。
区块链使用区块存储数据,通过共识算法来将新的区块发布在区块链上,并使用加密算法对发布的区块进行签名,以实现传输、访问环节的身份识别。此外,节点通过使用由脚本语言编写的智能合约,可以对链上数据进行较复杂的处理。当前流行的区块链按照结构可以被分为两类,一类是基于链的区块链,另一类是基于有向无环图的区块链。链式区块链中,区块按照区块上记录的时间戳顺序写入到区块链网络中。由于链式区块链不支持并发的交易执行,因此链式区块链的交易效率通常较低。当区块链上的交易数量增加时,区块链的性能就会线性下降。
共识算法是用于解决分布式系统中数据一致性问题的算法,常见的共识算法包括传统分布式系统领域中的Paxos、Raft以及加密货币领域中使用的工作量证明、权益证明、委托权益证明等。当前最大的区块链网络——比特币就使用了基于工作量证明的一致性共识算法。该算法要求网络中的节点去解决一个难度较高但答案易于验证的问题。第一个解决了该问题的节点就获得了当前区块的记账权。但是,基于工作量证明的共识算法存在交易效率低、消耗算力高等问题。以比特币为例,比特币大约每10分钟产生一个区块,区块的大小被设定为1MB,仅仅能够包含3000-4000笔交易,即平均每秒只能处理5-7笔交易。随着比特币上需要处理的交易也越来越多,比特币网络的拥堵情况也越来越严重,交易费用也开始增加。针对这个问题,越来越多的人开始讨论区块链的扩展性问题。基于有向无环图的区块链带来了解决扩展性问题的新思路,有向无环图式区块链是由交易构成的,其中每个节点都可以是交易的发起方或交易的验证方。在节点向区块链网络广播交易前,它需要验证另外两个随机交易,并将当前发布交易链接到这两个随机交易上,这种处理交易的方式被称为异步处理模式,Tangle网络是有向无环图式区块链的一个实现。
发明内容
本发明针对现有技术的不足,提出了一种支持数据增量更新、数据可靠性较高的区块链存储方法。
本发明解决技术问题所采取的技术方案为:
本发明方法涉及边缘域、全节点域、存储域和Tangle域。
所述边缘域中的边缘节点在数据存储阶段负责对数据进行预处理,将数据分块成碎片后传输至存储域,计算出来的MD5值传输至全节点域;在数据更新阶段,负责对碎片的MD5值进行对比,筛选出要二次上传的碎片。
所述全节点域中的全节点接收来自边缘域的索引信息,并调用智能合约对索引信息进行处理,智能合约在收到来自存储域的存储凭证后,通知全节点对交易进行打包,并通过执行自适应PoW算法,将交易发布到Tangle域中。
所述存储域接收来自边缘域的碎片数据,按MD5值在相应位置存储后,生成存储凭证,传输至全节点调用的智能合约处。
所述Tangle域存储有各类智能合约以及全节点发布的交易。交易中记录了碎片数据的MD5值以及对应的存储凭证;
该方法具体包括以下步骤:
步骤1:边缘节点完成对数据的收集,以二进制形式进行存储。
步骤2:边缘节点将完整数据均等分割成n份数据碎片,并由数据碎片计算得到对应的MD5值。
步骤3:打包数据索引对象rawJSON,将碎片的MD5值、版本号、多个数据源的存储地址、时间戳打包成索引信息,签名后将其发送到指定的全节点处。
步骤4:全节点对收到数据包中的签名进行验证,验证通过后调用DSC智能合约等待来自对应数据源的存储凭证。
步骤5:边缘节点将数据上传至多份数据源地址,数据源存储成功后,发送存储凭证到智能合约执行所在的交易上。
步骤6:智能合约接收到正确的存储凭证后,通知全节点进行交易发布。
步骤7:全节点打包索引信息以及对应的存储凭证,创建交易,执行自适应PoW算法,将交易广播至区块链网络中。
本发明的有益效果:
本发明在存储阶段,边缘域中的边缘节点对数据进行分块操作。在数据更新阶段,边缘节点并对索引信息进行对比,筛选出需要二次上传的碎片数据,实现了数据的增量更新,有效降低了数据服务器中存储空间的消耗。此外,利用难度自适应的PoW算法,提高了区块链网络的交易效率。
附图说明
图1为本发明使用的系统架构图。
图2为智能合约架构图。
图3为存储节点、边缘节点、全节点之间的数据流图。
图4为本发明执行流程图。
具体实施方式
以下结合附图对本发明作进一步说明。
如图1所示,该存储方法利用智能合约不可篡改和一致性的特点向模型中的各类节点提供节点身份管理服务和数据管理服务。Tangle域中的各类智能合约包括了节点身份控制合约(node identity controller contract,以下简称NICC)、节点身份管理合约(node identity manage contract,以下简称NIMC)和数据管理合约(data managecontract,以下简称DMC)等。
如图2所示,NICC合约负责对方法中的节点进行统一管理,包括节点身份的识别、注册,以及在获取合法节点身份后对其行为的管理,如数据存储、数据更新、执行自适应PoW算法等。合约检查节点的身份标识信息(NODE-ID)与其持有的公钥(PUB-KEY)是否匹配。如果节点身份尚未创建,本合约会调用NIMC合约注册其身份。
NIMC合约通过节点主动发起注册的方式让其加入存储模型。子合约包括节点身份创建合约(node identity creation contract,以下简称NICC2)和边缘节点注册合约(light node register contract,以下简称LNRC):节点调用NICC2合约生成唯一的公私钥对,公钥经过单向哈希算法生成对应的NODE-ID;新节点拥有合法身份后,可以向算力较强的节点请求调用LNRC合约,向该节点注册,由该节点代理其交易事务,成为该节点的边缘节点。
DMC合约用于实现设备数据及其索引信息的存储、读取与更新,子合约包括数据存储合约(data storage contract,以下简称DSC)和链上数据更新合约(on-chain dataupdate contract,以下简称ODUC):DSC合约将收到的数据索引信息进一步处理,等待存储节点发送凭证信息,对比确认后,将相应的索引信息存储到Tangle网络上。索引信息即数据索引对象(rawJSON),包含数据的哈希值、版本号、存储地址等信息;ODUC合约对更新后的数据进行切分,并与原始数据进行比较,筛选本次更新需上传的碎片数据,生成对应的索引信息。Tangle网络中的新交易会引用包含原始数据索引信息的旧交易。
DSC合约用于实现自适应PoW算法的关键部分。该合约计算节点的贡献值,并通过映射方式得到PoW算法的执行难度。
1)边缘域
边缘域中的边缘节点是物联网中资源受限的设备,如智能家具或传感器等。由于有限的存储空间及受限的算力,这些设备不参与区块链中交易的处理。边缘节点通过数据分块操作将数据切分成碎片并生成相应的索引信息。数据分块操作表示对二进制形式存储的数据进行平均切分。碎片数据与由碎片生成的索引信息被分别传输到存储域和全节点域进行处理。
边缘域中的节点会预先准备数据索引对象rawJSON,该流程见算法1。rawJSON是以JSON格式序列化存储的摘要信息,其中包含了数据的MD5值、版本号、多个数据源的存储地址、时间戳等信息,rawJSON的结构如下:
{
"ID":"D836DFF83FD9DAB1FH2AEF8701 BA64CF",
"MD5":"c4d801 c2cf089d8f4f25d5af034867d7",
"VERSION":1,
"STORAGE_NODE_ID":{
"010966776006953D5567439E5E39F86A0D273BEE",
"E934765D0A68F93EEEB37255D359600677669010"
"F93EE376EB00596006255D76953D556EB3769010"
},
"TIMESTAMP":"1588989385*,
"LABEL":{
"小米温度计",
"卧室"
},
"SLICE":{
{
"ID":"AB1FD8019DH2AEF8BA64CF36DFF83FD7",
"MD5":"c2cf089d8f4f2501 af03d5486c4d87d7",
"SORT":1
},
{
"ID":"FF83F870D9DABD836D1FHBA64CF2AEF1",
"MD5":"89d8c4d801c2cf0f4f2534867d7d5af0",
"SORT":2
}
}
}
边缘节点将数据DRaw切分为多个碎片
Figure BDA0002609389260000061
并通过MD5(Message-DigestAlgorithm 5)信息摘要算法为每份数据碎片计算MD5值
Figure BDA0002609389260000062
并生成数据索引对象rawJSON,
Figure BDA0002609389260000063
表示构成rawJSON的元数据信息,包括数据的哈希值、版本号、存储地址等。边缘节点对rawJSON签名后,将rawJSON传输到其注册的全节点。
Figure BDA0002609389260000064
Figure BDA0002609389260000071
2)全节点域&Tangle域
全节点域中的节点相比边缘域中的节点,其算力更强,被称为全节点。全节点借助部署在Tangle域中的智能合约,将索引信息打包进交易,收集来自存储域的存储凭证,最后执行自适应PoW算法,将交易传输至Tangle域中,完成交易上链、广播交易等操作。Tangle域中包括了Tangle网络、协调节点和各类智能合约。协调节点会定期检查Tangle网络中发布的交易,可以加快某一区域交易的确认速度、提高Tangle网络的安全性。
通过全节点域与Tangle域的协作,共同完成对数据索引对象rawJSON的存储。全节点从边缘域接收rawJSON后,检查签名,确认该签名所属节点是否在本地进行过注册。接着,全节点将rawJSON发送到Tangle域中的DSC合约进行处理,并返回一个签名消息给边缘节点,消息中包含执行DSC合约的交易地址。DSC合约被调用后,会对rawJSON进行解析,获得数据源的身份标示信息,即STORAGE_NODE_ID字段,并进入等待状态,直到对应的数据源即存储节点发送存储凭证至当前交易。合约会检查存储凭证中签名是否与rawJSON中包含的数据源信息匹配,如果匹配,合约会通知全节点将该索引信息打包进交易,进行发布。如果不匹配,智能合约会一直处于等待状态,具体流程见算法2。
Figure BDA0002609389260000072
Figure BDA0002609389260000081
3)存储域
存储域中的节点是具有数据存储功能的数据服务器,被称为存储节点。存储节点根据边缘域传来的存储地址信息,将碎片的数据副本存储在多个独立存储节点中。数据存储完成后,每个存储节点会发送一份存储凭证到Tangle域,该凭证会被打包进待发布的交易中,作为数据存储的证明被记录在区块链上,具体流程见算法3。
Figure BDA0002609389260000082
图3为存储节点、边缘节点、全节点之间的数据流图。ODUC合约实现了数据的增量更新,具体流程见算法4。首先,边缘节点从全节点处获取原始数据所在的交易位置
Figure BDA0002609389260000091
接着从存储节点获取原始数据。设备对原始数据修改后,按照相同的数据切分策略对新数据进行切分,得到piecenew list,并对其使用MD5算法得到md5new list。设备对比得到的md5new list与之前计算得到的md5list,若值相同,则表示该MD5值对应的数据碎片未被修改,无需更新;若数值不同,则表示该数据碎片被修改了,需要被重传。设备筛选出需要被二次上传的数据碎片后,将其打包为md5upload list和pieceupload list。接下来的流程与数据存储阶段类似,不同之处在于,ODUC智能合约要求本次全节点验证的交易中必须包含原始交易,原始交易即原始数据碎片对应的索引信息所在的交易。全节点需要验证原始交易并将新交易链接至原始交易,用于数据修改的溯源。
Figure BDA0002609389260000092
Figure BDA0002609389260000101
4)自适应PoW算法
自适应PoW算法会根据全节点的行为动态调整PoW算法的执行难度。该算法在提高交易效率的同时,减少了系统因为PoW算法难度降低而增加的安全风险。
定义系统中全节点i具有贡献值Ci的属性。贡献值表示节点在其最近的生命周期中对区块链网络的贡献程度。影响贡献值的因素包括索引对象rawJSON中SLICE字段序列的元素数目是否超过阈值、节点是否对Tangle网络中的其他交易进行了正确的验证、节点发布的交易是否合法。rawJSON中SLICE字段序列的每一个元素表示了一个数据碎片的MD5值,元素过多会加大Tangle网络查询和存储的压力。因此,模型设定了一个阈值以限制rawJSON中SLICE字段序列的元素数目。基于有向无环图的区块链需要解决懒惰问题,发生懒惰问题意味着全节点会始终验证大多数全节点都已经确认的旧交易,而不是验证那些等待确认的交易。Tangle网络中的协调节点会定期对Tangle网络中的交易进行检查,一旦发现节点的懒惰行为或恶意攻击行为,协调节点会将检查结果打包进交易,然后广播到Tangle网络中。全节点需要根据检查结果重新计算贡献值,并调整PoW算法的执行难度。
全节点的Ci值越小,表示节点的贡献值越低,PoW算法的执行难度也就越大,发布交易所需的时间也就越多。因此,自适应PoW算法会鼓励节点执行有益于Tangle网络的操作,增加恶意节点发起攻击的成本,在提高交易效率的同时,防止系统安全性下降。
使用以下公式计算全节点的贡献值:
Figure BDA0002609389260000102
其中
Figure BDA0002609389260000103
表示对不同属性的交易进行验证的影响因子,
Figure BDA0002609389260000104
表示恶意行为的影响因子,
Figure BDA0002609389260000105
表示rawJSON中SLICE字段元素数目的影响因子,λ123代表每个影响因子的权重值。
Figure BDA0002609389260000106
被表示为:
Figure BDA0002609389260000111
其中,ni表示全节点在一个单位时间内发布的交易数。T1(t)代表时间衰减函数,该函数随着时间增加,值会逐渐减小。表示历史交易距离当前时间越近,重要性越大。α(b)代表行为behavior对贡献值影响的权重。当节点至少引用验证了一个待确认交易时,α(b)的值为N,否则,α(b)的值为-N。α(b)可定义为:
Figure BDA0002609389260000112
Figure BDA0002609389260000113
表示被检测出的恶意行为对贡献值的影响因子,可以被表示为:
Figure BDA0002609389260000114
不同的恶意行为对应不同的β(b)值。行为破坏性越大,β(b)值越高。β(b)可被表示为:
Figure BDA0002609389260000115
T2(t)也是时间衰减函数,但T2(t)中的常量值与T1(t)中的常量值不同,代表了两种不同的时间衰减特征。
Figure BDA0002609389260000116
展示了rawJSON中SLICE字段序列的元素数目如何影响节点的贡献值,其公式如下:
Figure BDA0002609389260000117
Numpieces表示当前交易中SLICE字段序列的元素数量,Numbase表示模型设定的阈值。
Figure BDA0002609389260000118
的值越大,节点的贡献值越低。
在全节点打包完交易后,会把当前节点的NODE_ID、rawJSON中SLICE字段的内容、验证的交易位置
Figure BDA0002609389260000119
发送到区块链上的DAC合约,即难度自动设定合约,计算本次节点的贡献值,并设定PoW算法的执行难度。
如图4所示,本发明方法的具体步骤是:
步骤1:物联网设备(即边缘设备)完成对数据的收集,以二进制形式进行存储。
步骤2:数据分块操作,边缘设备将完整数据均等分割成n份数据碎片,并由数据碎片计算得到对应的MD5值。
步骤3:打包数据索引对象rawJSON,将碎片的MD5值、版本号、多个数据源的存储地址、时间戳打包成索引信息,签名后将其发送到指定的全节点处。
步骤4:全节点对收到数据包中的签名进行验证,验证通过后调用DSC智能合约等待来自对应数据源的存储凭证。
步骤5:边缘节点将数据上传至多份数据源地址,数据源存储成功后,发送存储凭证到智能合约执行所在的交易上。
步骤6:智能合约接收到正确的存储凭证后,通知全节点进行交易发布。
步骤7:全节点打包索引信息以及对应的存储凭证,创建交易,执行自适应PoW算法,将交易广播至区块链网络中。

Claims (6)

1.一种支持物联网数据增量更新的区块链存储方法,该方法涉及边缘域、全节点域、存储域和Tangle域,其特征在于:
所述边缘域中的边缘节点在数据存储阶段负责对数据进行预处理,将数据分块成碎片后传输至存储域,计算出来的MD5值传输至全节点域;在数据更新阶段,负责对碎片的MD5值进行对比,筛选出要二次上传的碎片;
所述全节点域中的全节点接收来自边缘域的索引信息,并调用智能合约对索引信息进行处理,智能合约在收到来自存储域的存储凭证后,通知全节点对交易进行打包,并通过执行自适应PoW算法,将交易发布到Tangle域中;
所述存储域接收来自边缘域的碎片数据,按MD5值在相应位置存储后,生成存储凭证,传输至全节点调用的智能合约处;
所述Tangle域存储有各类智能合约以及全节点发布的交易;交易中记录了碎片数据的MD5值以及对应的存储凭证;
该方法具体包括以下步骤:
步骤1:边缘节点完成对数据的收集,以二进制形式进行存储;
步骤2:边缘节点将完整数据均等分割成n份数据碎片,并由数据碎片计算得到对应的MD5值;
步骤3:打包数据索引对象rawJSON,将碎片的MD5值、版本号、多个数据源的存储地址、时间戳打包成索引信息,签名后将其发送到指定的全节点处;
步骤4:全节点对收到数据包中的签名进行验证,验证通过后调用DSC智能合约等待来自对应数据源的存储凭证;
步骤5:边缘节点将数据上传至多份数据源地址,数据源存储成功后,发送存储凭证到智能合约执行所在的交易上;
步骤6:智能合约接收到正确的存储凭证后,通知全节点进行交易发布;
步骤7:全节点打包索引信息以及对应的存储凭证,创建交易,执行自适应PoW算法,将交易广播至区块链网络中。
2.根据权利要求1所述的一种支持物联网数据增量更新的区块链存储方法,其特征在于:所述的Tangle域中包含有节点身份控制合约、节点身份管理合约和数据管理合约。
3.根据权利要求2所述的一种支持物联网数据增量更新的区块链存储方法,其特征在于:所述的节点身份管理合约包括节点身份创建合约和边缘节点注册合约;所述的数据管理合约包含数据存储合约和链上数据更新合约。
4.根据权利要求3所述的一种支持物联网数据增量更新的区块链存储方法,其特征在于:所述数据存储合约将收到的数据索引信息进一步处理,等待存储节点发送凭证信息,对比确认后,将相应的索引信息存储到Tangle域中的Tangle网络中;所述链上数据更新合约对更新后的数据进行切分,并与原始数据进行比较,筛选本次更新需上传的碎片数据,生成对应的索引信息。
5.根据权利要求1所述的一种支持物联网数据增量更新的区块链存储方法,其特征在于:所述数据存储合约用于实现自适应PoW算法的关键部分;该合约计算节点的贡献值,并通过映射方式得到PoW算法的执行难度。
6.根据权利要求1所述的一种支持物联网数据增量更新的区块链存储方法,其特征在于:通过全节点域与Tangle域的协作,共同完成对数据索引对象rawJSON的存储;全节点从边缘域接收rawJSON后,检查签名,确认该签名所属节点是否在本地进行过注册;接着,全节点将rawJSON发送到Tangle域中的数据存储合约进行处理,并返回一个签名消息给边缘节点,消息中包含执行数据存储合约的交易地址;数据存储合约被调用后,对rawJSON进行解析,获得数据源的身份标示信息,并进入等待状态,直到对应的数据源即存储节点发送存储凭证至当前交易;智能合约会检查存储凭证中签名是否与rawJSON中包含的数据源信息匹配,如果匹配,智能合约会通知全节点将该索引信息打包进交易,进行发布;如果不匹配,智能合约会一直处于等待状态。
CN202010748945.7A 2020-07-30 2020-07-30 一种支持物联网数据增量更新的区块链存储方法 Active CN111949672B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010748945.7A CN111949672B (zh) 2020-07-30 2020-07-30 一种支持物联网数据增量更新的区块链存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010748945.7A CN111949672B (zh) 2020-07-30 2020-07-30 一种支持物联网数据增量更新的区块链存储方法

Publications (2)

Publication Number Publication Date
CN111949672A true CN111949672A (zh) 2020-11-17
CN111949672B CN111949672B (zh) 2021-11-30

Family

ID=73338611

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010748945.7A Active CN111949672B (zh) 2020-07-30 2020-07-30 一种支持物联网数据增量更新的区块链存储方法

Country Status (1)

Country Link
CN (1) CN111949672B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112968942A (zh) * 2021-01-29 2021-06-15 南京邮电大学 一种区块链数据安全存储框架及方法
CN113115315A (zh) * 2021-04-02 2021-07-13 青岛科技大学 一种基于区块链的iot设备行为可信监管方法
CN113132459A (zh) * 2021-03-09 2021-07-16 西安电子科技大学 分布式存储方法、系统、存储介质、信息数据处理终端
CN113138989A (zh) * 2021-03-12 2021-07-20 莘上信息技术(上海)有限公司 区块链数据检索方法及装置
CN113312005A (zh) * 2021-06-22 2021-08-27 青岛理工大学 基于区块链的物联网数据扩容存储方法、系统及计算设备
CN113419736A (zh) * 2021-06-08 2021-09-21 赵庆林 一种在Tangle区块链系统上支持智能合约协议的方法
CN113489698A (zh) * 2021-06-25 2021-10-08 中标慧安信息技术股份有限公司 基于区块链的物联网数据保密读取方法与系统
CN113590638A (zh) * 2021-07-20 2021-11-02 南京国准数据有限责任公司 一种基于区块链的分布式数据存储系统
WO2022143540A1 (zh) * 2020-12-31 2022-07-07 杭州趣链科技有限公司 区块链索引的存储方法、装置、计算机设备及介质
CN114726877A (zh) * 2022-03-18 2022-07-08 扬州大学 一种基于区块链的边缘计算下数据存储更新方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109145189A (zh) * 2018-08-22 2019-01-04 杭州微链区块链科技有限公司 一种基于区块链的数据存入和搜索系统及其方法
CN109302405A (zh) * 2018-10-31 2019-02-01 北京邮电大学 基于边缘计算的工业数据检测区块链网络架构及检测方法
CN109377363A (zh) * 2018-09-26 2019-02-22 电子科技大学 一种基于区块链的物联网数据交易架构及其交易安全方法
US20190282906A1 (en) * 2018-03-14 2019-09-19 Sony Interactive Entertainment LLC Secure decentralized video game transaction platform
US20190318816A1 (en) * 2014-05-13 2019-10-17 Nant Holdings Ip, Llc Healthcare transaction validation via blockchain proof-of work, systems and methods
CN111400328A (zh) * 2020-03-12 2020-07-10 北京阿尔山金融科技有限公司 数据更新方法、装置及节点服务器
CN111787034A (zh) * 2019-04-03 2020-10-16 北京邦天信息技术有限公司 区块生成方法、同步方法、装置、区块链系统和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190318816A1 (en) * 2014-05-13 2019-10-17 Nant Holdings Ip, Llc Healthcare transaction validation via blockchain proof-of work, systems and methods
US20190282906A1 (en) * 2018-03-14 2019-09-19 Sony Interactive Entertainment LLC Secure decentralized video game transaction platform
CN109145189A (zh) * 2018-08-22 2019-01-04 杭州微链区块链科技有限公司 一种基于区块链的数据存入和搜索系统及其方法
CN109377363A (zh) * 2018-09-26 2019-02-22 电子科技大学 一种基于区块链的物联网数据交易架构及其交易安全方法
CN109302405A (zh) * 2018-10-31 2019-02-01 北京邮电大学 基于边缘计算的工业数据检测区块链网络架构及检测方法
CN111787034A (zh) * 2019-04-03 2020-10-16 北京邦天信息技术有限公司 区块生成方法、同步方法、装置、区块链系统和存储介质
CN111400328A (zh) * 2020-03-12 2020-07-10 北京阿尔山金融科技有限公司 数据更新方法、装置及节点服务器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
TIGANG JIANG等: ""Blockchain-Based Internet of Vehicles: Distributed Network Architecture and Performance Analysis"", 《IEEE INTERNET OF THINGS JOURNAL》 *
曹傧等: ""区块链研究综述"", 《重庆邮电大学学报(自然科学版)》 *
高梦晨: ""云存储下数据保全平台安全机制的研究与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022143540A1 (zh) * 2020-12-31 2022-07-07 杭州趣链科技有限公司 区块链索引的存储方法、装置、计算机设备及介质
CN112968942A (zh) * 2021-01-29 2021-06-15 南京邮电大学 一种区块链数据安全存储框架及方法
CN113132459A (zh) * 2021-03-09 2021-07-16 西安电子科技大学 分布式存储方法、系统、存储介质、信息数据处理终端
CN113138989A (zh) * 2021-03-12 2021-07-20 莘上信息技术(上海)有限公司 区块链数据检索方法及装置
CN113115315A (zh) * 2021-04-02 2021-07-13 青岛科技大学 一种基于区块链的iot设备行为可信监管方法
CN113115315B (zh) * 2021-04-02 2022-10-04 青岛科技大学 一种基于区块链的iot设备行为可信监管方法
CN113419736A (zh) * 2021-06-08 2021-09-21 赵庆林 一种在Tangle区块链系统上支持智能合约协议的方法
CN113419736B (zh) * 2021-06-08 2023-08-25 赵庆林 一种在Tangle区块链系统上支持智能合约协议的方法
CN113312005A (zh) * 2021-06-22 2021-08-27 青岛理工大学 基于区块链的物联网数据扩容存储方法、系统及计算设备
CN113489698A (zh) * 2021-06-25 2021-10-08 中标慧安信息技术股份有限公司 基于区块链的物联网数据保密读取方法与系统
CN113590638A (zh) * 2021-07-20 2021-11-02 南京国准数据有限责任公司 一种基于区块链的分布式数据存储系统
CN114726877A (zh) * 2022-03-18 2022-07-08 扬州大学 一种基于区块链的边缘计算下数据存储更新方法

Also Published As

Publication number Publication date
CN111949672B (zh) 2021-11-30

Similar Documents

Publication Publication Date Title
CN111949672B (zh) 一种支持物联网数据增量更新的区块链存储方法
CN110383279B (zh) 用于检测重放攻击的系统和方法
CN110785760B (zh) 用于登记数字文档的方法和系统
CN115210741B (zh) 部分有序的区块链
US11694110B2 (en) Aggregated machine learning verification for database
US11539527B2 (en) Peer node recovery via approximate hash verification
US11570002B2 (en) Reduced-step blockchain verification of media file
US11711202B2 (en) Committing data to blockchain based on approximate hash verification
US11562228B2 (en) Efficient verification of machine learning applications
US11949789B2 (en) Blockchain-enabled computing
JP7499852B2 (ja) 許可型ブロックチェーンのためのランダムなノード選択
US9419804B2 (en) Data authenticity assurance method, management computer, and storage medium
CN110647503A (zh) 一种分布式存储方法及装置
CN111523890B (zh) 基于区块链的数据处理方法、装置、存储介质及设备
KR101937220B1 (ko) 키 관리가 필요없는 블록체인을 기반한 전자서명 또는 메시지 인증 코드를 생성 및 검증 방법
US20230018190A1 (en) Approximate hash verification of unused blockchain output
CN111092896B (zh) 基于优化paxos的食品溯源分布式数据同步方法
US20200394470A1 (en) Efficient verification of maching learning applications
CN111488372A (zh) 一种数据处理方法、设备及存储介质
CN115004625A (zh) 用于区块链分类账的索引结构
CN109522988B (zh) 产品防伪电子标签信息更新方法和系统
CN111881109A (zh) 数据库可合并分类账
CN113888164A (zh) 区块链交易池实现方法、装置、计算机设备和存储介质
CN113326332B (zh) 一种区块链的快照同步方法及装置
CN110618989B (zh) 信息处理方法、信息处理装置及相关产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant