CN112154468A - 基于安全共识的自监控区块链背书 - Google Patents
基于安全共识的自监控区块链背书 Download PDFInfo
- Publication number
- CN112154468A CN112154468A CN201980029253.2A CN201980029253A CN112154468A CN 112154468 A CN112154468 A CN 112154468A CN 201980029253 A CN201980029253 A CN 201980029253A CN 112154468 A CN112154468 A CN 112154468A
- Authority
- CN
- China
- Prior art keywords
- endorsement
- blockchain
- peers
- peer
- requests
- 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
- 238000012544 monitoring process Methods 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 53
- 238000012545 processing Methods 0.000 claims description 42
- 230000004044 response Effects 0.000 claims description 39
- 238000010200 validation analysis Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 21
- 238000007726 management method Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 208000036765 Squamous cell carcinoma of the esophagus Diseases 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 208000007276 esophageal squamous cell carcinoma Diseases 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241000081511 Matthiola lunata Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
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/22—Payment schemes or models
- G06Q20/223—Payment schemes or models based on the use of peer-to-peer networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/501—Performance criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic 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)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Software Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种方法,包括:识别执行区块链事务背书的背书请求,将背书请求传输到订购节点,监控背书区块链对等方的性能指标,根据性能指标将背书请求分配给背书区块链对等方,以及接收背书的区块链事务。
Description
技术领域
本申请总体上涉及区块链上的共识和对等方管理过程,并且更具体地涉及通过包括在自监控区块链中事务的背书(endorsement)和提交(commitment)的区块链任务委派监控区块链上的对等方以获得最佳的对等方管理。
背景技术
区块链可以用作公共分布式账本(ledger)来存储信息。虽然主要用于金融事务,但区块链可以存储与商品和服务(即产品、包装、状态等)相关的各种信息。去中心化的方案为去中心化的网络提供权限和信任,并使其节点能够连续并顺序地将其事务记录在公共“块”上,从而创建了称为区块链的独特“链”。密码通过散列码用于确保事务源的身份验证并去除中央中介。区块链是一个分布式数据库,维护着区块链的块中记录的不断增长的列表,由于其不可变的属性,可以防止篡改和修订记录。每个块都包含一个时间戳和一个到前一个块的链接。区块链可用于保存、跟踪、转移和验证信息。由于区块链是分布式系统,因此在将事务添加到区块链分布式账本之前,所有对等方都需要达成共识状态。
传统上,在区块链网络中操作的对等方可能具有变化的资源和约束,从而在处理区块链事务时导致不同的背书和提交速度。对等方可能具有有限的资源,例如中央处理器(CPU)速度、可用内存和磁盘速度/容量。在任何给定时间,对等方也可能因处理太多请求而过载。对等方也可能不诚实或高估其广播的处理此类事务的处理能力。结果,对等方可能在区块链操作的背书和提交阶段都成为瓶颈。
为了获得最佳性能,区块链网络应在对等方之间平均或在对等方能力之间按比例平衡背书和提交阶段的负载。某些对等方的使用量的增加或减少取决于在任何给定时间分配给那些对等方的事务负载要求。通常,建议的负载平衡或扩展策略可以提供一种可靠的方法来确定区块链网络中的过度使用、使用不足或瓶颈。最新的有许可网络不具有自我评估和自我纠正功能。在特定的运行时通常没有任何操作可以识别效率低下的对等方。区块链网络无法自动扩展,并且负载无法在预配置的对等方之间平均分配。另外,不能动态添加对等方节点以支持更高的运行时负载。此外,不重新配置对等节点以充当其他角色,例如,背书方根据需要成为提交方或订购方。可以手动评估网络,扩大规模或重新平衡网络,但是这种方法会带来风险,因为每个组织都必须在没有受信任的监控实体的情况下独立执行此类修改。过度配置会浪费资源,而配置不足会导致性能下降。一个组织管理负载时的错误决策可能会对同一区块链网络上其他组织的性能产生不利影响。
发明内容
本发明的一个方面提供了一种方法,该方法包括以下至少一项:
识别执行区块链事务背书的背书请求,将背书请求传输到订购节点,监控背书区块链对等方的性能指标,根据性能指标将背书请求分配给背书区块链对等方,以及接收背书的区块链事务。
另一个方面提供了一种设备,该设备包括:处理器,配置为识别执行区块链事务背书的一个或多个背书请求;发送器,配置为将一个或多个背书请求传输到订购节点;处理器还配置为监控背书区块链对等方的性能指标,以及根据性能指标将一个或多个背书请求分配给背书区块链对等方,和接收器,配置为接收背书的区块链事务。
另一个方面提供了一种计算机可读存储介质,该计算机可读存储介质配置为存储指令,该指令在被执行时使处理器执行以下步骤:
识别执行区块链事务背书的一个或多个背书请求,将一个或多个背书请求传输到订购节点,监控背书区块链对等方的性能指标,根据性能指标将一个或多个背书请求分配给背书区块链对等方,以及接收背书的区块链事务。
附图说明
图1A示出了根据示例实施例的用于处理区块链事务负载的对等方监控和选择过程的逻辑网络图。
图1B示出了根据示例实施例的在对等方管理和负载处理过程期间执行的一组操作的系统配置图。
图1C示出了根据示例实施例的识别对等方负载能力并根据各自的性能将对等方进行排名的示例对等方处理管理图。
图2A示出了根据示例实施例的用于资产共享场景的示例对等节点区块链架构配置。
图2B示出了根据示例实施例的示例对等方区块链配置。
图3示出了根据示例实施例有许可的区块链网络的图。
图4示出了根据示例实施例的用于执行对等方管理和事务管理配置的系统消息图。
图5A示出了根据示例实施例的在区块链中的对等方管理和事务管理的示例方法的流程图。
图5B示出了根据示例实施例的在区块链中的对等方管理和事务管理的另一示例方法的流程图。
图6A示出了根据示例实施例的一种或多种示例操作方法配置为在区块链上执行各种操作的示例物理基础设施。
图6B示出了根据示例实施例的在缔约方与配置为在区块链上强制执行智能合约条款的中介服务器之间的示例智能合约配置。
图7示出了配置为支持一个或多个示例实施例的示例计算机系统。
具体实施方式
将容易理解的是,如本文的附图中总体上描述和示出的即时组件可以以多种不同的配置来布置和设计。因此,如在相关联的附图和说明书中所表示的方法、装置、非暂时性计算机可读介质和系统的实施例的详细描述并非旨在限制本申请的范围,而仅代表所选实施例。
在整个说明书中描述的即时特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。例如,在整个说明书中,短语“示例实施例”、“一些实施例”或其他类似语言的使用是指以下事实:结合该实施例描述的特定特征、结构或特性可以包括在至少一个实施例中。因此,在整个说明书中,短语“示例实施例”、“在一些实施例中”、“在其他实施例中”或其他类似语言的出现不一定都指同一组实施例,并且可以在一个或多个实施例中以任何合适的方式组合所描述的特征、结构或特性。
另外,尽管在实施例的描述中可能已经使用术语“消息”,但是本申请可以应用于多种类型的消息或网络数据,例如分组、帧、数据报等。在示例性实施例中可以描绘某些类型的消息、信令和协议,它们不限于特定类型的消息、信令或协议。
示例实施例提供了方法、设备、网络和/或系统,支持具有选择性对等方管理程序的区块链分布式系统。区块链是一种分布式系统,包括彼此通信的多个节点。区块链操作称为链码的程序(例如,智能合约等)保存状态和分布式账本数据并执行事务。一些事务是在链码上调用的操作。一般而言,区块链事务通常必须由某些区块链成员“背书(endorsed)”,只有背书的事务才能提交给区块链,并影响区块链的状态。其他未被背书的事务将被忽略。可能存在一个或多个用于管理功能和参数的特殊链码,统称为系统链码。
节点是区块链系统的通信实体。在不同类型的多个节点可以在同一物理服务器上运行的意义上,“节点”可以执行逻辑功能。节点在信任域中分组,并与以各种方式控制它们的逻辑实体相关联。节点可以包括不同类型,例如客户端或提交客户端节点,向背书方(例如,对等方)提交事务-调用,并且将事务-建议广播到订购服务(例如,订购节点)。另一类节点是对等节点,可以接收客户提交的事务,提交事务并维护状态和区块链事务分布式账本的副本。尽管不是必需的,但对等方也可以充当背书方的角色。订购服务节点或订购方是为所有节点运行通信服务的节点,并实现交付保证,例如在提交事务和修改区块链的世界状态时向系统中的每个对等节点广播,这是初始区块链事务的另一个名称,通常包含控制和设置信息。
分布式账本是区块链的所有状态转换的有序、防篡改记录。状态转换可以由参与方(例如,客户端节点、订购节点、背书方节点,对等节点等)提交的链码调用(即,事务)引起。事务可能导致一组资产键值对作为一个或多个操作数(例如创建、更新、删除等)被提交到分布式账本。分布式账本包括一个区块链(也称为链),用于将不可变、顺序的记录存储在块中。分布式账本还包括一个状态数据库,用于维护区块链的当前状态。每个通道通常有一个分布式账本。每个对等节点都为其所属的每个通道维护一个分布式账本的副本。
链作为事务日志被构造为哈希链接的块,并且每个块包含N个事务的序列,其中N等于或大于1。块头部包括块事务的哈希值,以及前一个块头部的哈希值。以这种方式,账本上的所有事务都可以被排序并加密地链接在一起。因此,在不破坏哈希链接的情况下不可能篡改帐本数据。最近添加的区块链块的哈希表示链上之前发生的每笔事务,从而可以确保所有对等节点处于一致且受信任的状态。链可以存储在对等节点文件系统(即本地、附加存储、云等)上,从而有效地支持区块链工作负载的仅附加性质。
不可变账本的当前状态表示链事务日志中包括的所有键的最新值。由于当前状态表示通道已知的最新键值,因此有时将其称为世界状态。链码调用针对账本的当前状态数据执行事务。为了使这些链码交互有效率,可以将键的最新值存储在状态数据库中。状态数据库可能只是链中事务日志的索引视图,因此可以随时从链中重新生成。可以在对等节点启动时以及在接受事务之前自动恢复(或根据需要生成)状态数据库。
示例实施例提供对运行时对等方的性能的连续评估,并以可信赖且不可否认的方式识别慢速或瓶颈的对等方。资源评估可以提供重新平衡网络负载和/或添加/删除/更改对等角色和负载以实现最佳效率的能力。在区块链网络中,节点通常是互不信任的。实体由不同的组织拥有和管理。一个组织的监控服务可能不信任另一组织的监控服务。客户在管理区块链事务的执行方面拥有极大的行动自由度,因为他们可以确定哪些对等方发送背书请求,以及来自那些对等方的哪些响应以选择将事务信封发送到订购方节点。
示例实施例提供了使背书过程成为区块链事务。背书请求和响应在按顺序生成、以块收集并提交给共享账本时不可否认。可以通过在网络自我评估过程中检查区块链来推断出对等方之间已知差异的识别和处理。在操作中,客户端节点将背书请求而不是一个或多个背书对等方发送到订购方节点。背书请求和响应存储在块中,对等方在从订购方节点接收到块时执行背书,而不是引导来自客户端的请求,然后将响应发送到订购方/订购节点。每个客户端可以通过监控对等方的相对处理速度来执行监控和重新平衡,包括比较每个事务的背书请求和响应的块高。结果,可以通过向那些识别出的对等方以为那些对等方识别的处理速度降序排列的顺序发送背书请求来执行对等方的选择。
图1A示出了根据示例实施例的用于处理区块链事务负载的对等方监控和选择过程的逻辑网络图。参照图1A,配置100A包括客户端节点114,该客户端节点114从分析模块110接收背书方选择111,该分析模块110可以是任何节点的计算机处理系统的一部分,配置为监控和确定对等方统计113以用于节点分配。对等方信息可用于供应对等方并平衡需要分配给对等方的区块链事务的负载112。客户端114可以将可以排队并可能需要背书115的背书方请求115提交到订购方节点116,该订购方节点可以是为执行背书和区块链事务120的共识而设置的订购方节点池116的一部分。事务信封117也被发送到订购方节点116。一旦已经做出对等方分配决定,则排序器116的输出可以包括背书确认119,并且还包括要分配给对等方的块121。
负载平衡模块112可以基于对等方130的监控和更新的活动来重新配置131对等方的网络。块121使对等方能够执行实现活动负载的目标所需的认可和/或提交。提交对等方140可以仅执行事务的提交,以记录VSCC142背书的事务123。在此示例中,另一对等方138用提交系统链码(ESCC)134、验证系统链码(VSCC)136和链码(CC)132背书并提交事务。背书事务125和记录的背书事务127然后提交到账本。
以上要素是支配背书过程的基本组成部分。系统链码是特权链码,它在执行背书方的同一进程中运行。系统链码可以访问背书方的所有资源。另一方面,链码是一段与定义明确的接口交互的代码。要背书提议,背书方首先执行提议所引用的CC,然后,将链码的输出传递给产生签名的ESCC。签名表示对提议的认可。背书置于事务中,该事务被发送到在一个区块中对事务进行订购并传播该区块的订购服务。一旦提交对等方接收到该块后,该块中的每个事务都将传递到VSCC,以验证是否满足背书策略(即,有足够的背书)。
图1B示出了根据示例实施例的在对等方管理和负载处理过程期间执行的一组操作的系统配置图。参照图1B,系统配置100B包括客户端节点152、执行背书和提交的第一对等方154、执行事务提交的第二对等方156以及管理区块链负载向对等方的分配的订购方节点158。客户端152可以将背书请求和带有背书人列表162的事务提议发送给订购方158,订购方158管理负载的分配。订购方158将为提交对等方构造块164。块166被发送到所标识的对等方154/156。对等方156可以处理事务信封168,其他对等方154可以这样做,还可以处理背书请求和响应172。然后,对等方可以将提交的事件174提交给客户端152,客户端152将背书响应176提交给订购方158。作为响应,将块178发送给对等方,并且背书对等方向客户152提交背书确认182,客户端152处理该背书确认并创建事务信封184,该事务信封184被发送186给订购方158。“E”代表背书,“C”代表提交方。已处理的事务信封将提交到账本。在背书确认的处理过程中,对等方处理时间将被标识并与块高进行比较。执行对任何对等方的已知统计信息的更新,并根据对等方的感知处理能力对其进行重新排序。事务是某些事件的结果,例如出现在账本上的相应背书。在这里,出现表明背书提议将被包含在区块链的某个区块(即账本)中。区块高度是距区块链起源区块的距离。背书响应(即一个或多个回复,取决于背书策略)出现在帐本上。每个背书响应都将在特定区块中显示在账本上。因此,可以确定距创始块(genesis block)一定距离(即块高度)。在这一点上,可以比较背书提议和响应的距离或高度,以测量对等方的响应能力。
图1C示出了根据示例实施例的,根据相应的性能识别对等方负载能力并对各对等方进行排名的示例对等方处理管理图。参考图1C,在对等方处理能力模型100C中展示了用于识别快速对等方、慢速对等方和中速对等方的过程,其中在完成区块链处理周期所需的时间内监控对等方P1、P2、P3和P4。例如,账本事务190由大约两个时间单位的P1和大约三个时间单位的P2和P3处理。P4需要19个时间单位,因此比其他对等方慢得多。可以根据他们的处理时间来将对等方进行排名。对等方的过程被标识为针对所有对等方的事务提议191、来自对等方P1 192的事务响应、来自对等方P2和P3的事务响应193以及来自对等方P4的事务响应194。一旦接收到所有响应,就执行195共识。显然,与其他对等方相比,第四对等方P4没有提供最佳的处理平台,因此P4应该移到对等方排名列表的底部。结果,P4将收到较少的背书请求,将被切换为纯粹的提交角色并被添加到订购方网络中。区块的高度是从创始块“t0”(区块0)开始持续增长的高度,而“ti”是高度为“i”的区块。
根据示例实施例,利用消息和块内容的处理,消息类型可以包括从客户端向订购方发送的背书请求、从对等方向订购方发送的背书响应,以及从订购方发送到对等方的背书响应确认以及阻止从对等方发送到客户端的提交事件。可以看出,订购方致力于管理大多数消息传输和分配工作。在块中,块可以包括由客户创建的背书请求、背书响应、背书响应确认和事务信封或“事务”。在一个示例中,监控过程可以基于该客户端的凭证来识别试图获得超出严格要求背书的客户端。客户端不能随意拒绝对等方的响应和/或否认监控过程未检测到从对等方收到响应。此外,客户端无法提交未完成或不正确的事务信封而不会被识别,对等方也不能假装处理背书和提交比实际提供的要快。该配置提供了更大、更高效的事务吞吐量以及更低的事务等待时间。
图2A示出了根据示例实施例的区块链系统架构配置200A。参考图2A,区块链架构200A可以包括某些区块链单元,例如,一组280区块链节点281-284,这些节点参与区块链事务添加和验证过程(共识)。区块链节点281-284中的一个或多个可以背书事务并且区块链节点281-284中的一个或多个可以为架构200A中的所有区块链节点提供订购服务。区块链节点可以发起区块链身份验证并尝试写入存储在区块链层220中的区块链不可变账本,其副本也可以存储在基础物理基础设施210上。区块链配置可以包括一个或多个应用270、链接到应用编程接口(API)260,以访问和执行存储的可以根据参与者寻求的定制配置创建并且可以维持自己状态、控制自己的资产、并接收外部信息的程序/应用程序代码250(例如,链码、智能合约等)。
区块链基础或平台205可以包括区块链数据、服务(例如,密码信任服务、虚拟执行环境等)的各个层,以及可用于接收和存储新事务并向正在寻求访问数据条目的审核方提供访问的基础物理计算机基础设施。区块链层220可以暴露接口,提供对处理程序代码和使用物理基础设施210所必需的虚拟执行环境的访问。密码信任服务230可以用于验证诸如资产交换事务类的事务并保持信息私有。
图2A的区块链架构配置可以经由区块链平台205暴露的一个或多个接口以及提供的服务来处理和执行程序/应用代码250。代码250可以控制区块链资产。例如,代码250可以存储和传输数据,并且可以由节点281-284以智能合约和相关链码的形式由具有其执行条件或其他代码单元执行。作为非限制性示例,可以创建智能合约以执行提醒、更新和/或其他更改、更新等的通知。智能合约本身可以用于标识与授权和访问要求及账本使用相关的规则。在一示例中,对等方性能数据222可以由包括在区块链层220中的一个或多个处理实体(例如,虚拟机)来识别和处理。结果可以包括识别与应当向其分配块的对等方实体相关联的最佳计算平台224,以用于处理区块链任务/事件。
利用链码,可以通过高级应用和编程语言创建智能合约,然后将其写入区块链中的块。智能合约可以包括可执行代码,被区块链(例如,区块链对等方的分布式网络)注册、存储和/或复制。事务是可以响应于与智能合约相关联的条件得到满足而执行的智能合约代码的执行。智能合约的执行可以触发对数字区块链账本状态的可信修改。由智能合约执行引起的对区块链账本的修改可以通过一个或多个共识协议在整个区块链对等方的分布式网络中自动复制。
智能合约可以以键值对的格式将数据写入区块链。此外,智能合约代码可以读取存储在区块链中的值,并将其用于应用操作中。智能合约代码可以将各种逻辑操作的输出写入区块链。代码可用于在虚拟机或其他计算平台中创建临时数据结构。写入区块链的数据可以是公开的和/或可以加密并保持为私有。智能合约使用/生成的临时数据由提供的执行环境保存在内存中,一旦识别出区块链所需的数据便将其删除。
链码可以包括具有附加特征的智能合约的代码解释。如本文所述,链码可以是部署在计算网络上的程序代码,共识过程中与链验证器一起在链上执行并验证链码。在操作中,链码接收哈希,并从区块链中检索与使用先前存储的特征提取器创建的数据模板关联的哈希。如果哈希标识符的哈希值与从存储的标识符模板数据创建的哈希值匹配,则链码将授权密钥发送到请求的服务。链码可以将与密码详细信息关联的数据写入区块链。在图2A的例子中,当将任务委派给对等方时,可以将对等方性能指标写入区块链事务块和其他信息源以供参考。
图2B示出了根据示例实施例的在区块链的节点之间的区块链事务流200B的示例。参考图2B,事务流可以包括由应用客户端节点201发送到背书对等节点281的事务提议291。背书对等节点281可以验证客户端签名并执行链码功能以发起事务。输出可能包括链码结果、在链码中读取的一组键/值版本(读取集)以及以链码写入的一组键/值(写入集)。如果得到批准,则将提议响应292与背书签名一起发送回客户端201。客户端201将背书组装成事务有效载荷293,并将其广播到订购服务节点284。订购服务节点284然后将订购的事务作为块传递给信道上的所有对等方281-283。在提交到区块链之前,每个对等方281-283可以验证事务。例如,对等方可以检查背书策略,以确保指定对等方的正确分配已经对结果进行了签名并针对事务有效负载293验证了签名。
再次参考图2B,客户端节点201通过构造请求并将其发送给作为背书方的对等节点281来发起事务291。客户端201可以包括利用支持的软件开发工具包(SDK)的应用,诸如NODE、Java、PYTHON等,利用可用的API来生成事务提议。提议是调用链码功能的请求,以便可以读取数据和/或将数据写入帐本(即,为资产写入新的键值对)。SDK可以充当填充程序,将事务提议打包为适当的架构格式(例如,远程过程调用(RPC)上的协议缓冲区),并采用客户的加密凭据为事务提议生成唯一的签名。作为响应,背书对等节点281可以验证(a)事务提议的格式正确,(b)过去尚未提交过事务(重放攻击保护),(c)签名是有效,(d)提交者(在此示例中为客户端201)已被适当授权在该信道上执行提议的操作。背书对等节点281可以将事务提议输入作为所调用的链码功能的参数。然后针对当前状态数据库执行链码以产生包括响应值、读取集和写入集的事务结果。然而,此时尚未对账本进行任何更新。在292中,将值的集合与背书对等节点281的签名一起作为提议响应292传递回客户端201的SDK,客户端201的SDK解析应用消费的有效载荷。
作为响应,客户端201的应用检查/验证背书对等方的签名,并比较提议响应以确定提议响应是否相同。如果链码仅查询帐本,则应用将检查查询响应并通常不将事务提交至订购节点服务284。如果客户端应用打算将事务提交至订购节点服务284以更新帐本,则应用在提交之前确定指定的背书策略是否已实现(即,事务所需的所有对等节点是否都对事务进行背书)。在此,客户端可以仅包括事务的多方之一。这种情况下,每个客户端可能有自己的背书节点,并且每个背书节点都需要对事务背书。该体系结构使得即使应用选择不检查响应或以其他方式转发未背书的事务,背书策略仍将由对等方强制执行并在提交验证阶段得到维护。
在成功检查之后,在步骤293中,客户端201将背书组装成事务,并在事务消息内向订购节点284广播事务提议和响应。事务可以包含读/写集、背书对等方的签名和信道ID。排序节点284不需要为了执行其操作而检查事务的全部内容,而是排序节点284可以简单地从网络中的所有信道接收事务,将信道按时间顺序对它们进行排序并创建每个信道的事务块。事务的块从排序节点284传递到信道上的所有对等节点281-283。验证块内的事务294以确保满足任何背书策略并确保自事务执行生成读取集以来,读取集变量的账本状态没有变化。块中的事务被标记为有效或无效。此外,在步骤295中,每个对等节点281-283将块附加到信道的链上,并且对于每个有效事务,将写入集提交给当前状态数据库。发出一个事件以通知客户端应用事务(调用)已被不可变地附加到链上,并通知事务是通过验证还是无效。
图3示出了有许可的区块链网络300的示例,其特征在于分布式、去中心化的对等架构以及管理用户角色和权限的证书颁发机构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管理与对等方420和区块链430的操作。在操作中,订购方识别各种背书请求412,这些背书请求412需要对等方420进行分配和处理。监控和分析对等方分析/性能信息414,并且可以按照与它们的相对处理能力相对应的顺序对对等方进行排名416和排序。对等方可以接收被创建418以包括各种任务相关信息的块。执行块的分配以以与对等方性能指标等级422一致的方式来分配背书请求。例如,具有最高能力评级的对等方在其他任何对等方之前被授予背书请求以优化区块链负载处理的性能。一旦事务被背书并完成,就将事务转发424到区块链430以进行提交。
图5A示出了根据示例实施例的在区块链中的对等方管理和事务管理的示例方法的流程图500A。参照图5A,该方法可以包括识别一个或多个背书请求以执行区块链事务背书512,将一个或多个背书请求发送到订购节点514,监控背书区块链对等方的性能指标516,基于性能指标,将背书请求分配给背书区块链对等方518;以及接收背书的区块链事务522。方法还可以包括在将块发送给对等方进行检查和处理之前,将背书请求存储在块中。方法还可以包括将块传输到一个或多个背书区块链对等方。性能指标可以包括基于一个或多个背书请求的块高度的背书区块链对等方的对等方处理速度。方法还可以包括根据背书的区块链对等方的相应对等方处理速度来对它们进行排序。处理时间最短的背书区块链对等方在背书区块链对等方的等级列表中排名最后。块包括一个或多个背书请求、一个或多个背书响应、一个或多个背书响应确认和事务记录。当基于性能指标将背书请求分配给背书区块链对等方时,过程还包括将背书请求分配给某些具有比其他区块链对等方更快处理速度的背书区块链对等方。
图5B示出了根据示例实施例的在区块链中的对等方管理和事务管理的另一示例方法的流程图。参照图5B,方法500B包括识别执行区块链事务背书的一个或多个背书请求552,监控背书区块链对等方的性能指标554,创建具有最佳性能指标的一组可信背书区块链对等方556,将一个或多个背书请求分配给组558,并接收背书的区块链事务562。
除了对等方的性能分析之外,具有最佳性能的对等方可以是为管理区块链事务和背书请求而形成的组的一部分。这样,通过依赖一组受信任的对等方,可以消除识别特定对等方的需要。一旦确定了顶级区块链对等方,就可以根据性能将它们放置在一组顶级对等方中,次要对等方也可以与第三对等方一起放在另一个组中。当为背书、事务提交等进行分配时,可以将任务发送到组,并由组中的一个随机选择的节点进行选择或处理,而不是专门针对处理任务事件进行标识。
图6A示出了根据示例实施例的一种或多种示例操作方法配置为在区块链上执行各种操作的示例物理基础设施。参照图6A,示例配置600A包括具有区块链620和智能合约640的物理基础设施610,可以执行任何示例实施例中包括的任何操作步骤612。步骤/操作612可以包括在一个或多个流程图和/或逻辑图中描述或描绘的一个或多个步骤。这些步骤可以表示从驻留在计算机系统配置的物理基础设施610上的一个或多个智能合约640和/或区块链620写入或读取的输出或书面信息。数据可以从执行的智能合约640和/或区块链620输出。物理基础设施610可以包括一个或多个计算机、服务器、处理器、存储器和/或无线通信设备。
图6B示出了根据示例实施例的在缔约方与配置为在区块链上强制执行智能合约条款的中介服务器之间的示例智能合约配置。参照图6B,配置600B可以代表由智能合约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所示,以通用计算设备的形式示出了云计算节点700中的计算机系统/服务器702。计算机系统/服务器702的组件可以包括但不限于一个或多个处理器或处理单元704、系统存储器706以及将包括系统存储器706的各种系统组件耦合到处理器704的总线。
总线表示几种类型的总线结构中的任何一种或多种,包括使用各种总线体系结构中的任何一种的存储器总线或存储器控制器、外围总线、加速图形端口以及处理器或本地总线。作为示例而非限制,此类体系结构包括行业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线。
计算机系统/服务器702通常包括各种计算机系统可读介质。这样的介质可以是计算机系统/服务器702可访问的任何可用介质,并且包括易失性和非易失性介质、可移动和不可移动介质。在一个实施例中,系统存储器706实现其他附图的流程图。系统存储器706可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)710和/或高速缓冲存储器712。计算机系统/服务器702可以进一步包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。仅作为示例,可以提供存储系统714以用于读取和写入不可移动的非易失性磁性介质(未示出并且通常称为“硬盘驱动器”)。尽管未示出,但是用于读取和写入可移动非易失性磁盘(例如“软盘”)的磁盘驱动器以及用于读取或写入可移动非易失性光盘的光盘驱动器可以提供CD-ROM、DVD-ROM或其他光学介质之类的磁盘。在这种情况下,每一个都可以通过一个或多个数据媒体接口连接到总线。如将在下面进一步描绘和描述的,存储器706可以包括具有一组(例如,至少一个)程序模块的至少一个程序产品,该程序模块被配置为执行本申请的各种实施例的功能。
具有一组(至少一个)程序模块718的程序/实用程序716以及操作系统、一个或多个应用程序、其他程序模块和程序数据可以通过示例而非限制的方式存储在存储器706中。操作系统、一个或多个应用程序、其他程序模块以及程序数据或它们的某种组合中的每一个可以包括联网环境的实现。程序模块718通常执行本文所述的本申请的各种实施例的功能和/或方法。
如本领域技术人员将理解的,本申请的各方面可以体现为系统、方法或计算机程序产品。因此,本申请的各方面可以采取以下形式:完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或结合了通常可以全部提及的软件和硬件方面的实施例。本文中称为“电路”、“模块”或“系统”。此外,本申请的各方面可以采取体现在其上体现有计算机可读程序代码的一个或多个计算机可读介质中体现的计算机程序产品的形式。
计算机系统/服务器702还可以与一个或多个外部设备720通信,诸如键盘、指示设备、显示器722等、使用户能够与计算机系统/服务器702交互的一个或多个设备和/或使计算机系统/服务器702与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)。这样的通信可以经由I/O接口724发生。然而,计算机系统/服务器702仍然可以通过网络适配器726与一个或多个网络通信,诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,Internet)。如图所示,网络适配器726通过总线与计算机系统/服务器702的其他组件进行通信。应当理解,尽管未示出,但是其他硬件和/或软件组件可以与计算机系统/服务器702结合使用。示例包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动器、阵列、RAID系统、磁带驱动器和数据档案存储系统等。
尽管在附图中示出了系统、方法和非暂时性计算机可读介质中的至少一个的示例性实施例,并且在前面的详细描述中进行了描述,但是应当理解,本申请不限于公开的实施例,而是能够进行如所附权利要求所阐述和定义的许多重新布置、修改和替换。例如,各个附图的系统的能力可以由本文描述的模块或组件中的一个或多个或以分布式架构来执行,并且可以包括发射机、接收机或两者。例如,由各个模块执行的全部或部分功能可以由这些模块中的一个或多个来执行。此外,本文描述的功能可以在模块或模块或组件内部或外部的各种时间并且与各种事件相关地执行。而且,可以经由以下各项中的至少一项在各个模块之间和/或通过多种协议发送各种模块之间发送的信息:数据网络、互联网、语音网络、互联网协议网络、无线设备、有线设备。而且,可以直接和/或经由一个或多个其他模块来发送或接收由任何模块发送或接收的消息。
本领域的技术人员将意识到,“系统”可以体现为个人计算机、服务器、控制台、个人数字助理(PDA)、手机、平板计算设备、智能手机或任何其他形式合适的计算设备或设备组合。将上述功能呈现为由“系统”执行并不旨在以任何方式限制本申请的范围,而是旨在提供许多实施例的一个示例。实际上,本文公开的方法、系统和装置可以以与计算技术一致的局部和分布式形式来实现。
应该注意的是,在本说明书中描述的一些系统特征已经作为模块呈现以便更具体地强调它们的实现独立性。例如,模块可以被实现为硬件电路,包括定制的超大规模集成电路(VLSI)电路或门阵列,诸如逻辑芯片、晶体管或其他分立组件的现成半导体。模块也可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备、图形处理单元等的可编程硬件设备中实现。
模块也可以至少部分地以软件实现以由各种类型的处理器执行。所标识的可执行代码单元可以例如包括计算机指令的一个或多个物理或逻辑块,计算机指令可以例如被组织为对象、过程或功能。然而,所标识的模块的可执行文件不需要在物理上位于一起,而是可以包括存储在不同位置的不同指令,当这些指令在逻辑上结合在一起时,包括模块并实现模块的所述目的。此外,模块可以存储在计算机可读介质上,该计算机可读介质可以是例如硬盘驱动器、闪存设备、随机存取存储器(RAM)、磁带或用于存储数据的任何其他此类介质。
实际上,可执行代码的模块可以是单个或多个指令,并且甚至可以分布在多个不同的代码段上、不同的程序之间以及多个存储设备上。类似地,操作数据可以在这里在模块内被识别和示出,并且可以以任何合适的形式体现并且可以在任何合适的类型的数据结构内组织。操作数据可以作为单个数据集收集,或者可以分布在包括不同存储设备的不同位置上并且可以至少部分地仅作为系统或网络上的电子信号存在。
将容易地理解,如本文的附图中总体上描述和示出的,本申请的组件可以以多种不同的配置来布置和设计。因此,实施例的详细描述不旨在限制所要求保护的本申请的范围,而仅代表本申请的所选实施例。本领域普通技术人员将容易地理解,可以以不同顺序的步骤和/或以与所公开的配置不同的配置的硬件元件来实践以上内容。因此,尽管已经基于这些优选实施例描述了本申请,但是对于本领域技术人员显而易见的是,某些修改、变型和替代构造将是显而易见的。
尽管已经描述了本申请的优选实施例,但是应当理解,所描述的实施例仅是示例性的,并且当考虑全部等价物和修改(例如,协议、硬件设备、软件平台等)的范围时,本申请的范围仅由所附权利要求书限定。
Claims (20)
1.一种计算机实现的方法,包括:
识别执行区块链事务背书的一个或多个背书请求;
将一个或多个背书请求传输到订购节点;
监控背书区块链对等方的性能指标;
根据性能指标将一个或多个背书请求分配给背书区块链对等方;以及
接收背书的区块链事务。
2.根据权利要求1所述的方法,还包括:
将一个或多个背书请求存储在一个块中;以及
将块传输到一个或多个背书区块链对等方。
3.根据权利要求1所述的方法,其中性能指标包括基于一个或多个背书请求的块高度的背书区块链对等方的对等方处理速度。
4.根据权利要求3所述的方法,还包括
根据背书区块链对等方各自的对等方处理速度对它们进行排序。
5.根据权利要求4所述的方法,其中处理时间最短的背书区块链对等方在背书区块链对等方的等级列表中排在最后。
6.根据权利要求2所述的方法,其中块包括一个或多个背书请求、一个或多个背书响应、一个或多个背书响应确认以及事务记录。
7.根据权利要求1所述的方法,其中基于性能指标将背书请求分配给背书区块链对等方包括:将背书请求分配给具有比其他背书区块链对等方更快的处理速度的一个或多个背书区块链对等方。
8.一种设备,包括:
处理器,配置为识别执行区块链事务背书的一个或多个背书请求;
发送器,配置为将一个或多个背书请求传输到订购节点;
其中处理器还配置为:
监控背书区块链对等方的性能指标,以及
根据性能指标将一个或多个背书请求分配给背书区块链对等方,以及
接收器,配置为接收背书的区块链事务。
9.根据权利要求8所述的设备,其中处理器还配置为:
将一个或多个背书请求存储在一个块中;以及
发送器还配置为将块传输到一个或多个背书区块链对等方。
10.根据权利要求8所述的设备,其中性能指标包括基于一个或多个背书请求的块高度的背书区块链对等方的对等方处理速度。
11.根据权利要求10所述的设备,其中处理器还配置为根据背书区块链对等方各自的对等方处理速度对它们进行排序。
12.根据权利要求11所述的设备,其中处理时间最短的背书区块链对等方在背书区块链对等方的等级列表中排在最后。
13.根据权利要求9所述的设备,其中块包括一个或多个背书请求、一个或多个背书响应、一个或多个背书响应确认以及事务记录。
14.根据权利要求8所述的设备,其中处理器基于性能指标将背书请求分配给背书区块链对等方包括:将背书请求分配给具有比其他背书区块链对等方更快的处理速度的一个或多个背书区块链对等方。
15.一种计算机可读存储介质,包括指令,指令在执行时使处理器执行:
识别执行区块链事务背书的一个或多个背书请求;
将一个或多个背书请求传输到订购节点;
监控背书区块链对等方的性能指标;
根据性能指标将一个或多个背书请求分配给背书区块链对等方;以及
接收背书的区块链事务。
16.根据权利要求15所述的计算机可读存储介质,其中处理器进一步配置为执行:
将一个或多个背书请求存储在一个块中;以及
将块传输到一个或多个背书区块链对等方。
17.根据权利要求15所述的计算机可读存储介质,其中性能指标包括基于一个或多个背书请求的块高度的背书区块链对等方的对等方处理速度。
18.根据权利要求17所述的计算机可读存储介质,其中处理器进一步配置为执行:
根据背书区块链对等方各自的对等方处理速度对它们进行排序。
19.根据权利要求18所述的计算机可读存储介质,其中处理时间最短的背书区块链对等方在背书区块链对等方的等级列表中排在最后。
20.根据权利要求16所述的计算机可读存储介质,其中块包括一个或多个背书请求、一个或多个背书响应、一个或多个背书响应确认以及事务记录,并且基于性能指标将背书请求分配给背书区块链对等方包括:将背书请求分配给具有比其他背书区块链对等方更快的处理速度的一个或多个背书区块链对等方。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/007,247 US10831530B2 (en) | 2018-06-13 | 2018-06-13 | Secure consensus-based endorsement for self-monitoring blockchain |
US16/007,247 | 2018-06-13 | ||
PCT/EP2019/064665 WO2019238499A1 (en) | 2018-06-13 | 2019-06-05 | Secure consensus-based endorsement for self-monitoring blockchain |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112154468A true CN112154468A (zh) | 2020-12-29 |
Family
ID=66867108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980029253.2A Pending CN112154468A (zh) | 2018-06-13 | 2019-06-05 | 基于安全共识的自监控区块链背书 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10831530B2 (zh) |
JP (1) | JP7304118B2 (zh) |
CN (1) | CN112154468A (zh) |
WO (1) | WO2019238499A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10270748B2 (en) | 2013-03-22 | 2019-04-23 | Nok Nok Labs, Inc. | Advanced authentication techniques and applications |
US11868995B2 (en) | 2017-11-27 | 2024-01-09 | Nok Nok Labs, Inc. | Extending a secure key storage for transaction confirmation and cryptocurrency |
US11831409B2 (en) | 2018-01-12 | 2023-11-28 | Nok Nok Labs, Inc. | System and method for binding verifiable claims |
US10880072B2 (en) * | 2018-06-20 | 2020-12-29 | Verizon Patent And Licensing Inc. | Systems and methods for controlled random endorsement in a blockchain network |
US10911240B2 (en) * | 2018-07-23 | 2021-02-02 | Hitachi, Ltd. | Off-chain blockchain storage with validation |
CN109033405B (zh) * | 2018-08-03 | 2020-09-08 | 华为技术有限公司 | 维护区块链的方法和装置、服务器和计算机可读存储介质 |
US11748818B1 (en) * | 2018-09-18 | 2023-09-05 | Myndshft Technologies, Inc. | System and method for healthcare revenue cycle management |
US11720545B2 (en) * | 2018-12-19 | 2023-08-08 | International Business Machines Corporation | Optimization of chaincode statements |
US11348101B2 (en) | 2018-12-19 | 2022-05-31 | International Business Machines Corporation | Post-settlement processes |
US12041039B2 (en) * | 2019-02-28 | 2024-07-16 | Nok Nok Labs, Inc. | System and method for endorsing a new authenticator |
US11792024B2 (en) | 2019-03-29 | 2023-10-17 | Nok Nok Labs, Inc. | System and method for efficient challenge-response authentication |
US11954678B2 (en) | 2019-12-06 | 2024-04-09 | Mastercard International Incorporated | Method and system for communication between blockchains on heterogeneous blockchain networks |
US11816662B2 (en) * | 2019-12-06 | 2023-11-14 | Mastercard International Incorporated | Method and system for enabling communication between blockchains on heterogeneous blockchain networks |
EP3846062B1 (en) * | 2020-01-06 | 2024-08-28 | Tata Consultancy Services Limited | Method and system for processing transactions in a blockchain network |
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
US11563559B2 (en) | 2020-07-29 | 2023-01-24 | International Business Machines Corporation | Parallel processing of blockchain procedures |
CN111984733A (zh) * | 2020-09-03 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 基于区块链的数据传输方法、装置及存储介质 |
CN112149181B (zh) * | 2020-09-29 | 2023-12-12 | 合肥城市云数据中心股份有限公司 | 一种带有信誉值分析作用的混合云数据中心数据传输方法 |
US11606425B2 (en) * | 2020-12-22 | 2023-03-14 | International Business Machines Corporation | Visibility of digital assets at channel level |
US11854080B2 (en) * | 2021-02-12 | 2023-12-26 | Blackstar Enterprises Group | System and method for matching orders and immutable blockchain ledger for all customer trading activity with settlement into the broker dealer ecosystem |
CN115865728A (zh) * | 2022-11-24 | 2023-03-28 | 中国工商银行股份有限公司 | 基于区块链的交易监听方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180121909A1 (en) * | 2016-10-28 | 2018-05-03 | International Business Machines Corporation | System and method to dynamically setup a private sub-blockchain based on agility of transaction processing |
CN108122159A (zh) * | 2017-12-22 | 2018-06-05 | 中链科技有限公司 | 一种基于区块链的保理信息处理方法及系统 |
CN108122165A (zh) * | 2017-12-15 | 2018-06-05 | 北京中电普华信息技术有限公司 | 一种区块链共识方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6657972B2 (ja) * | 2016-01-08 | 2020-03-04 | 日本電気株式会社 | 負荷分散システム、負荷分散装置、負荷分散方法、および、プログラム |
EP3424177B1 (en) | 2016-02-29 | 2021-10-13 | SecureKey Technologies Inc. | Systems and methods for distributed identity verification |
DE112016006867B4 (de) | 2016-05-18 | 2022-09-08 | Innogy Innovation Gmbh | Peer-to-Peer-Netzwerk und Knoten eines Peer-to-Peer-Netzwerks |
US10601900B2 (en) * | 2017-05-24 | 2020-03-24 | Red Hat, Inc. | Supporting distributed ledgers in a micro-services environment |
US10579424B2 (en) * | 2018-05-15 | 2020-03-03 | International Business Machines Corporation | Prioritization in a permissioned blockchain |
-
2018
- 2018-06-13 US US16/007,247 patent/US10831530B2/en active Active
-
2019
- 2019-06-05 WO PCT/EP2019/064665 patent/WO2019238499A1/en active Application Filing
- 2019-06-05 CN CN201980029253.2A patent/CN112154468A/zh active Pending
- 2019-06-05 JP JP2020562204A patent/JP7304118B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180121909A1 (en) * | 2016-10-28 | 2018-05-03 | International Business Machines Corporation | System and method to dynamically setup a private sub-blockchain based on agility of transaction processing |
CN108122165A (zh) * | 2017-12-15 | 2018-06-05 | 北京中电普华信息技术有限公司 | 一种区块链共识方法及系统 |
CN108122159A (zh) * | 2017-12-22 | 2018-06-05 | 中链科技有限公司 | 一种基于区块链的保理信息处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US10831530B2 (en) | 2020-11-10 |
WO2019238499A1 (en) | 2019-12-19 |
JP7304118B2 (ja) | 2023-07-06 |
US20190384627A1 (en) | 2019-12-19 |
JP2021526751A (ja) | 2021-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7304118B2 (ja) | 自己監視ブロックチェーンのための安全な合意に基づくエンドースメント | |
CN111989705B (zh) | 有许可区块链中的优先级 | |
JP7250568B2 (ja) | ブロックチェーン・ノード、ブロックチェーン・ノードの方法、およびブロックチェーン・ノードのコンピュータ・プログラム | |
CN112136291B (zh) | 用于区块链的验证的方法和系统 | |
CN110380858B (zh) | 用于处理区块链的游戏共识协议的方法和系统 | |
US10678598B2 (en) | Enforcing compute equity models in distributed blockchain | |
US11057225B2 (en) | Enforcing compute equity models in distributed blockchain | |
US11157833B2 (en) | Learning service blockchain | |
US11677542B2 (en) | Ad-hoc smart contract generation in a blockchain | |
US10609032B2 (en) | Enforcing compute equity models in distributed blockchain | |
CN112106336A (zh) | 区块链上的代理方代理和代理方账本 | |
CN110674128B (zh) | 区块链的链上治理 | |
CN112868210B (zh) | 区块链时间戳协议 | |
US20200327100A1 (en) | Information management and access control in a database | |
CN112005264A (zh) | 实施跨链事务的区块链 | |
CN114128214B (zh) | 用于配置区块链的安全层 | |
CN112154434A (zh) | 区块链上智能合约组的自动数据投影 | |
US11263059B2 (en) | Load leveler | |
KR20220160021A (ko) | 낮은 신뢰 권한 액세스 관리 | |
CN111698198B (zh) | 秘密生成和份额分发 | |
US12061600B2 (en) | API management for batch processing | |
CN114626100A (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 |