CN110620810A - 在区块链上的连续资产转移的非链接所有权 - Google Patents

在区块链上的连续资产转移的非链接所有权 Download PDF

Info

Publication number
CN110620810A
CN110620810A CN201910529966.7A CN201910529966A CN110620810A CN 110620810 A CN110620810 A CN 110620810A CN 201910529966 A CN201910529966 A CN 201910529966A CN 110620810 A CN110620810 A CN 110620810A
Authority
CN
China
Prior art keywords
asset
new
identifier
owner
blockchain
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.)
Granted
Application number
CN201910529966.7A
Other languages
English (en)
Other versions
CN110620810B (zh
Inventor
E·安德鲁拉基
A·德卡罗
J·耶利托
I·克尔丘马鲁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN110620810A publication Critical patent/CN110620810A/zh
Application granted granted Critical
Publication of CN110620810B publication Critical patent/CN110620810B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0471Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/148Migration or transfer of sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Power Engineering (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

示例操作可包括以下中的一个或多个:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;识别在区块链交易中存储的被分配给所述资产的资产标识符和当前资产所有权会话;响应于识别所述导出标识符,向所述资产分配新资产标识符;将随机数分配给用于识别到所述新所有者的所述资产转移的导入标识符;以及创建包括所述新资产标识符、所述随机数和新资产所有权会话的新区块链交易。

Description

在区块链上的连续资产转移的非链接所有权
技术领域
本申请一般涉及区块链上的资产转移,更具体地,涉及维持不可篡改账本和建立与在各方之间转移的资产相关的交易的出处,同时在另外链接的区块链数据服务中提供匿名所有权信息以提供区块链上的连续资产转移的非链接所有权。
背景技术
账本通常被定义为分录账簿,在其中记录了交易。分布式账本是被全部或部分复制到多台计算机的账本。加密分布式账本(CDL)可具有以下属性中的至少一部分:不可逆性(一旦记录了交易,则无法撤销)、可访问性(任何一方可全部或部分访问CDL)、按时间顺序排列并加盖时间戳(所有各方都知道交易何时被添加到账本中)、基于共识的(交易只有在被网络上各方通常一致批准时才被添加)、可验证性(所有交易可被加密验证)。区块链是CDL的一个例子。尽管在此的描述和附图是根据区块链来描述的,但是,本申请同样适用于任何CDL。
分布式账本是不断增长的记录列表,其通常应用加密技术,例如存储与其他区块有关的密码散列。区块链是分布式账本的一个常见实例,可以用作公共账本来存储信息。虽然区块链主要用于金融交易,但区块链也可以存储与商品和服务(即产品、包裹、状态等)有关的各种信息。分散式方案为分散式网络提供权限和信任,并使它的节点能够在公共“区块”上连续且顺序地记录交易,从而创建唯一的“链”,称为区块链。加密经由散列码而用于保护交易源的认证并除去中央中介。区块链是分布式数据库,它维持区块链区块中不断增长的记录列表,这些区块链区块由于它们的不可变属性而被保护免受篡改和修订。每个区块包含时间戳和与前一个区块的链接。区块链可用于保存、跟踪、传送和验证信息。由于区块链是分布式系统,因此,在将交易添加到区块链账本之前,所有的对等体需要达成共识状态。
传统上,资产转移是区块链系统中的常见用例。在这类系统中的数据隐私是指在区块链上包括的交易的交易细节的保护。通常,这种所有者/卖方/买方信息被包括在区块链上存储的区块链交易中。然而,披露在某个资产的当前状态或先前状态中包括的实体可能披露如果被披露给错误的各方则可能是敏感的私有业务合作。
发明内容
一个示例实施例可提供一种方法,该方法包括以下中的一个或多个:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;识别在区块链交易中存储的被分配给资产的资产标识符、被分配给资产的随机数、以及当前资产所有权会话;向资产分配新资产标识符;以及创建包括新资产标识符、随机数和新资产所有权会话的新区块链交易。
另一个示例实施例可以包括一种方法,该方法包括以下中的一个或多个:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;识别在区块链交易中存储的被分配给资产的资产标识符和当前资产所有权会话;响应于识别导出标识符,向资产分配新资产标识符;将随机数分配给用于识别到新所有者的资产转移的导入标识符;以及创建包括新资产标识符、随机数和新资产所有权会话的新区块链交易。
又一示例实施例可以包括一种系统,该系统包括计算节点,该计算节点被配置为:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;识别在区块链交易中存储的被分配给资产的资产标识符和当前资产所有权会话;响应于识别导出标识符,向资产分配新资产标识符;将随机数分配给用于识别到新所有者的资产转移的导入标识符;以及创建包括新资产标识符、随机数和新资产所有权会话的新区块链交易。
又一示例实施例可以包括一种非暂时性计算机可读存储介质,其被配置为存储指令,所述指令在被执行时使得处理器执行以下中的一个或多个:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;识别在区块链交易中存储的被分配给资产的资产标识符和当前资产所有权会话;响应于识别导出标识符,向资产分配新资产标识符;将随机数分配给用于识别到新所有者的资产转移的导入标识符;以及创建包括新资产标识符、随机数和新资产所有权会话的新区块链交易。
附图说明
图1示出了根据示例实施例的在区块链上的各种不同所有者之间的一组资产转移交易;
图2A示出了根据示例实施例的用于资产转移管理的示例对等节点区块链体系结构配置;
图2B示出了根据示例实施例的示例对等节点区块链配置;
图3是示出根据示例实施例的许可的区块链网络的图;
图4示出了根据示例实施例的用于利用区块链体系结构执行资产转移操作的系统消息传递图;
图5A示出了根据示例实施例的经由区块链的资产转移管理的示例方法的流程图;
图5B示出了根据示例实施例的经由区块链的资产转移管理的另一示例方法的流程图;
图5C示出了根据示例实施例的经由区块链的资产转移管理的又一示例方法的流程图;
图6A示出了根据示例实施例的被配置为根据在此描述的一个或多个操作对区块链执行各种操作的示例物理基础设施;
图6B示出了根据示例实施例的在签约方和中介服务器之间的示例智能合约配置,其中中介服务器被配置为在区块链上执行智能合约条款;
图7示出了被配置为支持一个或多个示例实施例的示例计算机系统。
具体实施方式
容易理解的是,如在此一般描述和附图中示出的本发明组件可以以各种不同的配置来布置和设计。因此,如附图中所示的方法、装置、非暂时性计算机可读介质和系统中的至少一个的实施例的以下详细描述并非旨在限制所要求保护的本申请的范围,而是仅代表所选的实施例。
在本说明书的全文中描述的本发明特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。例如,在整篇说明书中,短语“示例实施例”、“一些实施例”或其他类似语言的使用是指结合实施例描述的特定特征、结构或特性可以被包括在至少一个实施例中的事实。因此,在整篇说明书出现的短语“示例实施例”、“在一些实施例中”、“在其他实施例中”或其他类似语言不一定都是指相同的一组实施例,并且所描述的特征、结构或者特性可以以任何合适的方式组合在一个或多个实施例中。
另外,虽然术语“消息”可能已经在实施例的描述中使用,但是该应用可以应用于许多类型的网络数据,例如分组、帧、数据报等。术语“消息”还包括分组、帧、数据报及其任何等同物。此外,虽然在示例性实施例中可以描绘某些类型的消息和信令,但是它们不限于某种类型的消息,并且该应用不限于某种类型的信令。
示例实施例提供了方法、设备、网络和/或系统,其支持存储在区块链数据网络上的基于计算机的服务器中的数据交易和相关数据记录,以具有与非链接的资产相关联的当前和/或新的所有者信息,因此,区块链交易的审计者不能识别资产的连续所有者。一般地,最近通过当前区块链交易来占有资产的资产的新所有者通常可以追溯该资产的先前所有者以获取出处原因。然而,在这一配置中,新所有者可能无法识别该资产的任何先前所有者。
产品和/或资产标识符可以在供应链网络中使用,并且也可以是在区块链上组织数据所必需的。在供应链操作中,需要可追溯性的产品/资产通常被分配唯一的标识符(例如序列号),其可用于在整个产品/资产寿命期间跟踪产品的来源。为了确保标识符的唯一性,某些组织提供了使这些组织能够将标识符分配给产品、文档、物理位置和其他数据以便在全球范围内使用的标准。唯一的标识符和/或数字需要符合标准。特别地,产品的唯一的标识符(UI)通常包括几个部分:[组织标识符],其是用作产生项目的组织的标识符的字符串,其也可以包含生产地点的位置信息,诸如表示为<组织,位置>的标签,这样的标识符也可以被配置为委托者ID;[产品描述],其是特定产品的描述,诸如它的包装条件、颜色等,这可以称为产品描述。其他标识符包括[序列号],其是具体产品的具体实例的标识符(例如,某一药物的一个包装),并且这将被称为序列号(SN)。在通过产品描述注册了产品后,该产品的所有者可以委托该产品描述(GTIN)涵盖的产品的实例。
在具有序列化的产品委托中,声明产品存在,并且产品被分配序列号(SN)。产生项目的组织、委托者ID、产品描述及其序列号SN的组合形成唯一的标识符(UI)。在物理世界的情况下,产品UI基本上以某种形式附加到产品本身。在产品已被委托后,该产品可被“运输”并传送到目标目的地,并将最终“到达”它的新所有者。在数据传输期间,产品可被分配一个或多个托管账户(例如,运输、接收组织等),其负责将产品运输到某些中间目的地。托管者还会跟踪产品的状况/状态。产品的到达是两步过程,首先将确认产品的到达的当前产品托管者提供给相关方,然后新所有者接受并确认产品/资产的接收。传统上,这个过程是手动执行的,例如,托管者向新所有者提供纸质合约,并在物理检查包装后,签署所有权的转移。新所有者可以是应该将资产运输到另一个目的地的分销商实体。在这种情况下,产品将被再次运输,并且其运输由新的所有者决定聘用的一组托管者监控。最后,产品被分发并销售给消费者,并且不再用于供应链世界。关于供应链网络中的隐私和安全要求,在产品的生命周期的每个阶段,序列号通常以数字方式附加到每个产品,并存储在在线数据库中,以确保产品可容易跟踪。如果这些序列号不能在其他地方伪造/复制,则这些数字可以证明产品本身的来源和真实性。
在产品的生命周期期间,所有者被授权访问特定产品的所有状态信息,直到产品的所有权变为另一所有者为止。产品的所有者还被授权访问有关产品自被委托以来的先前所有者的信息。产品所有者对产品活动的可见性不会扩展到由该产品的后续所有者引起的活动。在供应链投递订单期间,中间目的地被授权访问从产品的装运开始时刻起与该产品的状态相关的数据,直到它们在产品的运输中的角色完成为止。
在一个示例实施例中,可以执行供应链管理操作以检测序列号重复并防止它们重复使用,同时确保某个资产只能被转移到准确的一方。其他特征包括取消某一资产的一系列所有者的关联,以防止可访问区块链交易数据的某些实体访问所有权信息,而无需限制数据/资产的未来所有者检测所有权链的有效性,直到所有权发生变化。对于注册,资产数据的区块链表示可以包括序列号,诸如委托者ID和/或项目ID、关于产品描述的承诺数据等。假定标识套件:<委托者id,项目id>在其他区块链序列号中应当是唯一的,这表明信息提供了针对资产“双重使用”滥用的对策。
在操作中,用于从区块链SN中取得实际序列号(SN)的解除承诺(de-commitment)信息可以从一个所有者传递到另一个较新的所有者,以使得任何所有者能够确认某个项目的真实性,而无需特定参考某人的简介或组织的简介。在一个示例中,被委托产品的寿命被划分成某些“所有权会话”。项目的所有者在整个所有权会话期间不会更改,并且当所有者确实发生更改时,该资产移动至新的所有权会话。在每个所有权会话中,该项目获得与它当前所有者的信息相结合的新的标识符。在会话结束时,项目的当前所有者发出“导出”操作以将该项目从它当前所有权状态中导出。导出操作伴随着“导出票证”,该票证在被识别时使得应用以对可能审计此类信息的第三方不可见的方式将导出操作绑定到资产的下一个所有者。通过这种方式,数据链出处被保留在区块链交易链中,而不具有在所有权会话外部识别的所有权信息。
区块链是分布式系统,其包括彼此通信的多个节点。区块链操作称为链码的程序(例如,智能合约等),保存状态和账本数据,并执行交易。一些交易是在链码上调用的操作。一般地,区块链交易通常必须由某些区块链成员“背书”,并且只有背书的交易可以委托给区块链并对区块链的状态产生影响。其他未经背书的交易将被忽视。可存在用于管理功能和参数的一个或多个特殊链码,统称为系统链码。
节点是区块链系统的通信实体。在不同类型的多个节点可在同一物理服务器上运行的意义上,“节点”可执行逻辑功能。节点在信任域中被分组,并以各种方式与控制它们的逻辑实体相关联。节点可以包括不同的类型,例如客户端或提交客户端节点,其向背书者(例如对等体)提交交易调用,并将交易建议向排序服务(例如,排序节点)广播。另一种类型的节点是对等节点,其可接收客户端提交的交易、提交交易并维持区块链交易的账本的状态和副本。对等体也可以具有背书者的角色,尽管这不是必需的。排序服务节点或排序者是针对所有节点运行通信服务的节点,并实现投递保证,例如,当提交交易和修改区块链的世界状态时向系统中的每个对等节点广播,这是针对初始区块链交易的另一个名称,通常包括控制和设置信息。
账本是区块链的所有状态转换的有序、防篡改记录。状态转换可由于参与方(例如客户端节点、排序节点、背书者节点、对等节点等)提交的链码调用(即,交易)而产生。交易可导致一组资产键值对被提交给账本作为一个或多个操作数,例如创建、更新、删除等。账本包括用于以区块的形式存储不可变的有序记录的区块链(也称为链)。账本还包括维持区块链的当前状态的状态数据库。每个通道通常有一个账本。每个对等节点针对其作为成员的每个通道维持账本的副本。
链是被构造为散列链接的区块的交易日志,每个区块包含N个交易的序列,其中,N等于或大于1。区块头包括区块的交易的散列以及前一个区块的头的散列。通过这种方式,在账本上的所有交易都可被排序并以加密方式链接在一起。因此,不可能在不破坏散列链接的情况下篡改账本数据。最近添加的区块链区块的散列表示在它之前的链上的每个交易,可以确保所有对等节点处于一致且可信的状态。链可以存储在对等节点文件系统(即,本地、附加存储、云等)上,有效地支持区块链工作负载的仅附加性质。
不可篡改账本的当前状态表示在链交易日志中包括的所有密钥的最新值。因为当前状态表示通道已知的最新密钥值,所以它有时被称为世界状态。链码调用针对账本的当前状态数据来执行交易。为了使这些链码交互有效,密钥的最新值可被存储在状态数据库中。状态数据库可以仅仅是链的交易日志的索引视图,因此,可以随时从链中重新生成。在对等节点启动后以及在接受交易之前,状态数据库可以自动恢复(或在需要时生成)。
图1示出了根据示例实施例的在区块链上的各种不同所有者之间的一组资产转移交易。参考图1,示例100示出了响应于各种导出132/136/142和导入操作134/138/144而随时间发生的一组区块链交易。在第一交易102中,交易的内容包括关于资产“A”112、当前所有权会话#1以及与资产和会话相关联的随机数114的详情,其中随机数用作资产、资产的前一所有者和当前所有者的参考。当执行导出操作132时,当前所有者尝试腾出资产并将其转移给受协议约束的下一个所有者。下一个所有者将启动导入操作134,并且根据智能合约120的条款,下一个区块链交易104将被创建并存储在区块链110中。资产信息“A”将被保留,然而,新的唯一的标识符将随同新的会话#2和相同的随机数116被分配,或者可追溯到原始所有者的随机数的变体被用作具有不可检测的谱系的隐藏描述符,因此,信息的审计者可识别交易而无需识别资产所有权历史的各方。最终,当前所有者将根据转移协议而将资产经由导入操作138导出到新区块链交易106中的另一所有者,其中导入操作138使得另一交易用相同的资产和具有相同随机数信息118的新会话来创建。随后,相同的转移过程可再次发生,其中,导出操作142使得在导入操作144被执行的条件下,针对下一个会话#4创建新交易108,以使该交易包括随机数和新的会话信息122。
随机数可用于唯一地标识资产,并且还可用于生成导出/导入票证。在图1的示例中,不同的随机数被分配给不同的导入/导出操作。假定用于唯一地标识资产的随机数针对每个资产是唯一的,因此,只要资产存在且不变,则分配给该资产的随机数应当对于所有区块链交易都是相同的随机数。然而,用于生成导入/导出票证的随机数是每次发生新的导出操作(即转移)时分配的新的随机数。
在供应链数据被合并到区块链数据中的示例中,采用抗冲突散列函数,则导出票证可具有以下形式:exportTicket=Hash(newOwnerID,importTicket,randomNumber),其中,newOwnerID是新的所有者的长期身份,importTicket由新的所有者使用以将资产导入到它的新所有权,randomNumber足以隐藏exportTicket和importTicket之间的关系。在导出期间,使用现有的加密,例如现有的公钥基础结构(PKI),将importTicket和randomNumber传递给新的所有者。一旦导出操作完成,新的所有者将执行导入操作。导入操作表示现有资产的新的所有权的开始以及与该资产相关联的新会话。导入操作需要声明导入票证,该导入票证在针对同一所有者的所有“importTickets”中是唯一的。连续的所有者可以获得对随机数的访问,并可容易地追溯导致资产被转移到其拥有交易的操作序列。
示例性实施例允许供应链操作的表示,并且还允许所识别的产品副本的检测。例如,某个资产只能由一方拥有,并在区块链中一次只能转移到一方。该资产将与由唯一标识(UI)标识的产品实例同义地使用。当资产需要与当前所有者解除关联时,该资产的所有者序列和与产品生命周期相关联的区块链交易仍然可以记录在公共交易存储库中。然而,未授权方可被排除在区块链中导出由其他方所提供的信息之外,但是以不限制产品的未来所有者能够验证所有权链的有效性的方式。可以执行安全的产品委托,以使得产品可被分配正确形成的UI,例如,当在所委托的产品的UI(例如,组织标识符和产品描述的组合)中包括的全球贸易项目编号(GTIN)已被委托该产品的组织保留/声明/拥有时,以及在所委托的产品的UI中出现的序列号在具有相同的GTIN的所委托的产品中是唯一的。安全的委托可能需要组织的安全GTIN保留或声明,这将确保在保留的GTIN中的组织标识符与请求并声明该GTIN的组织相匹配。这可以通过在针对请求的创建者的身份的GTIN预留请求时确定所请求的GTIN组织标识符与预期标识符匹配来确保。在声明了GTIN后,所委托的产品可以引用该GTIN。更具体地,在产品的委托期间,向产品分配UI,其包括所声明的GTIN和序列号。为确保此过程,GTIN需要由产品委托者来保证和声明,并且该GTIN的序列号必须是唯一的。隐私要求增加了其他限制,因为与特定GTIN相对应的产品的数量需要对第三方隐藏。
为了执行被给予正确形成的UI的所委托的产品,同时隐藏公共实体,委托者可以在两部分中提供UI:对GTIN和/或cGTIN的承诺,使用随机生成的数字“R”;以及随机选择的序列号(SN)。UI相关组件也用“R”的密文进行增强。GTIN被识别为包括在委托者所对应的组织标识符的已声明的GTIN之一中。这可以通过任何已知的设置交叉方案来实现。在一个示例中,GTIN的描述字段可以被显示为包括在cGTIN中作为针对所有i的集合{GTINi.Product-Description}的成员,其中GTINi在委托者的GTIN列表中。在验证委托请求验证期间,需要证明以及在委托者列表中之前未出现SN的检查。cGTIN是应用于GTIN的隐藏和绑定承诺函数的结果。基本上,cGTIN是GTIN的模糊GTIN的实际值的版本。当组织针对产品发布GTIN时,获得资产许可以发布遵从在GTIN中包括的产品描述的产品。然而,组织可能期望隐藏有多少产品在该描述下被发布。这就是为什么新委托的产品可包含cGTIN而不是GTIN和在该组织的产品中应当是唯一的序列号的原因。高级加密原语可用于组织委托产品,以证明该组织已发布与cGTIN相对应的GTIN。随机数对于从GTIN移动到cGTIN以及反向移动是需要的。对于需要跟踪产品及其状况的产品的审计者和接收者,了解随机数是识别区块链中的此类产品所必需的功能。
关于不可链接且安全的产品所有权序列,资产的每个可能的所有者被分配了唯一的命名空间。资产可在给定时间点仅与一个所有者/命名空间相关联。还可以定义资产与所有者一起作为所有权会话的时间。这样,所委托的资产的寿命被划分为所有权会话。当资产所有权变化时,资产移动到新的所有权会话。对于不可链接到观察区块链交易的各方的资产的所有权序列,在每个所有权会话进行时,资产获取与其当前所有者链接的新的标识符。命名空间用作将可用资产或“活动”资产划分/分类/分组在一起的方式,这些资产尚未导出并包括在区块链中。当资产被分配给区块链中的每个潜在资产所有者时,例如用户“A”、“B”等,唯一的命名空间(即,标识符)用于向所有者标识资产。A所拥有的资产则将引用A的命名空间,例如“A”NS,而B所拥有的每个资产将引用该用户的命名空间,例如“B”NS。随后,被转移(即更改了所有权)的资产需要从一个命名空间中导出,并为了分配而导入到另一个命名空间。对于资产,基于它的委托时间而生成全局唯一的标识符(GUID),该标识符需要包括资产的所有者(即,执行委托的一方)的全局标识符。
在任何一个特定资产所有权会话结束时,资产的所有者发出“导出”操作以从当前所有权中导出该项目。第i个所有权会话的导出操作伴随着“导出票证”,该导出票证以对区块链网络的不是那个特定资产转移区块链交易的直接方的成员不可见的方式将导出操作绑定到资产的下一个所有者。特别地,采用抗冲突散列函数,用于资产的生命的第i个会话的导出票证具有以下形式:exportTicket_i=Hash(ownerID_{i+1},importTicket_i,randomNo_i),其中,ownerID_{i+1}是新的会话所有者的长期身份,其中,importTicket_i由新的所有者用于“将项目导入其所有权”,randomNo_i足以对访问区块链数据的人隐藏ownerID_{I+1}、exportTicket_i和importTicket_i之间的关系。在导出功能期间,使用现有的PKI将importTicket_i和randomNo_i正确地传递给新的所有者。当导出操作完成时,由新的所有者执行导入操作。这表示资产的新的所有权会话的开始。导入操作需要提供导入票证,该导入票证在同一所有者的所有导入票证中应当是唯一的。通过构造,有一个导出票证和一个导入票证与特定所有者ID匹配。连续的所有者将获得对randomNo_i的访问,并且可追溯将资产引导至其当前所有权的操作序列。
在与示例实施例相关联的另一特征中,分层加密机制可用于兑现访问权限。例如,资产在区块链上的表示可最低限度包括以下任何字段:资产所有者,其中资产的所有者用它的长期身份表示;资产ID,其中引用命名空间内的特定资产;资产UID类型信息,其包括关于资产的长期UI和资产转移数据的信息;关于资产的转移条件的信息,其是与资产在特定时间经历的当前转移相关联的信息;以及资产描述,其是关于资产描述的信息,它是关于可用于资产的所有后续所有者的资产的长期信息。资产所有者的身份由资产的命名空间表示。资产ID也是基于每个命名空间和资产,并且对于有权访问区块链资产状态驻留位置的所有各方可用。资产UID应保持对未参与资产转移的实体隐藏。否则,UID字段将用作跟踪在区块链上的同一资产上发生的操作的方式。实际上,资产UID需要可用于被授权检测资产的真实性到其出处的实体,并且因此受限于选择性访问。资产转移数据需要能够在当前转移会话中被资产的当前和后续的托管者访问,而资产转移描述应当对资产的当前和后续的所有者可用。例如,资产真实性检查是在资产描述中包括的长期信息的一部分。
可以假设在资产的所有权会话期间,资产仍然经历多次转移,例如转移到在共同所有权网络上操作的分销商。每次转移被分成两个或更多个分支,这表示资产在转移中经历同一托管者的时间段。发生的操作可以包括会话/转移/分支等。在每个所有权会话开始时,需要生成新的长期密钥(即MKI),其将用于加密任何导入特定信息(包括randomNo_i)以及先前的长期密钥信息MK_{i-1}。在转移会话(transfer_{i,j})中的第k个分支的开始处,生成新的临时密钥,例如K_{l_k},其用于加密资产的转移相关信息。如果k>0,并且这不是转移中的第一个分支,则K_{l_k}用于包裹前一分支的相应密钥K_{l_{k-1}},并且从该点开始,在分支l_k期间,资产的状态K_{l_k}被传播给资产的当前托管者,该托管者应当使用该密钥来加密任何与资产状态相关的信息。如果k=0并且这是转移中的第一个分支,则不进行包裹。最终,当转移相关的密钥在当前托管者下加密时,所有权会话密钥用当前所有者的密钥包裹,以及如果下一个目的地密钥已被指定,则用后者包裹。由于密钥之间的链关系(其是基于所包裹的密钥),所有者获得对同一资产的先前所有权会话的长期信息以及最近转移的数据的访问。资产的托管者还获得对当前分支的转移数据以及与转移中在当前分支之前的所有分支相关联的所有数据的访问。
图2A示出了根据示例实施例的区块链体系结构配置200。参考图2A,区块链体系结构200可包括某些区块链单元,例如一组区块链节点202。区块链节点202可包括一个或多个节点204-210(作为示例,仅示出四个节点)。这些节点参与多个活动,例如区块链交易添加和验证过程(共识)。区块链节点204-210中的一个或多个可对交易背书,并且可向体系结构200中的所有区块链节点提供排序服务。区块链节点可发起区块链认证,并且寻求向在区块链层216中存储的区块链不可篡改账本进行写入,该账本的副本也可存储在基础物理基础设施214上。区块链配置可包括一个或多个应用,这些应用被链接到应用编程接口(API)以访问和执行所存储的程序/应用代码220(例如,链码、智能合约等),并可根据参与者所寻求的定制配置来创建,并且可维持自己的状态,控制自己的资产,以及接收外部信息。这可被部署为交易,并通过附加到分布式账本上来安装在所有区块链节点204-210上。
区块链基础或平台212可以包括区块链数据、服务(例如加密信任服务、虚拟执行环境等)以及基础物理计算机基础设施的各种层,该基础物理计算机基础设施可用于接收和存储新交易并向正在寻求访问数据条目的审计者提供访问。区块链层216可以曝露接口,该接口提供对处理程序代码和参与物理基础设施214所必需的虚拟执行环境的访问。加密信任服务218可用于验证诸如资产交换交易的交易并保持信息私密。
图2A的区块链体系结构配置可以经由由区块链平台212所曝露的一个或多个接口以及由区块链平台212提供的服务来处理和执行程序/应用代码220。代码220可以控制区块链资产。例如,代码220可以存储和传输数据,并且可以由节点204-210以智能合约和与其执行的条件或其他代码元素相关联的链码的形式执行。作为非限制性的示例,可以创建智能合约以执行提醒、更新和/或受到改变、更新等的其他通知。智能合约本身可以用于识别与授权和访问要求以及账本的使用相关联的规则。
在链码内,智能合约可以经由高级应用和编程语言创建,然后被写入区块链中的区块中。智能合约可包括向区块链(例如,区块链对等体的分布式网络)注册、存储和/或复制的可执行代码。交易是智能合约代码的执行,智能合约代码可响应于与智能合约相关联的条件被满足而执行。智能合约的执行可以触发对数字区块链账本的状态的可信修改。由智能合约执行引起的对区块链账本的修改可以通过一个或多个共识协议在区块链对等体的整个分布式网络中自动复制。
智能合约可以将数据以键值对的格式写入区块链。此外,智能合约代码可以读取在区块链中存储的值,并在应用操作中使用它们。智能合约代码可以将各种逻辑运算的输出写入区块链中。代码可用于在虚拟机或其他计算平台中创建临时数据结构。被写入区块链中的数据可以是公共的和/或可以被加密并维持为私有。由智能合约使用/生成的临时数据由所提供的执行环境保存在内存中,然后在识别出区块链所需的数据后被删除。
链码可包括具有附加特征的智能合约的代码解释。如本文所述,链码可以是部署在计算网络上的程序代码,其中,它在共识过程期间由链验证器一起执行和验证。链码接收散列,并从区块链中取得与通过使用先前存储的特征提取器来创建的数据模板相关联的散列。如果散列标识符的散列和从所存储的标识符模板数据中创建的散列匹配,则链码将授权密钥发送到所请求的服务。链码可写入与密码详情相关联的区块链数据。在图2A中,在一个示例中,某些导出操作触发可被接收226,并利用智能合约应用代码中的指令进行处理。这可触发关于识别新交易和向感兴趣的各方通知新资产状态交易228的共识决定。共识可被执行以提交在活动期间必须保持在不可篡改账本中的交易的更新、失败、成功和其他信息报告。
图2B示出了根据示例实施例的在区块链的节点之间的交易流程250的示例。参考图2B,交易流程可包括由应用客户端节点260发送给背书对等节点281的交易提案291。背书对等体281可验证客户端签名,并执行链码功能以发起交易。输出可包括链码结果、在链码(读取集合)中读取的一组键/值版本、以及被写入链码(写入集合)的一组键/值。如果交易提案被批准,则提案响应292连同背书签名一起被发送回客户端260。客户端260将背书组装到交易有效载荷293中,并将其广播到排序服务节点284。然后,排序服务节点284将排序的交易作为区块递送到通道上的所有对等体281-283。在提交到区块链之前,每个对等体281-283可验证该交易。例如,对等体可检查背书策略以确保指定对等体的正确分配已经对结果进行了签名并且针对交易有效载荷293认证了签名。
再次参考图2B,客户端节点260通过构造并向作为背书者的对等节点281发送请求来发起交易291。客户端260可以包括利用支持的软件开发工具包(SDK)的应用,例如NODE、JAVA、PYTHON等,其利用可用的API来生成交易提案。该提案是调用链码功能的请求,以便可以将数据读取和/或写入账本(即,为资产写入新的键值对)。SDK可以用作垫片(shim)以将交易提案打包成适当的体系结构格式(例如通过远程过程调用(RPC)的协议缓冲区)并且获取客户端的加密凭证以产生用于交易提案的唯一签名。
作为响应,背书对等节点281可以验证(a)交易提案是否格式良好、(b)过去尚未提交交易(重放-攻击保护)、(c)签名是有效的、以及(d)提交者(在该示例中为客户端260)被适当授权以在该通道上执行所提议的操作。背书对等节点281可以将交易提案输入作为被调用的链码功能的参数。然后针对当前状态数据库执行链码以产生包括响应值、读取集和写入集的交易结果。但是,此时没有对账本进行更新。在292中,将该组值与背书对等节点281签名一起作为提案响应292传递回给客户端260的SDK,该客户端260解析供应用使用的有效载荷。
作为响应,客户端260的应用检查/验证背书对等体签名并比较提案响应以确定提案响应是否相同。如果链码仅查询账本,则应用将检查查询响应并且通常不将该交易提交给排序节点服务284。如果客户端应用打算将该交易提交给排序节点服务284以更新账本,则应用确定在提交之前是否已满足指定的背书策略(即,交易所需的所有对等节点是否都背书该交易)。这里,客户可以仅包括交易的多方中的一方。在这种情况下,每个客户端可以拥有自己的背书节点,并且每个背书节点都需要背书该交易。该体系结构使得即使应用选择不检查响应或以其他方式转发未经背书的交易,该背书策略仍将由对等体强制执行并在提交验证阶段维持。
在成功检查之后,在步骤293中,客户端260将背书组装到交易中,并将交易消息内的交易提案和响应广播到排序节点284。交易可以包含读取/写入集,背书对等体签名和通道ID。排序节点284不需要检查交易的整个内容以便执行其操作,而是排序节点284可以简单地从网络中的所有通道接收交易,按时间顺序按通道排序,并创建每通道的交易区块。
交易区块从排序节点284传递到通道上的所有对等节点281-283。验证区块内的交易294以确保满足任何背书策略并确保读取集变量的账本状态没有变化,因为读取集是由交易执行生成的。区块中的交易被标记为有效或无效。此外,在步骤295中,每个对等节点281-283将该区块附加到通道的链,并且对于每个有效交易,将写入集提交给当前状态数据库。发出事件,通知客户端应用交易(调用)已不可变地附加到链,以及通知交易是否已经过验证或被无效。
图3示出了许可的区块链网络300的示例,其具有分布式、分散的对等体系结构、以及管理用户角色和许可的证书机构(certificate authority)318。在该示例中,区块链用户302可以向许可的区块链网络310提交交易。在该示例中,交易可以是部署、调用或查询,并且可以通过利用SDK的客户端应用直接通过REST API等发布。可信赖的商业网络可以提供对监管系统314的访问,例如审计者(例如美国股票市场中的证券交易委员会)。同时,节点308的区块链网络运营商系统管理成员许可,例如将监管系统310登记为“审计者”,并将区块链用户302登记为“客户”。审计者可以仅限于查询账本,而客户端可以被授权部署、调用和查询特定类型的链码。
区块链开发者系统316编写链码和客户端侧应用。区块链开发者系统316可以通过REST接口将链码直接部署到网络。为了在链码中包括来自传统数据源330的凭证,开发者系统316可以使用带外连接来访问数据。在该示例中,区块链用户302通过对等节点312连接到网络。在继续任何交易之前,对等节点312从证书机构318检索用户的登记和交易证书。在一些情况下,区块链用户必须拥有这些数字证书以便在许可的区块链网络310上进行交易。同时,尝试驱动链码的用户可能需要在传统数据源330上验证他们的凭证。为了确认用户的授权,链码可以通过传统处理平台320使用到该数据的带外连接。
图4示出了根据示例实施例的用于利用区块链体系结构执行资产转移操作的系统消息传递图。参考图4,系统配置400可以包括当前资产所有者410,其识别购买、销售和/或转移到另一个未来所有者并确认资产412的导出。导出触发器可以是基于导出标识符的触发器,其具有关于触发新区块链交易所必需的所有者、未来所有者和其他信息414的信息。转移可以使得:确认资产标识信息416,分配新标识给资产418,以及通过将新资产标识符和随机数分配给转移方和受让方作为新会话和新交易的一部分422来创建新交易422。资产可以被转移424并且确认被用于包括在新交易更新中426。可以利用新资产所有权状态信息来执行更新428。
图5A示出了根据示例实施例的经由区块链的资产转移管理的示例方法的流程图。参考图5A,方法500可以包括:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移512;识别在区块链交易中存储的被分配给资产的资产标识符、分配给资产的随机数514、以及当前资产所有权会话;将新资产标识符分配给资产516;以及创建包括新资产标识符、随机数和新资产所有权会话的新区块链交易518。
导出标识符可以包括新资产标识符、导入标识符和随机数的散列。该方法还可以包括识别与新所有者相关联的导入标识符,并且导入标识符触发新资产所有权会话的开始。在新资产所有权会话期间,资产标识符可以是不活动的,并且在新资产所有权会话期间,新资产标识符是活动的。响应于新资产所有权会话开始,可以在新资产所有权会话期间执行的资产转移操作期间创建和使用新的加密密钥。
图5B示出了根据示例实施例的经由区块链的资产转移管理的方法的另一示例方法的流程图。在该方法550中,操作可以包括:创建消息以发起资产从当前所有者到新所有者的资产所有权转移552;从可信源接收包括可信源信息和资产转移信息的消息554;确定可信源信息基于与已知可信源信息的比较是准确的556;以及响应于可信源被验证创建包括资产转移信息的新区块链交易558。除了基于验证各方和资产的有效性所必需的导入和导出触发器和会话出处数据执行资产转移操作之外,来自可信源的消息可以用作基于消息中包括的已知和/或预期信息将源验证为可信源的机制。在验证了该信息之后,可以创建资产转移区块链交易并将其提交给区块链以验证资产的转移。
图5C示出了根据示例实施例的经由区块链的资产转移管理的方法的又一示例方法的流程图。在该方法570中,操作包括:接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移572;识别在区块链交易中存储的被分配给资产的资产标识符和当前资产所有权会话574;响应于识别导出标识符,向资产分配新资产标识符576;将随机数分配给用于识别到新所有者的资产转移的导入标识符578;以及创建包括新资产标识符、随机数和新资产所有权会话的新区块链交易582。
图6A示出了根据示例实施例的被配置为根据示例性操作方法中的一个或多个对区块链执行各种操作的示例物理基础设施。参考图6A,示例配置600包括具有区块链620和智能合约640的物理基础设施610,其可以执行任何示例实施例中包括的任何操作步骤612。步骤/操作612可以包括在一个或多个流程图和/或逻辑图中描述或描绘的一个或多个步骤。这些步骤可以表示从驻留在计算机系统配置的物理基础设施610上的一个或多个智能合约640和/或区块链620写入或读取的输出或写入信息。可以从执行的智能合约640和/或区块链620输出数据。物理基础设施610可以包括一个或多个计算机、服务器、处理器、存储器和/或无线通信设备。
图6B示出了根据示例实施例的签约方和中介服务器之间的示例智能合约配置,该中介服务器被配置为在区块链上实施执行智能合约条款。参考图6B,配置650可以表示由智能合约640驱动的通信会话、资产转移会话或过程或进程,智能合约640明确地标识一个或多个用户设备652和/或656。智能合约执行的执行、操作和结果可以由服务器654管理。智能合约640的内容可能需要由智能合约交易的参与方中的一个或多个实体652和656进行数字签名。智能合约执行的结果可以作为区块链交易写入区块链。
以上实施例可以以硬件、以由处理器执行的计算机程序、以固件或以上的组合来实现。计算机程序可以体现在计算机可读介质(例如存储介质)上。例如,计算机程序可以驻留在随机存取存储器(“RAM”)、闪存、只读存储器(“ROM”)、可擦除可编程只读存储器(“EPROM”)、电可擦除可编程只读存储器(“EEPROM”)、寄存器、硬盘、可移动磁盘、光盘只读存储器(“CD-ROM”)或本领域已知的任何其他形式的存储介质中。
示例性存储介质可以耦接到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。在替代方案中,存储介质可以是处理器的组成部分。处理器和存储介质可以驻留在专用集成电路(“ASIC”)中。在替代方案中,处理器和存储介质可以作为分立组件驻留。例如,图7示出了示例计算机系统体系结构700,其可以表示或集成在任何上述组件等中。
图7不旨在对本文描述的申请的实施例的使用范围或功能提出任何限制。无论如何,计算节点700能够实现和/或执行上文阐述的任何功能。
在计算节点700中,存在计算机系统/服务器702,其可与许多其他通用或专用计算系统环境或配置一起操作。可适于与计算机系统/服务器702一起使用的众所周知的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户机、胖客户机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机系统、大型计算机系统、以及包括任何上述系统或设备的分布式云计算环境等。
计算机系统/服务器702可以在由计算机系统执行的计算机系统可执行指令(例如程序模块)的一般上下文中描述。通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、目标程序、组件、逻辑,数据结构等。计算机系统/服务器702可以在分布式云计算环境中实践,其中,任务由通过通信网络链接的远程处理设备执行。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质二者中。
如图7所示,计算机系统/服务器702以通用计算设备的形式表现。计算机系统/服务器702的组件可以包括但不限于:一个或者多个处理器或者处理单元704,系统存储器706,连接不同系统组件(包括系统存储器706和处理单元704)的总线。
总线表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器702典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器702访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。在一个实施例中,系统存储器706实现其他附图中的流程图。系统存储器706可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)710和/或高速缓存存储器712。计算机系统/服务器702可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统714可以用于读写不可移动的、非易失性磁介质(图中未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线相连。存储器706可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各种实施例的功能。
具有一组(至少一个)程序模块718的程序/实用工具716,可以存储在例如存储器706中,这样的程序模块718包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块718通常执行本申请所描述的各种实施例中的功能和/或方法。
如本领域技术人员将理解的,本申请的方面可以体现为系统、方法或计算机程序产品。因此,本申请的各方面可以采用完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)或者组合软件和硬件方面的实施例的形式,这些实施例通常可以在本文被称为“电路”、“模块”或“系统”。此外,本申请的各方面可以采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有体现在其上的计算机可读程序代码。
计算机系统/服务器702也可以与一个或多个外部设备720(例如键盘、指向设备、显示器722等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器702交互的设备通信,和/或与使得该计算机系统/服务器702能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口724进行。并且,计算机系统/服务器702还可以通过网络适配器726与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器726通过总线与计算机系统/服务器702的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器702使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
尽管在附图中示出了系统、方法和非暂态计算机可读介质中的至少一个的示例性实施例,并且在前面的详细描述中进行了描述,但是应该理解,本申请不限于所公开的实施例,而是能够进行如下所述的由权利要求所阐述和限定的许多重新排列、修改和替换。例如,各种图的系统的能力可以由本文描述的模块或组件中的一个或多个或以分布式体系结构来执行,并且可以包括发射机、接收机或两者的对。例如,由各个模块执行的全部或部分功能可以由这些模块中的一个或多个执行。此外,本文描述的功能可以在不同时间并且与模块或组件内部或外部的各种事件相关地执行。而且,可以经由以下中的至少一个在模块之间发送在各个模块之间发送的信息:数据网络、因特网、语音网络、因特网协议网络、无线设备、有线设备和/或多个协议。而且,可以直接和/或经由一个或多个其他模块发送或接收由任何模块发送或接收的消息。
本领域技术人员将理解,“系统”可以体现为个人计算机、服务器、控制台、个人数字助理(PDA)、蜂窝电话、平板计算设备、智能手机或任何其他合适的计算设备或设备的组合。将上述功能呈现为由“系统”执行并不旨在以任何方式限制本申请的范围,而是旨在提供许多实施例的一个示例。实际上,本文公开的方法、系统和装置可以以与计算技术一致的本地化和分布式形式实现。
应当注意,本说明书中描述的一些系统特征已经作为模块呈现,以便更具体地强调它们的实现独立性。例如,模块可以被实现为硬件电路,该硬件电路包括:定制的超大规模集成(VLSI)电路或门阵列,诸如逻辑芯片的现成半导体、晶体管或其他分立元件。模块还可以在可编程硬件设备中实现,例如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备、图形处理单元等。
模块还可以至少部分地以软件实现,以用于由各种类型的处理器执行。所识别的可执行代码单元可以例如包括计算机指令的一个或多个物理或逻辑块,其可以例如被组织为对象、过程或功能。然而,所识别的模块的可执行文件不需要物理地位于一起,而是可以包括存储在不同位置的不同指令,当该位置逻辑上连接在一起时,该位置包括模块并实现针对模块的所述目的。此外,模块可以存储在计算机可读介质上,该计算机可读介质可以是例如硬盘驱动器、闪存设备、随机存取存储器(RAM)、磁带或用于存储数据的任何其他此类介质。
实际上,可执行代码的模块可以是单个指令或许多指令,甚至可以分布在几个不同的代码段上、不同的程序中以及几个存储器设备上。类似地,操作数据可以在本文中在模块内被识别和示出,并且可以以任何合适的形式体现并且被组织在任何合适类型的数据结构内。操作数据可以作为单个数据集收集,或者可以分布在包括不同存储设备的不同位置上,并且可以至少部分地仅作为系统或网络上的电子信号存在。
容易理解的是,如在本文附图中一般描述和示出的,本申请的组件可以以各种不同的配置来布置和设计。因此,实施例的详细描述不旨在限制所要求保护的本申请的范围,而仅仅代表本申请的所选实施例。
本领域普通技术人员将容易理解,上述内容可以以不同顺序的步骤来实践,和/或使用与所公开的配置不同的配置中的硬件元件来实践。因此,尽管已经基于这些优选实施例描述了本申请,但是对于本领域技术人员来说显而易见的是,某些修改、变化和替代构造将是显而易见的。
虽然已经描述了本申请的优选实施例,但是应该理解,所描述的实施例仅是说明性的,并且当考虑具有全范围的等同物和对其的修改(例如,协议、硬件设备、软件平台等)时,本申请的范围仅由所附权利要求限定。

Claims (21)

1.一种方法,包括:
接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;
识别在区块链交易中存储的被分配给所述资产的资产标识符和当前资产所有权会话;
响应于识别所述导出标识符,向所述资产分配新资产标识符;
将随机数分配给用于识别到所述新所有者的所述资产转移的导入标识符;以及
创建包括所述新资产标识符、所述随机数和新资产所有权会话的新区块链交易。
2.根据权利要求1所述的方法,其中,所述导出标识符包括所述新资产标识符的散列和与所述当前所有者相关联的所述导入标识符。
3.根据权利要求2所述的方法,还包括:
识别与所述新所有者相关联的被分配给所述导入标识符的所述随机数不同于先前分配给所述导出标识符的随机数。
4.根据权利要求3所述的方法,还包括:
响应于识别所述导入标识符,触发所述新资产所有权会话的开始。
5.根据权利要求4所述的方法,其中,在所述新资产所有权会话期间,所述资产标识符是不活动的。
6.根据权利要求4所述的方法,其中,在所述新资产所有权会话期间,所述新资产标识符是活动的。
7.根据权利要求4所述的方法,还包括:
响应所述新资产所有权会话开始,创建新的加密密钥;以及
在所述新资产所有权会话期间进行的资产转移操作期间,用所述新的加密密钥加密与所述资产相关联的资产信息。
8.一种系统,包括:
计算节点,其被配置为:
接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;
识别在区块链交易中存储的被分配给所述资产的资产标识符和当前资产所有权会话;
响应于识别所述导出标识符,向所述资产分配新资产标识符;
将随机数分配给用于识别到所述新所有者的所述资产转移的导入标识符;以及
创建包括所述新资产标识符、所述随机数和新资产所有权会话的新区块链交易。
9.根据权利要求8所述的系统,其中,所述导出标识符包括所述新资产标识符的散列和与所述当前所有者相关联的所述导入标识符。
10.根据权利要求9所述的系统,其中,所述计算节点还被配置为:
识别与所述新所有者相关联的被分配给所述导入标识符的所述随机数不同于先前分配给所述导出标识符的随机数。
11.根据权利要求10所述的系统,其中,所述计算节点还被配置为:
响应于识别所述导入标识符,触发所述新资产所有权会话的开始。
12.根据权利要求11所述的系统,其中,在所述新资产所有权会话期间,所述资产标识符是不活动的。
13.根据权利要求11所述的系统,其中,在所述新资产所有权会话期间,所述新资产标识符是活动的。
14.根据权利要求11所述的系统,其中,所述计算节点还被配置为:
响应所述新资产所有权会话开始,创建新的加密密钥;以及
在所述新资产所有权会话期间进行的资产转移操作期间,用所述新的加密密钥加密与所述资产相关联的资产信息。
15.一种非暂时性计算机可读存储介质,被配置为存储指令,所述指令在被执行时使得处理器执行:
接收导出标识符以发起资产从当前所有者到新所有者的资产所有权转移;
识别在区块链交易中存储的被分配给所述资产的资产标识符和当前资产所有权会话;
响应于识别所述导出标识符,向所述资产分配新资产标识符;
将随机数分配给用于识别到所述新所有者的所述资产转移的导入标识符;以及
创建包括所述新资产标识符、所述随机数和新资产所有权会话的新区块链交易。
16.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述导出标识符包括所述新资产标识符的散列和与所述当前所有者相关联的所述导入标识符。
17.根据权利要求16所述的非暂时性计算机可读存储介质,其中,所述处理器还被配置为执行:
识别与所述新所有者相关联的被分配给所述导入标识符的所述随机数不同于先前分配给所述导出标识符的随机数。
18.根据权利要求17所述的非暂时性计算机可读存储介质,其中,所述处理器还被配置为执行:
响应于识别所述导入标识符,触发所述新资产所有权会话的开始。
19.根据权利要求18所述的非暂时性计算机可读存储介质,其中,在所述新资产所有权会话期间,所述资产标识符是不活动的。
20.根据权利要求19所述的非暂时性计算机可读存储介质,其中,所述处理器还被配置为执行:
响应所述新资产所有权会话开始,创建新的加密密钥;以及
在所述新资产所有权会话期间进行的资产转移操作期间,用所述新的加密密钥加密与所述资产相关联的资产信息,并且其中,在所述新资产所有权会话期间,所述新资产标识符是活动的。
21.一种计算机系统,包括分别用于执行权利要求1-7中任一项所述的方法的步骤的模块。
CN201910529966.7A 2018-06-20 2019-06-19 在区块链上的连续资产转移的非链接所有权 Active CN110620810B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/013023 2018-06-20
US16/013,023 US10834062B2 (en) 2018-06-20 2018-06-20 Unlinking ownership of successive asset transfers on a blockchain

Publications (2)

Publication Number Publication Date
CN110620810A true CN110620810A (zh) 2019-12-27
CN110620810B CN110620810B (zh) 2022-03-22

Family

ID=68921432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910529966.7A Active CN110620810B (zh) 2018-06-20 2019-06-19 在区块链上的连续资产转移的非链接所有权

Country Status (2)

Country Link
US (1) US10834062B2 (zh)
CN (1) CN110620810B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113971562A (zh) * 2020-07-24 2022-01-25 中移物联网有限公司 一种物权转移方法、区块链系统和第一终端

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109426949B (zh) * 2017-08-29 2021-02-09 华为技术有限公司 一种跨链交易方法及装置
US11410136B2 (en) * 2018-08-01 2022-08-09 American Express Travel Related Services Company, Inc. Procurement system using blockchain
US11251963B2 (en) 2019-07-31 2022-02-15 Advanced New Technologies Co., Ltd. Blockchain-based data authorization method and apparatus
US11057189B2 (en) 2019-07-31 2021-07-06 Advanced New Technologies Co., Ltd. Providing data authorization based on blockchain
US11252166B2 (en) 2019-07-31 2022-02-15 Advanced New Technologies Co., Ltd. Providing data authorization based on blockchain
US11411938B2 (en) 2019-08-19 2022-08-09 Red Hat, Inc. Proof-of-work key wrapping with integrated key fragments
US11424920B2 (en) 2019-08-19 2022-08-23 Red Hat, Inc. Proof-of-work key wrapping for cryptographically controlling data access
US11411728B2 (en) 2019-08-19 2022-08-09 Red Hat, Inc. Proof-of-work key wrapping with individual key fragments
US11271734B2 (en) 2019-08-19 2022-03-08 Red Hat, Inc. Proof-of-work key wrapping for verifying device capabilities
US11436352B2 (en) 2019-08-19 2022-09-06 Red Hat, Inc. Proof-of-work key wrapping for restricting data execution based on device capabilities
US11303437B2 (en) 2019-08-19 2022-04-12 Red Hat, Inc. Proof-of-work key wrapping with key thresholding
US11316839B2 (en) * 2019-08-19 2022-04-26 Red Hat, Inc. Proof-of-work key wrapping for temporally restricting data access
US11310051B2 (en) * 2020-01-15 2022-04-19 Advanced New Technologies Co., Ltd. Blockchain-based data authorization method and apparatus
US11682095B2 (en) * 2020-02-25 2023-06-20 Mark Coast Methods and apparatus for performing agricultural transactions
CN114764709A (zh) * 2021-01-14 2022-07-19 富士通株式会社 信息处理装置和信息处理方法
KR102559571B1 (ko) * 2021-03-26 2023-07-26 한국전자통신연구원 분산 id를 활용한 소유권 증명 및 이전 내역 증명 방법
CN113327165A (zh) * 2021-06-07 2021-08-31 支付宝(杭州)信息技术有限公司 一种基于区块链的交易方法
US20220391887A1 (en) * 2021-06-08 2022-12-08 Artema Labs, Inc Systems and Methods for Maintenance of NFT Assets
CN113190628B (zh) * 2021-07-01 2021-09-17 四川新龟科技有限公司 一种基于区块链的供应链物流控货平台及其使用方法
US11968307B2 (en) * 2021-09-27 2024-04-23 International Bisuness Machines Corporation Private ledger partitions in blockchain networks

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160335609A1 (en) * 2015-05-15 2016-11-17 Gareth Jenkins Representation of digital asset structure, ownership and evolution by virtue of a hierarchical, compounding tagging mechanism on a transaction-based network
US20170213210A1 (en) * 2016-01-22 2017-07-27 International Business Machines Corporation Asset transfers using a multi-tenant transaction database
CN107924389A (zh) * 2015-07-02 2018-04-17 纳斯达克公司 对分布式交易数据库的安全溯源的系统和方法
US20180158054A1 (en) * 2016-12-07 2018-06-07 International Business Machines Corporation Concomitance of an asset and identity block of a blockchain
CN108154366A (zh) * 2017-12-25 2018-06-12 丁江 跨链数字资产转移方法和终端设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130227653A1 (en) 2008-11-29 2013-08-29 Yu Yung Choi System and method for streamlined registration of products over a communication network and for verification and management of information related thereto
CA2981511C (en) * 2015-03-31 2018-08-28 Nasdaq, Inc. Systems and methods of blockchain transaction recordation
CA2981952A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
US20170011460A1 (en) * 2015-07-09 2017-01-12 Ouisa, LLC Systems and methods for trading, clearing and settling securities transactions using blockchain technology
JP2018530806A (ja) 2015-08-11 2018-10-18 ジェフ ストールマン 資産および供給網保全性保証のためのシステムおよび方法
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US10176481B2 (en) 2015-12-21 2019-01-08 Beston Technologies Pty Ltd Method and apparatus for managing and providing provenance of product using blockchain
US10693658B2 (en) 2016-02-12 2020-06-23 Visa International Service Association Methods and systems for using digital signatures to create trusted digital asset transfers
EP3257191B1 (en) * 2016-02-23 2018-04-11 Nchain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
AU2017263465B9 (en) 2016-05-11 2021-01-28 Nasdaq, Inc. Application framework using blockchain-based asset ownership
US20170331896A1 (en) * 2016-05-13 2017-11-16 De La Rue International Limited Methods and systems for processing assets
US11694196B2 (en) * 2016-10-25 2023-07-04 Nchain Licensing Ag Method and system for directing an exchange associated with an anonymously held token on a blockchain
US20180130034A1 (en) * 2016-11-07 2018-05-10 LedgerDomain, LLC Extended blockchains for event tracking and management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160335609A1 (en) * 2015-05-15 2016-11-17 Gareth Jenkins Representation of digital asset structure, ownership and evolution by virtue of a hierarchical, compounding tagging mechanism on a transaction-based network
CN107924389A (zh) * 2015-07-02 2018-04-17 纳斯达克公司 对分布式交易数据库的安全溯源的系统和方法
US20170213210A1 (en) * 2016-01-22 2017-07-27 International Business Machines Corporation Asset transfers using a multi-tenant transaction database
US20180158054A1 (en) * 2016-12-07 2018-06-07 International Business Machines Corporation Concomitance of an asset and identity block of a blockchain
CN108154366A (zh) * 2017-12-25 2018-06-12 丁江 跨链数字资产转移方法和终端设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113971562A (zh) * 2020-07-24 2022-01-25 中移物联网有限公司 一种物权转移方法、区块链系统和第一终端

Also Published As

Publication number Publication date
CN110620810B (zh) 2022-03-22
US20190394179A1 (en) 2019-12-26
US10834062B2 (en) 2020-11-10

Similar Documents

Publication Publication Date Title
CN110620810B (zh) 在区块链上的连续资产转移的非链接所有权
US11240001B2 (en) Selective access to asset transfer data
EP3864816B1 (en) Blockchain notification board storing blockchain resources
JP7161273B2 (ja) ブロックチェーン上のスマート・コントラクト・グループに対する自動データ投影
JP2021516004A (ja) ランダム・シーケンスを生成および検証するための分散型台帳
US10833845B2 (en) Guarantee of ledger immutability
JP2021519531A (ja) ブロックチェーン・ネットワークに対するドキュメント・アクセス
US20220382746A1 (en) Blockchain notification board storing blockchain resources
US10922097B2 (en) Collaborative model execution
US11240000B2 (en) Preservation of uniqueness and integrity of a digital asset
US10819523B2 (en) Guarantee of ledger immutability
US11270296B2 (en) Protection of data trading
US20200184470A1 (en) Identity ecosystem
US11194911B2 (en) Blockchain technique for agile software development framework
US11240003B2 (en) Consent-based data management
US11157622B2 (en) Blockchain technique for agile software development framework
US20200074117A1 (en) Unfalsifiable audit logs for a blockchain
US11487741B2 (en) Preservation of uniqueness and integrity of a digital asset
US11354278B2 (en) Linking of tokens
US20200174968A1 (en) Defensible disposition of data
US11893554B2 (en) Secure smart note
US11769147B2 (en) Secure smart note
CN111797426B (zh) 一种用于去信任通知服务的方法和系统
JP2023511886A (ja) 競合フリー・バージョン制御
US11887146B2 (en) Product exploration-based promotion

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