1.本发明涉及区块链技术领域,尤其涉及一种基于区块链的数据交易验真方法、一种基于区块链的数据拥有权溯源方法以及一种基于区块链的数据交易验真及数据拥有权溯源系统。
背景技术:
2.当前的社区研究中,数据共享交易逐步由传统第三方参加的交易体系转为以区块链为核心的交易体系。利用区块链的去中心化、无法篡改、公开透明的特性,数据共享交易可以实现数据交易的真实性、隐私性,配合使用ipfs技术,实现数据的分布式存储,链下数据隐匿存储、链上数据匿名交易。但是没有第三方的中介参与,那么数据交易内容的真实性无法保证,即数据交易双方作弊、作伪问题。并且,数据发生交易之后,那么数据就流向了新的用户(买家),那么就不能保证初始用户的唯一拥有权。
3.具体地,数据作伪包括卖家作假和买家作假两种情况:
4.卖家作假,卖家公布数据x,经过数据标签算法生成roothash,通过智能合约写入到区块中是数据x对应的roothash,但是实际部署到ipfs服务器上的数据不是x数据,即数据addresshash与数据标签roothash不能对应;
5.买家作假,交易过程中买家在接受到数据之后,恶意反馈数据虚假的记录,并且根据反馈虚假数据roothash`,试图制造seller出售虚假数据的证据,返还交易费用。
6.具体地,数据拥有权问题具体为:现有可使用交易平台、当下研究现状中平台通用模型中,数据所有者往往不能控制数据的访问和使用,往往一次交易的完成都代表数据所有权发生了流转,即无法控制数据拥有权的唯一性。数据一旦发生交易,那么数据平台中该数据data的属权实体就是存在两方,即seller,buyer,那么后续如果发生buyer再次上传该数据,这就代表data此时的属权实体不再是seller,而是buyer,这就会造成数据来源混淆,无法为seller提供可靠的交易环境,并且无法保证seller的收益,即数据交易后所属权的丢失问题。
技术实现要素:
7.针对上述问题,本发明提供了一种基于区块链的数据交易验真及数据拥有权溯源方法及系统,通过区块链智能合约基于文件防伪机制和随机预言机对数据生成数据标签和数据承诺,在交易完成后,智能合约根据仲裁请求,利用数据标签和数据承诺进行相应的仲裁,完成数据交易验真和数据属权溯源,从而解决数据交易双方数据作伪问题和数据拥有权丢失问题。
8.为实现上述目的,本发明提供了一种基于区块链的数据交易验真方法,包括:
9.数据用户通过区块链交易平台将数据上传至ipfs服务器,所述ipfs服务器向所述数据用户返回数据地址;
10.区块链智能合约利用文件防伪机制生成该数据对应的数据标签,并利用随机预言
机结合所述数据地址和所述数据标签生成数据承诺;
11.数据买家对当前数据完成数据交易后针对数据真伪提起仲裁请求时,同时需要上传当前数据的数据标签;
12.所述区块链智能合约利用随机预言机查询得到所述数据用户发布的数据标签,所述区块链智能合约根据所述数据地址获取到所述ipfs服务器存储数据对应的数据标签;
13.将所述ipfs服务器存储数据的数据标签分别与所述数据买家上传的数据标签、所述数据用户发布的数据标签进行一致性对比,判断所述数据用户和所述数据买家是否存在数据作伪。
14.在上述技术方案中,优选地,所述数据用户存在数据作伪为通过所述区块链智能合约写入区块的数据标签对应的数据,与上传至所述ipfs服务器的数据不一致;
15.所述数据买家存在数据作伪为提起仲裁请求时上传的数据标签,与数据交易所获得数据的数据标签不一致。
16.在上述技术方案中,优选地,基于区块链的数据交易验真方法还包括:
17.所述数据买家在数据交易过程中,向所述区块链交易平台提起当前数据的交易请求并上交交易押金;
18.所述区块链交易平台将所述数据标签生成过程中所用的随机数以及所请求的当前数据对应的数据承诺发送至所述数据买家,同时生成交易记录;
19.所述数据买家根据该随机数以及所述数据承诺得到该数据,完成数据交易。
20.在上述技术方案中,优选地,基于区块链的数据交易验真方法还包括:
21.所述数据用户在上传数据前,向所述区块链交易平台提交身份认证请求,上交信誉押金,完成身份认证并分配身份编码;
22.所述数据买家在提起数据交易请求前,向所述区块链交易平台提交身份认证请求,上交信誉押金,完成身份认证并分配身份编码;
23.在判定所述数据用户存在数据作伪时,扣除所述数据用户的信誉押金,向所述数据买家返还交易费用;
24.在判定所述数据买家存在数据作伪时,扣除所述数据买家的信誉押金。
25.在上述技术方案中,优选地,所述区块链智能合约的文件防伪机制采用merkle树思想生成数据标签,所述随机预言机采用commit()算法和perform()算法生成数据承诺;
26.在针对数据进行数据作伪仲裁过程中,利用所述perform()算法验证当前数据的交易响应是否为编程实现,以判断是否存在数据作伪。
27.本发明还提出一种基于区块链的数据拥有权溯源方法,包括:
28.数据用户向区块链交易平台提交身份认证请求,完成身份认证并分配身份编码;
29.所述数据用户将数据上传至ipfs服务器,所述ipfs服务器向所述数据用户返回数据地址;
30.区块链智能合约利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合所述数据地址和所述数据标签生成数据承诺;
31.所述区块链智能合约利用所述数据用户的身份编码、所述数据标签和随机数生成当前数据的属权文件,并存储于全局账单中;
32.所述数据多次交易后存在至少两个属权用户时,针对某一交易用户对当前数据的
属权提起的仲裁请求,所述区块链智能合约要求当前属权用户分别提供各自的身份编码、数据标签和随机数作为数据拥有权证明;
33.所述区块链智能合约根据不同属权用户提供的身份编码、数据标签和随机数分别计算得到属权文件;
34.将计算得到的属权文件分别与通过所述全局账单查询得到的当前数据的属权文件进行对比验证,确定当前数据的原始属权用户。
35.在上述技术方案中,优选地,基于区块链的数据拥有权溯源方法还包括:
36.数据用户向区块链交易平台提交身份认证请求时上交信誉押金,在对数据进行属权仲裁后,扣除当前数据的原始属权用户以外的属权用户的信誉押金。
37.在上述技术方案中,优选地,所述区块链智能合约利用随机预言机计算得到数据的属权文件,用户的身份编码、数据标签和属权文件为一一对应关系。
38.本发明还提出一种基于区块链的数据交易验真及数据拥有权溯源系统,应用如上述技术方案中任一项公开的基于区块链的数据交易验真方法以及如上述技术方案中任一项公开的基于区块链的数据拥有权溯源方法,包括:
39.用户认证模块,用于为数据用户向区块链交易平台提交身份认证请求,完成身份认证并分配身份编码;
40.数据上传模块,用于为数据用户将数据上传至ipfs服务器,并由所述ipfs服务器向所述数据用户返回数据地址;
41.数据防伪模块,用于利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合所述数据地址和所述数据标签生成数据承诺;
42.数据属权模块,用于利用所述数据用户的身份编码、所述数据标签和随机数生成当前数据的属权文件,并存储于全局账单中;
43.数据真伪仲裁模块,用于在数据买家对当前数据完成数据交易后针对数据真伪提起仲裁请求时,同时需要上传当前数据的数据标签,并由所述区块链智能合约利用随机预言机查询得到所述数据用户发布的数据标签,根据所述数据地址获取到所述ipfs服务器存储数据对应的数据标签;
44.所述数据真伪仲裁模块还将所述ipfs服务器存储数据的数据标签分别与所述数据买家上传的数据标签、所述数据用户发布的数据标签进行一致性对比,以判断所述数据用户和所述数据买家是否存在数据作伪;
45.数据属权仲裁模块,用于在所述数据多次交易后存在至少两个属权用户时,针对某一交易用户对当前数据的属权提起的仲裁请求,根据不同属权用户提供的身份编码、数据标签和随机数分别计算得到属权文件,并将计算得到的属权文件分别与通过所述全局账单查询得到的当前数据的属权文件进行对比验证,以确定当前数据的原始属权用户。
46.在上述技术方案中,优选地,基于区块链的数据交易验真及数据拥有权溯源系统还包括押金管理模块,用于在用户提交身份认证请求时向用户收取信誉押金,以及在数据买家提起交易请求时向数据买家收取交易押金;
47.所述押金管理模块还用于在数据用户存在数据作伪时,扣除该数据用户的信誉押金,向对应的数据买家返还交易费用,在数据买家存在数据作伪时,扣除该数据买家的信誉押金,以及在对数据进行属权仲裁后,扣除当前数据的原始属权用户以外的属权用户的信
誉押金。
48.与现有技术相比,本发明的有益效果为:通过区块链智能合约基于文件防伪机制和随机预言机对数据生成数据标签和数据承诺,在交易完成后,智能合约根据仲裁请求,利用数据标签和数据承诺进行相应的仲裁,完成数据交易验真和数据属权溯源,解决了数据交易双方数据作伪问题和数据拥有权丢失问题。
附图说明
49.图1为本发明一种实施例公开的基于区块链的数据交易验真方法的流程示意图;
50.图2为本发明一种实施例公开的基于区块链的数据交易验真方法的工作流示意图;
51.图3为本发明一种实施例公开的基于区块链的数据共享和资产交付框架示意图;
52.图4为本发明一种实施例公开的基于merkle树思想的数据标签生成示意图;
53.图5为本发明一种实施例公开的基于区块链的数据拥有权溯源方法的流程示意图;
54.图6为本发明一种实施例公开的基于区块链的数据交易验真及数据拥有权溯源系统的模块示意图。
55.图中,各组件与附图标记之间的对应关系为:
56.11.用户认证模块,12.数据上传模块,13.数据防伪模块,14.数据属权模块,15.数据真伪仲裁模块,16.数据属权仲裁模块,17.押金管理模块。
具体实施方式
57.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
58.下面结合附图对本发明做进一步的详细描述:
59.如图1和图2所示,根据本发明提供的一种基于区块链的数据交易验真方法,包括:
60.数据用户通过区块链交易平台将数据上传至ipfs服务器,ipfs服务器向数据用户返回数据地址;
61.区块链智能合约利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合数据地址和数据标签生成数据承诺;
62.数据买家对当前数据完成数据交易后针对数据真伪提起仲裁请求时,同时需要上传当前数据的数据标签;
63.区块链智能合约利用随机预言机查询得到数据用户发布的数据标签,区块链智能合约根据数据地址获取到ipfs服务器存储数据对应的数据标签;
64.将ipfs服务器存储数据的数据标签分别与数据买家上传的数据标签、数据用户发布的数据标签进行一致性对比,判断数据用户和数据买家是否存在数据作伪。
65.如图3所示,在该实施方式中,具体地,数据用户(即数据拥有者)将数据x上传到ipfs服务器后,ipfs服务器会返回一个数据地址addresshash到数据拥有者,然后区块链智
能合约会利用文件防伪机制生成一个数据x的数据标签roothash,并利用随机预言机将(roothash,k,n)与用户提交数据x相关的信息(addresshash,d)形成数据承诺commitment(以下简写为c)。其中,roothash为文件防伪机制生成的数据标签,k为用于形成数据标签的随机数,d为随机数,用于加密实现数据在addresshash的存储。
66.具体地,利用随机数d的加密算法为:
67.dec(d,enc(d,addresshash))=addresshash;
[0068][0069]
在上述实施方式中,涉及随机预言机及数据标签机制,具体说明如下:
[0070]
随机预言机模型(a random oracle,h()),假设随机预言机模型使用h()标示,在密码学中就是一个预言(理论中的黑盒子),该模型假设可以对哈希函数进行建模以返回无法预测的完美随机值,并且散列函数是用随机预言机实例化的。对于任何一个输入都会返回一个真正均匀随机的输出。同样,对于每个相同的查询输入,那么预言就会返回一个相同的输出。可编程的随机预言机较为常见,而可编程性就意味着完美的攻击者可以控制随机预言机将其散列为特定响应。传统工作,这种随机预言被建模为本地功能,由模拟器控制,这再次意味着每个执行协议的用户都拥有自己本地分离散列函数,那么对于这种局部的哈希函数便不能支持全局功能(即用相同的值响应所有会话中进行的查询),并且潜在攻击者可以利用编程实现可控制的查询输出值。因此本发明中,提出了一种新的思想,利用随机预言机与区块链的一致性,各方分别调用h(isprgrmd,x||d)验证某些查询响应是否被编程,如果h(isprgrmd,x||d)以1响应,那么证明这个查询响应被编程并拒绝该值。本发明中使用keccak256作为一个随机预言机模型的实例,其hash值输出范围为232bytes。
[0071]
通过随机预言机,数据交易平台将本次交易记录、数据信息包装形成一个commitment写入区块,通过一组算法[commit(),perform()]完成;
[0072]
commit()算法构成:
[0073]-输入数据x,(假设已知该数据x的hash值);
[0074]-随机选取一个随机数d,d
←
{0,1}k,通过k的取值范围控制d的无法预测性;
[0075]-利用随机预言机h进行如下操作
[0076]
h(x||d)
→c[0077]-输出结果为c
[0078]
perform()算法构成:
[0079]-输入数据,参数c,一个随机数d
[0080]-通过随机预言机映射初始数据c`
←
h(c||d)
[0081]-验证,(如果输入与输出形成正确的映射关系,那么就输出1,否则,则输出0);即判断c`==c并且h(isprgrmd,x||d)≠1,用户未作弊,输出1;如果c`==c并且h(isprgrmd,x||d)=1,那么用户作弊,输出0。其中考虑到本地环境下的随机预言机是可以自编程,那么输出结果就存在人为控制的结果,h(isprgrmd,x||d)是通过不同的环境验证输入、输出保证结果的不可伪造性。
[0082]
在数据标签机制中,文件上传的时候,计算该数据所对应的唯一标示,与存储的数据形成唯一映射,该标示可以用作交易数据标签,并且隐藏待交易的数据内容信息。当交易双方发生数据内容真实性质疑时,会根据文件标示判断买卖双方的作弊行为。本发明中利
用merkle树的思想,对于数据内容进行响应的处理,形成一个hash串标识(roothash),实现了数据标签机制。
[0083]
merkle树是一种典型的二叉树结构,由一个根节点,一组中间节点和一组叶节点组成。merkle树最下面的叶节点包含存储数据或者该数据的hash值,那么非叶子节点(中间节点和根结点)都是它的两个孩子节点内容的hash值。基于merkle树这种逐层记录哈希值的特点,那么底层数据的任何变动都会影响到上层节点的hash值,进而影响到merkle树的根节点。换而言之,如果不同的两个文件,那么无论它们相似程度有多高,那么它们的merkle树的根节点hash值都是不一致的。
[0084]
如图4所示,数据标签算法的具体流程为:
[0085]-将数据x随机分为n份,即x
→
{x1,x2,x3,x4,x5…
xn},随机选取一个整数k
[0086]-第一次将k与i=1进行ki=h(k||i),然后再利用随机预言机h(ki||xi)输出其父节点的hash值(y1),同理可得另一个节点的hash值(y2),然后生成其父节点的hash值,逐次循环,直到产生根节点的hash值,记作roothash。
[0087]
在上述实施方式中,优选地,区块链智能合约的文件防伪机制采用merkle树思想生成数据标签,随机预言机采用commit()算法和perform()算法生成数据承诺;
[0088]
在针对数据进行数据作伪仲裁过程中,利用perform()算法验证当前数据的交易响应是否为编程实现,以判断是否存在数据作伪。
[0089]
在上述实施方式中,优选地,数据用户存在数据作伪为通过区块链智能合约写入区块的数据标签对应的数据,与上传至ipfs服务器的数据不一致;
[0090]
数据买家存在数据作伪为提起仲裁请求时上传的数据标签,与数据交易所获得数据的数据标签不一致。
[0091]
在上述实施方式中,优选地,基于区块链的数据交易验真方法还包括:
[0092]
数据买家在数据交易过程中,向区块链交易平台提起当前数据的交易请求并上交交易押金;
[0093]
区块链交易平台将数据标签生成过程中所用的随机数d以及所请求的当前数据对应的数据承诺c发送至数据买家,同时生成交易记录(保证后续的数据x拥有权溯源问题);
[0094]
数据买家根据该随机数d以及数据承诺c,利用随机预言机查询h(c)可得到数据x对应的addresshash,利用随机数d解析addresshash,得到该数据,完成数据交易。
[0095]
在上述实施方式中,优选地,基于区块链的数据交易验真方法还包括:
[0096]
数据用户在上传数据前,向区块链交易平台提交身份认证请求,上交信誉押金,完成身份认证并分配身份编码;
[0097]
数据买家在提起数据交易请求前,向区块链交易平台提交身份认证请求,上交信誉押金,完成身份认证并分配身份编码;
[0098]
在判定数据用户存在数据作伪时,扣除数据用户的信誉押金,向数据买家返还交易费用;
[0099]
在判定数据买家存在数据作伪时,扣除数据买家的信誉押金。
[0100]
如图5所示,本发明还提出一种基于区块链的数据拥有权溯源方法,包括:
[0101]
数据用户向区块链交易平台提交身份认证请求,完成身份认证并分配身份编码;
[0102]
数据用户将数据上传至ipfs服务器,ipfs服务器向数据用户返回数据地址;
[0103]
区块链智能合约利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合数据地址和数据标签生成数据承诺;
[0104]
区块链智能合约利用数据用户的身份编码、数据标签和随机数生成当前数据的属权文件,并存储于全局账单中;
[0105]
数据多次交易后存在至少两个属权用户时,针对某一交易用户对当前数据的属权提起的仲裁请求,区块链智能合约要求当前属权用户分别提供各自的身份编码、数据标签和随机数作为数据拥有权证明;
[0106]
区块链智能合约根据不同属权用户提供的身份编码、数据标签和随机数分别计算得到属权文件;
[0107]
将计算得到的属权文件分别与通过全局账单查询得到的当前数据的属权文件进行对比验证,确定当前数据的原始属权用户。
[0108]
在该实施方式中,区块链智能合约利用数据用户的身份编码id、数据对应的hash值以及选取的随机数v,通过随机预言机h(id||hash,v)=属权文件copyrightmes进行计算,得到属权文件并存储在全局账单中。
[0109]
区块链交易平台限制每一份待交易的数据有且仅有唯一的属权文件,即数据、拥有者和属权文件三者都是一一对应的,因此只需要验证属权文件的归属便可以保证数据属权。
[0110]
在上述实施方式中,优选地,基于区块链的数据拥有权溯源方法还包括:
[0111]
数据用户向区块链交易平台提交身份认证请求时上交信誉押金,在对数据进行属权仲裁后,扣除当前数据的原始属权用户以外的属权用户的信誉押金。
[0112]
根据该实施方式所公开的基于区块链的数据拥有权溯源方法,具体流程如下:
[0113]
(1)用户c向区块链交易平台发起对数据x的交易请求
[0114]
(2)平台会反馈数据d的数据来源方a与b(a与b发生数据交易之后,b再次上传该数据,并标注为初始上传)
[0115]
(3)用户c申请发起仲裁,平台智能合约要求数据方a与b提供关于数据拥有权的证明(用户id,用于生成属权文件的随机数v,数据对应的hash值,时间戳timestamp),验证该数据x对应的属权文件copyrightmes的归属。
[0116]
(4)区块链智能合约计算h(id||hash,v)=属权文件copyrightmes,通过全局账单查询验证计算结果与账单记录是否一致,
[0117]
(5)区块链智能合约验证两种结果,证明用户a对于数据x的拥有权,对用户b发起仲裁,扣除信誉押金。
[0118]
如图6所示,本发明还提出一种基于区块链的数据交易验真及数据拥有权溯源系统,应用如上述实施方式中任一项公开的基于区块链的数据交易验真方法以及如上述实施方式中任一项公开的基于区块链的数据拥有权溯源方法,包括:
[0119]
用户认证模块11,用于为数据用户向区块链交易平台提交身份认证请求,完成身份认证并分配身份编码;
[0120]
数据上传模块12,用于为数据用户将数据上传至ipfs服务器,并由ipfs服务器向数据用户返回数据地址;
[0121]
数据防伪模块13,用于利用文件防伪机制生成该数据对应的数据标签,并利用随
机预言机结合数据地址和数据标签生成数据承诺;
[0122]
数据属权模块14,用于利用数据用户的身份编码、数据标签和随机数生成当前数据的属权文件,并存储于全局账单中;
[0123]
数据真伪仲裁模块15,用于在数据买家对当前数据完成数据交易后针对数据真伪提起仲裁请求时,同时需要上传当前数据的数据标签,并由区块链智能合约利用随机预言机查询得到数据用户发布的数据标签,根据数据地址获取到ipfs服务器存储数据对应的数据标签;
[0124]
数据真伪仲裁模块15还将ipfs服务器存储数据的数据标签分别与数据买家上传的数据标签、数据用户发布的数据标签进行一致性对比,以判断数据用户和数据买家是否存在数据作伪;
[0125]
数据属权仲裁模块16,用于在数据多次交易后存在至少两个属权用户时,针对某一交易用户对当前数据的属权提起的仲裁请求,根据不同属权用户提供的身份编码、数据标签和随机数分别计算得到属权文件,并将计算得到的属权文件分别与通过全局账单查询得到的当前数据的属权文件进行对比验证,以确定当前数据的原始属权用户。
[0126]
在上述实施方式中,优选地,基于区块链的数据交易验真及数据拥有权溯源系统还包括押金管理模块17,用于在用户提交身份认证请求时向用户收取信誉押金,以及在数据买家提起交易请求时向数据买家收取交易押金;
[0127]
押金管理模块17还用于在数据用户存在数据作伪时,扣除该数据用户的信誉押金,向对应的数据买家返还交易费用,在数据买家存在数据作伪时,扣除该数据买家的信誉押金,以及在对数据进行属权仲裁后,扣除当前数据的原始属权用户以外的属权用户的信誉押金。
[0128]
根据上述实施方式公开的基于区块链的数据交易验真及数据拥有权溯源系统,其模块所要实现的功能与上述实施方式中公开的基于区块链的数据交易验真方法和基于区块链的数据拥有权溯源方法的步骤相对应,通过上述各模块的相互协调,实现数据交易验真和数据属权溯源,从而解决数据交易双方数据作伪问题和数据拥有权丢失问题。
[0129]
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于区块链的数据交易验真方法,其特征在于,包括:数据用户通过区块链交易平台将数据上传至ipfs服务器,所述ipfs服务器向所述数据用户返回数据地址;区块链智能合约利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合所述数据地址和所述数据标签生成数据承诺;数据买家对当前数据完成数据交易后针对数据真伪提起仲裁请求时,同时需要上传当前数据的数据标签;所述区块链智能合约利用随机预言机查询得到所述数据用户发布的数据标签,所述区块链智能合约根据所述数据地址获取到所述ipfs服务器存储数据对应的数据标签;将所述ipfs服务器存储数据的数据标签分别与所述数据买家上传的数据标签、所述数据用户发布的数据标签进行一致性对比,判断所述数据用户和所述数据买家是否存在数据作伪。2.根据权利要求1所述的基于区块链的数据交易验真方法,其特征在于,所述数据用户存在数据作伪为通过所述区块链智能合约写入区块的数据标签对应的数据,与上传至所述ipfs服务器的数据不一致;所述数据买家存在数据作伪为提起仲裁请求时上传的数据标签,与数据交易所获得数据的数据标签不一致。3.根据权利要求2所述的基于区块链的数据交易验真方法,其特征在于,还包括:所述数据买家在数据交易过程中,向所述区块链交易平台提起当前数据的交易请求并上交交易押金;所述区块链交易平台将所述数据标签生成过程中所用的随机数以及所请求的当前数据对应的数据承诺发送至所述数据买家,同时生成交易记录;所述数据买家根据该随机数以及所述数据承诺得到该数据,完成数据交易。4.根据权利要求3所述的基于区块链的数据交易验真方法,其特征在于,还包括:所述数据用户在上传数据前,向所述区块链交易平台提交身份认证请求,上交信誉押金,完成身份认证并分配身份编码;所述数据买家在提起数据交易请求前,向所述区块链交易平台提交身份认证请求,上交信誉押金,完成身份认证并分配身份编码;在判定所述数据用户存在数据作伪时,扣除所述数据用户的信誉押金,向所述数据买家返还交易费用;在判定所述数据买家存在数据作伪时,扣除所述数据买家的信誉押金。5.根据权利要求3所述的基于区块链的数据交易验真方法,其特征在于,所述区块链智能合约的文件防伪机制采用merkle树思想生成数据标签,所述随机预言机采用commit()算法和perform()算法生成数据承诺;在针对数据进行数据作伪仲裁过程中,利用所述perform()算法验证当前数据的交易响应是否为编程实现,以判断是否存在数据作伪。6.一种基于区块链的数据拥有权溯源方法,其特征在于,包括:数据用户向区块链交易平台提交身份认证请求,完成身份认证并分配身份编码;所述数据用户将数据上传至ipfs服务器,所述ipfs服务器向所述数据用户返回数据地
址;区块链智能合约利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合所述数据地址和所述数据标签生成数据承诺;所述区块链智能合约利用所述数据用户的身份编码、所述数据标签和随机数生成当前数据的属权文件,并存储于全局账单中;所述数据多次交易后存在至少两个属权用户时,针对某一交易用户对当前数据的属权提起的仲裁请求,所述区块链智能合约要求当前属权用户分别提供各自的身份编码、数据标签和随机数作为数据拥有权证明;所述区块链智能合约根据不同属权用户提供的身份编码、数据标签和随机数分别计算得到属权文件;将计算得到的属权文件分别与通过所述全局账单查询得到的当前数据的属权文件进行对比验证,确定当前数据的原始属权用户。7.根据权利要求6所述的基于区块链的数据拥有权溯源方法,其特征在于,还包括:数据用户向区块链交易平台提交身份认证请求时上交信誉押金,在对数据进行属权仲裁后,扣除当前数据的原始属权用户以外的属权用户的信誉押金。8.根据权利要求6所述的基于区块链的数据拥有权溯源方法,其特征在于,所述区块链智能合约利用随机预言机计算得到数据的属权文件,用户的身份编码、数据标签和属权文件为一一对应关系。9.一种基于区块链的数据交易验真及数据拥有权溯源系统,其特征在于,应用如权利要求1至5中任一项所述的基于区块链的数据交易验真方法以及如权利要求6至8中任一项所述的基于区块链的数据拥有权溯源方法,包括:用户认证模块,用于为数据用户向区块链交易平台提交身份认证请求,完成身份认证并分配身份编码;数据上传模块,用于为数据用户将数据上传至ipfs服务器,并由所述ipfs服务器向所述数据用户返回数据地址;数据防伪模块,用于利用文件防伪机制生成该数据对应的数据标签,并利用随机预言机结合所述数据地址和所述数据标签生成数据承诺;数据属权模块,用于利用所述数据用户的身份编码、所述数据标签和随机数生成当前数据的属权文件,并存储于全局账单中;数据真伪仲裁模块,用于在数据买家对当前数据完成数据交易后针对数据真伪提起仲裁请求时,同时需要上传当前数据的数据标签,并由所述区块链智能合约利用随机预言机查询得到所述数据用户发布的数据标签,根据所述数据地址获取到所述ipfs服务器存储数据对应的数据标签;所述数据真伪仲裁模块还将所述ipfs服务器存储数据的数据标签分别与所述数据买家上传的数据标签、所述数据用户发布的数据标签进行一致性对比,以判断所述数据用户和所述数据买家是否存在数据作伪;数据属权仲裁模块,用于在所述数据多次交易后存在至少两个属权用户时,针对某一交易用户对当前数据的属权提起的仲裁请求,根据不同属权用户提供的身份编码、数据标签和随机数分别计算得到属权文件,并将计算得到的属权文件分别与通过所述全局账单查
询得到的当前数据的属权文件进行对比验证,以确定当前数据的原始属权用户。10.根据权利要求9所述的基于区块链的数据交易验真及数据拥有权溯源系统,其特征在于,还包括押金管理模块,用于在用户提交身份认证请求时向用户收取信誉押金,以及在数据买家提起交易请求时向数据买家收取交易押金;所述押金管理模块还用于在数据用户存在数据作伪时,扣除该数据用户的信誉押金,向对应的数据买家返还交易费用,在数据买家存在数据作伪时,扣除该数据买家的信誉押金,以及在对数据进行属权仲裁后,扣除当前数据的原始属权用户以外的属权用户的信誉押金。
技术总结
本发明公开了一种基于区块链的数据交易验真及数据拥有权溯源方法及系统,其中,交易验真方法包括:数据用户通过区块链交易平台将数据上传至IPFS服务器并返回数据地址;利用文件防伪机制生成数据标签,并利用随机预言机生成数据承诺;针对数据真伪提起仲裁请求时,上传当前数据的数据标签;利用随机预言机查询得到数据用户发布的数据标签,根据数据地址获取到IPFS服务器存储的数据标签,并分别与数据买家上传的数据标签、数据用户发布的数据标签进行一致性对比,判断数据用户和数据买家是否存在数据作伪。通过本发明的技术方案,能够完成数据交易验真和数据属权溯源,解决了数据交易双方数据作伪问题和数据拥有权丢失问题。双方数据作伪问题和数据拥有权丢失问题。双方数据作伪问题和数据拥有权丢失问题。
技术研发人员:任鲁南 田锐 赵赟
受保护的技术使用者:北京工业大学
技术研发日:2022.02.14
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-15292.html