当前位置: 首页 > 专利查询>深圳大学专利>正文

基于区块链的可验证数据交易方法、装置、设备及介质制造方法及图纸

技术编号:35066628 阅读:22 留言:0更新日期:2022-09-28 11:24
本申请涉及区块链技术领域,揭露一种基于区块链的可验证数据交易方法、装置、设备及介质,其中方法包括生成数据购买者的初始参数以及数据所有者的初始参数;分别对获取的交易数据和解密密钥进行加密,得到加密数据块和加密解密密钥,且获取第一哈希承诺以及交易数据价格;若接收到数据请求事件发生时,获取第二哈希承诺;当第一哈希承诺与第二哈希承诺一致时,获取样本数据和样本密钥,生成重加密密钥,并对样本密钥进行重加密,当样本数据可用时,判断重加密密钥是否可用,若可用时,将交易数据价格对应的数据奖励发送到数据所有者,以及基于重加密密钥,对加密数据块进行解密,以使得数据购买者得到交易数据。本发明专利技术提高数据交易的安全性。易的安全性。易的安全性。

【技术实现步骤摘要】
基于区块链的可验证数据交易方法、装置、设备及介质


[0001]本申请涉及区块链
,尤其涉及一种基于区块链的可验证数据交易方法、装置、设备及介质。

技术介绍

[0002]数据交易是一种数据流通机制,可以驱动数据流向需要的地方,从而最大化数据的价值。数据交易一般采取数据市场的形式。在这样的市场中,数据成为数据所有者和买家之间交易的重要资产,所有者提供数据,买家消费数据。在交易属性上,线上数据交易与现实生活中的商品交易类似。首先,买方支付并请求购买数据;然后,所有者将请求的数据交付给买方;最后,买方检查数据的可用性,如果数据可用则关闭交易,或者如果数据损坏或不可用,则要求退款。
[0003]与线下交易模式相比,线上数据交易面临着安全交易安全性问题。由于两个操作(数据支付和交付)不是同时的操作,所有者和买家都可以利用此漏洞进行欺骗。对于所有者而言,它可以在收到付款后故意拒绝交付数据或恶意发送不可用的数据。对于买家来说,它还可以恶意否认数据的可用性并要求退款。为避免这种情况,传统的数据交易系统往往是中心化的,并且依赖于受信任的第三方(TTP)。在这样的中心化系统中,买方首先向TTP进行支付,然后所有者将数据发送给买方;在买方确认收到数据后,TTP向所有者进行支付。虽然这样的系统机制是实用的,但是,交易安全性问题仍然存在,因为中心化机构可能无法保持公平性。并且由于暴露在网络中的数据很容易被截获,从而导致数据隐私的丢失和价值的损失,使得数据交易的安全性难以保证。现亟需一种能够提高数据交易安全性的方法。
专利技术内容
[0004]本申请实施例的目的在于提出一种基于区块链的可验证数据交易方法、装置、设备及介质,以提高数据交易的安全性。
[0005]为了解决上述技术问题,本申请实施例提供一种基于区块链的可验证数据交易方法,包括:
[0006]获取系统参数,并基于所述系统参数,生成数据购买者的初始参数以及数据所有者的初始参数,其中,所述数据购买者的初始参数包括购买者公钥和购买者私钥,所述数据所有者的初始参数包括所有者公钥、所有者私钥以及n个密钥,n为正整数;
[0007]获取交易数据和解密密钥,基于所述数据所有者的初始参数,分别对所述交易数据和所述解密密钥进行加密,得到n个加密数据块和n个加密解密密钥,且获取数据所有者对所述加密数据块的第一哈希承诺以及交易数据价格,并将所述第一哈希承诺以及所述交易数据价格储存于区块链中;
[0008]响应于数据请求事件的触发指令,获取所述数据购买者对所述加密数据块的第二哈希承诺,并判断所述第一哈希承诺与所述第二哈希承诺是否一致;
[0009]若所述第一哈希承诺与所述第二哈希承诺一致,获取样本数据以及所述样本数据
对应的样本密钥,并基于所述所有者私钥与所述购买者公钥,生成重加密密钥,且基于所述重加密密钥将所述样本密钥进行重加密,得到重加密样本解密密钥,且将所述重加密样本解密密钥返回所述数据购买者,以获取所述数据购买者所反馈的样本数据可用性结果;
[0010]若所述样本数据可用性结果为所述样本数据可用,获取所述数据所有者发布的重加密密钥,并判断所述重加密密钥是否可用;
[0011]若所述重加密密钥可用,将所述交易数据价格对应的数据奖励发送到所述数据所有者,以及基于所述重加密密钥,对所述加密数据块进行解密,以使得所述数据购买者得到所述交易数据。
[0012]为了解决上述技术问题,本申请实施例提供一种基于区块链的可验证数据交易装置,包括:
[0013]初始参数生成模块,用于获取系统参数,并基于所述系统参数,生成数据购买者的初始参数以及数据所有者的初始参数,其中,所述数据购买者的初始参数包括购买者公钥和购买者私钥,所述数据所有者的初始参数包括所有者公钥、所有者私钥以及n个密钥,n为正整数;
[0014]交易数据加密模块,用于获取交易数据和解密密钥,基于所述数据所有者的初始参数,分别对所述交易数据和所述解密密钥进行加密,得到n个加密数据块和n个加密解密密钥,且获取数据所有者对所述加密数据块的第一哈希承诺以及交易数据价格,并将所述第一哈希承诺以及所述交易数据价格储存于区块链中;
[0015]哈希承诺对比模块,用于响应于数据请求事件的触发指令,获取所述数据购买者对所述加密数据块的第二哈希承诺,并判断所述第一哈希承诺与所述第二哈希承诺是否一致;
[0016]样本数据判断模块,用于若所述第一哈希承诺与所述第二哈希承诺一致,获取样本数据以及所述样本数据对应的样本密钥,并基于所述所有者私钥与所述购买者公钥,生成重加密密钥,且基于所述重加密密钥将所述样本密钥进行重加密,得到重加密样本解密密钥,且将所述重加密样本解密密钥返回所述数据购买者,以获取所述数据购买者所反馈的样本数据可用性结果;
[0017]重加密密钥判断模块,用于若所述样本数据可用性结果为所述样本数据可用,获取所述数据所有者发布的重加密密钥,并判断所述重加密密钥是否可用;
[0018]交易数据完成模块,用于若所述重加密密钥可用,将所述交易数据价格对应的数据奖励发送到所述数据所有者,以及基于所述重加密密钥,对所述加密数据块进行解密,以使得所述数据购买者得到所述交易数据。
[0019]为解决上述技术问题,本专利技术采用的一个技术方案是:一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的基于区块链的可验证数据交易方法。
[0020]本专利技术实施例提供了一种基于区块链的可验证数据交易方法、装置、设备及介质。其中,方法包括:获取系统参数,并基于系统参数,生成数据购买者的初始参数以及数据所有者的初始参数,其中,数据购买者的初始参数包括购买者公钥和购买者私钥,数据所有者的初始参数包括所有者公钥、所有者私钥以及n个密钥,n为正整数;获取交易数据和解密密钥,基于数据所有者的初始参数,分别对交易数据和解密密钥进行加密,得到n个加密数据
块和n个加密解密密钥,且获取数据所有者对加密数据块的第一哈希承诺以及交易数据价格,并将第一哈希承诺以及交易数据价格储存于区块链中;响应于数据请求事件的触发指令,获取数据购买者对加密数据块的第二哈希承诺,并判断第一哈希承诺与第二哈希承诺是否一致;若第一哈希承诺与第二哈希承诺一致,获取样本数据以及样本数据对应的样本密钥,并基于所有者私钥与购买者公钥,生成重加密密钥,且基于重加密密钥将样本密钥进行重加密,得到重加密样本解密密钥,且将重加密样本解密密钥返回数据购买者,以获取数据购买者所反馈的样本数据可用性结果;若样本数据可用性结果为样本数据可用,获取数据所有者发布的重加密密钥,并判断重加密密钥是否可用;若重加密密钥可用,将交易数据价格对应的数据奖励发送到数据所有者,以及基于重加密密钥,对加密数据块进行解密,以使得数据购买者得到交易数据。
[0021]本专利技术实施例通过基于数据所有者的初始参数,分别对交易数据和解密密钥进行加密,并且本专利技术实施例还对样本数据进行重加密本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的可验证数据交易方法,其特征在于,包括:获取系统参数,并基于所述系统参数,生成数据购买者的初始参数以及数据所有者的初始参数,其中,所述数据购买者的初始参数包括购买者公钥和购买者私钥,所述数据所有者的初始参数包括所有者公钥、所有者私钥以及n个密钥,n为正整数;获取交易数据和解密密钥,基于所述数据所有者的初始参数,分别对所述交易数据和所述解密密钥进行加密,得到n个加密数据块和n个加密解密密钥,且获取数据所有者对所述加密数据块的第一哈希承诺以及交易数据价格,并将所述第一哈希承诺以及所述交易数据价格储存于区块链中;响应于数据请求事件的触发指令,获取所述数据购买者对所述加密数据块的第二哈希承诺,并判断所述第一哈希承诺与所述第二哈希承诺是否一致;若所述第一哈希承诺与所述第二哈希承诺一致,获取样本数据以及所述样本数据对应的样本密钥,并基于所述所有者私钥与所述购买者公钥,生成重加密密钥,且基于所述重加密密钥将所述样本密钥进行重加密,得到重加密样本解密密钥,且将所述重加密样本解密密钥返回所述数据购买者,以获取所述数据购买者所反馈的样本数据可用性结果;若所述样本数据可用性结果为所述样本数据可用,获取所述数据所有者发布的重加密密钥,并判断所述重加密密钥是否可用;若所述重加密密钥可用,将所述交易数据价格对应的数据奖励发送到所述数据所有者,以及基于所述重加密密钥,对所述加密数据块进行解密,以使得所述数据购买者得到所述交易数据。2.根据权利要求1所述的基于区块链的可验证数据交易方法,其特征在于,所述获取交易数据和解密密钥,基于所述数据所有者的初始参数,分别对所述交易数据和所述解密密钥进行加密,得到n个加密数据块和n个加密解密密钥,且获取数据所有者对所述加密数据块的第一哈希承诺以及交易数据价格,并将所述第一哈希承诺以及所述交易数据价格储存于区块链中,包括:获取所述交易数据和所述解密密钥;将所述交易数据重组为n个数据块,并基于n个所述密钥,依次将n个所述数据块进行加密,得到n个所述加密数据块;基于所述所有者公钥,将所述解密密钥进行加密,得到n个所述加密解密密钥;获取所述数据所有者对所述加密数据块的第一哈希承诺以及交易数据价格,并将所述第一哈希承诺以及所述交易数据价格储存于区块链中。3.根据权利要求2所述的基于区块链的可验证数据交易方法,其特征在于,所述获取所述数据所有者对所述加密数据块的第一哈希承诺以及交易数据价格,并将所述第一哈希承诺以及所述交易数据价格储存于区块链中,包括:通过Merkle哈希树算法对n个所述加密数据块进行计算,得到树根的哈希值,并将所述树根的哈希值作为所述数据所有者对应的第一哈希承诺;获取所述交易数据价格,并将所述第一哈希承诺和所述交易数据价格存储于所述区块链中。4.根据权利要求1所述的基于区块链的可验证数据交易方法,其特征在于,所述响应于数据请求事件的触发指令,获取所述数据购买者对所述加密数据块的第二哈希承诺,并判
断所述第一哈希承诺与所述第二哈希承诺是否一致,包括:通过智能合约的预设方式请求数据,当所述请求数据被接收后,触发所述数据请求事件;将所述加密数据块与所述加密解密密钥返回所述数据购买者,以获取所述数据购买者对所述加密数据块的第二哈希承诺;在所述区块链中,判断所述第一哈希承诺与所述第二哈希承诺是否一致。5.根据权利要求1所述的基于区块链的可验证数据交易方法,其特征在于,所述若所述第一哈希承诺与所述第二哈希承诺一致,获取样本数据以及所述样本数据对应的样本密钥,并基于所述所有者私钥与所述购买者公钥,生成重加密密钥,且基于所述重加密密钥将所述样本密钥进行重加密,得到重加密样本解密密钥,且将所述重加密样本解密密钥返回所述数据购买者,以获取所述数据购买者所反馈的样本数据可用性结果,包括:若所...

【专利技术属性】
技术研发人员:陈飞王嘉豪
申请(专利权)人:深圳大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1