CN116894727A - 一种基于区块链的数据处理方法、装置及相关设备 - Google Patents
一种基于区块链的数据处理方法、装置及相关设备 Download PDFInfo
- Publication number
- CN116894727A CN116894727A CN202210315363.9A CN202210315363A CN116894727A CN 116894727 A CN116894727 A CN 116894727A CN 202210315363 A CN202210315363 A CN 202210315363A CN 116894727 A CN116894727 A CN 116894727A
- Authority
- CN
- China
- Prior art keywords
- data
- blockchain
- target
- account
- transaction
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 claims abstract description 66
- 230000008569 process Effects 0.000 claims abstract description 28
- 238000004364 calculation method Methods 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 52
- 238000004590 computer program Methods 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 12
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000007246 mechanism Effects 0.000 description 35
- 238000010586 diagram Methods 0.000 description 12
- 238000007726 management method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 230000032258 transport Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0611—Request for offers or quotes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Marketing (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- Economics (AREA)
- Computer Hardware Design (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
一种基于区块链的数据处理方法、装置及相关设备,可以应用于云技术、人工智能、区块链、车联网、智慧交通、智能家居等各种领域或场景,该方法包括:获取数据交易订单,数据交易订单包括针对目标计算任务的数据需求;从区块链中查找与数据需求相匹配的N个数据供应账户;从区块链上获取N个数据供应账户中的M个数据供应账户对数据交易订单的报价,根据M个数据供应账户的报价,从M个数据供应账户中确定待交易账户;从区块链中获取待交易账户关联的目标数据令牌;按照目标数据令牌中的目标存储地址从分布式文件系统中读取目标交易数据。采用本申请实施例,可以保证数据交易过程的公开、透明,有利于提高数据交易的可信度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于区块链的数据处理方法、一种基于区块链的数据处理装置、一种计算机设备、一种计算机可读存储介质及一种计算机程序产品。
背景技术
数据资源已成为数据驱动型经济中的重要资产,推动了数据交易市场的新起。在数据交易市场中,数据供应方可以展示拥有的数据资源,吸引潜在的数据需求方,数据需求方可以搜索、选择想要的数据资源,通过支付数字资产来获得数据资源的使用权,数据交易市场可以通过促成交易来获取收益。但随着数据交易规模、数据价值的增长,基于封闭式的交易平台,导致数据交易的可信度较低。
发明内容
本申请实施例提供了一种基于区块链的数据处理方法、装置及相关设备,可以保证数据交易过程的公开、透明,有利于提高数据交易的可信度。
一方面,本申请实施例提供了一种基于区块链的数据处理方法,所述方法包括:
获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求;
从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数;
从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N;
从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址;
按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
一方面,本申请实施例提供了一种基于区块链的数据处理方法,所述方法包括:
当获取到关于数据交易订单的区块链事件时,确定对所述数据交易订单的目标报价,所述区块链事件是区块链节点从区块链中查找到与所述数据交易订单包括的数据需求相匹配的数据供应账户后发送的;
将对所述数据交易订单的目标报价写入所述区块链,以使所述区块链节点根据所述目标报价确定待交易账户,以及将所述区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,由所述数据需求账户所在的终端按照所述目标数据令牌包括的分布式文件系统中的目标存储地址从所述分布式文件系统中读取目标交易数据;其中,所述目标数据令牌是由所述待交易账户所在的终端将所述目标交易数据存储至所述分布式文件系统中的目标存储地址后,基于所述目标存储地址生成并写入区块链的。
一方面,本申请实施例提供了一种基于区块链的数据处理装置,所述装置包括:
获取单元,用于获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求;
处理单元,用于从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数;
所述获取单元,还用于从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N;
所述获取单元,还用于从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址;
所述处理单元,还用于按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
一方面,本申请实施例提供了一种基于区块链的数据处理装置,所述装置包括:
处理单元,用于当获取到关于数据交易订单的区块链事件时,确定对所述数据交易订单的目标报价,所述区块链事件是区块链节点从区块链中查找到与所述数据交易订单包括的数据需求相匹配的数据供应账户后发送的;
所述处理单元,还用于将对所述数据交易订单的目标报价写入所述区块链,以使所述区块链节点根据所述目标报价确定待交易账户,以及将所述区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,由所述数据需求账户所在的终端按照所述目标数据令牌包括的分布式文件系统中的目标存储地址从所述分布式文件系统中读取目标交易数据;其中,所述目标数据令牌是由所述待交易账户所在的终端将所述目标交易数据存储至所述分布式文件系统中的目标存储地址后,基于所述目标存储地址生成并写入区块链的。
一方面,本申请实施例提供了一种计算机设备,该计算机设备包括处理器、通信接口和存储器,该处理器、通信接口和存储器相互连接,其中,该存储器存储有计算机程序,该处理器用于调用该计算机程序,执行上述任一可能实现方式的基于区块链的数据处理方法。
一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现该任一可能实现方式的基于区块链的数据处理方法。
相应地,本申请实施例还提供了一种计算机程序产品,上述计算机程序产品包括计算机程序或计算机指令,上述计算机程序或计算机指令被处理器执行实现本申请实施例提供的基于区块链的数据处理方法的步骤。
相应地,本申请实施例还提供了一种计算机程序,上述计算机程序包括计算机指令,上述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从上述计算机可读存储介质读取上述计算机指令,上述处理器执行上述计算机指令,使得上述计算机设备执行本申请实施例提供的基于区块链的数据处理方法。
本申请实施例中,可以利用区块链的去中心化和不可篡改等特性,保证数据交易过程的公开、透明,有利于提高数据交易的可信度;同时可以将待交易数据token化得到的数据令牌,作为待交易数据的价值承载,可以低成本地进行资产交易与转移,实现链上资产的自由流通,打破不同类型资产兑换的限制,提升基于区块链进行数据交易的灵活性;另外由于分布式文件系统是可以让待交易数据分散存储在不同位置,并能根据哈希索引快速获得相关内容的一套系统,因此可以让待交易数据的存储更加安全。
附图说明
为了更清楚地说明本申请实施例技术方法,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种区块链网络的架构示意图;
图2为本申请实施例提供的一种区块链的结构示意图;
图3为本申请实施例提供的一种区块生成过程的流程示意;
图4为本申请实施例提供的一种基于数据处理系统的架构示意图一;
图5为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图一;
图6为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图二;
图7为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图三;
图8为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图四;
图9为本申请实施例提供的一种基于数据处理系统的架构示意图二;
图10为本申请实施例提供的一种基于区块链的数据处理装置的结构示意图;
图11为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方法进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中所涉及到的“第一”、“第二”等描述仅用于描述目的,而不能理解为指示或者暗示其相对重要性或者隐含指明所指示的技术特征的数量。因此,限定有“第一”、“第二”等的技术特征可以明示或者隐含的包括至少一个该特征。
请参见图1,图1为本申请实施例提供的一种区块链网络的结构示意图。该区块链网络是一个数据共享系统,可以包括多个节点,多个节点具体可以包括节点1、节点2、节点3…、节点N。其中,每个节点在正常工作时可以接收到外界发送的数据,并基于接收到的数据进行区块上链处理,也可以向外界发送数据。为了保证各个节点之间的数据互通,每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当区块链网络中的任意节点接收到输入信息时,区块链网络中的其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得区块链网络中全部节点上存储的数据均一致。
可以理解的是,上述的信息连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其他连接方式,本申请在此不做限制。
可以理解的是,对于区块链网络中的每个节点,均具有与其对应的节点标识,而且区块链网络中的每个节点均可以存储有区块链网络中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链网络中的其他节点。每个节点中可维护一个如下表1所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明:
表1
区块链网络中的每个节点均存储一条相同的区块链(Blockchain)。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。参见图2,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
在生成区块链中的各个区块时,参见图3,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据区块链网络中其他节点的节点标识,将新生成的区块分别发送给其所在的区块链网络中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议,能够允许在没有第三方的情况下进行可信交易,且这些交易可溯源不可篡改。交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本申请实施例遵循了这一习惯。应当理解,区块链中可包括一个或多个智能合约,通过向区块链网络上的节点提交交易,可以触发执行相应地智能合约,利用智能合约提供的功能实现业务需求。
请参见图4,图4为本申请实施例提供的一种数据处理系统的架构示意图,该数据处理系统包括区块链网络40、数据需求方使用的客户端41、数据供应方使用的客户端42和分布式文件系统43。区块链网络40包括一个或多个节点,该节点可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器;或者,该任一节点可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电、车载终端等终端。数据需求方使用的客户端41和数据供应方使用的客户端42是提供数据交易本地服务的程序,安装在终端上,部署有客户端41和客户端42的终端可以是区块链网络中的节点。分布式文件系统43是一种存储系统,可以是IPFS(InterPlanetary File System,星际文件系统)。IPFS是一个面向全球、点对点的分布式文件系统,能将所有具有相同文件系统的计算设备连接在一起,从而把点对点的单点传输改变成P2P(多点对多点)的传输。它的原理就是利用基于内容的地址来替代基于域名的地址,可以取代传统的HTTP协议,打造一个更加开放、快速、安全的互联网。
图4所示的系统架构可以实现本申请实施例提供的基于区块链的数据处理方法,该方法的实现流程大致包括:
①区块链网络40中的区块链节点获取数据交易订单,数据交易订单包括针对目标计算任务的数据需求。
②该区块链节点从区块链中查找与数据需求相匹配的N个数据供应账户,N是正整数。
③该区块链节点从区块链上获取N个数据供应账户中的M个数据供应账户对数据交易订单的报价,根据M个数据供应账户的报价,从M个数据供应账户中确定待交易账户,M≤N。
④该区块链节点从区块链中获取待交易账户关联的目标数据令牌,目标数据令牌包括分布式文件系统中的目标存储地址。
⑤该区块链节点按照目标存储地址从分布式文件系统43中读取目标交易数据,该区块链节点或部署有数据需求方使用的客户端41的终端可以利用目标交易数据执行目标计算任务。
在集中式数据交易市场(一种封闭式的交易平台)中,数据资源会集中存放在集中式的数据库(例如远端)中,并由集中式数据交易市场中的第三方管理平台进行管理,由于第三方管理平台对数据交易过程的处理并不透明,因此即使第三方管理平台违规使用或出售了数据,一般也难以追究。而本申请采用的方法,可以基于区块链去中心化和防篡改的特性,为数据交易市场的底层架构提供良好的支持。即在数据交易过程中使用的一些相关信息(例如报价、目标数据令牌、数据供应账户等)是直接存储在区块链上的,因此可以直接从区块链上溯源交易相关的信息,保证数据交易过程是公开、透明的,从而提高数据交易的可信度。
另外,在集中式数据交易市场中所有交易都依赖于第三方管理平台,因此集中式数据交易市场容易导致单点故障和单点性能瓶颈,而本申请通过引入区块链机制,可以使数据需求方和数据供应方引入公共的交易市场,直接进行数据交易,规避第三方管理平台的介入,摆脱单点故障和单点性能瓶颈。同时,在集中式数据交易市场中,数据需求方和数据供应方的敏感信息被存储在集中式的数据库中,因此很容易成为攻击者的目标,存在隐私泄露和数据丢失的风险。而本申请是利用数据需求账户和数据供应账户来标识数据需求方和数据供应方,由于数据需求账户和数据供应账户都是区块链账户,而区块链账户相关的账户标识、公钥、私钥都是一串字符,不会透露数据供应方和数据需求方的真实身份信息,因此可以更好地保护数据供应方和数据需求方的身份隐私和敏感信息。
可以理解的是,本申请实施例描述的系统架构示意图是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
下面对本申请实施例提供的基于区块链的数据处理方法的具体实现方式进行详细阐述。
请参阅图5,图5为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图一。该方法应用于区块链节点。该方法包括以下步骤S501-S505:
S501、获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求。
目标计算任务可以是任一计算任务。例如,目标计算任务可以是预测下一阶段的天气。数据需求用于描述在实现目标计算任务时使用的数据资源需要达到的目标。例如,当目标计算任务是预测下一阶段的天气时,数据需求可以为获取湿度、温度、风速。
在一实施例中,数据需求方可以通过数据需求账户所在的终端将数据交易订单写入区块链中,区块链节点从区块链中获取该数据交易订单。或者,数据需求方可以通过数据需求账户所在的终端直接将数据交易订单发送至区块链节点,以使区块链节点获取到该数据交易订单。该区块链节点是区块链网络中的任一节点,可以是距离数据需求方使用的终端最近的节点,或者是区块链网络中与数据需求方使用的终端通信质量最好的节点。
在可行的实施方式中,数据需求方在正式参与数据交易之前,需要在区块链网络中注册数据需求账户,该数据需求账户是在区块链网络中注册的区块链账户。例如,数据需求方可以利用终端向区块链节点发送账户创建请求,由区块链节点响应账户创建请求,并将创建的区块链账户返回给该终端。另外,数据需求方可以在终端中部署用于数据交易的客户端,利用客户端提供的账户管理功能注册一个普通账户,同时该客户端的后台服务器可以接入区块链网络,并在区块链网络中注册一个区块链账户,该普通账户和该区块链账户唯一对应。此时,数据需求账户所在的终端,是指数据需求账户对应的普通账户所在的终端。
在一实施方式中,可以在数据需求方使用的客户端中输出配置界面,数据需求方可以在该配置界面中对目标计算任务和针对目标计算任务的数据需求进行配置,客户端可以获得数据需求方配置的目标计算任务和数据需求,根据配置的目标计算任务和数据需求生成数据交易订单,并发布该数据交易订单。例如,数据需求方使用的终端可以确定在该客户端中登录的普通账户对应的区块链账户(即数据需求账户)或在客户端中登录的数据需求账户,然后将数据交易订单和数据需求账户的账户标识关联写入区块链中,区块链节点再从区块链中获取数据交易订单。或者,数据需求方使用的终端可以直接向区块链节点发送数据交易请求,该数据交易请求中包括该数据交易订单。区块链账户的账户标识可以基于区块链账户的公钥生成,例如对区块链账户的公钥进行单向哈希运算。
S502、从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数。
数据供应账户与数据需求账户一样,都是指在区块链网络中的区块链账户。一实现方式中,数据供应方利用客户端提供的账户管理功能注册普通账户时,还可以公开账户信息。例如传感器设备的类别(如是温度传感器、湿度传感器、风速传感器等)、型号等信息。接着,可以确定区块链网络中该普通账户对应的区块链账户(即数据供应账户),将该账户信息和数据供应账户的账户标识关联写入区块链中。当需要从区块链中查找与数据需求相匹配的数据供应账户时,可以从区块链中获取一个或多个账户信息,再将各个账户信息与数据需求进行匹配。例如,数据需求包括获取温度,账户信息包括温度传感器,则可以确定该账户信息与该数据需求相匹配。进一步地,可以确定与数据需求相匹配的账户信息关联的账户标识,将该账户标识对应的区块链账户作为与数据需求相匹配的数据供应账户。
S503、从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N。
在一实施例中,区块链节点可以将关于数据交易订单的区块链事件发送至与数据需求相匹配的N个数据供应账户所在的终端,N个数据供应账户所在的终端在接收到区块链事件后,相应的数据供应方可以查看区块链事件决定是否参与数据交易,确定要参与数据交易的M个数据供应方可以通过对应的数据供应账户所在的终端将对数据交易订单的报价写入区块链中,区块链节点从区块链中获取M个数据供应账户的报价,以及确定数据拍卖机制,利用M个数据供应账户的报价和数据拍卖机制从M个数据供应账户中确定待交易账户。例如,数据拍卖机制可以是选择最高报价的数据供应账户提供的数据,则确定该M个数据供应账户中最高报价的数据供应账户是待交易账户。
在可行的实施例中,可以将数据交易订单公示在区块链中,其他看到区块链中公示的数据交易订单的数据供应方也可以参与报价。具体地,想要参与报价的数据供应方可以将对数据交易订单的报价和数据相关的描述信息写入区块链中,并与数据交易订单进行关联,从而参与数据拍卖。例如将对数据交易订单的报价、描述信息和数据交易订单标识一起关联写入区块链中。
需要说明的是,数据需求方的资源数据存储在对应的数据需求账户中,数据供应方的资源数据存储在对应的数据供应账户中,当确定待交易账户之后,区块链节点会从数据需求账户中划扣资源数据到待交易账户。其中,划扣的资源数据可以根据数据拍卖机制确定,例如,可以是待交易账户对数据交易订单的报价,或者M个数据供应账户的报价中的第二高的报价。
S504、从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址。
在一实施方式中,注册方可以在区块链中注册用于进行交易的数据(简称为待注册交易数据)时,注册方可以通过注册账户(即区块链账户)所在的终端将待注册交易数据写入分布式文件系统的存储地址中,然后根据待注册交易数据在分布式文件系统中的存储地址生成待注册交易数据的数据令牌,将待注册交易数据的数据令牌和注册账户的账户标识关联写入区块链中。因此待交易账户在区块链中存在关联的目标数据令牌,区块链节点可以根据待交易账户的账户标识从区块链中获取该目标数据令牌,再从该目标数据令牌中获取分布式文件系统中的目标存储地址。
S505、按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
根据目标存储地址从分布式文件系统中读取到的目标交易数据可以是加密数据,也可以是非加密数据。在一实施例中,当目标交易数据是加密数据时,待交易账户所在的终端可以将解密该目标交易数据的密钥写入区块链中,区块链节点从区块链中获取到该目标交易数据的密钥,并对目标交易数据进行解密,得到明文目标交易数据。
在一实施例中,当目标交易数据是非加密数据时,区块链节点在读取到目标交易数据之后,可以确定适用于目标计算任务的智能合约,调用该智能合约对目标交易数据进行处理,得到计算结果,并将该计算结果返回给数据需求账户所在的终端。或者,区块链节点可以直接将目标交易数据发生给数据需求账户所在的终端,由数据需求账户所在的终端根据该目标交易数据执行目标计算任务。
由于区块链上并未存储交易数据,因此区块链上的交易实际上是交易代表交易数据的数据令牌,相当于是一种间接交易。这样可以使最终拍卖的定价反映在目标数据令牌上,可以更好地保护数据资源的隐私,还可以实现更好、更公允的定价。
本申请实施例中,可以利用区块链的去中心化和不可篡改等特性,保证数据交易过程的公开、透明,有利于提高数据交易的可信度;同时可以将待交易数据token化得到的数据令牌,作为待交易数据的价值承载,可以低成本地进行资产交易与转移,实现链上资产的自由流通,打破不同类型资产兑换的限制,提升基于区块链进行数据交易的灵活性;另外由于分布式文件系统是可以让待交易数据分散存储在不同位置,并能根据哈希索引快速获得相关内容的一套系统,因此可以让待交易数据的存储更加安全。
请参阅图6,图6为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图二。该方法应用于区块链节点,该方法包括以下步骤S601-S608:
S601、获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求。
在本申请实施例中,数据交易订单包括目标计算任务和数据需求,该数据需求包括数据类型、数据选择函数、数据价格限制、数据数量限制和单价上限。数据类型可以是文件格式,例如.pdf(Portable Document Format,可携带文档格式)、.csv(Comma-SeparatedValues,逗号分隔值)、.doc(Document,文档)等等。数据选择函数用于选择所需的数据资源,例如数据选择函数的处理逻辑可以是选择数据库表中的第1-10列的数据,或包含有“xx”的语句,等等。数据价格限制是总价上限。数据数量限制包括属性类别和属性类别对应的数量,例如属性类别可以是温度、湿度和风速,且对应的数量都为100个。另外,数据需求中还可以进行时间限制,例如要求获取距离当前时刻1小时内的温度。单价上限是指一个单位数据能接受的资源数据的上限,例如针对一个温度参数,单价上限为1个货币单位。在一实施例中,数据需求方可以在区块链中查找与数据需求属于同一类型的历史交易记录,并参考各个历史交易记录中的成交单价来确定可接受的单价上限。
S602、从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数。
在一实施例中,数据需求方可以利用客户端发送数据交易订单给区块链节点,由区块链节点调用智能合约查找与数据需求相匹配的N个数据供应账户。或者部署有客户端的终端可以是区块链节点,则由客户端调用智能合约发布数据交易订单,该智能合约还可以查找与数据需求相匹配的N个数据供应账户。
一实现方式中,注册方可以将待注册交易数据存储在分布式文件系统的存储地址中,根据待注册交易数据在分布式文件系统中的存储地址和描述信息生成待注册交易数据的数据令牌,通过注册方对应的注册账户所在的终端将待注册交易数据的数据令牌和注册账户(具体是注册账户的账户标识)关联写入区块链中。该注册账户包括数据供应账户,则区块链节点从区块链中查找与数据需求相匹配的N个数据供应账户,包括:将区块链中的各个描述信息与数据需求进行匹配,例如,描述信息包括提供1.1-1.10日的温度,而数据需求包括获取1.8-1.9日的温度,则描述信息与数据需求匹配。可以从区块链中查找到与数据需求相匹配的N个目标描述信息,然后从区块链中查找N个目标描述信息关联的账户标识,根据该N个账户标识对应的注册账户确定N个目标描述信息关联的注册账户,最终将N个目标描述信息关联的注册账户,即N个账户标识对应的注册账户确定为与数据需求相匹配的N个数据供应账户。
S603、向所述N个数据供应账户所在的终端发送关于所述数据交易订单的区块链事件。
在一实施方式中,区块链节点可以将关于数据交易订单的区块链事件发送至N个数据供应账户所在的终端,N个数据供应账户所在的终端在接收到区块链事件后,相应的数据供应方可以查看区块链事件决定是否参与数据交易,例如数据供应方觉得数据交易订单中的单价上限低于预期时,可以选择不报价。确定要参与数据交易的M个数据供应方可以利用对应的数据供应账户所在的终端将对数据交易订单的报价发送至区块链节点。
S604、将在出价时间窗口期内所述M个数据供应账户对所述数据交易订单的报价写入区块链中。
出价时间窗口期可以包括截止时间戳、出块数量和时间间隔中的任一种,出价时间窗口期可以由数据需求方设置,或者由数据交易市场默认设置。数据供应账户所在的终端对数据交易订单的报价需在出价时间窗口期内返回给区块链节点。在一实施方式中,出价时间窗口期由数据需求方设置,若出价窗口期是出块数量,则区块链节点可以向数据需求方使用的终端发送关于出块数量的区块链事件通知,数据需求方使用的终端或数据需求方基于该区块链事件通知确定出块数量已达到停止条件时,就向区块链节点发送停止报价请求,区块链节点响应该停止报价请求,终止接收报价。若出价窗口期是具体时间段,则数据需求方使用的终端可以在本地根据具体时间段设定等待时间,在等待时间到达时,触发区块链节点停止接收报价。若出价窗口期是截止时间戳,则数据需求方使用的终端可以在截止时间戳段到达时,触发区块链节点停止接收报价。在本申请中,可以利用出价时间窗口期保证交易数据的时效性。
S605、当所述出价时间窗口期结束时,从所述区块链上获取所述M个数据供应账户对所述数据交易订单的报价。
在可行的实施例中,M个数据供应账户可以将对数据交易订单的报价和数据交易订单标识(用于唯一标识数据交易订单)关联写入区块链中,当出价时间窗口期结束时,区块链节点可以基于数据交易订单标识,从区块链上获取M个数据供应账户对数据交易订单的报价。
S606、根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N。
在一实施方式中,报价为加密数据,在出价时间窗口期结束后,M个数据供应账户所在的终端可以返回对报价的第一解密密钥,区块链节点接收到M个数据供应账户对报价的第一解密密钥后,可以利用第一解密密钥对M个数据供应账户的报价进行解密,得到M个数据供应账户的明文报价,根据M个数据供应账户的明文报价和M个数据供应账户关联的信用值,从M个数据供应账户中确定待交易账户。
数据拍卖机制1:
可选地,若数据数量限制只包括一种属性类别,则数据拍卖机制可以为:对M个数据供应账户的明文报价从低到高排列,并从M个数据供应账户中选择排在前面的S(正整数,可以人为指定)个数据供应账户,从S个数据供应账户中选择关联的信用值最高的数据供应账户作为待交易账户。同时对数据需求账户划扣的资源数据可以是待交易账户的报价,或者可以是对M个数据供应账户的明文报价从高到低排列之后确定的指定位置的报价,例如选择排在第一的报价(即最低报价),或者选择排在第二的报价(即第二低的报价)。
数据拍卖机制2:
可选地,若数据数量限制包括多种属性类别,可以利用描述信息将M个数据供应账户按照属性类别进行划分。例如,数据供应账户1对应的数据需求包括提供温度数据,则将该数据供应账户1划分到温度类,数据供应账户2对应的数据需求包括提供湿度数据,则将该数据供应账户2划分到湿度类。再针对划分到每一种属性类别的R个数据供应账户,按照上述数据拍卖机制1进行竞拍,确定分别为各种属性类别提供数据的待交易账户。
需说明的是,在数据拍卖机制1中,假设确定出的M个数据供应账户能够提供数据需求所要求的全部数据,因此只需从M个数据供应账户中确定一个待交易账户。在数据拍卖机制2中,假设确定出的S个数据供应账户能够提供对应的属性类别所要求的全部数据,因此,针对每种属性类别确定一个待交易账户。在可行的实施例中,在数据拍卖机制1中,若M个数据供应账户中存在数据供应账户不能提供数据需求所要求的全部数据,则可以降低该数据供应账户的竞拍成功几率。在数据拍卖机制2中,S个数据供应账户中存在数据供应账户不能提供属性类别所要求的全部数据,则可以降低该数据供应账户的竞拍成功几率。另外,也可以由多个数据供应方联合提供数据需求或属性类型所要求的全部数据。
在本实施例中,数据供应账户对数据交易订单的报价是加密数据,可以防止数据供应方协商报价,使数据拍卖过程成为一个密封拍卖,有利于维护数据拍卖的公平性。
在一实施例中,数据需求中的单价上限也为加密数据,当出价时间窗口期结束时,数据需求账户所在的终端可以向区块链节点发送对单价上限的第二解密密钥,区块链节点可以接收数据需求账户对单价上限的第二解密密钥,利用第二解密密钥对单价上限进行解密,得到明文单价上限,然后确定数据定价模型,调用数据定价模型对明文单价上限、M个数据供应账户的明文报价和M个数据供应账户关联的信用值进行处理,以从M个数据供应账户中确定待交易账户。本实施例,通过将单价上限进行加密,可以防止数据供应方联合起来使用数据交易订单中的明文单价上限进行报价。
数据定价模型可以包括以下至少一种:基于博弈论的定价机制和基于拍卖的定价机制。基于博弈论的定价机制,包括:基于非合作博弈的定价模型、基于Stackelberg博弈的定价模型、基于讨价还价博弈的定价模型等。基于拍卖的定价机制,包括:VCG(Vickrey–Clarke–Groves,维克里-克拉克-格罗夫斯机制)拍卖机制、第k价格密封拍卖、双边拍卖机制、反向拍卖机制、组合拍卖机制等。该数据定价模型可以是以智能合约的形式运行在区块链节点上。
在一实施例中,可以在数据定价模型中设置信用下限(可以人为设置),将明文单价上限、M个数据供应账户的明文报价和M个数据供应账户关联的信用值输入数据定价模型,数据定价模型首先排除掉关联的信用值低于信用下限的数据供应账户,然后利用剩下的数据供应账户的明文报价、关联的信用值和明文单价上限确定待交易账户。
在一具体实现方式中,若M个数据供应账户各自拥有的数据都能够满足数据需求所要求的全部数据,则数据定价模型只需确定一个待交易账户。具体可以按照VGG拍卖机制进行竞拍,VCG拍卖机制是激励相容的机制,按自己的真实预期出价是每位竞价者的强占优策略。例如当数据供应账户中存在任一数据供应账户的明文报价高于明文单价上限,则确定该任一数据供应账户为待交易账户,数据需求账户会用第二低的明文报价向该待交易账户购买数据。若数据供应账户中不存在高于明文单价上限的明文报价,则按照VGG拍卖机制会将该数据交易订单进行流拍。因此,在可行的方式中,数据定价模型可以组合多种定价机制,以确保交易能够完成。另外,针对数据交易订单的成交单价也可以由数据定价模型决定,例如,VGG拍卖机制会将第二低的明文报价作为数据需求账户将要扣除的资源数据,而基于讨价还价博弈的定价模型是数据供应方和数据需求方对报价达成一致时,交易才会发生,因此数据需求账户将要扣除的资源数据可以是数据需求账户的明文单价上限。
在一具体实现方式中,若M个数据供应账户拥有的数据不能够满足数据需求所要求的全部数据,例如M个数据供应账户中有的只能提供数据需求包括的温度数据,有的只能提供数据需求包括的湿度数据,则数据定价模型可以确定多个待交易账户。例如,数据定价模型会将M个数据供应账户的明文报价输入式得到平均明文报价/>ui表示第i个数据供应账户的明文报价。若存在大于平均报价/>的最大明文报价umax,则将最大明文报价umax去掉,确保最终平均明文报价/>大于最大明文报价umax。将小于平均明文报价/>的各个明文报价对应的数据供应账户作为候选交易账户。然后根据候选交易账户关联的描述信息确定各个候选交易账户提供的数据所属的属性类别,在每一种属性类别包括的候选交易账户中选择出待交易账户,例如可以从每一种属性类别包括的候选交易账户中选择关联的信用值最高的候选交易账户或报价最低的候选交易账户作为待交易账户。
在另一可行的实现方式中,可以事先根据M个数据供应账户关联的描述信息确定各个数据供应账户提供的数据所属的属性类别,得到每种属性类别包括的多个数据供应账户,然后从每种属性类别包括的多个数据供应账户中选择出能够提供该每种属性类别所要求的数据的数据供应账户作为待交易账户,例如可以从每一种属性类别包括的数据供应账户中选择关联的信用值最高的数据供应账户或报价最低的数据供应账户作为待交易账户。另外,可以将关联的信用值小于信用下限的数据供应账户剔除。
在可行的实施例中,数据需求方可以通过数据需求账户所在的终端调用智能合约提交黑名单,该黑名单中是数据需求方拒绝交易的区块链账户。
在集中式数据交易市场中,通常是由第三方管理平台或数据供应方对数据资源进行质量评价,得到报价,然后数据需求方根据该报价决定要不要购买,该方法导致数据供应方和数据需求方无法建立有效的沟通渠道,数据交易的效率低。而本申请可以使数据需求方和数据供应方加入公共的交易市场,能直接进行交易,效率高。另外,由于认知差异,数据供应方无法准确掌握数据资源的价值,而本申请可以建立统一规范的数据定价机制,有助于形成合理的数据价格范围,可以解决不完全信息条件下的数据资源定价,得到更加公允的定价,提高了数据交易的公平性。该不完全信息条件是指在不知道数据资源的情况下完成数据资源的定价。同时在数据定价机制中引入信用机制(即信用值),可以防止恶意侵占系统资源、作弊等行为。综上所述,本申请可以利用区块链机制建立一个中立、可信、规模化的数据交易平台,可以形成合理的数据价格范围,提高数据交易的可信度。
一实现方式中,区块链节点会对违约账户进行违约处理,违约账户包括未对报价返回第一解密密钥的数据供应账户和未对单价上限返回第二解密密钥的数据需求账户中的一种或两种。违约处理包括降低违约账户关联的信用值,禁止违约账户进行数据交易和扣除违约账户的资源数据中的一种或多种。例如,首先可以降低违约账户关联的信用值,当违约账户关联的信用值过低时,禁止违约账户参加数据交易。又例如,数据需求账户在进行数据交易时,可以事先商定一定的资源数据,当数据需求账户违约时,可以扣除数据需求账户的资源数据并转移给M个数据供应账户。在可行的实施例中,完成数据交易的数据需求账户和待交易账户关联的信用值可以提升。
通过本实施例,数据供应方和数据需求方可以在交易过程中,终止交易,虽然会导致信用值降低,但可以确保交易的随时终止。同时,开始定价之后,或者说开始确定待交易账户时,基于区块链的特性,数据供应方和数据需求方无法阻止交易的继续进行,确保了数据交易的不可抵赖性,保证了数据交易的公平性。
S607、从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址。
在一实施例中,目标数据令牌中除了包括分布式文件系统中的目标存储地址,还可以包括目标交易数据的注册时间。这样当数据需求账户对数据资源具有时间限制时,区块链节点可以确定各个数据令牌包括的注册时间是否在限制的时间内,当注册时间在限制的时间内时,数据供应账户才可以参与针对数据交易订单的数据交易。
S608、按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
在一实施例中,区块链节点根据目标存储地址可以从分布式文件系统中读取目标交易数据,该目标交易数据可以是加密数据,也可以是非加密数据。当目标交易数据是加密数据时,待交易账户可以事先将解密该目标交易数据的密钥写入区块链中,区块链节点可以从区块链中获取目标交易数据的密钥对目标交易数据进行解密,得到明文目标交易数据。另外,目标数据令牌还可以包括目标交易数据的哈希结果或签名结果,区块链节点在得到明文目标交易数据后,可以对明文目标交易数据进行哈希或签名计算,然后将得到的哈希结果或签名结果与目标数据令牌中的哈希结果或签名结果进行对比,若得到的哈希结果或签名结果与目标数据令牌中的哈希结果或签名结果一致,则可以确定目标交易数据未被篡改。
在一实施例中,区块链节点利用目标交易数据对目标计算任务进行安全计算,得到计算结果,包括:①若该安全计算是基于同态加密的计算,则该目标交易数据是基于同态加密算法得到的加密数据。此时,有两种情况,一种是在分布式文件系统中存储的目标交易数据就是基于同态加密算法得到的加密数据,还有一种是区块链节点得到明文目标交易数据后,再利用同态加密算法对目标交易数据进行加密。同态加密算法是利用一个加密函数对目标交易数据进行加密,此时,对得到的加密后的目标交易数据进行计算得到的计算结果在解密后,与对目标交易数据进行计算得到的计算结果是一致的。具体地,区块链节点可以确定适用于目标计算任务的智能合约,调用该智能合约对目标交易数据进行处理,得到计算结果。基于同态加密的计算可以防止攻击者在计算过程中获取到明文的交易数据,可以保证交易数据的安全性。②若该安全计算是可信计算,则区块链节点需要提供基于硬件的安全计算平台,该安全计算平台是以CPU为信任根,建立从信任根到应用程序的信用链,即从信任根、硬件平台、操作系统、再到应用程序,逐级度量、逐级信任,把这种信任扩展到整个计算机系统,从而确保整个计算机系统的可信。安全计算平台可以提供固有的签注密钥,区块链节点利用签注密钥中的公钥对目标交易数据和适用于目标计算任务的智能合约进行加密,得到加密数据,并将加密数据传入安全计算平台提供的可信计算域,安全计算平台利用签注密钥中的私钥对加密数据进行解密,得到目标交易数据和智能合约,在可行计算域中利用智能合约对目标交易数据进行计算,得到计算结果。由于可信计算域内的数据、程序逻辑在没有主动输出的情况下无法被外部环境窥探,因此可以防止攻击者获取交易数据。
在一实施例中,区块链节点还可以将目标交易数据发送至数据需求账户所在的终端,数据需求账户所在的终端利用目标交易数据对目标计算任务进行安全计算,得到计算结果。①若该安全计算是基于同态加密的计算,则区块链节点从分布式文件系统中获取到的目标交易数据可以就是基于同态加密算法得到的加密数据,然后将目标交易数据发送至数据需求账户所在的终端,由数据需求账户利用目标交易数据进行同态加密的计算,得到计算结果。或者,区块链节点可以将明文的目标交易数据发送至数据需求账户所在的终端,终端自行对目标交易数据进行加密,并进行同态加密的计算。②若该安全计算是可信计算,则数据需求账户所在的终端需要提供基于硬件的安全计算平台。数据需求账户所在的终端可以接收区块链节点发送的目标交易数据,并基于目标交易数据在可信计算域中进行针对目标计算任务的计算,得到计算结果。
在一实施方式中,在分布式文件系统中的目标交易数据是加密数据,区块链节点可以利用目标交易数据的密钥对目标交易数据进行解密,得到明文目标交易数据。该目标交易数据的密钥可以是由待交易账户所在的终端写入的。再利用数据需求账户的公钥对明文目标交易数据进行加密,得到加密后的明文目标交易数据,将加密后的明文目标交易数据发送至数据需求账户所在的终端,数据需求账户所在的终端利用数据需求账户的私钥对加密后的明文目标交易数据进行解密,得到明文目标交易数据,并基于明文目标交易数据执行目标计算任务,数据需求账户所在的终端在执行目标计算任务时,可以是基于明文目标交易数据直接进行计算,也可以是基于同态加密的计算或可信计算。通过本实施例,可以将加密的目标交易数据发送至数据需求账户所在的终端,解决目标交易数据以明文的方式传输时容易被攻击者盗取的问题。
在一实施例中,区块链节点可以将数据交易订单对应的交易记录写入区块链中,交易记录包括数据需求、成交单价和数据交易订单标识。成交单价是指单位数据的成交价格,当数据需求包括多种属性类别时,多个成交单价可以是针对多种属性类别,可以存在对应的成交单价。当区块链节点获取到请求账户所在的终端发送的与数据需求相匹配的定价请求时,从区块链中获取历史交易记录集合,该历史交易记录集合包括一个或多个历史交易记录,一个或多个历史交易记录包括数据交易订单对应的交易记录。接着,根据每个历史交易记录包括的成交单价确定参考单价上限,并将参考单价上限发送至请求账户所在的终端,例如可以取各个历史交易记录包括的成交单价的中值、或平均值、或最低值、或最高值作为参考单价上限,并将参考单价上限发送至请求账户所在的终端,后续请求账户可以依据参考单价上限确定待提交的数据交易订单中数据需求包括的单价上限。或者,区块链节点将历史交易记录集合发送至请求账户所在的终端,请求账户所在的终端根据历史交易记录集合中每个历史交易记录的成交单价确定参考单价上限,后续请求账户所在的终端或者请求方可以依据参考单价上限确定待提交的数据交易订单中数据需求包括的单价上限。
在可行的实施例中,可以将计算结果和数据交易订单标识关联写入区块链,通过数据交易订单标识,可以从区块链中获取数据交易订单标识对应的数据交易订单、数据供应账户对数据交易订单的报价、计算结果。因此利用区块链可以存储数据交易过程相关的一些基础信息,可以便于后续溯源。另外,可以对上传到区块链上的数据进行版权认证,即对上传到区块链上的数据打上一个永久数字证书,用于证明该数据的生产者,后续该数据产生的所有价值收益都归生产者,实现了数据的确权和溯源。
联盟链则是介于公有链以及私有链之间的区块链,可实现“部分去中心化”,联盟链中各个节点通常有与之相对应的实体机构或者组织,参与者通过授权加入网络并组成利益相关联盟,共同维护区块链运行。可理解的,由于联盟链(一种区块链)中的节点数量相对较少,共识过程的处理较快,因此联盟链每秒交易数可以到达2万以上,可以满足数据需求方和数据供应方对数据操作的需求,有效提高数据交易的效率。
在本申请实施例中,在区块链上将报价和单价上限进行加密存储,可以保证能够更好、更公允地进行定价,另外,区块链上只存储数据交易订单、数据令牌、报价等基础信息,使攻击者无法从交易的执行中获取交易数据,可以保证交易数据的安全;同时区块链上不存储交易数据,而是存储数据令牌,可以将数据令牌作为交易数据的价值中介,利用数据令牌实现数据的间接交易,从而可以解决不完全信息条件下的数据资产定价,并将未知风险通过公开的市场交易进行转移,获取更公允地进行定价,可以提升数据交易的可信度。
请参阅图7,图7为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图三。该方法应用于数据供应账户所在的终端,该方法包括以下步骤S701-S702:
S701、当获取到关于数据交易订单的区块链事件时,确定对所述数据交易订单的目标报价,所述区块链事件是区块链节点从区块链中查找到与所述数据交易订单包括的数据需求相匹配的数据供应账户后发送的。
在一实施例中,当区块链节点从区块链中查找到与数据交易订单包括的数据需求相匹配的数据供应账户后,可以将关于数据交易订单的区块链事件发送至数据供应账户所在的终端。详细实现过程,可以参见步骤S601-S603。
S702、将对所述数据交易订单的目标报价写入所述区块链,以使所述区块链节点根据所述目标报价确定待交易账户,以及将所述区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,由所述数据需求账户所在的终端按照所述目标数据令牌包括的分布式文件系统中的目标存储地址从所述分布式文件系统中读取目标交易数据;其中,所述目标数据令牌是由所述待交易账户所在的终端将所述目标交易数据存储至所述分布式文件系统中的目标存储地址后,基于所述目标存储地址生成并写入区块链的。
在一实施例中,数据供应方可以确定对数据交易订单的目标报价,并通过数据供应账户所在的终端调用智能合约将目标报价写入区块链中。区块链节点可以从区块链中获取一个或多个数据供应账户返回的目标报价,根据一个或多个数据供应账户的目标报价确定待交易账户,并将区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,数据需求账户所在的终端可以按照目标数据令牌包括的分布式文件系统中的目标存储地址从分布式文件系统中读取目标交易数据。若目标交易数据是加密数据,则待交易账户可以将目标交易数据的密钥写入区块链中,区块链节点从区块链中获取目标交易数据的密钥,并利用数据需求账户的公钥对目标交易数据的密钥进行加密后发送至数据需求账户,数据需求账户所在的终端再利用数据需求账户的私钥进行解密得到目标交易数据的密钥,进一步利用目标交易数据的密钥对目标交易数据的密钥进行解密,得到明文的目标交易数据。
在一实施例中,目标报价为加密数据,在数据交易订单的出价时间窗口期结束后,数据供应账户所在的终端可以向区块链节点发送对目标报价的解密密钥,区块链节点根据解密密钥对目标报价进行解密,得到目标报价对应的明文报价,以及根据明文报价确定待交易账户。详细实现过程请参见S606,本实施例不再赘述。
在本申请实施例中,数据供应账户所在的终端可以通过区块链节点发送的关于数据交易订单的区块链事件参与数据交易,可以直接将数据供应账户引入公共市场,从而通过市场机制得到更好、更公允的定价;同时,基于区块链的去中心化和不可篡改等特性,可以保证数据交易过程的公开、透明,有利于提高数据交易的可信度。
请参阅图8,图8为本申请实施例提供的一种基于区块链的数据处理方法的流程示意图四。该方法包括以下步骤S801-S810:
S801、数据供应方在区块链网络中注册数据供应账户,数据需求方在区块链网络中注册数据需求账户。数据供应方或数据需求方可以利用终端向区块链网络中的区块链节点发送账户创建请求,以使区块链节点响应账户创建请求,为数据供应方或数据需求方创建区块链账户,并返回给终端。
S802、数据供应方在区块链网络中注册交易数据。数据供应方可以是通过数据供应账户所在的终端调用智能合约将交易数据的数据令牌写入区块链中。或将交易数据的数据令牌发送至区块链节点,由区块链节点写入区块链中。
S803、数据需求方发布数据交易订单到区块链网络中。数据需求方可以通过数据需求账户所在的终端调用智能合约将数据交易订单写入区块链中,区块链节点从区块链上获取数据交易订单;或者通过数据需求账户所在的终端将数据交易订单发送至区块链节点,区块链节点还可以将数据交易订单写入区块链中。
S804、区块链节点可以确定与数据交易订单匹配的数据供应账户。区块链节点在确定与数据交易订单匹配的数据供应账户之后,可以向数据供应账户所在的终端发送关于数据交易订单的区块链事件,对应的数据供应方可以决定是否参与数据交易订单的拍卖,参与数据交易订单的拍卖的数据供应方可以确定对数据交易订单的报价。
S805、数据供应方将对数据交易订单的报价写入区块链。数据供应方可以通过数据供应账户所在的终端调用智能合约将数据交易订单的报价写入区块链。
S806、数据需求方向区块链节点发起停止报价请求。数据需求账户所在的终端在出价时间窗口期结束时向区块链节点发送停止报价请求。
S807、区块链节点响应停止报价请求,终止接收报价。
S808、数据供应方发送对报价的解密密钥给区块链节点。数据供应方可以通过数据供应账户所在的终端调用智能合约将对报价的解密密钥发送至区块链节点。
S809、区块链节点利用解密密钥对报价进行解密,得到明文报价,根据明文报价运行数据定价机制,确定待交易账户。
S810、区块链节点基于待交易账户的目标数据令牌,获取目标交易数据,根据目标交易数据执行目标计算任务。区块链节点可以利用安全计算的方式对目标交易数据执行目标计算任务。在可行的实施例中,区块链节点还可以将目标交易数据发送至数据需求账户所在的终端。
通过本申请实施例,可以基于区块链的去中心化和不可篡改等特性,保证数据交易过程的公开、透明,有利于提高数据交易的可信度;同时可以使数据需求方和数据供应方能够直接加入公共的交易市场,规避第三方管理平台的介入,提高了数据交易的公平性、可靠性和效率。
请参阅图9,图9为本申请实施例提供的一种基于数据处理系统的架构示意图二。该数据处理系统包括数据供应方使用的终端、数据需求方使用的终端、分布式文件系统和智能合约。数据供应方使用的终端和数据需求方使用的终端为区块链网络中的节点。
在一实施例中,数据供应方可以通过终端调用智能合约将待交易数据的数据令牌(还可以包括描述信息)写入区块链中。数据需求方可以利用终端调用智能合约发布数据交易订单,该调用的智能合约可以去区块链上匹配符合数据交易订单中的数据需求的数据供应方,例如,根据区块链上的描述信息进行匹配,并向该数据供应方使用的终端发送关于数据交易订单的区块链事件,数据供应方可以利用终端调用智能合约将对数据交易订单的报价写入区块链中。当出价时间窗口期时,数据需求方可以触发智能合约启动定价机制,智能合约从区块链中获取各个数据供应方的报价,根据各个数据供应方的报价确定待交易对象。其中,若报价为加密数据,数据供应方还需返回解密密钥。接着,智能合约可以从数据需求方的区块链账户中划扣资源数据给待交易对象的区块链账户,并从待交易对象的数据令牌中获取存储地址,可以将存储地址发送到数据需求方使用的终端上,由数据需求方使用的终端根据该存储地址从分布式文件系统中获取目标交易数据。数据需求方还可以利用终端调用智能合约将订单相关信息(例如成交价格、数据需求等)存储在分布式文件系统中。
在本申请实施例中,数据供应方使用的终端和数据需求方使用的终端可以成为区块链网络中的节点,自行进行数据交易的处理,可以提高数据交易过程的效率。
可以理解的是,在本申请的具体实施方式中,涉及到交易数据等相关数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方法,相应地,下面提供了本申请实施例的装置。请参见图10,图10是本申请实施例提供的一种基于区块链的数据处理装置的结构示意图,在一实施例中,该数据处理装置100对应于区块链节点,该数据处理装置100可以包括:
获取单元1001,用于获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求;
处理单元1002,用于从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数;
所述获取单元1001,还用于从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N;
所述获取单元1001,还用于从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址;
所述处理单元1002,还用于按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
在一实施例中,所述处理单元1002具体用于:向所述N个数据供应账户所在的终端发送关于所述数据交易订单的区块链事件;
所述获取单元1001具体用于:获取在出价时间窗口期内所述M个数据供应账户对所述数据交易订单的报价;
所述处理单元1002具体用于:将获取到的所述M个数据供应账户的报价与数据交易订单标识关联写入所述区块链中;
所述获取单元1001具体用于:当所述出价时间窗口期结束时,基于所述数据交易订单标识,从所述区块链上获取所述M个数据供应账户对所述数据交易订单的报价。
在一实施例中,所述报价为加密数据,所述获取单元1001具体用于:在所述出价时间窗口期结束后,获取所述M个数据供应账户对所述报价的第一解密密钥;
所述处理单元1002具体用于:利用所述第一解密密钥对所述M个数据供应账户的报价进行解密,得到所述M个数据供应账户的明文报价;根据所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值,从所述M个数据供应账户中确定待交易账户。
在一实施例中,所述数据需求包括单价上限,所述获取单元1001具体用于:获取数据需求账户对所述单价上限的第二解密密钥;
所述处理单元1002具体用于:利用所述第二解密密钥对所述单价上限进行解密,得到明文单价上限;确定数据定价模型,调用所述数据定价模型对所述明文单价上限、所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值进行处理,以从所述M个数据供应账户中确定待交易账户。
在一实施例中,所述处理单元1002具体用于:对违约账户进行违约处理,所述违约账户包括未对报价返回第一解密密钥的数据供应账户和未对单价上限返回第二解密密钥的数据需求账户中的一种或两种;所述违约处理包括降低所述违约账户关联的信用值,禁止所述违约账户进行数据交易和扣除所述违约账户的资源数据中的一种或多种。
在一实施例中,所述处理单元1002具体用于:利用所述目标交易数据对所述目标计算任务进行安全计算,得到计算结果,所述安全计算包括基于同态加密的计算和可信计算中的任一种;或者,将所述目标交易数据发送至数据需求账户所在的终端,以使所述终端利用所述目标交易数据对所述目标计算任务进行安全计算,得到计算结果;或者,若所述目标交易数据是加密数据,则利用所述目标交易数据的密钥对所述目标交易数据进行解密,得到明文目标交易数据,利用所述数据需求账户的公钥对所述明文目标交易数据进行加密,得到加密后的明文目标交易数据,将所述加密后的明文目标交易数据发送至所述数据需求账户所在的终端,以使所述终端利用所述数据需求账户的私钥对所述加密后的明文目标交易数据进行解密,得到所述明文目标交易数据,并基于所述明文目标交易数据执行所述目标计算任务。
在一实施例中,所述处理单元1002具体用于:将待注册交易数据的数据令牌和注册账户关联写入所述区块链中,所述数据令牌包括所述待注册交易数据在所述分布式文件系统中的存储地址和描述信息,所述注册账户包括数据供应账户。
在一实施例中,所述处理单元1002具体用于:从所述区块链中查找与所述数据需求相匹配的N个目标描述信息;从所述区块链中查找所述N个目标描述信息关联的注册账户;将所述N个目标描述信息关联的注册账户确定为与所述数据需求相匹配的N个数据供应账户。
在一实施例中,所述处理单元1002具体用于:将所述数据交易订单对应的交易记录写入所述区块链中,所述交易记录包括所述数据需求、成交单价和数据交易订单标识;当获取到与所述数据需求相匹配的定价请求时,从所述区块链中获取历史交易记录集合,所述历史交易记录集合包括一个或多个历史交易记录,所述一个或多个历史交易记录包括所述数据交易订单对应的交易记录;根据每个历史交易记录包括的成交单价确定参考单价上限,并将所述参考单价上限发送至请求账户所在的终端;或者,将所述历史交易记录集合发送至请求账户所在的终端,以使所述终端根据所述历史交易记录集合中每个历史交易记录的成交单价确定参考单价上限。
在一实施例中,该数据处理装置100对应于数据供应账户所在的终端,该数据处理装置100可以包括:
处理单元1002,用于当获取单元1001获取到关于数据交易订单的区块链事件时,确定对所述数据交易订单的目标报价,所述区块链事件是区块链节点从区块链中查找到与所述数据交易订单包括的数据需求相匹配的数据供应账户后发送的;
所述处理单元1002,还用于将对所述数据交易订单的目标报价写入所述区块链,以使所述区块链节点根据所述目标报价确定待交易账户,以及将所述区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,由所述数据需求账户所在的终端按照所述目标数据令牌包括的分布式文件系统中的目标存储地址从所述分布式文件系统中读取目标交易数据;其中,所述目标数据令牌是由所述待交易账户所在的终端将所述目标交易数据存储至所述分布式文件系统中的目标存储地址后,基于所述目标存储地址生成并写入区块链的。
在一实施例中,所述目标报价为加密数据,所述处理单元1002具体用于:在所述数据交易订单的出价时间窗口期结束后,向所述区块链节点发送对所述目标报价的解密密钥,以使所述区块链节点根据所述解密密钥对所述目标报价进行解密,得到所述目标报价对应的明文报价,以及根据所述明文报价确定待交易账户。
可以理解的是,本申请实施例所描述的数据处理装置的各功能单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例中,可以利用区块链的去中心化和不可篡改等特性,保证数据交易过程的公开、透明,有利于提高数据交易的可信度;同时可以将待交易数据token化得到的数据令牌,作为待交易数据的价值承载,可以低成本地进行资产交易与转移,实现链上资产的自由流通,打破不同类型资产兑换的限制,提升基于区块链进行数据交易的灵活性;另外由于分布式文件系统是可以让待交易数据分散存储在不同位置,并能根据哈希索引快速获得相关内容的一套系统,因此可以让待交易数据的存储更加安全。
如图11所示,图11是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备110内部结构如图11所示,包括:一个或多个处理器1101、存储器1102、通信接口1103。上述处理器1101、存储器1102和通信接口1103可通过总线1104或其他方式连接,本申请实施例以通过总线1104连接为例。
其中,处理器1101(或称CPU(Central Processing Unit,中央处理器))是计算机设备110的计算核心以及控制核心,其可以解析计算机设备110内的各类指令以及处理计算机设备110的各类数据,例如:CPU可以用于解析用户向计算机设备110所发送的开关机指令,并控制计算机设备110进行开关机操作;再如:CPU可以在计算机设备110内部结构之间传输各类交互数据,等等。通信接口1103可选的可以包括标准的有线接口、无线接口(如Wi-Fi、移动通信接口等),受处理器1101的控制用于收发数据。存储器1102(Memory)是计算机设备110中的记忆设备,用于存放计算机程序和数据。可以理解的是,此处的存储器1102既可以包括计算机设备110的内置存储器,当然也可以包括计算机设备110所支持的扩展存储器。存储器1102提供存储空间,该存储空间存储了计算机设备110的操作系统,可包括但不限于:Windows系统、Linux系统、Android系统、iOS系统,等等,本申请对此并不作限定。
在一实施例中,该计算机设备对应于区块链节点,处理器1101通过运行存储器1102中存储的计算机程序,执行如下操作:
获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求;
从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数;
从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N;
从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址;
按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
在一实施例中,所述处理器1101具体用于:向所述N个数据供应账户所在的终端发送关于所述数据交易订单的区块链事件;获取在出价时间窗口期内所述M个数据供应账户对所述数据交易订单的报价;将获取到的所述M个数据供应账户的报价与数据交易订单标识关联写入所述区块链中;当所述出价时间窗口期结束时,基于所述数据交易订单标识,从所述区块链上获取所述M个数据供应账户对所述数据交易订单的报价。
在一实施例中,所述报价为加密数据,所述处理器1101具体用于:在所述出价时间窗口期结束后,获取所述M个数据供应账户对所述报价的第一解密密钥;利用所述第一解密密钥对所述M个数据供应账户的报价进行解密,得到所述M个数据供应账户的明文报价;根据所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值,从所述M个数据供应账户中确定待交易账户。
在一实施例中,所述数据需求包括单价上限,所述处理器1101具体用于:获取数据需求账户对所述单价上限的第二解密密钥;利用所述第二解密密钥对所述单价上限进行解密,得到明文单价上限;确定数据定价模型,调用所述数据定价模型对所述明文单价上限、所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值进行处理,以从所述M个数据供应账户中确定待交易账户。
在一实施例中,所述处理器1101具体用于:对违约账户进行违约处理,所述违约账户包括未对报价返回第一解密密钥的数据供应账户和未对单价上限返回第二解密密钥的数据需求账户中的一种或两种;所述违约处理包括降低所述违约账户关联的信用值,禁止所述违约账户进行数据交易和扣除所述违约账户的资源数据中的一种或多种。
在一实施例中,所述处理器1101具体用于:利用所述目标交易数据对所述目标计算任务进行安全计算,得到计算结果,所述安全计算包括基于同态加密的计算和可信计算中的任一种;或者,将所述目标交易数据发送至数据需求账户所在的终端,以使所述终端利用所述目标交易数据对所述目标计算任务进行安全计算,得到计算结果;或者,若所述目标交易数据是加密数据,则利用所述目标交易数据的密钥对所述目标交易数据进行解密,得到明文目标交易数据,利用所述数据需求账户的公钥对所述明文目标交易数据进行加密,得到加密后的明文目标交易数据,将所述加密后的明文目标交易数据发送至所述数据需求账户所在的终端,以使所述终端利用所述数据需求账户的私钥对所述加密后的明文目标交易数据进行解密,得到所述明文目标交易数据,并基于所述明文目标交易数据执行所述目标计算任务。
在一实施例中,所述处理器1101具体用于:将待注册交易数据的数据令牌和注册账户关联写入所述区块链中,所述数据令牌包括所述待注册交易数据在所述分布式文件系统中的存储地址和描述信息,所述注册账户包括数据供应账户。
在一实施例中,所述处理器1101具体用于:从所述区块链中查找与所述数据需求相匹配的N个目标描述信息;从所述区块链中查找所述N个目标描述信息关联的注册账户;将所述N个目标描述信息关联的注册账户确定为与所述数据需求相匹配的N个数据供应账户。
在一实施例中,所述处理器1101具体用于:将所述数据交易订单对应的交易记录写入所述区块链中,所述交易记录包括所述数据需求、成交单价和数据交易订单标识;当获取到与所述数据需求相匹配的定价请求时,从所述区块链中获取历史交易记录集合,所述历史交易记录集合包括一个或多个历史交易记录,所述一个或多个历史交易记录包括所述数据交易订单对应的交易记录;根据每个历史交易记录包括的成交单价确定参考单价上限,并将所述参考单价上限发送至请求账户所在的终端;或者,将所述历史交易记录集合发送至请求账户所在的终端,以使所述终端根据所述历史交易记录集合中每个历史交易记录的成交单价确定参考单价上限。
在一实施例中,该计算机设备对应于数据供应账户所在的终端,处理器1101通过运行存储器1102中存储的计算机程序,执行如下操作:
当获取到关于数据交易订单的区块链事件时,确定对所述数据交易订单的目标报价,所述区块链事件是区块链节点从区块链中查找到与所述数据交易订单包括的数据需求相匹配的数据供应账户后发送的;
将对所述数据交易订单的目标报价写入所述区块链,以使所述区块链节点根据所述目标报价确定待交易账户,以及将所述区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,由所述数据需求账户所在的终端按照所述目标数据令牌包括的分布式文件系统中的目标存储地址从所述分布式文件系统中读取目标交易数据;其中,所述目标数据令牌是由所述待交易账户所在的终端将所述目标交易数据存储至所述分布式文件系统中的目标存储地址后,基于所述目标存储地址生成并写入区块链的。
在一实施例中,所述目标报价为加密数据,所述处理器1101具体用于:在所述数据交易订单的出价时间窗口期结束后,向所述区块链节点发送对所述目标报价的解密密钥,以使所述区块链节点根据所述解密密钥对所述目标报价进行解密,得到所述目标报价对应的明文报价,以及根据所述明文报价确定待交易账户。
具体实现中,本申请实施例中所描述的处理器1101、存储器1102及通信接口1103可执行本申请实施例提供的一种基于区块链的数据处理方法中所描述的实现方式,也可执行本申请实施例提供的一种基于区块链的数据处理装置中所描述的实现方式,在此不再赘述。
本申请实施例中,区块链节点获取数据交易订单,从区块链中查找与数据交易订单中的数据需求相匹配的N个数据供应账户,从区块链上获取N个数据供应账户中的M个数据供应账户对数据交易订单的报价,根据M个数据供应账户的报价,从M个数据供应账户中确定待交易账户,从区块链中获取待交易账户关联的目标数据令牌,按照目标数据令牌中的目标存储地址从分布式文件系统中读取目标交易数据,目标交易数据用于执行所述目标计算任务;可以保证数据交易过程的公开、透明,有利于提高数据交易的可信度。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机设备上运行时,使得计算机设备执行上述任一可能实现方式的基于区块链的数据处理方法。其具体实现方式可参考前文描述,此处不再赘述。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现本申请实施例提供的基于区块链的数据处理方法的步骤。其具体实现方式可参考前文描述,此处不再赘述。
本申请实施例还提供了一种计算机程序,所述计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行本申请实施例提供的基于区块链的数据处理方法。其具体实现方式可参考前文描述,此处不再赘述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上所揭露的仅为本申请部分实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (14)
1.一种基于区块链的数据处理方法,其特征在于,所述方法包括:
获取数据交易订单,所述数据交易订单包括针对目标计算任务的数据需求;
从区块链中查找与所述数据需求相匹配的N个数据供应账户,N是正整数;
从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,M≤N;
从所述区块链中获取所述待交易账户关联的目标数据令牌,所述目标数据令牌包括分布式文件系统中的目标存储地址;
按照所述目标存储地址从所述分布式文件系统中读取目标交易数据,所述目标交易数据用于执行所述目标计算任务。
2.根据权利要求1所述的方法,其特征在于,所述从所述区块链上获取所述N个数据供应账户中的M个数据供应账户对所述数据交易订单的报价,包括:
向所述N个数据供应账户所在的终端发送关于所述数据交易订单的区块链事件;
获取在出价时间窗口期内所述M个数据供应账户对所述数据交易订单的报价;
将获取到的所述M个数据供应账户的报价与数据交易订单标识关联写入所述区块链中;
当所述出价时间窗口期结束时,基于所述数据交易订单标识,从所述区块链上获取所述M个数据供应账户对所述数据交易订单的报价。
3.根据权利要求2所述的方法,其特征在于,所述报价为加密数据,所述根据所述M个数据供应账户的报价,从所述M个数据供应账户中确定待交易账户,包括:
在所述出价时间窗口期结束后,获取所述M个数据供应账户对所述报价的第一解密密钥;
利用所述第一解密密钥对所述M个数据供应账户的报价进行解密,得到所述M个数据供应账户的明文报价;
根据所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值,从所述M个数据供应账户中确定待交易账户。
4.根据权利要求3所述的方法,其特征在于,所述数据需求包括单价上限,且所述单价上限为加密数据,所述根据所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值,从所述M个数据供应账户中确定待交易账户,包括:
获取数据需求账户对所述单价上限的第二解密密钥;
利用所述第二解密密钥对所述单价上限进行解密,得到明文单价上限;
确定数据定价模型,调用所述数据定价模型对所述明文单价上限、所述M个数据供应账户的明文报价和所述M个数据供应账户关联的信用值进行处理,以从所述M个数据供应账户中确定待交易账户。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
对违约账户进行违约处理,所述违约账户包括未对报价返回第一解密密钥的数据供应账户和未对单价上限返回第二解密密钥的数据需求账户中的一种或两种;所述违约处理包括降低所述违约账户关联的信用值,禁止所述违约账户进行数据交易和扣除所述违约账户的资源数据中的一种或多种。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
利用所述目标交易数据对所述目标计算任务进行安全计算,得到计算结果,所述安全计算包括基于同态加密的计算和可信计算中的任一种;或者,
将所述目标交易数据发送至数据需求账户所在的终端,以使所述终端利用所述目标交易数据对所述目标计算任务进行安全计算,得到计算结果;或者,
若所述目标交易数据是加密数据,则利用所述目标交易数据的密钥对所述目标交易数据进行解密,得到明文目标交易数据,利用所述数据需求账户的公钥对所述明文目标交易数据进行加密,得到加密后的明文目标交易数据,将所述加密后的明文目标交易数据发送至所述数据需求账户所在的终端,以使所述终端利用所述数据需求账户的私钥对所述加密后的明文目标交易数据进行解密,得到所述明文目标交易数据,并基于所述明文目标交易数据执行所述目标计算任务。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将待注册交易数据的数据令牌和注册账户关联写入所述区块链中,所述数据令牌包括所述待注册交易数据在所述分布式文件系统中的存储地址和描述信息,所述注册账户包括数据供应账户;
所述从区块链中查找与所述数据需求相匹配的N个数据供应账户,包括:
从所述区块链中查找与所述数据需求相匹配的N个目标描述信息;
从所述区块链中查找所述N个目标描述信息关联的注册账户;
将所述N个目标描述信息关联的注册账户确定为与所述数据需求相匹配的N个数据供应账户。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述数据交易订单对应的交易记录写入所述区块链中,所述交易记录包括所述数据需求、成交单价和数据交易订单标识;
当获取到与所述数据需求相匹配的定价请求时,从所述区块链中获取历史交易记录集合,所述历史交易记录集合包括一个或多个历史交易记录,所述一个或多个历史交易记录包括所述数据交易订单对应的交易记录;
根据每个历史交易记录包括的成交单价确定参考单价上限,并将所述参考单价上限发送至请求账户所在的终端;或者,
将所述历史交易记录集合发送至请求账户所在的终端,以使所述终端根据所述历史交易记录集合中每个历史交易记录的成交单价确定参考单价上限。
9.一种基于区块链的数据处理方法,其特征在于,所述方法包括:
当获取到关于数据交易订单的区块链事件时,确定对所述数据交易订单的目标报价,所述区块链事件是区块链节点从区块链中查找到与所述数据交易订单包括的数据需求相匹配的数据供应账户后发送的;
将对所述数据交易订单的目标报价写入所述区块链,以使所述区块链节点根据所述目标报价确定待交易账户,以及将所述区块链上的待交易账户的目标数据令牌发送至数据需求账户所在的终端,由所述数据需求账户所在的终端按照所述目标数据令牌包括的分布式文件系统中的目标存储地址从所述分布式文件系统中读取目标交易数据;其中,所述目标数据令牌是由所述待交易账户所在的终端将所述目标交易数据存储至所述分布式文件系统中的目标存储地址后,基于所述目标存储地址生成并写入区块链的。
10.根据权利要求9所述的方法,其特征在于,所述目标报价为加密数据,所述方法还包括:
在所述数据交易订单的出价时间窗口期结束后,向所述区块链节点发送对所述目标报价的解密密钥,以使所述区块链节点根据所述解密密钥对所述目标报价进行解密,得到所述目标报价对应的明文报价,以及根据所述明文报价确定待交易账户。
11.一种数据处理装置,其特征在于,包括用于实现如权利要求1-8中任一项所述的基于区块链的数据处理方法的单元,或者,包括用于实现如权利要求9-10中任一项所述的基于区块链的数据处理方法的单元。
12.一种计算机设备,其特征在于,所述计算机设备包括存储器、通信接口以及处理器,所述存储器、所述通信接口和所述处理器相互连接;所述存储器存储有计算机程序,所述处理器调用所述存储器中存储的计算机程序,用于实现如权利要求1-8中任一项所述的基于区块链的数据处理方法,或者用于实现如权利要求9-10中任一项所述的基于区块链的数据处理方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-8中任一项所述的基于区块链的数据处理方法,或者,实现如权利要求9-10中任一项所述的基于区块链的数据处理方法。
14.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现如权利要求1-8中任一项所述的基于区块链的数据处理方法,或者,实现如权利要求9-10中任一项所述的基于区块链的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210315363.9A CN116894727A (zh) | 2022-03-28 | 2022-03-28 | 一种基于区块链的数据处理方法、装置及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210315363.9A CN116894727A (zh) | 2022-03-28 | 2022-03-28 | 一种基于区块链的数据处理方法、装置及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116894727A true CN116894727A (zh) | 2023-10-17 |
Family
ID=88309777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210315363.9A Pending CN116894727A (zh) | 2022-03-28 | 2022-03-28 | 一种基于区块链的数据处理方法、装置及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116894727A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579633A (zh) * | 2024-01-17 | 2024-02-20 | 腾讯科技(深圳)有限公司 | 区块竞选方法、装置、设备及存储介质 |
-
2022
- 2022-03-28 CN CN202210315363.9A patent/CN116894727A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579633A (zh) * | 2024-01-17 | 2024-02-20 | 腾讯科技(深圳)有限公司 | 区块竞选方法、装置、设备及存储介质 |
CN117579633B (zh) * | 2024-01-17 | 2024-04-09 | 腾讯科技(深圳)有限公司 | 区块竞选方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230291544A1 (en) | Advanced non-fungible token blockchain architecture | |
US10825024B1 (en) | Systems, devices, and methods for DLT-based data management platforms and data products | |
Lu et al. | Zebralancer: Private and anonymous crowdsourcing system atop open blockchain | |
CN110383791B (zh) | 基于区块链的地图应用众包 | |
Hu et al. | A blockchain-based trading system for big data | |
KR102573433B1 (ko) | 블록체인을 이용한 에너지 거래 플랫폼 및 그 방법 | |
Pasdar et al. | Blockchain oracle design patterns | |
US20220374886A1 (en) | Performing transactions using private and public blockchains | |
US20230298001A1 (en) | Non-fungible token (nft) purchase and transfer system | |
US11397919B1 (en) | Electronic agreement data management architecture with blockchain distributed ledger | |
JP2018515833A (ja) | ブロックチェーン取引記録のシステムおよび方法 | |
US11888991B2 (en) | Universally trusted bridges for heterogenous blockchain networks | |
CN111095863A (zh) | 在区块链网络上通信、存储和处理数据的基于区块链的系统和方法 | |
Tzianos et al. | Hermes: An open and transparent marketplace for IoT sensor data over distributed ledgers | |
Sober et al. | A blockchain-based IoT data marketplace | |
JP2023524618A (ja) | スマートコントラクト | |
Yakubu et al. | Blockchain-based secure multi-resource trading model for smart marketplace | |
US20230142659A1 (en) | System and method for registering share of asset of which owner cannot be specified or ownership does not exist | |
Dash et al. | Artificial intelligence models for blockchain-based intelligent networks systems: Concepts, methodologies, tools, and applications | |
Xiong et al. | Data resource protection based on smart contract | |
Ye et al. | An anonymous and fair auction system based on blockchain | |
CN111902838A (zh) | 因特网数据使用控制系统 | |
CN116894727A (zh) | 一种基于区块链的数据处理方法、装置及相关设备 | |
Chenli et al. | Fair 2 Trade: Digital Trading Platform Ensuring Exchange and Distribution Fairness | |
Wang et al. | Enabling Fairness‐Aware and Privacy‐Preserving for Quality Evaluation in Vehicular Crowdsensing: A Decentralized Approach |
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 |