CN116071071B - 基于区块链的数据要素交易方法、系统、存储介质及设备 - Google Patents
基于区块链的数据要素交易方法、系统、存储介质及设备 Download PDFInfo
- Publication number
- CN116071071B CN116071071B CN202310281048.3A CN202310281048A CN116071071B CN 116071071 B CN116071071 B CN 116071071B CN 202310281048 A CN202310281048 A CN 202310281048A CN 116071071 B CN116071071 B CN 116071071B
- Authority
- CN
- China
- Prior art keywords
- data
- target data
- purchaser
- target
- provider
- 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.)
- Active
Links
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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
Abstract
本申请公开了一种基于区块链的数据要素交易方法、系统、存储介质及设备,属于区块链技术领域。方法包括:数据购买方根据区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素;数据购买方向目标数据要素对应的目标数据提供方发送数据样本验证请求;目标数据提供方根据数据样本验证请求获取数据样本,向数据购买方发送数据样本;数据购买方对数据样本进行质检;在质检通过后,数据购买方与目标数据提供方在区块链上交易目标数据要素。本申请通过区块链来计算数据样本的请求流程和数据要素的交易流程,能够保证整个业务流程的安全性,并且,运行业务时产生的数据记录都存储区块链上,能够保证数据记录不可篡改,为审计提供了数据依据。
Description
技术领域
本申请实施例涉及区块链技术领域,特别涉及一种基于区块链的数据要素交易方法、系统、存储介质及设备。
背景技术
在数据要素交易的应用场景中,数据购买方需要在交易之前确认数据要素的质量,但是,验证数据提供方提供的数据要素的有效性是一大难题。
相关技术中,可以结合事后评价、线下沟通等手段来提升数据购买方对数据要素的有效性的认知,但该方法存在较大问题,有效性和效率都不高。比如,事后评价具有时效性,并且不同数据购买方对数据要素的认知并不相同,所以,不同数据购买方对数据要素的评价没有决定性的参考价值;线下沟通的执行效率低,限制大。
发明内容
本申请实施例提供了一种基于区块链的数据要素交易方法、系统、存储介质及设备,用于解决验证数据要素的有效性时,时效性差且效率低的问题。所述技术方案如下:
一方面,提供了一种基于区块链的数据要素交易方法,所述方法包括:
数据购买方根据区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素,所述元数据是数据提供方根据数据要素生成并发布在所述区块链中的;
所述数据购买方向所述目标数据要素对应的目标数据提供方发送数据样本验证请求;
所述目标数据提供方根据所述数据样本验证请求获取数据样本,向所述数据购买方发送所述数据样本;
所述数据购买方对所述数据样本进行质检;
在质检通过后,所述数据购买方与所述目标数据提供方在所述区块链上交易所述目标数据要素。
在一种可能的实现方式中,当所述目标数据要素包括n个数据块,且每个数据块对应于一对私钥和公钥时,其中,n≥2,
所述数据购买方向所述目标数据要素对应的目标数据提供方发送数据样本验证请求,包括:所述数据购买方利用目标数据块对应的公钥对生成的密钥进行加密,将得到的第一密文添加到数据样本验证请求中发送给所述目标数据提供方,所述目标数据块是所述n个数据块中的任意一个;
所述目标数据提供方根据所述数据样本验证请求获取数据样本,向所述数据购买方发送所述数据样本,包括:所述目标数据提供方利用n个私钥分别对所述第一密文进行解密,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给所述数据购买方;
所述数据购买方对所述数据样本进行质检,包括:所述数据购买方利用所述目标数据块对应的公钥对对应编号的数据样本进行解密,对得到的目标数据块进行质检。
在一种可能的实现方式中,所述数据购买方利用目标数据块对应的公钥对生成的密钥进行加密,包括:
所述数据购买方向所述目标数据要素对应的目标数据提供方发送公钥获取请求;
所述目标数据提供方根据所述公钥获取请求获取n个公钥,向所述数据购买方发送所述n个公钥;
所述数据购买方从所述n个数据块中选择第i个数据块作为目标数据块,利用与所述第i个数据块对应的第i个公钥对生成的密钥进行加密,i≤n。
在一种可能的实现方式中,当所述元数据包括第一哈希信息,且所述第一哈希信息根据所述n个公钥生成时,在所述利用与所述第i个数据块对应的第i个公钥对生成的密钥进行加密之前,所述方法还包括:
所述数据购买方根据所述第一哈希信息对所述n个公钥进行验证;
在验证通过后,所述数据购买方触发执行所述利用与所述第i个数据块对应的第i个公钥对生成的密钥进行加密的步骤。
在一种可能的实现方式中,所述数据购买方利用所述目标数据块对应的公钥对对应编号的数据样本进行解密,包括:
所述数据购买方从n个数据样本中选择第i个数据样本,利用所述密钥对所述第i个数据样本进行解密。
在一种可能的实现方式中,当所述目标数据要素包括n个数据块,且所述元数据包括第二哈希信息,所述第二哈希信息是对所述n个数据块生成默克尔树后,根据所述默克尔树的根节点生成时,其中,n≥2,所述方法还包括:
所述数据购买方根据所述目标数据块生成第三哈希信息,向所述目标数据提供方发送所述第三哈希信息;
所述目标数据提供方根据所述第三哈希信息生成默克尔树证明,向所述数据购买方发送所述默克尔树证明;
所述数据购买方根据所述第二哈希信息对所述默克尔树证明进行验证;
在验证通过后,所述数据购买方确定对所述目标数据提供方的身份认证通过。
在一种可能的实现方式中,所述方法还包括:
所述目标数据提供方将所述目标数据要素划分为n个数据块;
所述目标数据提供方针对每个数据块生成一对私钥和公钥,根据n个公钥生成第一哈希信息;
所述目标数据提供方根据所述n个数据块生成默克尔树,根据所述默克尔树的根节点生成第二哈希信息;
所述目标数据提供方获取所述目标数据要素的描述信息;
所述目标数据提供方将所述第一哈希信息、所述第二哈希信息和描述信息组成元数据。
一方面,提供了一种基于区块链的数据要素交易系统,所述数据要素交易系统包括数据购买方、目标数据提供方和区块链;
所述数据购买方,用于根据所述区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素,所述元数据是数据提供方根据数据要素生成并发布在所述区块链中的;
所述数据购买方,还用于向所述目标数据要素对应的所述目标数据提供方发送数据样本验证请求;
所述目标数据提供方,用于根据所述数据样本验证请求获取数据样本,向所述数据购买方发送所述数据样本;
所述数据购买方,还用于对所述数据样本进行质检;
在质检通过后,所述数据购买方与所述目标数据提供方,还用于在所述区块链上交易所述目标数据要素。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的基于区块链的数据要素交易方法。
一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的基于区块链的数据要素交易方法。
本申请实施例提供的技术方案的有益效果至少包括:
通过在区块链中发布数据要素的元数据,可以保证元数据具有不可篡改性和易访问性;通过区块链来计算数据样本的请求流程和数据要素的交易流程,能够保证整个业务流程的安全性,并且,运行业务时产生的数据记录都存储区块链上,能够保证数据记录不可篡改,为审计提供了数据依据。
数据购买方利用一个数据块的公钥对密钥进行加密后得到第一密文,数据提供方利用n个公钥分别对第一密文进行解密后得到n个解密结果,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给数据购买方,由于n个解密结果中只有一个是正确的密钥,其余n-1个解密结果是在明文空间中均匀分布的乱码信息,没有任何信息量,且数据提供方无法从n个解密结果中分辨出正确的密钥,也就无法对对应编号的数据块造假来误导数据购买方,可以保证数据样本的真实性。另外,由于n-1个解密结果是乱码信息,所以,数据提供方使用这些乱码信息对数据块进行加密后,数据购买方使用正确的密钥对这些乱码数据进行解密会得到任何人都无法解读的乱码数据,保证了这些数据块的隐私性。
通过第一哈希信息可以对公钥进行验证,保证了公钥不被第三方拦截和篡改;通过第二哈希信息可以对数据提供方进行身份验证,避免第三方伪装成数据提供方来进行数据要素的交易,能够提高交易的安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的基于区块链的数据要素交易系统的结构框图;
图2是本申请一个实施例提供的基于区块链的数据要素交易方法的方法流程图;
图3是本申请一个实施例提供的基于区块链的数据要素交易方法的方法流程图;
图4是本申请一个实施例提供的默克尔树的示意图;
图5是本申请一个实施例提供的基于区块链的数据要素交易方法的流程示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本实施例中涉及一种基于区块链的数据要素交易系统,该数据要素交易系统中包含区块链110、多个数据购买方120和多个数据提供方130,如图1所示。其中,每个数据购买方120和每个数据提供方130分别与区块链110相连。
数据购买方120是需要购买数据要素的用户所使用的电子设备,数据提供方130是需要出售数据要素的用户所使用的电子设备,本实施例中不限定电子设备的具体类型。
数据购买方120和数据提供方130之间是可以转换的,比如,在一个应用场景下,用户A需要购买数据要素,则可以将用户A的电子设备称为数据购买方120;在另一个应用场景下,用户A需要出售数据要素,则可以将用户A的电子设备称为数据提供方130。
每个数据购买方120和每个数据提供方130都需要在区块链110上注册。
请参考图2,其示出了本申请一个实施例提供的基于区块链的数据要素交易方法的方法流程图,可以应用于包括图1所示的数据要素交易系统中。该基于区块链的数据要素交易方法,可以包括:
步骤201,数据购买方根据区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素,该元数据是数据提供方根据数据要素生成并发布在区块链中的。
每个数据提供方在接入区块链后,需要根据待出售的数据要素生成元数据,并将该元数据发布在区块链上。其中,元数据中至少包括描述信息,该描述信息用于描述数据要素和数据提供方的属性,以便于数据购买方判断是否是自己需要购买的数据要素。
以描述信息为DESC为例,DESC={数据发布者,数据名称,发布日期,描述信息,数据条数}。
数据购买方在接入区块链后,可以查看各个元数据,根据元数据查找到自己需要购买的数据要素,本实施例中将待交易的数据要素称为目标数据要素。
步骤202,数据购买方向目标数据要素对应的目标数据提供方发送数据样本验证请求。
本实施例中将目标数据要素的提供方称为目标数据提供方。
数据购买方可以根据描述信息确定目标数据提供方,并向目标数据提供方发送数据样本验证请求,以获取数据样本。其中,数据样本是从数据要素中随机选出的一段数据要素,能够反映数据要素的质量。
为了保证数据的安全性,数据购买方可以生成密码学信息,并将密码学信息添加到样本数据获取请求中发送给目标数据提供方。
步骤203,目标数据提供方根据数据样本验证请求获取数据样本,向数据购买方发送数据样本。
目标数据提供方先根据数据样本验证请求确定目标数据要素,再从目标数据要素中提取出数据样本,将该数据样本发送给数据购买方。其中,目标数据提供方可以按照数据购买方的指示选择数据样本,或者,也可以根据自身存储的算法选择数据样本,本实施例不对数据样本的选择方式作限定。
为了保证数据的安全性,目标数据提供方可以使用密码学信息对数据样本进行加密,并将得到的密文发送给数据购买方。
步骤204,数据购买方对数据样本进行质检。
数据购买方可以利用密码学信息对接收到的密文进行解密,得到数据样本。然后,数据购买方可以对数据样本进行质检,本实施例不对数据样本的质检方式作限定。
若质检通过,则数据购买方执行步骤205;若质检不通过,则数据购买方放弃对目标数据要素的交易。
步骤205,在质检通过后,数据购买方与目标数据提供方在区块链上交易目标数据要素。
本实施例中,数据购买方和目标数据提供方能够根据目标数据提供方提供的数据样本来判断数据要素的质量,可以极大地帮助交易双方对数据质量达成共识。
综上所述,本申请实施例提供的基于区块链的数据要素交易方法,通过在区块链中发布数据要素的元数据,可以保证元数据具有不可篡改性和易访问性;通过区块链来计算数据样本的请求流程和数据要素的交易流程,能够保证整个业务流程的安全性,并且,运行业务时产生的数据记录都存储区块链上,能够保证数据记录不可篡改,为审计提供了数据依据。
由于发送数据样本无法确保最终交易的数据要素和发送的数据样本是匹配的,数据提供方可能只会挑选数据要素中较为优质的部分作为数据样本,或者,数据提供方可能会针对数据购买方的要求伪造一批数据样本来误导数据购买方。为了解决这一问题,请参考图3,其示出了本申请一个实施例提供的基于区块链的数据要素交易方法的方法流程图,可以应用于包括图1所示的数据要素交易系统中。该基于区块链的数据要素交易方法,可以包括:
步骤301,目标数据提供方将目标数据要素划分为n个数据块;针对每个数据块生成一对私钥和公钥,根据n个公钥生成第一哈希信息;根据n个数据块生成默克尔树,根据默克尔树的根节点生成第二哈希信息;获取目标数据要素的描述信息;将第一哈希信息、第二哈希信息和描述信息组成元数据。
本实施例中将待交易的数据要素称为目标数据要素,将目标数据要素的提供方称为目标数据提供方。
目标数据提供方需要对目标数据要素进行预处理,生成包含预处理结果的元数据。元数据的生成可以包括以下几个步骤:
(1)将目标数据要素划分成n个数据块,n≥2。
具体的,目标数据提供方按照特定数量对数据要素进行分块,块数和每个数据块的数据量由目标数据提供方决定。其中,单个数据块会作为一个独立的数据样本发送给数据购买方,所以,目标数据提供方可以根据自己想要发送给数据购买方的数据样本的数据量作为分块依据。比如,在传统数据要素交易的场景中,提供给数据购买方的数据样本有100条数据库条目数据,那么,目标数据提供方需要照100条的数据量对数据要素进行分割,即每一个数据块包含100条数据。数据块分别表示为{block1,block2,…, blockn}。
(2)针对每个数据块生成一对私钥和公钥,根据n个公钥生成第一哈希信息。
目标数据提供方可以根据数据块的数量n,生成n个不同的公私钥对,记为<pk1,sk1>,<pk2,sk2>,…,<pkn,skn>, pk表示公钥,sk表示私钥。目标数据提供方还可以将n个公钥按照编号从小到大的顺序拼起来进行哈希运算,得到第一哈希信息,记为Hashpk。
(3)根据n个数据块生成默克尔树,根据默克尔树的根节点生成第二哈希信息。
目标数据提供方可以根据所有数据块生成数据要素的默克尔树,即使用n个数据块的哈希数据生成一个相互依赖的树,如图4所示,其根节点哈希标记为HashRoot。其中,默克尔树的底层数据块有任何变化,都会导致最终的默克尔树的根节点发生变化,所以,可以根节点判断数据块是否被篡改。
(4)获取目标数据要素的描述信息。
描述信息用于描述数据要素和数据提供方的属性,以便于数据购买方判断是否是自己需要购买的数据要素。
以描述信息为DESC为例,DESC={数据发布者,数据名称,发布日期,描述信息,数据条数}。
(5)将第一哈希信息、第二哈希信息和描述信息组成元数据。
目标数据提供方可以将第一哈希信息、第二哈希信息和描述信息组装成元数据,并通过区块链的上链接口将元数据发布到区块链中,可以保证元数据具有不可篡改性和易访问性。其中,将元数据发布到区块链中,也就意味着将目标数据要素发布到了数据要素交易市场中。
步骤302,数据购买方根据区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素,该元数据是数据提供方根据数据要素生成并发布在区块链中的。
数据购买方在接入区块链后,可以查看各个元数据,根据元数据查找到自己需要购买的目标数据要素。
步骤303,当目标数据要素包括n个数据块,且每个数据块对应于一对私钥和公钥时,数据购买方利用目标数据块对应的公钥对生成的密钥进行加密,将得到的第一密文添加到数据样本验证请求中发送给目标数据提供方,目标数据块是n个数据块中的任意一个。
数据购买方需要向目标数据提供方发送数据样本验证请求,通过数据样本验证请求从目标数据提供方中获取数据样本,从而根据数据样本验证目标数据要素的质量。
具体的,数据购买方利用目标数据块对应的公钥对生成的密钥进行加密,可以包括以下几个步骤:
(1)数据购买方向目标数据要素对应的目标数据提供方发送公钥获取请求。
(2)目标数据提供方根据公钥获取请求获取n个公钥,向数据购买方发送n个公钥。
目标数据提供方可以先对数据购买方进行身份认证,在认证通过后,可以将n个公钥{pk1,pk2,…,pkn}按照编号从小到大的顺序发送给数据购买方。
(3)数据购买方从n个数据块中选择第i个数据块作为目标数据块,利用与第i个数据块对应的第i个公钥对生成的密钥进行加密,i≤n。
数据购买方可以生成一个随机数,将该随机数作为密钥。
数据购买方可以将n个数据块中的任意一个数据块作为数据样本进行查看,从而确定目标数据要素的质量。假设数据购买方想要查看第i个数据块,则可以从n个公钥中获取第i个公钥,利用第i个公钥对密钥进行加密,得到的第一密文记为Enc=En(pki,Rand),pki表示第i个公钥,Rand表示密钥。
本实施例中,在利用与第i个数据块对应的第i个公钥对生成的密钥进行加密之前,数据购买方还需要根据第一哈希信息对n个公钥进行验证;在验证通过后,数据购买方触发执行利用与第i个数据块对应的第i个公钥对生成的密钥进行加密的步骤;若验证不通过,数据购买方停止交易。这样,通过第一哈希信息可以对公钥进行验证,保证了公钥不被第三方拦截和篡改,提高了交易的安全性。
步骤304,目标数据提供方利用n个私钥分别对第一密文进行解密,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给数据购买方。
目标数据提供方收到第一密文后,利用n个私钥分别对第一密文进行解密,解密过程为De(pkn,Enc),解密后会生成n个解密结果 {k1=De(pk1,Enc), k2=De(pk2,Enc),…,kn=De(pkn,Enc)}。由于只有第i个私钥是正确的私钥,所以,只有第i个私钥的解密结果是真正的密钥Rand,但这一点目标数据提供方并不知晓,能够确保目标数据提供方不知道哪一个解密结果是正确的密钥。
目标数据提供方利用解密得到的n个解密结果作为密码,一对一分别对n个数据块进行加密,此时可以使用其他传统对称加密方法,如AES加密,可以表示为EnAES(kn,blockn),最终得到n个数据块对应的第二密文{EncBlock1,EncBlock2,…,EncBlockn},将这n个第二密文依次发送给数据购买方。
步骤305,数据购买方利用目标数据块对应的公钥对对应编号的数据样本进行解密,对得到的目标数据块进行质检。
具体的,数据购买方利用目标数据块对应的公钥对对应编号的数据样本进行解密,可以包括:数据购买方从n个数据样本中选择第i个数据样本,利用密钥对第i个数据样本进行解密。
由于数据购买方知道自己是选择第i个公钥对密钥加密的,所以,数据需求可以直接抽取第i个第二密文,使用相应的对称加密方法对第二密文进行解密,可以表示为DeAES(Rand, EncBlocki),第i个第二密文解密后的数据块就是数据购买方选定的数据样本的原文。
本实施例中,数据购买方利用一个数据块的公钥对密钥进行加密后得到第一密文,数据提供方利用n个公钥分别对第一密文进行解密后得到n个解密结果,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给数据购买方,由于n个解密结果中只有一个是正确的密钥,其余n-1个解密结果是在明文空间中均匀分布的乱码信息,没有任何信息量,且数据提供方无法从n个解密结果中分辨出正确的密钥,也就无法对对应编号的数据块造假来误导数据购买方,可以保证数据样本的真实性。另外,由于n-1个解密结果是乱码信息,所以,数据提供方使用这些乱码信息对数据块进行加密后,数据购买方使用正确的密钥对这些乱码数据进行解密会得到任何人都无法解读的乱码数据,保证了这些数据块的隐私性。
步骤306,在质检通过后,数据购买方与目标数据提供方在区块链上交易目标数据要素。
本实施例中,数据购买方和目标数据提供方能够根据目标数据提供方提供的数据样本来判断数据要素的质量,可以极大地帮助交易双方对数据质量达成共识。
在与目标数据提供方交易之前,数据购买方还需要对目标数据提供方的身份进行认证,具体的,数据购买方根据目标数据块生成第三哈希信息,向目标数据提供方发送第三哈希信息;目标数据提供方根据第三哈希信息生成默克尔树证明,向数据购买方发送默克尔树证明;数据购买方根据第二哈希信息对默克尔树证明进行验证;在验证通过后,数据购买方确定对目标数据提供方的身份认证通过。这样,通过第二哈希信息可以对数据提供方进行身份验证,避免第三方伪装成数据提供方来进行数据要素的交易,能够提高交易的安全性。
综上所述,本申请实施例提供的基于区块链的数据要素交易方法,通过在区块链中发布数据要素的元数据,可以保证元数据具有不可篡改性和易访问性;通过区块链来计算数据样本的请求流程和数据要素的交易流程,能够保证整个业务流程的安全性,并且,运行业务时产生的数据记录都存储区块链上,能够保证数据记录不可篡改,为审计提供了数据依据。
请参考图5,数据要素交易方法包括以下流程:
(1)数据拥有者(卖方)对数据要素进行处理,包括分块和生成密码学特征,该密码学特征包括第一哈希信息和第二哈希信息。
(2)数据拥有者将数据描述上链,该数据描述即为元数据,包括密码学特征和描述信息。
(3)数据使用者(买方)在链上进行数据查询。
(4)数据使用者生成数据样本验证请求,并将该数据样本验证请求发送给数据拥有者,该数据样本验证请求中包括第一密文。
(5)数据拥有者生成数据样本验证响应,并将该数据样本验证响应发送给数据使用者,该数据样本验证响应中包括n个第二密文。
(6)在根据n个第二密文对数据样本的验证通过后,数据使用者启动后续链上数据交易流程。
请参考图1,其示出了本申请一个实施例提供的基于区块链的数据要素交易系统的结构框图,该基于区块链的数据要素交易系统,可以包括区块链110、数据购买方120和目标数据提供方130;
数据购买方120,用于根据区块链110中发布的多个元数据中的描述信息确定待交易的目标数据要素,元数据是数据提供方根据数据要素生成并发布在区块链110中的;
数据购买方120,还用于向目标数据要素对应的目标数据提供方130发送数据样本验证请求;
目标数据提供方130,用于根据数据样本验证请求获取数据样本,向数据购买方120发送数据样本;
数据购买方120,还用于对数据样本进行质检;
在质检通过后,数据购买方120与目标数据提供方130,还用于在区块链110上交易目标数据要素。
在一个可选的实施例中,当目标数据要素包括n个数据块,且每个数据块对应于一对私钥和公钥时,其中,n≥2,
数据购买方120,还用于利用目标数据块对应的公钥对生成的密钥进行加密,将得到的第一密文添加到数据样本验证请求中发送给目标数据提供方130,目标数据块是n个数据块中的任意一个;
目标数据提供方130,还用于利用n个私钥分别对第一密文进行解密,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给数据购买方120;
数据购买方120,还用于利用目标数据块对应的公钥对对应编号的数据样本进行解密,对得到的目标数据块进行质检。
在一个可选的实施例中,数据购买方120,还用于向目标数据要素对应的目标数据提供方130发送公钥获取请求;
目标数据提供方130,还用于根据公钥获取请求获取n个公钥,向数据购买方120发送n个公钥;
数据购买方120,还用于从n个数据块中选择第i个数据块作为目标数据块,利用与第i个数据块对应的第i个公钥对生成的密钥进行加密,i≤n。
在一个可选的实施例中,当元数据包括第一哈希信息,且第一哈希信息根据n个公钥生成时,数据购买方120,还用于在利用与第i个数据块对应的第i个公钥对生成的密钥进行加密之前,根据第一哈希信息对n个公钥进行验证;
在验证通过后,数据购买方120,还用于触发执行利用与第i个数据块对应的第i个公钥对生成的密钥进行加密的步骤。
在一个可选的实施例中,数据购买方120,还用于从n个数据样本中选择第i个数据样本,利用密钥对第i个数据样本进行解密。
在一个可选的实施例中,当目标数据要素包括n个数据块,且元数据包括第二哈希信息,第二哈希信息是对n个数据块生成默克尔树后,根据默克尔树的根节点生成时,其中,n≥2;
数据购买方120,还用于根据目标数据块生成第三哈希信息,向目标数据提供方130发送第三哈希信息;
目标数据提供方130,还用于根据第三哈希信息生成默克尔树证明,向数据购买方120发送默克尔树证明;
数据购买方120,还用于根据第二哈希信息对默克尔树证明进行验证;
在验证通过后,数据购买方120,还用于确定对目标数据提供方130的身份认证通过。
在一个可选的实施例中,目标数据提供方130,还用于:
将目标数据要素划分为n个数据块;
针对每个数据块生成一对私钥和公钥,根据n个公钥生成第一哈希信息;
根据n个数据块生成默克尔树,根据默克尔树的根节点生成第二哈希信息;
获取目标数据要素的描述信息;
将第一哈希信息、第二哈希信息和描述信息组成元数据。
综上所述,本申请实施例提供的基于区块链的数据要素交易系统,通过在区块链中发布数据要素的元数据,可以保证元数据具有不可篡改性和易访问性;通过区块链来计算数据样本的请求流程和数据要素的交易流程,能够保证整个业务流程的安全性,并且,运行业务时产生的数据记录都存储区块链上,能够保证数据记录不可篡改,为审计提供了数据依据。
数据购买方利用一个数据块的公钥对密钥进行加密后得到第一密文,数据提供方利用n个公钥分别对第一密文进行解密后得到n个解密结果,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给数据购买方,由于n个解密结果中只有一个是正确的密钥,其余n-1个解密结果是在明文空间中均匀分布的乱码信息,没有任何信息量,且数据提供方无法从n个解密结果中分辨出正确的密钥,也就无法对对应编号的数据块造假来误导数据购买方,可以保证数据样本的真实性。另外,由于n-1个解密结果是乱码信息,所以,数据提供方使用这些乱码信息对数据块进行加密后,数据购买方使用正确的密钥对这些乱码数据进行解密会得到任何人都无法解读的乱码数据,保证了这些数据块的隐私性。
通过第一哈希信息可以对公钥进行验证,保证了公钥不被第三方拦截和篡改;通过第二哈希信息可以对数据提供方进行身份验证,避免第三方伪装成数据提供方来进行数据要素的交易,能够提高交易的安全性。
本申请一个实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的基于区块链的数据要素交易方法。
本申请一个实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的基于区块链的数据要素交易方法。
需要说明的是:上述实施例提供的基于区块链的数据要素交易系统在进行基于区块链的数据要素交易时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将基于区块链的数据要素交易系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于区块链的数据要素交易系统与基于区块链的数据要素交易方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (9)
1.一种基于区块链的数据要素交易方法,其特征在于,所述方法包括:
数据购买方根据区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素,所述元数据是数据提供方根据数据要素生成并发布在所述区块链中的;
所述数据购买方向所述目标数据要素对应的目标数据提供方发送数据样本验证请求;
所述目标数据提供方根据所述数据样本验证请求获取数据样本,向所述数据购买方发送所述数据样本;
所述数据购买方对所述数据样本进行质检;
在质检通过后,所述数据购买方与所述目标数据提供方在所述区块链上交易所述目标数据要素;
所述目标数据要素包括n个数据块,且每个数据块对应于一对私钥和公钥,其中,n≥2,所述数据购买方向所述目标数据要素对应的目标数据提供方发送数据样本验证请求,包括:所述数据购买方利用目标数据块对应的公钥对生成的密钥进行加密,将得到的第一密文添加到数据样本验证请求中发送给所述目标数据提供方,所述目标数据块是所述n个数据块中的任意一个;
所述目标数据提供方根据所述数据样本验证请求获取数据样本,向所述数据购买方发送所述数据样本,包括:所述目标数据提供方利用n个私钥分别对所述第一密文进行解密,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给所述数据购买方;
所述数据购买方对所述数据样本进行质检,包括:所述数据购买方利用所述目标数据块对应的公钥对对应编号的数据样本进行解密,对得到的目标数据块进行质检。
2.根据权利要求1所述的基于区块链的数据要素交易方法,其特征在于,所述数据购买方利用目标数据块对应的公钥对生成的密钥进行加密,包括:
所述数据购买方向所述目标数据要素对应的目标数据提供方发送公钥获取请求;
所述目标数据提供方根据所述公钥获取请求获取n个公钥,向所述数据购买方发送所述n个公钥;
所述数据购买方从所述n个数据块中选择第i个数据块作为目标数据块,利用与所述第i个数据块对应的第i个公钥对生成的密钥进行加密,i≤n。
3.根据权利要求2所述的基于区块链的数据要素交易方法,其特征在于,当所述元数据包括第一哈希信息,且所述第一哈希信息根据所述n个公钥生成时,在所述利用与所述第i个数据块对应的第i个公钥对生成的密钥进行加密之前,所述方法还包括:
所述数据购买方根据所述第一哈希信息对所述n个公钥进行验证;
在验证通过后,所述数据购买方触发执行所述利用与所述第i个数据块对应的第i个公钥对生成的密钥进行加密的步骤。
4.根据权利要求1所述的基于区块链的数据要素交易方法,其特征在于,所述数据购买方利用所述目标数据块对应的公钥对对应编号的数据样本进行解密,包括:
所述数据购买方从n个数据样本中选择第i个数据样本,利用所述密钥对所述第i个数据样本进行解密。
5.根据权利要求1所述的基于区块链的数据要素交易方法,其特征在于,当所述目标数据要素包括n个数据块,且所述元数据包括第二哈希信息,所述第二哈希信息是对所述n个数据块生成默克尔树后,根据所述默克尔树的根节点生成时,其中,n≥2,所述方法还包括:
所述数据购买方根据所述目标数据块生成第三哈希信息,向所述目标数据提供方发送所述第三哈希信息;
所述目标数据提供方根据所述第三哈希信息生成默克尔树证明,向所述数据购买方发送所述默克尔树证明;
所述数据购买方根据所述第二哈希信息对所述默克尔树证明进行验证;
在验证通过后,所述数据购买方确定对所述目标数据提供方的身份认证通过。
6.根据权利要求1至5任一所述的基于区块链的数据要素交易方法,其特征在于,所述方法还包括:
所述目标数据提供方将所述目标数据要素划分为n个数据块;
所述目标数据提供方针对每个数据块生成一对私钥和公钥,根据n个公钥生成第一哈希信息;
所述目标数据提供方根据所述n个数据块生成默克尔树,根据所述默克尔树的根节点生成第二哈希信息;
所述目标数据提供方获取所述目标数据要素的描述信息;
所述目标数据提供方将所述第一哈希信息、所述第二哈希信息和描述信息组成元数据。
7.一种基于区块链的数据要素交易系统,其特征在于,所述数据要素交易系统包括数据购买方、目标数据提供方和区块链;
所述数据购买方,用于根据所述区块链中发布的多个元数据中的描述信息确定待交易的目标数据要素,所述元数据是数据提供方根据数据要素生成并发布在所述区块链中的;
所述数据购买方,还用于向所述目标数据要素对应的所述目标数据提供方发送数据样本验证请求;
所述目标数据提供方,用于根据所述数据样本验证请求获取数据样本,向所述数据购买方发送所述数据样本;
所述数据购买方,还用于对所述数据样本进行质检;
在质检通过后,所述数据购买方与所述目标数据提供方,还用于在所述区块链上交易所述目标数据要素;
所述目标数据要素包括n个数据块,且每个数据块对应于一对私钥和公钥,其中,n≥2,所述数据购买方,还用于利用目标数据块对应的公钥对生成的密钥进行加密,将得到的第一密文添加到数据样本验证请求中发送给所述目标数据提供方,所述目标数据块是所述n个数据块中的任意一个;
所述目标数据提供方,还用于利用n个私钥分别对所述第一密文进行解密,利用得到的n个解密结果分别对对应编号的数据块进行加密,将得到的n个第二密文作为n个数据样本发送给所述数据购买方;
所述数据购买方,还用于利用所述目标数据块对应的公钥对对应编号的数据样本进行解密,对得到的目标数据块进行质检。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至6任一所述的基于区块链的数据要素交易方法。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至6任一所述的基于区块链的数据要素交易方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310281048.3A CN116071071B (zh) | 2023-03-22 | 2023-03-22 | 基于区块链的数据要素交易方法、系统、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310281048.3A CN116071071B (zh) | 2023-03-22 | 2023-03-22 | 基于区块链的数据要素交易方法、系统、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116071071A CN116071071A (zh) | 2023-05-05 |
CN116071071B true CN116071071B (zh) | 2023-08-08 |
Family
ID=86180437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310281048.3A Active CN116071071B (zh) | 2023-03-22 | 2023-03-22 | 基于区块链的数据要素交易方法、系统、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116071071B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109862041A (zh) * | 2019-03-27 | 2019-06-07 | 深圳市网心科技有限公司 | 一种数字身份认证方法、设备、装置、系统及存储介质 |
CN110458554A (zh) * | 2019-03-31 | 2019-11-15 | 西安电子科技大学 | 区块链上基于身份的数据快速交易方法 |
CN115114658A (zh) * | 2022-06-24 | 2022-09-27 | 深圳大学 | 基于区块链的可验证数据交易方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190147431A1 (en) * | 2017-11-16 | 2019-05-16 | Blockmason Inc. | Credit Protocol |
-
2023
- 2023-03-22 CN CN202310281048.3A patent/CN116071071B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109862041A (zh) * | 2019-03-27 | 2019-06-07 | 深圳市网心科技有限公司 | 一种数字身份认证方法、设备、装置、系统及存储介质 |
CN110458554A (zh) * | 2019-03-31 | 2019-11-15 | 西安电子科技大学 | 区块链上基于身份的数据快速交易方法 |
CN115114658A (zh) * | 2022-06-24 | 2022-09-27 | 深圳大学 | 基于区块链的可验证数据交易方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116071071A (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853801B2 (en) | Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain | |
CN109067801B (zh) | 一种身份认证方法、身份认证装置及计算机可读介质 | |
EP3685334B1 (en) | Improving integrity of communications between blockchain networks and external data sources | |
CN109347878B (zh) | 去中心化的数据验证及数据安全交易系统及方法 | |
CN107566116B (zh) | 用于数字资产确权登记的方法及装置 | |
CN109067539B (zh) | 联盟链交易方法、设备及计算机可读存储介质 | |
CN111242617B (zh) | 用于执行交易正确性验证的方法及装置 | |
CN110519260B (zh) | 一种信息处理方法及信息处理装置 | |
JP5680115B2 (ja) | データ・セキュリティ装置のためのトランザクション監査 | |
WO2018145127A1 (en) | Electronic identification verification methods and systems with storage of certification records to a side chain | |
CN109905360B (zh) | 数据验证方法及终端设备 | |
CN109711841B (zh) | 数据交易方法及系统、平台、存储介质 | |
EP4092984A1 (en) | Data processing method and apparatus, device and medium | |
CN114266069A (zh) | 一种基于区块链技术的房屋交易电子数据共享系统及方法 | |
KR102056612B1 (ko) | 임시 익명 인증서 생성 방법 | |
CN117155549A (zh) | 密钥分发方法、装置、计算机设备和存储介质 | |
CN111080300A (zh) | 基于区块链的资产转移方法、装置及硬件设备 | |
CN116071071B (zh) | 基于区块链的数据要素交易方法、系统、存储介质及设备 | |
CN113949988B (zh) | 一种位置保护方法和系统,及存储介质 | |
Chenli et al. | Fairtrade: Efficient atomic exchange-based fair exchange protocol for digital data trading | |
KR101868564B1 (ko) | 사용자 본인 확인(identification) 등록과 로컬 인증을 연계한 사용자 인증 장치 및 방법 | |
CN114238915A (zh) | 数字证书添加方法、装置、计算机设备和存储介质 | |
US20220286301A1 (en) | Owner identity confirmation system, terminal and owner identity confirmation method | |
US20220272087A1 (en) | Owner identity confirmation system and owner identity confirmation method | |
US20220271948A1 (en) | Owner identity confirmation system, certificate authority server and owner identity confirmation method |
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 |