CN112926091B - 基于区块链的数据所有权记录、数据交易验证方法及装置 - Google Patents
基于区块链的数据所有权记录、数据交易验证方法及装置 Download PDFInfo
- Publication number
- CN112926091B CN112926091B CN202110324745.3A CN202110324745A CN112926091B CN 112926091 B CN112926091 B CN 112926091B CN 202110324745 A CN202110324745 A CN 202110324745A CN 112926091 B CN112926091 B CN 112926091B
- Authority
- CN
- China
- Prior art keywords
- transaction
- data
- ownership
- holding list
- block chain
- 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
Images
Classifications
-
- 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
- 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/604—Tools and structures for managing or administering access control systems
-
- 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
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供了一种基于区块链的数据所有权记录方法及装置、数据交易验证方法及装置。在数据所有权记录方法中,获取已完成数据交易的交易信息,交易信息包括交易参与方、交易类型和交易数据的数据标识,交易类型包括所有权转让交易和/或使用权许可交易;根据数据标识从区块链上获取对应的最新所有权不持有名单;根据交易参与方和交易类型,更新所获取的所有权不持有名单;以及将更新后的所有权不持有名单与数据标识相关联地记录在所述区块链上的同一新区块中。
Description
技术领域
本说明书实施例涉及区块链技术领域,具体地,涉及一种基于区块链的数据所有权记录方法及装置、数据交易验证方法及装置。
背景技术
在大数据的时代背景下,各个公司、商家、平台等仅能够依赖于自身的业务采集到较小的一部分数据,并且由于数据涉及到隐私保护且数据的可复制性等特性,数据不能像普通商品一样在各方之间进行交易。但由于大数据蕴含着巨大的社会价值,通过数据共享的方式来释放大数据的价值势在必行,基于此,数据交易应运而生。
目前,数据交易的买卖双方可以在数据交易平台上进行交易,数据交易平台作为中间角色对数据交易进行监管,以确保数据交易顺利完成。数据交易平台的监管包括对所交易数据的合规性的审核,其中,交易数据的合规性包括交易数据的所有权确认,以验证卖方是否持有交易数据的所有权。而由于数据的可复制性特点,在不持有数据所有权的一方也可能拥有数据本身,因此,在数据交易过程中如何记录数据所有权的变化是亟待解决的问题。
发明内容
鉴于上述,本说明书实施例提供了一种基于区块链的数据所有权记录方法及装置、数据交易验证方法及装置。通过该数据所有权记录方法,每一次数据交易完成后更新所有权不持有名单,并将更新后的所有权不持有名单记录在区块链上,以确保所有权不持有名单的真实性,并且便于第三方利用区块链上记录的最新的所有权不持有名单对待执行的数据交易进行验证。
根据本说明书实施例的一个方面,提供了一种基于区块链的数据所有权记录方法,其中,所述区块链用于相关联地记录交易数据的数据标识以及交易数据的所有权不持有名单;所述方法包括:获取已完成数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和/或使用权许可交易;根据所述数据标识从所述区块链上获取对应的最新所有权不持有名单;根据所述交易参与方和所述交易类型,更新所获取的所有权不持有名单;以及将更新后的所有权不持有名单与所述数据标识相关联地记录在所述区块链上的同一新区块中。
可选地,在上述方面的一个示例中,根据所述交易参与方和所述交易类型,更新所获取的所有权不持有名单包括:在所述交易类型是所有权转让交易时,将所述交易参与方的卖方添加至所获取的所有权不持有名单,以及在所述交易参与方的买方在所获取的所有权不持有名单中时,从所获取的所有权不持有名单中去除买方;当所述交易类型是使用权许可交易时,在所述交易参与方的买方不在所获取的所有权不持有名单中时,将所述交易参与方的买方添加到所获取的所有权不持有名单。
可选地,在上述方面的一个示例中,所述同一新区块记录有多个数据标识以及对应的所有权不持有名单。
可选地,在上述方面的一个示例中,各个交易数据的数据标识根据该交易数据的主体对象信息和对象属性信息唯一生成。
可选地,在上述方面的一个示例中,所述区块链上的各个区块还记录所对应的数据交易的交易明细信息。
可选地,在上述方面的一个示例中,所述区块链是联盟链。
根据本说明书实施例的另一方面,还提供一种基于区块链的数据交易验证方法,其中,数据的数据标识以及数据的所有权不持有名单按照上述任一所述的数据所有权记录方法相关联地记录在所述区块链的区块上,所述方法由智能合约控制执行,包括:获取待执行的数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和/或使用权许可交易;在所述区块链上查询所述数据标识对应的最新所有权不持有名单;当所述交易参与方的卖方在所查询到的所有权不持有名单中时,终止执行所述数据交易;以及当所述卖方不在所查询到的所有权不持有名单中时,继续执行所述数据交易。
可选地,在上述方面的一个示例中,在所述区块链上查询所述数据标识对应的最新所有权不持有名单包括:在所述区块链上查询与所述数据标识对应的最新区块;以及从所查询到的区块中获取所述数据标识对应的所有权不持有名单。
可选地,在上述方面的一个示例中,还包括:在所述区块链上未查询到与所述数据标识对应的所有权不持有名单时,继续执行所述数据交易。
根据本说明书实施例的另一方面,还提供一种基于区块链的数据所有权记录装置,其中,所述区块链用于相关联地记录数据的数据标识以及数据的所有权不持有名单;所述装置包括:至少一个处理器,与所述至少一个处理器耦合的存储器,以及存储在所述存储器上的计算机程序,所述至少一个处理器执行所述计算机程序来实现:获取已完成数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和/或使用权许可交易;根据所述数据标识从所述区块链上获取对应的最新所有权不持有名单;根据所述交易参与方和所述交易类型,更新所获取的所有权不持有名单;以及将更新后的所有权不持有名单与所述数据标识相关联地相关联地记录在所述区块链上的同一新区块中。
可选地,在上述方面的一个示例中,所述至少一个处理器执行所述计算机程序来实现:在所述交易类型是所有权转让交易时,将所述交易参与方的卖方添加至所获取的所有权不持有名单,以及在所述所述交易参与方的买方在所获取的所有权不持有名单中时,从所获取的所有权不持有名单中去除买方;当所述交易类型是使用权许可交易时,在所述交易参与方的买方不在所获取的所有权不持有名单中时,将所述交易参与方的买方添加到所获取的所有权不持有名单。
可选地,在上述方面的一个示例中,所述同一新区块记录有多个数据标识以及对应的所有权不持有名单。
可选地,在上述方面的一个示例中,各个交易数据的数据标识根据该交易数据的主体对象信息和对象属性信息唯一生成。
可选地,在上述方面的一个示例中,所述区块链上的各个区块还记录所对应的数据交易的交易明细信息。
根据本说明书实施例的另一方面,还提供一种基于区块链的数据交易验证装置,其中,数据的数据标识以及数据的所有权不持有名单按照如上述任一所述的数据所有权记录方法相关联地记录在所述区块链的区块上,所述装置包括:至少一个处理器,与所述至少一个处理器耦合的存储器,以及存储在所述存储器上的计算机程序,所述至少一个处理器执行所述计算机程序来实现:获取待执行的数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和使用权许可交易;在所述区块链上查询所述数据标识对应的最新所有权不持有名单;当所述交易参与方的卖方在所查询到的所有权不持有名单中时,终止执行所述数据交易;以及当所述卖方不在所查询到的所有权不持有名单中时,继续执行所述数据交易。
可选地,在上述方面的一个示例中,所述至少一个处理器执行所述计算机程序来实现:在所述区块链上查询与所述数据标识对应的最新区块;以及从所查询到的区块中获取所述数据标识对应的所有权不持有名单。
可选地,在上述方面的一个示例中,所述至少一个处理器执行所述计算机程序来实现:在所述区块链上未查询到与所述数据标识对应的所有权不持有名单时,继续执行所述数据交易。
根据本说明书实施例的另一方面,还提供一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的数据所有权记录方法。
根据本说明书实施例的另一方面,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一所述的数据所有权记录方法。
根据本说明书实施例的另一方面,还提供一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的数据交易验证方法。
根据本说明书实施例的另一方面,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一所述的数据交易验证方法。
附图说明
通过参照下面的附图,可以实现对于本说明书内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。
图1示出了根据本说明书实施例的示例环境的示意图。
图2示出了根据本说明书实施例的区块链网络的示例架构示意图。
图3示出了根据本说明书实施例的基于区块链的数据所有权记录方法的一个示例的流程图。
图4示出了根据本说明书实施例的共识过程的一个示例的示意图。
图5示出了根据本说明书实施例的共识过程中的预准备消息、准备消息以及确认消息的格式的一个示例的示意图。
图6示出了根据本说明书实施例的基于区块链的数据交易验证方法的一个示例的流程图。
图7示出了根据本说明书实施例的基于区块链的数据所有权记录装置的一个示例的方框图。
图8示出了根据本说明书实施例的基于区块链的数据交易验证装置的一个示例的方框图。
图9示出了根据本说明书实施例的基于区块链的数据所有权记录装置的示例方框图。
图10示出了根据本说明书实施例的基于区块链的数据交易验证装置的示例方框图。
具体实施方式
以下将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
区块链是一个分布式的共享账本和数据库,并且具有去中心化、不可篡改、留痕、回溯、公开透明等特点。区块链上的数据以数据区块的形式存储,数据区块按照时间顺序相连组合成链式数据结构。区块链中的各个区块通过所包括的加密散列与前一个区块链接,此外,每个区块还包括时间戳、加密哈希以及一个或多个交易。区块中的各个交易通过哈希处理形成Merkle树。在Merkle树中,最下面的叶节点包含基础数据,每个中间节点是它的子节点的散列,根节点是它的子节点的散列,代表Merkle树的根部,Merkle树的根节点存储代表该Merkle树中的所有数据的哈希值。当验证一个哈希值是否是Merkle树中存储的交易时,可以通过判断该哈希值是否与Merkle树的结构一致来进行快速验证。
区块链网络是由多个计算节点组成的以去中心化为基础的点对点网络,用于管理、更新和维护一个或多个区块链结构。根据区块链网络中节点的开放程度不同,区块链网络的类型可以包括公有区块链网络、私有区块链网络和联盟区块链网络。
公有区块链网络是参与实体的公有网络,公有区块链网络中可以存在成千上万个实体协作处理,每个实体操作该公有区块链网络中的至少一个节点,相应地,公有区块链网络中的共识过程也由各个节点完成。在共识过程中,参与共识的节点对区块进行签名以表明该节点对该区块的共识确认,然后完成共识的区块被添加到区块链网络的区块链中。此外,公有区块链网络支持公有交易,公有交易是在公有区块链网络中的所有节点之间共享,并经过所有节点共识后存储在全局区块链中。全局区块链是指跨所有节点复制的区块链。区块链网络中的共识由共识机制提供支持,共识机制是区块链事务达成分布式共识的算法,共识机制可以包括:工作量证明(POW,proof-of-work),权益证明(POS,proof-of-stake)和权威证明(POA,proof-of-authority)。
私有区块链网络只针对特定实体,私有区块链网络中的各个节点的读写权限被严格控制。此外,私有区块链网络的加入门槛很高,需要经过许可才能加入私有区块链网络成为其中的一个节点,基于此,私有区块链网络通常也称为许可网络,其对允许谁参与网络以及在网络中参与水平进行限制,比如,有的节点可以参与所有交易的上链过程,有些节点只能参与指定的部分交易的上链过程。私有区块链网络中可以使用现有参与方对添加新实体投票、监管机构控制许可等各种类型的访问控制机制。
联盟区块链网络中的参与实体之间也是私有的,可以被认为是参与实体的私有网络。联盟区块链网络可以由若干个实体组成的,每个实体操作该联盟区块链网络中的至少一个节点。联盟区块链网络中的共识过程由授权节点来执行,授权节点可以是联盟区块链网络中所有节点或部分节点,每个授权节点对待上链的区块进行签名以表明对该区块的共识确认,然后该区块会被添加到区块链上。
图1示出了根据本说明书实施例的示例环境100的示意图。如图1所示,示例环境100允许实体参与区块链网络102。区块链网络102例如可以是公有链、私有链或联盟链的区块链网络。示例环境100可以包括计算设备104、106、108、110、112和网络114。在一实施例中,网络114可以包括局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)、因特网或其组合,并连接至网站、用户设备(例如计算设备)和后端系统。在一实施例中,计算设备104、106、108、110、112可以通过有线和/或无线通信方式访问网络114。
在某些情况下,计算设备106、108可以是云计算系统的节点(未显示),或者每个计算设备106、108可以是单独的云计算系统,包括由网络互连并作为分布式处理系统工作的多台计算机。
在一实施例中,计算设备104~108可以运行任何适当的计算系统,使其能够作为区块链网络102中的节点。例如,计算设备104~108可以包括但不限于服务器、台式计算机、笔记本电脑、平板电脑计算设备和智能手机。在一实施例中,计算设备104~108可以归属于相关实体并用于实现相应的服务,例如,该服务可以用于对某一实体或多个实体之间的交易进行管理。
在一实施例中,计算设备104~108分别存储有区块链网络102对应的区块链账本。计算设备104可以是(或包含)用于提供浏览器功能的网络服务器,该网络服务器可基于网络114提供与区块链网络102相关的可视化信息。在一些情况下,计算设备104可以不参与区块验证,而是监控区块链网络102以确定其他节点(譬如可以包括计算设备106-108)何时达成共识,并据此生成相应的区块链可视化用户界面。
在一实施例中,计算设备110和112可以是与区块链网络102相连的客户端设备。例如,计算设备110可以是医疗机构平台处的终端设备,以及计算设备112可以是广告监管平台处的终端设备。计算设备110和112可以包括但不限于服务器、台式计算机、笔记本电脑、平板电脑计算设备和智能手机。
在一实施例中,计算设备104可以接收客户端设备(例如计算设备110或计算设备112)针对区块链可视化用户界面发起的请求。在一些情况下,区块链网络102的节点也可以作为客户端设备,比如计算设备108的用户可以使用运行在计算设备108上的浏览器向计算设备104发送上述请求。
响应于上述请求,计算设备104可以基于存储的区块链账本生成区块链可视化用户界面(如网页),并将生成的区块链可视化用户界面发送给请求的客户端设备。如果区块链网络102是私有类型或联盟类型的区块链网络,对区块链可视化用户界面的请求可以包括用户授权信息,在生成区块链可视化用户界面并发送给请求的客户端设备之前,可以由计算设备104对该用户授权信息进行验证,并在验证通过后返回相应的区块链可视化用户界面。
区块链可视化用户界面可以显示在客户端设备上(例如可显示在图1所示的用户界面116中)。当区块链账本发生更新时,用户界面116的显示内容也可以随之发生更新。此外,用户与用户界面116的交互可能导致对其他用户界面的请求,例如显示区块列表、区块详情、交易列表、交易详情、账户列表、账户详情、合约列表、合约详情或者用户对区块链网络实施搜索而产生的搜索结果页面等。
图2示出了根据本说明书实施例的区块链网络的示例架构示意图。
如图2所示,数据交易平台220是区块链网络214中的区块链节点或者其组成部分,数据交易买方221和数据交易卖方223可以作为数据交易参与方在数据交易平台220上进行数据交易。图2示出的数据交易平台220连接一个数据交易买方221和一个数据交易卖方223仅作为一个示例,图2示出的数据交易在一个数据交易买方221和一个数据交易卖方223之间进行也仅作为一个示例,服务器设备220还可以与其他多个数据交易参与方通信连接,每笔数据交易也可以在多个数据交易买方221和多个数据交易卖方223之间进行。
数据交易买方221和数据交易卖方223各自通过客户端设备与数据交易平台220通信连接,并通过客户端设备进行数据交易。在数据交易买方221与数据交易卖方223进行数据交易过程中,所产生的交易数据会被数据交易平台220所采集,数据交易平台220作为区块链网络214中的区块链节点或其组成部分,可以将采集到的交易数据上链至区块链216进行存储,这样可以避免已存储的交易数据被删除或者被篡改。
在另一示例中,数据交易参与方与数据交易平台连接,数据交易平台与区块链网络中的区块链节点通信连接。在该示例中,数据交易平台将采集到的交易数据发送给通信连接的区块链节点,再由区块链节点将交易数据打包上链至区块链以进行存储。
图3示出了根据本说明书实施例的基于区块链的数据所有权记录方法的一个示例300的流程图。
数据所有权记录方法可以由数据交易平台来执行,数据交易平台可以获取在该数据交易平台上发生的数据交易的交易信息。在一个示例中,本说明书实施例中的区块链可以是联盟链,联盟链可以是针对作为联盟成员的多个数据交易平台,相应地,联盟链网络由该多个数据交易平台构成,此时,各个数据交易平台可以是区块链网络中的一个区块链节点,或者可以是一个区块链节点的组成部分。
在本说明书实施例中,区块链上的各个区块用于相关联地记录交易数据的数据标识以及交易数据的所有权不持有名单。
在本说明书实施例中,数据标识可以用于表征交易数据,比如,数据标识可以是ID。在一个示例中,各个交易数据的数据标识可以唯一表征该交易数据。
在一个示例中,各个交易数据的数据标识可以根据该交易数据的主体对象信息和对象属性信息唯一生成。主体对象信息可以是用于唯一表征交易数据所涉及的对象的标识信息,比如,交易数据所涉及对象是人,则主体对象信息可以是身份证号码、护照号码等。对象属性信息可以是交易数据所涉及的对象的属性信息,比如,交易数据所涉及对象是人,则对象属性信息可以包括性别、年龄、出生日期、住址等。
数据标识生成的一种方式可以是信息综合方式,即将交易数据的主体对象信息和对象属性信息综合在一起构成该交易数据的数据标识,例如,主体对象信息是身份证号码,对象属性信息包括性别、年龄和出生日期,则数据标识由身份证号码、性别、年龄和出生日期构成。数据标识生成的另一种方式可以是交易数据的主体对象信息和对象属性信息经过计算处理得到一个数据标识,该数据标识的形式可以是ID、数值等。例如,可以对一个交易数据的主体对象信息和对象属性信息进行哈希计算以得到一个哈希值,并将该哈希值确定为该交易数据的数据标识。
在该示例中,任意两个交易数据的主体对象信息和对象属性信息中存在至少一个信息不同,则该两个交易数据的数据标识不同。这里的不同可以是主体对象信息和对象属性信息中的信息数量不同,还可以是主体对象信息和对象属性信息中一个或多个信息对应的属性值不同。例如,两个交易数据的主体对象信息都是A的身份证号码,对象属性信息均包括性别、年龄、出生日期以及消费记录等,其中两个交易数据中的性别、年龄和出生日期均相同,但消费记录的内容不同,则该两个交易数据的数据标识不同。
在本说明书实施例中,交易数据的所有权不持有名单中记录不持有该交易数据的所有权的公司、企业、机构等主体的名称,这些主体都可以作为交易参与方进行数据交易。各个交易数据的所有权不持有名单可以根据发生的针对该交易数据的数据交易而更新,更新后的各个所有权不持有名单可以被记录在区块链的区块中。所有权不持有名单中记录至少一个主体名称,当记录有多个主体名称时,该多个主体名称对应的主体同时不持有对应交易数据的所有权。
每个所有权不持有名单存在有效期限,不同的所有权不持有名单的有效期限不同。交易数据的每个所有权不持有名单的有限期限可以是从该所有权不持有名单被生成开始到该交易数据的下一个所有权不持有名单被生成为止的时间段。交易数据的所有权不持有名单在有效期限内,其记录的主体不持有该交易数据的所有权,在有效期限以外该所有权不持有名单失效,其记录的主体可能持有或不持有交易数据的所有权。
相关联地记录的数据标识和所有权不持有名单针对的是同一笔数据交易,即,该笔数据交易中交易的数据是数据标识对应的交易数据,该笔数据交易完成后针对该交易数据的所有权变化,该所有权不持有名单是所有权变化后不持有该交易数据的所有权的名单。在一个示例中,相关联地记录的一种方式可以是记录数据标识与所有权不持有名单的对应关系,每一个对应关系针对一笔数据交易。
相关联地记录的数据标识以及所有权不持有名单可以构成一组信息,每个区块可以记录一组或多组相关联的数据标识和所有权不持有名单,每组相关联的数据标识和所有权不持有名单针对一笔数据交易。当一个区块中记录有多组相关联的数据标识和所有权不持有名单时,不同组的数据标识不同,即,不同组对应的数据交易所针对的交易数据不同。
回到图3,在310,获取已完成数据交易的交易信息。
数据交易的交易信息可以包括交易参与方、交易类型和交易数据的数据标识。交易参与方包括至少一个数据交易买方(以下简称为买方)和至少一个数据交易卖方(以下简称为卖方)。
交易类型可以包括所有权转让交易和/或使用权许可交易,所有权转让交易是卖方将交易数据的所有权卖给买方,所有权转让交易使得交易数据的所有权发生变化。使用权许可交易是卖方将交易数据的使用权许可给买方以供买方使用该交易数据,在使用权许可交易中该交易数据的所有权保持不变。
数据交易的交易信息除了包括上述三种信息以外,还可以包括交易数据、交易金额、交易时间等其他信息。
在一个示例中,交易参与方在完成一笔数据交易后,各个交易参与方可以将各自采集的针对该笔数据交易的交易信息发送给数据交易平台,数据交易平台可以对所接收到的所有数据进行去重、归类等处理来获得该笔数据交易的交易信息。在另一个示例中,在交易参与方进行数据交易过程中,数据交易平台可以实时地获取数据交易的交易信息。
然后,在320,根据数据标识从区块链上获取对应的最新所有权不持有名单。
所获取的最新所有权不持有名单在当前处于有效期限内,最新所有权不持有名单中记录的主体在当前不持有交易数据的所有权。
在一个示例中,可以从区块链上的最后一个区块开始依次往前查询各个区块,针对所查询的每个区块,确定该区块中是否存在数据标识对应的所有权不持有名单,直至找到该数据标识对应的所有权不持有名单。在查询过程中,首次找到的数据标识对应的所有权不持有名单即为该数据标识对应的最新所有权不持有名单。
在确定各个区块中是否存在数据标识对应的所有权不持有名单时,可以将该数据标识与区块中记录的所有数据标识进行比较,以确定该区块中是否记录有该数据标识,若记录有,则从该区块中获取该数据标识关联的所有权不持有名单。
在一个示例中,当在区块链上没有获取到数据标识对应的所有权不持有名单时,可以确定在该已完成数据交易之前,还未发生过针对该数据标识对应的交易数据的数据交易。此时,可以根据交易参与方和交易类型来生成所有权不持有名单。
具体地,在交易类型是所有权转让交易时,将交易参与方的卖方添加至所生成的所有权不持有名单中。在交易类型是使用权许可交易时,将交易参与方的买方添加至所生成的所有权不持有名单中。
接着,在330,根据交易参与方和交易类型,可以更新所获取的所有权不持有名单。
在交易类型是所有权转让交易时,可以将交易参与方的卖方添加至所获取的所有权不持有名单。例如,此次数据交易的卖方为D,买方为A,D与A之间进行所有权转让交易,所获取的所有权不持有名单中记录有B和C,则在D和A之间的所有权转让交易完成后,可以将D添加至所有权不持有名单中,此时得到的所有权不持有名单记录B、C和D。
此外,在交易参与方的买方在所获取的所有权不持有名单中时,还可以从所获取的所有权不持有名单中去除买方。例如,此次数据交易的卖方为D,买方为A,D与A之间进行所有权转让交易,所获取的所有权不持有名单中记录有A、B和C,则在D和A之间的所有权转让交易完成后,将D添加至所有权不持有名单中,同时将A从所有权不持有名单中去除,则此时得到的所有权不持有名单记录B、C和D。
在交易类型是使用权许可交易时,在交易参与方的买方不在所获取的所有权不持有名单中时,将交易参与方的买方添加到所获取的所有权不持有名单。例如,此次数据交易的卖方为D,买方为A,D与A之间进行使用权许可交易,所获取的所有权不持有名单中记录有B和C,则在D和A之间的使用权许可交易完成后,将A添加至所有权不持有名单中,此时得到的所有权不持有名单记录A、B和C。
在交易类型是使用权许可交易时,且当交易参与方的买方在所获取的所有权不持有名单中时,则可以不更新所获取的所有权不持有名单,继续将所获取的所有权不持有名单作为数据标识对应的最新所有权不持有名单。此时,也无需再在区块链上记录所有权不持有名单。
在更新所有权不持有名单后,在340,将更新后的所有权不持有名单与数据标识相关联地记录在区块链上的同一新区块中。
在相关联地记录的一种方式中,可以将更新后的所有权不持有名单与数据标识建立对应关系,并将所建立的对应关系记录在区块链上的同一新区块中。
在一个示例中,当新区块中仅记录更新后的所有权不持有名单与数据标识时,可以将更新后的所有权不持有名单与数据标识打包成一个新区块,并将新区块记录在区块链上。在新区块中,可以直接包括所有权不持有名单与数据标识,还可以包括哈希值和数据标识,该哈希值是由更新后的所有权不持有名单得到的。
在另一个示例中,同一新区块记录有多个数据标识以及对应的所有权不持有名单。在该示例中,将更新后的所有权不持有名单和对应的数据标识以及其他所有权不持有名单和对应的数据标识打包成一个新区块,并将新区块记录在区块链上。在新区块中,可以直接记录各个数据标识和所有权不持有名单的对应关系,还可以记录各个数据标识与哈希值的对应关系,各个数据标识对应的哈希值是由该数据标识对应的所有权不持有名单得到的。通过将多个数据标识以及对应的所有权不持有名单记录在同一区块中,提高各个区块的存储空间的利用率。并且,每个区块记录多个需要上链的信息,提高了区块链记录的效率。
在一个示例中,区块链上的各个区块还可以记录所对应的数据交易的交易明细信息。交易明细信息可以是数据交易的完整信息,交易明细信息可以表征出数据交易的完整过程。比如,交易明细信息可以包括交易数据、交易时间、交易参与方之间的沟通信息等。在该示例中,针对同一数据交易的交易明细信息、更新后的所有权不持有名单以及对应的数据标识都可以记录在同一新区块中。通过将每次数据交易的交易明细信息记录在区块链上,便于对交易数据所涉及的数据交易进行溯源处理。
在新区块上链至区块链的过程中,区块链网络中的各个区块链节点作为共识节点可以对新区块进行共识处理,在共识达成后,新区块被记录在区块链上。
图4示出了根据本说明书实施例的共识过程的一个示例400的示意图。在图4的示例中,记账节点(即,主节点)是R0,在该示例的下文中称为主节点。所确定出的参与共识的共识节点(即,备份节点)可以包括R1、R2和R3,在该示例的下文中称为备份节点。需要说明的是,图4示出的包括4个网络节点R0、R1、R2和R3的共识过程仅用于说明目的,共识过程也可以包括任何合适数量的网络节点。
主节点R0与区块链网络中的所有参与共识的共识节点来进行共识处理,例如,主节点R0与备份节点R1、R2以及R3进行共识处理。
在本公开中,共识过程可以采用PoW(工作量证明算法)、PoS(权益证明算法)和PBFT(实用拜占庭容错算法)等实现。下面以PBFT共识过程为例来进行说明。
如图4所示,PBFT共识处理的过程包括:预准备阶段(Pre-prepare)410、准备阶段(Prepare)420以及确认阶段(Commit)430。
具体地,在410,主节点R0对要记录到区块链中的交易数据打包为消息m,然后生成预准备消息Pre-prepare,并且在给定的时间间隔内,将预准备消息Pre-prepare发送(例如,广播)给备份节点R1、R2和R3。预准备消息Pre-prepare表明主节点R0正在启动共识过程。
在本说明书实施例中,如图5所示,预准备消息Pre-prepare的格式可以为:<<PRE-PREPARE,epoch,seq,D(m),signature-p>,m,j>。这里,“PRE-PREPARE”表示预准备消息的协议标识,“epoch”表示R0作为主节点的时代,“seq”表示所需共识的提议的提议编号,“D(m)”表示请求消息集合的摘要,“signature-p”表示R0的签名,“m”表示请求消息的具体内容(即,区块中的各条认证信息的具体内容),以及“j”表示R0的节点标识。这里,D(m)通过对区块中的各条认证信息集合进行哈希计算而得到。
在准备阶段420,对于每个备份节点(R1、R2或R3),在接收到预准备消息Pre-prepare并检测预准备消息Pre-prepare合法后,可以将预准备消息Pre-prepare存储在本地日志中,并生成用于响应预准备消息Pre-prepare的准备消息Prepare,再将所生成的准备消息Prepare广播至其他节点。准备消息Prepare指示备份节点已从主节点接收到预准备消息Pre-prepare,并且正在响应预准备消息Pre-prepare发送应答。
相应地,每个备份节点也会接收到其他备份节点发送的准备消息Prepare。以备份节点R1为例,备份节点R1接收到主节点R0发送的预准备消息Pre-prepare之后,会将生成的准备消息Prepare广播至主节点R0、备份节点R2和R3。相应地,备份节点R1也会接收到主节点R0、备份节点R2和R3发送的准备消息Prepare。
在本说明书实施例中,备份节点广播的准备消息Prepare可以用于表示该备份节点在准备阶段420所做出的共识承诺。
在本说明书实施例中,如图5所示,准备消息Prepare的格式可以是:<PREPARE,epoch,seq,D(m),i,signature-i>。这里,“PREPARE”表示准备消息Prepare的协议标识,“i”表示发送准备消息Prepare的节点的节点标识,“signature-i”表示发送准备消息Prepare的节点的签名。准备消息Prepare中的“epoch”、“seq”以及“D(m)”的含义与上述预准备消息Pre-prepare中的“epoch”、“seq”以及“D(m)”的含义相同。
在确认阶段430,当网络节点从其他网络节点接收到足够数量的准备消息Prepare时,该网络节点确定已经达成共识。例如,如果主节点R0或备份节点R1、R2或R3接收到Quorum个(例如,2f+1,其中f表示故障网络节点的数目)准备消息Prepare,则确定在网络节点之间达成共识。然后,主节点R0或备份节点R1、R2或R3会向其他节点广播确认消息Commit。
在本说明书实施例中,如图5所示,确认消息Commit的格式可以是:<COMMIT,epoch,seq,D(m),p,signature-p>。其中,“COMMIT”表示确认消息Commit的协议标识,“p”表示发送确认消息Commit的节点的节点标识,“signature-p”表示发送确认消息Commit的节点的签名。确认消息Commit中的“epoch”、“seq”以及“D(m)”的含义与上述预准备消息Pre-prepare中的“epoch”、“seq”以及“D(m)”的含义相同。
在本说明书实施例中,节点发送确认消息Commit并将确认消息Commit存储至本地日志中,以表示该节点在确认阶段430所做出的共识承诺。
图6示出了根据本说明书实施例的基于区块链的数据交易验证方法的一个示例600的流程图。
数据交易验证方法可以由数据交易平台来执行,数据交易发生在数据交易平台上。在一个示例中,数据交易平台作为区块链网络中的一个节点,其上部署有智能合约,数据交易验证方法由智能合约控制执行。当数据交易平台上存在待执行的数据交易时,在交易参与方执行该数据交易之前,数据交易平台利用区块链上的信息对数据交易进行验证,以确保交易参与方的卖方持有交易数据的所有权,从而确保数据交易的合规性。
在数据交易验证方法中,交易数据的数据标识以及交易数据的所有权不持有名单可以按照上述图3示出的任一所述的数据所有权记录方法相关联地记录在区块链的区块上。
在610,获取待执行的数据交易的交易信息。
交易信息可以包括交易参与方、交易类型和交易数据的数据标识,交易类型包括所有权转让交易和使用权许可交易。在一个示例中,在所获取的交易信息中,交易参与方可以仅包括卖方。
然后,在620,在区块链上查询数据标识对应的最新所有权不持有名单。
在一个示例中,在区块链上查询与数据标识对应的最新区块,所查询到的最新区块中包括该数据标识以及该数据标识对应的所有权不持有名单。然后,从所查询到的区块中获取数据标识对应的所有权不持有名单。所获取的所有权不持有名单在有效期限内,所有权不持有名单上的主体不持有数据标识对应的交易数据的所有权。
在区块链上查询最新区块的一个方式中,从区块链上的最后一个区块开始依次向前查询每个区块是否是数据标识对应的区块,直至查询到与数据标识对应的区块,该区块即为数据标识对应的最新区块。
接着,在630,判断交易参与方的卖方是否在所查询到的所有权不持有名单中。如果是,表示卖方不持有交易数据的所有权,从而该笔数据交易不合规,则执行640的操作。如果否,表示卖方持有交易数据的所有权,从而该笔数据交易合规,则执行650的操作。
在640,终止执行数据交易。
在650,继续执行数据交易。
在一个示例中,在区块链上未查询到与数据标识对应的所有权不持有名单时,表示该数据标识对应的交易数据还未发生过数据交易,此时拥有该交易数据的主体则持有该交易数据的所有权,从而可以继续执行数据交易。
图7示出了根据本说明书实施例的基于区块链的数据所有权记录装置(以下称为数据所有权记录装置700)的一个示例的方框图。
所述区块链上的各个区块用于相关联地记录交易数据的数据标识以及交易数据的所有权不持有名单。
如图7所示,数据所有权记录装置700包括交易信息获取单元710、名单获取单元720、名单更新单元730和区块链记录单元740。
交易信息获取单元710,被配置为获取已完成数据交易的交易信息,交易信息包括交易参与方、交易类型和交易数据的数据标识,交易类型包括所有权转让交易和使用权许可交易。
名单获取单元720,被配置为根据数据标识从区块链上获取对应的最新所有权不持有名单。
名单更新单元730,被配置为根据交易参与方和交易类型,更新所获取的所有权不持有名单。
在一个示例中,名单更新单元730还被配置为:在交易类型是所有权转让交易时,将交易参与方的卖方添加至所获取的所有权不持有名单,以及在交易参与方的买方在所获取的所有权不持有名单中时,从所获取的所有权不持有名单中去除买方;当交易类型是使用权许可交易时,在交易参与方的买方不在所获取的所有权不持有名单中时,将交易参与方的买方添加到所获取的所有权不持有名单。
区块链记录单元740,被配置为将更新后的所有权不持有名单与数据标识相关联地记录在区块链上的同一新区块中。
在一个示例中,同一新区块记录有多个数据标识以及对应的所有权不持有名单。
在一个示例中,各个交易数据的数据标识根据该交易数据的主体对象信息和对象属性信息唯一生成。
在一个示例中,区块链上的各个区块还记录所对应的数据交易的交易明细信息。
在一个示例中,区块链是联盟链。
图8示出了根据本说明书实施例的基于区块链的数据交易验证装置(以下称为数据交易验证装置800)的一个示例的方框图。
其中,数据的数据标识以及数据的所有权不持有名单可以按照本说明书实施例中任一所述的数据所有权记录方法相关联地记录在区块链的区块上。
数据交易验证装置800包括交易信息获取单元810、名单查询单元820、交易终止单元830和交易执行单元840。
交易信息获取单元810被配置为获取待执行的数据交易的交易信息,交易信息包括交易参与方、交易类型和交易数据的数据标识,交易类型包括所有权转让交易和使用权许可交易。
名单查询单元820被配置为在区块链上查询数据标识对应的最新所有权不持有名单。
在一个示例中,名单查询单元820还被配置为在区块链上查询与数据标识对应的最新区块;以及从所查询到的区块中获取所述数据标识对应的所有权不持有名单。
交易终止单元830被配置为当交易参与方的卖方在所查询到的所有权不持有名单中时,终止执行数据交易。
交易执行单元840被配置为当卖方不在所查询到的所有权不持有名单中时,继续执行数据交易。
在一个示例中,交易执行单元840还可以被配置为在区块链上未查询到与数据标识对应的所有权不持有名单时,继续执行数据交易。
以上参照图1到图8,对根据本说明书实施例的数据所有权记录、数据交易验证的方法及装置的实施例进行了描述。
本说明书实施例的数据所有权记录、数据交易验证的装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将存储器中对应的计算机程序指令读取到内存中运行形成的。在本说明书实施例中,数据所有权记录装置、数据交易验证装置例如可以利用电子设备实现。
图9示出了根据本说明书实施例的基于区块链的数据所有权记录装置900的示例方框图。
如图9所示,数据所有权记录装置900可以包括至少一个处理器910、存储器(例如,非易失性存储器)920、内存930和通信接口940,并且至少一个处理器910、存储器920、内存930和通信接口940经由总线950连接在一起。至少一个处理器910执行在存储器中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器910:获取已完成数据交易的交易信息,交易信息包括交易参与方、交易类型和交易数据的数据标识,交易类型包括所有权转让交易和使用权许可交易;根据数据标识从区块链上获取对应的最新所有权不持有名单;根据交易参与方和交易类型,更新所获取的所有权不持有名单;以及将更新后的所有权不持有名单与数据标识相关联地记录在区块链上的同一新区块中。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器910进行本说明书的各个实施例中以上结合图1-8描述的各种操作和功能。
图10示出了根据本说明书实施例的基于区块链的数据交易验证装置1000的示例方框图。
如图10所示,数据交易验证装置1000可以包括至少一个处理器1010、存储器(例如,非易失性存储器)1020、内存1030和通信接口1040,并且至少一个处理器1010、存储器1020、内存1030和通信接口1040经由总线1050连接在一起。至少一个处理器1010执行在存储器中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器1010:获取待执行的数据交易的交易信息,交易信息包括交易参与方、交易类型和交易数据的数据标识,交易类型包括所有权转让交易和使用权许可交易;在区块链上查询数据标识对应的最新所有权不持有名单;当交易参与方的卖方在所查询到的所有权不持有名单中时,终止执行数据交易;以及当卖方不在所查询到的所有权不持有名单中时,继续执行数据交易。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器1010进行本说明书的各个实施例中以上结合图1-8描述的各种操作和功能。
根据一个实施例,提供了一种例如机器可读介质的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-8描述的各种操作和功能。
具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本说明书实施例的一部分。
本说明书各部分操作所需的计算机程序代码可以用任意一种或多种程序语言编写,包括面向对象编程语言,如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB、NET以及Python等,常规程序化编程语言如C语言、Visual Basic 2003、Perl、COBOL 2002、PHP以及ABAP,动态编程语言如Python、Ruby和Groovy,或者其他编程语言等。该程序编码可以在用户计算机上运行,或者作为独立的软件包在用户计算机上运行,或者部分在用户计算机上运行另一部分在远程计算机运行,或者全部在远程计算机或服务器上运行。在后一种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或者在云计算环境中,或者作为服务使用,比如软件即服务(SaaS)。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
以上结合附图详细描述了本说明书的实施例的可选实施方式,但是,本说明书的实施例并不限于上述实施方式中的具体细节,在本说明书的实施例的技术构思范围内,可以对本说明书的实施例的技术方案进行多种简单变型,这些简单变型均属于本说明书的实施例的保护范围。
本说明书内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本说明书内容。对于本领域普通技术人员来说,对本说明书内容进行的各种修改是显而易见的,并且,也可以在不脱离本说明书内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本说明书内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。
Claims (13)
1.一种基于区块链的数据所有权记录方法,其中,所述区块链用于相关联地记录交易数据的数据标识以及交易数据的所有权不持有名单,交易数据的所有权不持有名单记录不持有该交易数据的所有权的主体的名称;
所述方法包括:
获取已完成数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和/或使用权许可交易;
根据所述数据标识从所述区块链上获取对应的最新所有权不持有名单;
根据所述交易参与方和所述交易类型,更新所获取的所有权不持有名单;以及
将更新后的所有权不持有名单与所述数据标识相关联地记录在所述区块链上的同一新区块中。
2.如权利要求1所述的方法,其中,根据所述交易参与方和所述交易类型,更新所获取的所有权不持有名单包括:
在所述交易类型是所有权转让交易时,将所述交易参与方的卖方添加至所获取的所有权不持有名单,以及在所述交易参与方的买方在所获取的所有权不持有名单中时,从所获取的所有权不持有名单中去除买方;
当所述交易类型是使用权许可交易时,在所述交易参与方的买方不在所获取的所有权不持有名单中时,将所述交易参与方的买方添加到所获取的所有权不持有名单。
3.如权利要求1所述的方法,其中,所述同一新区块记录有多个数据标识以及对应的所有权不持有名单。
4.如权利要求1所述的方法,其中,各个交易数据的数据标识根据该交易数据的主体对象信息和对象属性信息唯一生成。
5.如权利要求1所述的方法,其中,所述区块链上的各个区块还记录所对应的数据交易的交易明细信息。
6.如权利要求1所述的方法,其中,所述区块链是联盟链。
7.一种基于区块链的数据交易验证方法,其中,数据的数据标识以及数据的所有权不持有名单按照如权利要求1到6中任一所述的方法 相关联地记录在所述区块链的区块上,
所述方法由智能合约控制执行,包括:
获取待执行的数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和/或使用权许可交易;
在所述区块链上查询所述数据标识对应的最新所有权不持有名单;以及
当所述交易参与方的卖方在所查询到的所有权不持有名单中时,终止执行所述数据交易。
8.如权利要求7所示的方法,其中,在所述区块链上查询所述数据标识对应的最新所有权不持有名单包括:
在所述区块链上查询与所述数据标识对应的最新区块;以及
从所查询到的区块中获取所述数据标识对应的所有权不持有名单。
9.如权利要求7所示的方法,还包括:
在所述区块链上未查询到与所述数据标识对应的所有权不持有名单时,继续执行所述数据交易。
10.一种基于区块链的数据所有权记录装置,其中,所述区块链用于相关联地记录数据的数据标识以及数据的所有权不持有名单,交易数据的所有权不持有名单记录不持有该交易数据的所有权的主体的名称;
所述装置包括:
至少一个处理器,
与所述至少一个处理器耦合的存储器,以及
存储在所述存储器上的计算机程序,所述至少一个处理器执行所述计算机程序来实现:
获取已完成数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和/或使用权许可交易;
根据所述数据标识从所述区块链上获取对应的最新所有权不持有名单;
根据所述交易参与方和所述交易类型,更新所获取的所有权不持有名单;以及
将更新后的所有权不持有名单与所述数据标识相关联地相关联地记录在所述区块链上的同一新区块中。
11.一种基于区块链的数据交易验证装置,其中,数据的数据标识以及数据的所有权不持有名单按照如权利要求1到6中任一所述的方法 相关联地记录在所述区块链的区块上,
所述装置包括:
至少一个处理器,
与所述至少一个处理器耦合的存储器,以及
存储在所述存储器上的计算机程序,所述至少一个处理器执行所述计算机程序来实现:
获取待执行的数据交易的交易信息,所述交易信息包括交易参与方、交易类型和交易数据的数据标识,所述交易类型包括所有权转让交易和使用权许可交易;
在所述区块链上查询所述数据标识对应的最新所有权不持有名单;以及
当所述交易参与方的卖方在所查询到的所有权不持有名单中时,终止执行所述数据交易。
12.一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1到6中任一所述的方法,或者实现如权利要求7到9中任一所述的方法。
13.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1到6中任一所述的方法,或者实现如权利要求7到9中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110324745.3A CN112926091B (zh) | 2021-03-26 | 2021-03-26 | 基于区块链的数据所有权记录、数据交易验证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110324745.3A CN112926091B (zh) | 2021-03-26 | 2021-03-26 | 基于区块链的数据所有权记录、数据交易验证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112926091A CN112926091A (zh) | 2021-06-08 |
CN112926091B true CN112926091B (zh) | 2022-08-12 |
Family
ID=76176160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110324745.3A Active CN112926091B (zh) | 2021-03-26 | 2021-03-26 | 基于区块链的数据所有权记录、数据交易验证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112926091B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106992990A (zh) * | 2017-05-19 | 2017-07-28 | 北京牛链科技有限公司 | 数据共享方法和系统以及区块链系统和计算设备 |
CN107295002A (zh) * | 2017-07-12 | 2017-10-24 | 联动优势科技有限公司 | 一种云端存储数据的方法及服务器 |
CN107851284A (zh) * | 2015-04-06 | 2018-03-27 | 比特记号公司 | 用于分散式所有权记录和鉴定的系统和方法 |
CN109934581A (zh) * | 2019-01-24 | 2019-06-25 | 成都捕风数据科技有限公司 | 一种含有安全保障措施的非同质资产应用模式 |
CN111695994A (zh) * | 2020-05-12 | 2020-09-22 | 成都芯域矩阵科技有限公司 | 一种基于信用评分的区块链共识方法及系统 |
CN112000857A (zh) * | 2020-10-28 | 2020-11-27 | 江苏傲为控股有限公司 | 一种数字资产数据包生成方法及装置 |
-
2021
- 2021-03-26 CN CN202110324745.3A patent/CN112926091B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107851284A (zh) * | 2015-04-06 | 2018-03-27 | 比特记号公司 | 用于分散式所有权记录和鉴定的系统和方法 |
CN106992990A (zh) * | 2017-05-19 | 2017-07-28 | 北京牛链科技有限公司 | 数据共享方法和系统以及区块链系统和计算设备 |
CN107295002A (zh) * | 2017-07-12 | 2017-10-24 | 联动优势科技有限公司 | 一种云端存储数据的方法及服务器 |
CN109934581A (zh) * | 2019-01-24 | 2019-06-25 | 成都捕风数据科技有限公司 | 一种含有安全保障措施的非同质资产应用模式 |
CN111695994A (zh) * | 2020-05-12 | 2020-09-22 | 成都芯域矩阵科技有限公司 | 一种基于信用评分的区块链共识方法及系统 |
CN112000857A (zh) * | 2020-10-28 | 2020-11-27 | 江苏傲为控股有限公司 | 一种数字资产数据包生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112926091A (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109791591B (zh) | 经由区块链进行身份和凭证保护及核实的方法和系统 | |
AU2022200535B2 (en) | Method and system for blockchain variant using digital signatures | |
US11258612B2 (en) | Method, apparatus, and electronic device for blockchain-based recordkeeping | |
US20210049715A1 (en) | Blockchain-based data procesing method, apparatus, and electronic device | |
CN110582775A (zh) | 利用utxo基础协议基于区块链管理文件的方法及利用其的文件管理服务器 | |
US11880478B2 (en) | Distribution management apparatus, distribution management system, and distribution management method | |
CN110728494A (zh) | 不动产业务的办理方法、不动产权信息系统及装置 | |
CN113037505B (zh) | 一种可信Web应用的实现方法及系统 | |
CN111931220A (zh) | 区块链网络的共识处理方法、装置、介质及电子设备 | |
JP2020013175A (ja) | データ管理プログラム、データ管理方法及びデータ管理装置 | |
CN110033367A (zh) | 基于区块链的合同记录方法及装置、电子设备 | |
CN115619395A (zh) | 基于区块链的数据处理方法及相关设备 | |
CN113660097B (zh) | 基于区块链的数据流转系统、数据流转方法及装置 | |
CN112926091B (zh) | 基于区块链的数据所有权记录、数据交易验证方法及装置 | |
CN115099800A (zh) | 基于区块链的用于对不良资产数据进行转让的方法及装置 | |
CN114978893A (zh) | 一种基于区块链的去中心化联邦学习方法及系统 | |
CN116894727A (zh) | 一种基于区块链的数据处理方法、装置及相关设备 | |
US20240202744A1 (en) | Using blockchain technology to determine authenticity of items | |
CN114553875B (zh) | 一种基于去中心化id与预言机的资产上链系统及方法 | |
US20230068301A1 (en) | Method and system for privately managed digital assets on an enterprise blockchain | |
WO2022042602A1 (en) | Trustless operations for blockchain networks | |
CN116957566A (zh) | 基于区块链的数据处理方法及装置、电子设备、存储介质 | |
CN115330374A (zh) | 基于区块链的用于针对ip授权进行按量付费的方法及装置 | |
CN113763185A (zh) | 基于区块链的用于现金投资的数据处理方法及装置 | |
CN117112693A (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 |