CN109040029A - 在区块链中执行事务的方法和装置 - Google Patents
在区块链中执行事务的方法和装置 Download PDFInfo
- Publication number
- CN109040029A CN109040029A CN201810771324.3A CN201810771324A CN109040029A CN 109040029 A CN109040029 A CN 109040029A CN 201810771324 A CN201810771324 A CN 201810771324A CN 109040029 A CN109040029 A CN 109040029A
- Authority
- CN
- China
- Prior art keywords
- affairs
- transactions requests
- simulation
- intelligent contract
- implementing result
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- 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/32—Cryptographic 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/3247—Cryptographic 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开的实施例涉及在区块链中执行事务的方法、装置和计算机可读存储介质。该方法包括:接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;模拟执行所述至少一个智能合约并生成模拟执行结果,所述模拟执行结果包括多个读集合,所述多个读集合的唯一键列表彼此不重合;将所述模拟执行结果返回至所述客户端。本公开的实施例提供了在区块链中批量处理事务请求的方案,使得能够在一个事务中批量调用智能合约并进行签名,从而显著减少了签名和验证签名所需的资源,同时显著提高了区块链的事务吞吐能力。
Description
技术领域
概括地说,本公开的实施例涉及信息技术领域,更具体地说,涉及在区块链中执行事务的方法、装置及计算机可读存储介质。
背景技术
区块链是用分布式数据库识别、传播和记载信息的智能化对等网络,也称为价值互联网。区块链具有去中心化、反篡改、数据一致性存储、过程透明可追踪等技术优势,其被认为在金融、征信、物联网、经济贸易结算、资产管理等众多领域都拥有广泛的应用前景。
智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议,其能够表现为在区块链上准确运行的计算机程序。用户通过使用智能合约进行事务、共享数据、建立信任,并由区块链技术的特性而保障数据的存储、读取以及执行整个过程透明可跟踪、不可篡改。
当前,当区块链的事务是通过调用智能合约来完成时,一个事务只能调用一个智能合约并对调用模拟结果进行签名,然而这种逐一签名以及对区块中的事务进行逐一验证签名是极其消耗资源的。因此,需要一种改进的在区块链中执行事务的方法。
发明内容
总体上,本公开的实施例提供了在区块链中执行事务的方法、装置及计算机可读存储介质以至少部分地解决现有技术的上述及其它潜在问题。
在本公开的实施例的第一方面,提供了一种在区块链中执行事务的方法。该方法包括:接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;模拟执行所述至少一个智能合约并生成模拟执行结果,所述模拟执行结果包括多个读集合,所述多个读集合的唯一键列表彼此不重合;将所述模拟执行结果返回至所述客户端。
在本公开的实施例的第二方面,提供了一种在区块链中执行事务的方法。该方法包括:接收包括事务的区块;基于世界状态验证所述事务中的多个读集合,所述多个读集合中的唯一键列表彼此不重合;在通过验证的情况下,根据所述事务中的多个写集合来更新所述世界状态。
在本公开的实施例的第三方面,提供了一种在区块链中执行事务的方法。该方法包括:接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;模拟执行所述至少一个智能合约并生成事务的模拟执行结果,所述模拟执行结果包括多个读集合和多个写集合,所述多个读集合中的唯一键列表彼此不重合;将所述模拟执行结果返回至所述客户端;接收包括所述事务的区块;基于世界状态验证所述事务中的多个读集合;在通过验证的情况下,根据所述事务中的所述多个写集合来更新所述世界状态。
在本公开的实施例的第四方面,提供了一种在区块链中执行事务的装置。该装置包括:存储器,其用于存储指令;以及处理器,其耦合到所述存储器,当所述指令被执行时使得所述处理器执行以下操作:接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;模拟执行所述至少一个智能合约并生成模拟执行结果,所述模拟执行结果包括多个读集合,所述多个读集合的唯一键列表彼此不重合;将所述模拟执行结果返回至所述客户端。
在本公开的实施例的第五方面,提供了一种在区块链中执行事务的装置。该装置包括:存储器,其用于存储指令;以及处理器,其耦合到所述存储器,当所述指令被执行时使得所述处理器执行以下操作:接收包括事务的区块;基于世界状态验证所述事务中的多个读集合,所述多个读集合中的唯一键列表彼此不重合;在通过验证的情况下,根据所述事务中的多个写集合来更新所述世界状态。
在本公开的实施例的第六方面,提供了一种在区块链中执行事务的装置。该装置包括:存储器,其用于存储指令;以及处理器,其耦合到所述存储器,当所述指令被执行时使得所述处理器执行以下操作:接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;模拟执行所述至少一个智能合约并生成事务的模拟执行结果,所述模拟执行结果包括多个读集合和多个写集合,所述多个读集合中的唯一键列表彼此不重合;将所述模拟执行结果返回至所述客户端;接收包括所述事务的区块;基于世界状态验证所述事务中的多个读集合;在通过验证的情况下,根据所述事务中的所述多个写集合来更新所述世界状态。
在本公开的实施例的第七方面,提供了一种计算机可读存储介质。该计算机可读存储介质存储有指令,所述指令用于执行根据本公开的第一、第二和第三方面描述的方法。
本公开的实施例提供了在区块链中批量处理事务请求的方案,有效地解决了由于一次事务只能调用一个智能合约带来的签名和验证签名的资源开销问题,该方案可以将多个智能合约的调用合并在一个事务中,从而让多个智能合约分摊了签名和签名验证的资源开销,并将原本需要多次的事务减少为只需要一次事务,显著地提高了区块链的事务吞吐能力。
附图说明
结合附图并参考以下详细描述,本公开各实施例的上述和其它特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了包括区块链网络和客户端的区块链应用系统100的示意图,可以在该区块链应用系统上实现根据本公开的实施例的方法;
图2示出了根据本发明实施例的在区块链中执行事务的示例性方法200的流程图;
图3示出了根据本发明实施例的在区块链中执行事务的示例性方法300的流程图;
图4示出了根据本发明实施例的在区块链中执行事务的示例性方法400的流程图。
图5示出了根据本发明实施例的在区块链中执行事务的示例性装置500的示意图;以及
图6示出了根据本发明的实施例的在区块链中执行事务的方法的一个具体示例600。
具体实施方式
现将结合附图对本公开的实施例进行具体的描述。应当注意的是,附图中对相似的部件或者功能组件可能使用同样的数字标示。所附附图仅仅旨在说明本公开的实施例。本领域的技术人员可以在不偏离本公开精神和保护范围的基础上从下述描述得到替代的实施方式。
如本文中所述,术语“包括”及其各种变体可以被理解为开放式术语,其意味着“包括但不限于”。术语“基于”可以被理解为“至少部分地基于”。术语“一个实施例”可以被理解为“至少一个实施例”。术语“另一实施例”可以被理解为“至少一个其它实施例”。本文使用词语“示例性”表示“充当示例、实例或举例说明”。本文中被描述为“示例性”的任何实施例都并非必然解释为对于其它实施例而言是优选的或有优势的。
为了便于描述,下面对本公开内容中出现的一些术语进行说明,应当理解,本申请所使用的术语应解释为具有与其在本申请说明书的上下文及有关领域中的意义一致的意义。
本公开内容中的术语“Peer节点”是指区块链网络中的一种记账节点,负责区块数据的校验和保存。同时在Peer节点上,也可以安装和执行智能合约,对账本进行读写操作。
本公开内容中的术语“Orderer节点”是指区块链网络中的一种排序节点,也可以被称为共识节点,其为区块链网络中的所有通道提供公共服务,将事务排序后组装为区块。Orderer节点独立于Peer节点运行,其被设计为支持共识算法。
本公开内容中的术语“Committer节点”是指区块链网络中的一种提交节点,Committer节点是Peer节点的子类,负责对Orderer节点排序后的事务进行检查,选择合法的事务执行并写入存储。
本公开内容中的术语“Endorser节点”是指区块链网络中的一种背书节点,Endorser节点是Peer节点的子类,负责检验某个事务是否合法,是否愿意为之签名背书。
本公开内容中的术语“通道”是指构建在区块链网络上的私有区块链,每个通道拥有自己独立的账本,实现了数据的隔离和保密。通道私有的账本在通道中是与所有参与该通道的节点共享的,并且事务方必须通过该通道的相关验证后才能与该账本进行交互。
本公开内容中的术语“读集合(Read Set)”和“写集合(Write Set)”是在Endorser节点上的事务模拟期间产生的。读集合包含在模拟期间事务读取到的至少一个唯一Key(唯一键)及对应版本。写集合包括事务改写的至少一个唯一Key及对应的新的值。Committer节点可利用读集合部分校验事务的有效性,利用写集合部分更新Key的版本和值。在验证阶段,如果读集合中的每个Key的版本都与状态数据库中对应的世界状态(World State)的版本相匹配,则认为此事务有效。如果事务有效,则Committer节点利用写集合更新世界状态。
本公开内容中的术语“世界状态”是指包含事务执行结果的变量集合。
本公开内容中的术语“事务请求(Transaction Proposal)”是指在区块链上执行某种功能的请求,又称为“事务请求”或“事务提案”。
在区块链中,一种方式是通过调用智能合约来完成区块链事务,一次事务只能调用一个智能合约。示例性的,其过程如下:事务发起方通过Endorser节点收集好已经签名的事务仿真结果,将这些结果合并为一个事务并签名,之后发给Orderer节点。Orderer节点收集一定数量的事务之后生成区块,然而将区块发送给Committer节点。Committer节点对区块中的事务进行逐个验证。在验证通过之后,则根据事务更新世界状态。然而,在上述方式中,签名和验证签名的过程由于涉及密码学是极其消耗资源的,进而影响了区块链的事务吞吐能力。
有鉴于此,本公开的实施例提供一种基于区块链的批量调用智能合约的解决方案,实现了在一次事务中调用多个智能合约。本公开的实施例可以应用于不同类型的区块链网络中。根据区块链参与方的不同,区块链通常被分为公有链、联盟链和私有链三种类型。公有链对外开放,用户无需任何授权就可以访问区块链网络和区块数据,发起各种事务。联盟链限制了只有联盟中的成员才能参与,区块链上的操作权限根据联盟定制的相关规则来确定。私有链一般在私有组织内部使用,区块链上的操作权限根据私有组织的自行规定执行。本公开的实施例以联盟链为示例来描述本公开的技术,但是应当理解,本公开的实施例也可以适用于其它类型的区块链。
图1示出了包括区块链网络120和客户端110的区块链应用系统100的示意图,可以在该区块链应用系统100上实现根据本公开的实施例的方法。区块链网络120包括多个Orderer节点131、132和多个Peer节点141、142、143、151、152、153、154。由于区块链技术具有去中心化、分布式的特性,各区块链节点可通过各种通信介质互相交换信息。示例性的,Orderer节点负责收集事务进行排序并打包生成新的区块,从而保证各Peer节点上的数据一致性。Peer节点是参与事务的主体,代表每个参与到链上的成员,负责储存完整的账本数据即区块数据,负责共识环节中的执行智能合约。客户端110可以连接到Peer节点,用户通过客户端110访问Peer节点以在区块链网络120上发起事务。
示例性的,Peer节点中的一些节点可以是连接到Orderer节点的Endorser节点,或可以是连接到Orderer节点的Committer节点,或既是Endorser节点又是Committer节点,其中,Endorser节点负责检验某个事务是否合法,是否愿意为之签名背书,Committer节点负责对Orderer节点排序后的事务进行检查,选择合法的事务执行并写入存储。例如,Peer节点141和151可以充当Endorser节点并与Orderer节点131和132通信地耦合,且部署有第一智能合约和第二智能合约,Peer节点142和152可以充当Committer节点并与Orderer节点131和132通信地耦合,或者所有的Peer节点141-143和151-154可以是Committer节点。
此外,Peer节点141-143可以形成组织140,Peer节点151-154可以形成组织150,其中,组织代表一组拥有共同信任的证书的成员节点。组织140和150可以形成联盟,联盟表示由若干组织构成的集合,是联盟链场景下的结构形式。例如,组织140和150为了进行数据沟通可以加入到同一个通道,并且在某些Peer节点安装或部署智能合约,并且将该智能合约实例化到该通道中,则这些Peer节点成为该通道上的该智能合约的Endorser节点。例如,可以在组织140的Peer节点141和组织150的Peer节点151处部署第一智能合约和第二智能合约。
应当理解,图1中的区块链网络、客户端以及区块链网络节点仅是示意而非限制,其可以是任意数量。另外,在Peer节点处可以部署任意数量的智能合约。可以理解,为了便于描述本公开的实施例,未具体示出和描述所熟知的区块链网络120的其它类型的节点以免不必要地模糊本公开实施例的方面。
图2示出了根据本发明实施例的在区块链中执行事务的示例性方法200的流程图。可以将该方法200实现在图1的区块链应用系统100上,下面将参照图1和图2来描述方法200。方法200可以由图1中的Peer节点中的Endorser节点(诸如Peer节点141)执行。如流程图所示,方法200可以包括以下步骤:
。步骤201:接收来自客户端的多个事务请求,该多个事务请求与至少一个智能合约相关联。例如,用户通过客户端110向区块链网络120的Peer节点141发送第一事务请求和第二事务请求来发起事务,这两个事务请求与至少一个智能合约相关联。
步骤202:模拟执行该至少一个智能合约并生成模拟执行结果,该模拟执行结果包括多个读集合,该多个读集合的唯一键列表彼此不重合。例如,Peer节点141基于第一事务请求和第二事务请求来模拟执行相关联的该至少一个智能合约并生成模拟执行结果,该模拟执行结果包括两个读集合,分别对应于第一事务请求和第二事务请求,并且这两个读集合的唯一键列表不重合。由于读集合的唯一键列表不重合,避免了该至少一个智能合约的多个读集合发生冲突,从而可以批量调用该至少一个智能合约。应当理解,读集合或写集合可以为空集,空集和空集以及空集和非空集之间也是唯一键彼此不重合。
步骤203:将该模拟执行结果返回至客户端。例如,Peer节点141将该模拟执行结果返回至客户端110。
在一个实施例中,该多个事务请求可以包括该至少一个智能合约的标识和入口参数。例如,第一事务请求和第二事务请求可以包括该至少一个智能合约的标识(例如,智能合约的名字和版本)和入口参数(例如,智能合约的输入参数)。
在一个实施例中,步骤201可以包括接收来自客户端的多个事务请求,该多个事务请求与多个智能合约相关联,并且步骤202可以包括分别模拟执行该多个智能合约并生成模拟执行结果。例如,Peer节点141从客户端110接收第一事务请求和第二事务请求,第一事务请求与第一智能合约相关联,第二事务请求与第二智能合约相关联,并且Peer节点141基于第一事务请求和第二事务请求来模拟执行第一智能合约和第二智能合约以生成模拟执行结果。
在一个实施例中,该多个事务请求可以在业务上具有关联性。例如,第一事务请求可以与涉及劳动合同的第一智能合约相关联,第二事务请求可以与涉及保密协议和竞业协议的第二智能合约相关联,这两个事务请求在业务上具有关联性。在另一个实施例中,该多个事务请求可以是完全独立的而不在业务上具有关联性。
在一个实施例中,步骤201可以包括接收来自客户端的多个事务请求,该多个事务请求与单个智能合约相关联,并且步骤202可以包括分别执行该单个智能合约并生成模拟执行结果。例如,Peer节点141从客户端110接收第一事务请求和第二事务请求,第一事务请求和第二事务请求均与第一智能合约相关联,这两个事务请求包括相同的智能合约的标识但具有不同的入口参数,并且Peer节点141基于第一事务请求和第二事务请求来模拟执行第一智能合约以生成模拟执行结果。例如,在车联网场景中,使用相同的智能合约来记录安装在汽车上各处的温度传感器收集的温度(例如,发动机温度、车内温度、轮胎温度),第一事务请求可以包括该智能合约的标识和第一入口参数(例如,发动机温度),第二事务请求可以包括该智能合约的标识和第二入口参数(例如,车内温度)。例如,可以在在收集这两种不同类型的温度之后,模拟执行该智能合约(即,使用不同的入口参数来调用智能合约)来生成模拟执行结果(例如,记录这两个温度)。
在一个实施例中,在步骤201之前,方法200还可以包括:部署该至少一个智能合约。例如,该至少一个智能合约在调用之前被部署在Peer节点141处。
在一个实施例中,该多个读集合还包括唯一键列表中的至少一个唯一键的版本,该模拟执行结果还包括多个写集合。在进一步的实施例中,写集合的唯一键列表可以与读集合的唯一键列表重叠,例如,写集合的唯一键列表可以与读集合的唯一键列表一一对应。
此外,当签名策略要求客户端120将事务请求发送给多个Endorser节点时,类似地,可以在例如Endorser节点151处实现上述关于在Endorser节点141处执行的操作。
通过以上所描述的本公开的实施例,提供了在区块链中批量处理事务请求的方案,使得能够在一个事务中批量调用智能合约并进行签名,从而显著减少了签名所需的资源,同时显著提高了区块链的事务吞吐能力。
图3示出了根据本发明实施例的在区块链中执行事务的示例性方法300的流程图。可以将该方法300实现在图1的区块链应用系统100上,下面将参照图1和图3来描述方法300。方法300可以由图1中的Peer节点中的Committer节点(诸如Peer节点142)执行。如流程图所示,方法300可以包括以下步骤:
步骤301:接收包括事务的区块。例如,客户端110将从Peer节点141接收到的模拟执行结果(其包括多个读集合)封装在一个事务中,并向Orderer节点131发送该事务,Orderer节点131在接收若干个事务后对事务进行排序并打包生成区块,之后发送给区块链网络120中的Peer节点142。
步骤302:基于世界状态验证该事务中的多个读集合,该多个读集合中的唯一键列表彼此不重合。例如,Peer节点142基于世界状态使用该事务中的多个读集合来验证事务的有效性,并且该多个读集合中的唯一键列表彼此不重合。
步骤303:在通过验证的情况下,根据该事务中的多个写集合来更新世界状态。例如,当Peer节点142验证事务为有效时,利用该事务中的多个写集合中确定的键的版本和值来更新世界状态中的相应键的版本和值。
在一个实施例中,步骤302可以包括:将该多个读集合的唯一键列表中的各个唯一键的版本与世界状态中的相应键的版本进行比较;在完全相同的情况下通过验证。例如,Peer节点142将该多个读集合的唯一键列表中的各个唯一键的版本与世界状态中的相应键的版本进行比较,如果完全相同则事务为有效,否则事务为无效。
在一个实施例中,方法300还可以包括:验证事务的发送者签名;验证事务的背书签名及背书签名数量是否满足签名策略的要求。例如,Peer节点142验证事务的发送者的签名是否合法,验证事务的背书签名以及背书签名数量是否满足签名策略的要求(例如,是否得到一定数量的背书签名,背书签名是否来自指定的Endorser节点等)。
通过以上所描述的本公开的实施例,提供了在区块链中执行事务的方案,显著减少了验证签名所需的资源,同时显著提高了区块链的事务吞吐能力。
图4示出了根据本发明实施例的在区块链中执行事务的的示例性方法400的流程图。可以将该方法400实现在图1的区块链应用系统100上。方法400可以由图1中既是Endorser节点又是Committer节点的Peer节点(诸如Peer节点143)执行。如流程图所示,方法400可以包括以下步骤:
步骤401:接收来自客户端的多个事务请求,该多个事务请求与至少一个智能合约相关联。步骤401类似于上文关于图2的步骤201所描述的。例如,Peer节点143接收来自客户端110的多个事务请求,该多个事务请求与至少一个智能合约相关联。
步骤402:模拟执行该至少一个智能合约并生成事务的模拟执行结果,该模拟执行结果包括多个读集合和多个写集合,该多个读集合中的唯一键列表彼此不重合。步骤402类似于上文关于图2的步骤202所描述的,并且模拟执行结果包括多个写集合。例如,在Peer节点143处模拟执行该至少一个智能合约并生成事务的模拟执行结果,该模拟执行结果包括多个读集合和多个写集合,该多个读集合中的唯一键列表彼此不重合。
步骤403:将该模拟执行结果返回至客户端。步骤403类似于上文关于图2的步骤203所描述的。例如,Peer节点143将模拟执行结果返回至客户端110。
步骤404:接收包括该事务的区块。步骤404类似于上文关于图3的步骤301所描述的。例如,Peer节点143从Orderer节点131接收包括该事务的区块。
步骤405:基于世界状态验证该事务中的多个读集合。步骤404类似于上文关于图3的步骤302所描述的。例如,Peer节点143基于世界状态使用该事务中的多个读集合来验证事务的有效性。
步骤406:在通过验证的情况下,根据该事务中的多个写集合来更新世界状态。步骤406类似于上文关于步骤406类似于上文关于图3的步骤303所描述的。例如,当Peer节点143验证事务为有效时,利用该事务中的多个写集合中确定的键的版本和值来更新世界状态中的相应键的版本和值。
此外,方法400还可以包括上文关于图2的方法200和图3的方法300所描述的步骤中的任何一个或多个步骤,不再详细描述。
通过以上所描述的本公开的实施例,提供了在区块链中批量处理事务请求的方案,使得能够在一个事务中批量调用智能合约并进行签名,显著减少了签名和验证签名所需的资源,同时显著提高了区块链的事务吞吐能力。
图5示出了根据本发明实施例的在区块链中执行事务的示例性装置500的示意图。装置500可以包括:存储器501和耦合到存储器501的处理器502。存储器501用于存储指令,处理器502被配置为基于存储器501存储的指令来实现本文所描述的各种方法(如图2的方法200、图3的方法300和图4的方法400)中的一个或多个动作或步骤。
如图5所示,装置500还可以包括通信接口503,用于与其它设备进行信息交互。此外,装置500还可以包括总线504,存储器501、处理器502和通信接口503通过总线504来彼此进行通信。
存储器501可以包括易失性存储器和非易失性存储器,诸如ROM(read onlymemory)、RAM(random access memory)、移动盘、磁盘、光盘和U盘等。处理器502可以是中央处理器(CPU)、微控制器、专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、或是被配置为实现本发明的实施例的一个或多个集成电路。
为了更好地表达本发明的构思,下面结合一个具体的示例来进行说明。
图6示出了根据本发明的实施例的在区块链中执行事务的方法的一个具体示例600。
示例600中示出了客户端601、Endorser节点602和603、Orderer节点604和Committer节点605。用户为了发起事务通过客户端601向Endorser节点发送三个事务请求,即第一事务请求610、第二事务请求620和第三事务请求630。假设背书策略要求客户端601将这三个事务请求发送给至少两个Endorser节点进行背书签名,例如,客户端601可以分别向Endorser节点602和603各自发送第一事务请求610、第二事务请求620和第三事务请求630。第一事务请求610、第二事务请求620和第三事务请求630可以与至少一个智能合约相关联,例如这些事务请求分别与第一、第二和第三智能合约相关联,或者都与单个智能合约(例如第一智能合约)相关联,或者第一事务请求和第二事务请求与第一智能合约相关联并且第三事务请求与第二智能合约相关联,等等。在Endorser节点602处,基于来自客户端601的三个事务请求610、620和630,模拟执行与这三个事务请求相关联的该至少一个智能合约并生成模拟执行结果,并且模拟执行结果的三个读集合(分别对应于三个事务请求)彼此不重合。随后,Endorser节点602对模拟执行结果进行背书签名,并且将经背书签名的模拟执行结果640发送给客户端601。在Endorser节点603处执行与Endorser节点602处类似的操作。在客户端601接收到来自Endorser节点602和603的模拟执行结果640之后,客户端601将模拟执行结果640封装在一个事务650中,并向Orderer节点404发送该事务650。Orderer节点604在收集一定数目的事务(或者超时)之后生成区块660,然后将区块660发送给提交节点605。提交节点605读取区块660中包括的事务650,基于世界状态验证事务650中的模拟执行结果640的多个读集合,以对事务650的有效性进行验证,并在验证事务650为有效时,利用事务650中的模拟执行结果640的多个写集合来更新世界状态。验证可以包括:验证事务650中所包含的读集合中每个键的值与世界状态的相应键的值相比是否发生变化,如果变化则标记该事务650为无效。验证还可以包括:验证事务650的发送者签名是否合法;验证事务650的背书签名以及背书签名数量是否满足签名策略的要求。如果提交节点605验证通过接收到的区块中的事务650,则使用事务650中的模拟执行结果640的多个写集合来更新世界状态。与现有技术相比,在示例600中,由于批量处理事务请求,使得能够在一个事务中批量调用智能合约并进行签名,例如2个Endorser节点完成背书所需的背书签名次数从6次减少为2次,相应地完成验证事务的背书签名所需的验证次数从6次减少为2次,这显著减少了签名和验证签名所需的资源,同时显著提高了区块链的事务吞吐能力。
一般而言,本公开的各种示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其它方面可以在可以由控制器、微处理器或其它计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其它图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其它计算设备,或其某些组合中实施。
作为示例,可以用通用处理器、DSP、ASIC、FPGA或其它可编程逻辑器件、分立门或者晶体管逻辑、分立硬件组件或用于执行本文所述的功能的任意组合来实现或执行结合本公开所描述的各种示例性的逻辑块、模块和电路。通用处理器可以是微处理器,或者,处理器也可以是任何普通的处理器、控制器、微控制器或者状态机。处理器也可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的结合,或者任何其它此种结构。
作为示例,本公开的实施例可以在机器可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。
用于实现本公开的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其它可编程的数据处理装置的处理器,使得程序代码在被计算机或其它可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
在本公开的上下文中,机器可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。机器可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、RAM、ROM、可擦除可编程只读存储器(EPROM或闪存)、光存储设备、磁存储设备,或其任意合适的组合。
另外,尽管操作以特定顺序被描绘,但这并不应该理解为要求此类操作以示出的特定顺序或以相继顺序完成,或者执行所有图示的操作以获取期望结果。在某些情况下,多任务或并行处理会是有益的。同样地,尽管上述讨论包含了某些特定的实施细节,但这并不应解释为限制任何发明或权利要求的范围,而应解释为对可以针对特定发明的特定实施例的描述。本说明书中在分开的实施例的上下文中描述的某些特征也可以整合实施在单个实施例中。反之,在单个实施例的上下文中描述的各种特征也可以分离地在多个实施例或在任意合适的子组合中实施。
虽然已经参考若干具体实施例描述了本公开的实施例,但是应该理解,本公开的实施例并不限于所公开的具体实施例。本公开的实施例旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
Claims (23)
1.一种在区块链中执行事务的方法,其特征在于,所述方法包括:
A.接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;
B.模拟执行所述至少一个智能合约并生成模拟执行结果,所述模拟执行结果包括多个读集合,所述多个读集合的唯一键列表彼此不重合;
C.将所述模拟执行结果返回至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述多个事务请求包括所述至少一个智能合约的标识和入口参数。
3.根据权利要求1或2所述的方法,其特征在于,所述步骤A包括:
接收来自客户端的多个事务请求,所述多个事务请求与多个智能合约相关联;
所述步骤B包括:
分别模拟执行所述多个智能合约并生成模拟执行结果。
4.根据权利要求3所述的方法,其特征在于,所述多个事务请求在业务上具有关联性。
5.根据权利要求1或2所述的方法,其特征在于,所述步骤A包括:
接收来自客户端的多个事务请求,所述多个事务请求分别与单个智能合约相关联;
所述步骤B包括:
分别模拟执行所述单个智能合约并生成模拟执行结果。
6.根据权利要求1或2所述的方法,其特征在于,在所述步骤A之前,所述方法还包括:
部署所述至少一个智能合约。
7.根据权利要求1或2所述的方法,其特征在于,所述多个读集合还包括所述唯一键列表中的至少一个唯一键的版本,所述模拟执行结果还包括多个写集合。
8.一种在区块链中执行事务的方法,其特征在于,所述方法包括:
接收包括事务的区块;
基于世界状态验证所述事务中的多个读集合,所述多个读集合中的唯一键列表彼此不重合;
在通过验证的情况下,根据所述事务中的多个写集合来更新所述世界状态。
9.根据权利要求8所述的方法,其特征在于,基于世界状态验证所述事务中的多个读集合包括:
将所述多个读集合的唯一键列表中的各个唯一键的版本与所述世界状态中的相应键的版本进行比较;
在完全相同的情况下通过验证。
10.根据权利要求8所述的方法,其特征在于,所述方法还包括:
验证所述事务的发送者签名;
验证所述事务的背书签名及背书签名数量是否满足签名策略的要求。
11.一种在区块链中执行事务的方法,其特征在于,所述方法包括:
接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;
模拟执行所述至少一个智能合约并生成事务的模拟执行结果,所述模拟执行结果包括多个读集合和多个写集合,所述多个读集合中的唯一键列表彼此不重合;
将所述模拟执行结果返回至所述客户端;
接收包括所述事务的区块;
基于世界状态验证所述事务中的多个读集合;
在通过验证的情况下,根据所述事务中的所述多个写集合来更新所述世界状态。
12.一种在区块链中执行事务的装置,其特征在于,所述装置包括:
存储器,其用于存储指令;以及
处理器,其耦合到所述存储器,当所述指令被执行时使得所述处理器执行以下操作:
A.接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;
B.模拟执行所述至少一个智能合约并生成模拟执行结果,所述模拟执行结果包括多个读集合,所述多个读集合的唯一键列表彼此不重合;
C.将所述模拟执行结果返回至所述客户端。
13.根据权利要求12所述的装置,其特征在于,所述多个事务请求包括所述至少一个智能合约的标识和入口参数。
14.根据权利要求12或13所述的装置,其特征在于,所述操作A包括:
接收来自客户端的多个事务请求,所述多个事务请求与多个智能合约相关联;
所述操作B包括:
分别模拟执行所述多个智能合约并生成模拟执行结果。
15.根据权利要求12所述的装置,其特征在于,所述多个事务请求在业务上具有关联性。
16.根据权利要求12或13所述的装置,其特征在于,所述操作A包括:
接收来自客户端的多个事务请求,所述多个事务请求分别与单个智能合约相关联;
所述操作B包括:
分别模拟执行所述单个智能合约并生成模拟执行结果。
17.根据权利要求12或13所述的装置,其特征在于,当所述指令被执行时还使得所述处理器执行以下操作:
在操作A之前,部署所述至少一个智能合约。
18.根据权利要求12或13所述的装置,其特征在于,所述读集合还包括所述唯一键列表中的至少一个唯一键的版本,所述模拟执行结果还包括多个写集合。
19.一种在区块链中执行事务的装置,其特征在于,所述装置包括:
存储器,其用于存储指令;以及
处理器,其耦合到所述存储器,当所述指令被执行时使得所述处理器执行以下操作:
接收包括事务的区块;
基于世界状态验证所述事务中的多个读集合,所述多个读集合中的唯一键列表彼此不重合;
在通过验证的情况下,根据所述事务中的多个写集合来更新所述世界状态。
20.根据权利要求19所述的装置,其特征在于,基于世界状态验证所述事务中的多个读集合包括:
将所述多个读集合的唯一键列表中的各个唯一键的版本与所述世界状态中的相应键的版本进行比较;
在完全相同的情况下通过验证。
21.根据权利要求19所述的装置,其特征在于,当所述指令被执行时还使得所述处理器执行以下操作:
验证所述事务的发送者签名;
验证所述事务的背书签名及背书签名数量是否满足签名策略的要求。
22.一种在区块链中执行事务的装置,其特征在于,所述装置包括:
存储器,其用于存储指令;以及
处理器,其耦合到所述存储器,当所述指令被执行时使得所述处理器执行以下操作:
接收来自客户端的多个事务请求,所述多个事务请求与至少一个智能合约相关联;
模拟执行所述至少一个智能合约并生成事务的模拟执行结果,所述模拟执行结果包括多个读集合和多个写集合,所述多个读集合中的唯一键列表彼此不重合;
将所述模拟执行结果返回至所述客户端;
接收包括所述事务的区块;
基于世界状态验证所述事务中的多个读集合;
在通过验证的情况下,根据所述事务中的所述多个写集合来更新所述世界状态。
23.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,所述指令用于执行如权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810771324.3A CN109040029B (zh) | 2018-07-13 | 2018-07-13 | 在区块链中执行事务的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810771324.3A CN109040029B (zh) | 2018-07-13 | 2018-07-13 | 在区块链中执行事务的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109040029A true CN109040029A (zh) | 2018-12-18 |
CN109040029B CN109040029B (zh) | 2021-03-12 |
Family
ID=64642698
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810771324.3A Active CN109040029B (zh) | 2018-07-13 | 2018-07-13 | 在区块链中执行事务的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109040029B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109981679A (zh) * | 2019-04-08 | 2019-07-05 | 上海点融信息科技有限责任公司 | 在区块链网络中执行事务的方法和装置 |
CN110380860A (zh) * | 2019-06-19 | 2019-10-25 | 深圳壹账通智能科技有限公司 | 基于区块链智能合约的共有资源数据处理方法和设备 |
CN110443712A (zh) * | 2019-08-09 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 合约冲突检测方法、装置、可读存储介质和计算机设备 |
CN110597884A (zh) * | 2019-09-23 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的募捐方法、装置、设备及存储介质 |
CN111047449A (zh) * | 2020-03-12 | 2020-04-21 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法及装置 |
CN111164586A (zh) * | 2019-06-28 | 2020-05-15 | 阿里巴巴集团控股有限公司 | 用于更新区块链中的数据的系统和方法 |
EP3613203A4 (en) * | 2019-03-04 | 2020-05-20 | Alibaba Group Holding Limited | METHODS AND DEVICES FOR PERFORMING OFF-CHAIN TEST ON A SMART CONTRACT |
WO2020133069A1 (zh) * | 2018-12-27 | 2020-07-02 | 合肥达朴汇联科技有限公司 | 区块链的数据处理方法和装置 |
CN111797160A (zh) * | 2020-06-16 | 2020-10-20 | 苏宁金融科技(南京)有限公司 | 共享智能合约的方法、系统及电子设备 |
EP3742675A1 (en) * | 2019-05-24 | 2020-11-25 | Samsung SDS Co., Ltd. | Accelerated processing apparatus for transaction considering transaction failure probability and method thereof |
EP3748914A1 (en) * | 2019-06-03 | 2020-12-09 | Samsung SDS Co., Ltd. | Accelerated processing apparatus for transaction and method thereof |
WO2020250206A1 (en) * | 2019-06-14 | 2020-12-17 | Ailia Sa | Method for the execution of an instance of a smart contract by means of a blockchain |
WO2021008400A1 (zh) * | 2019-07-12 | 2021-01-21 | 深圳前海微众银行股份有限公司 | 基于区块链的数据批量处理方法、装置、设备及存储介质 |
CN112714158A (zh) * | 2020-12-21 | 2021-04-27 | 东软集团股份有限公司 | 事务处理方法、中继网络、跨链网关、系统、介质和设备 |
IT201900020476A1 (it) * | 2019-11-06 | 2021-05-06 | Ailia Sa | Metodo di esecuzione di una istanza di uno smart contract mediante una blockchain |
CN112966311A (zh) * | 2019-03-15 | 2021-06-15 | 创新先进技术有限公司 | 智能合约校验方法及装置和电子设备 |
CN113419823A (zh) * | 2021-06-22 | 2021-09-21 | 东北大学 | 一种适用于高并发事务的联盟链系统及其设计方法 |
WO2022042602A1 (en) * | 2020-08-28 | 2022-03-03 | International Business Machines Corporation | Trustless operations for blockchain networks |
CN117632140A (zh) * | 2023-12-07 | 2024-03-01 | 易方达基金管理有限公司 | 一种业务流程处理方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103473A (zh) * | 2017-04-27 | 2017-08-29 | 电子科技大学 | 一种基于区块链的智能合约实现方法 |
CN107274186A (zh) * | 2017-05-11 | 2017-10-20 | 上海点融信息科技有限责任公司 | 在区块链中获得智能合约接口的方法和设备 |
US20180198624A1 (en) * | 2017-01-12 | 2018-07-12 | International Business Machines Corporation | Private blockchain transaction management and termination |
-
2018
- 2018-07-13 CN CN201810771324.3A patent/CN109040029B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180198624A1 (en) * | 2017-01-12 | 2018-07-12 | International Business Machines Corporation | Private blockchain transaction management and termination |
CN107103473A (zh) * | 2017-04-27 | 2017-08-29 | 电子科技大学 | 一种基于区块链的智能合约实现方法 |
CN107274186A (zh) * | 2017-05-11 | 2017-10-20 | 上海点融信息科技有限责任公司 | 在区块链中获得智能合约接口的方法和设备 |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020133069A1 (zh) * | 2018-12-27 | 2020-07-02 | 合肥达朴汇联科技有限公司 | 区块链的数据处理方法和装置 |
US11113271B2 (en) | 2019-03-04 | 2021-09-07 | Advanced New Technologies Co., Ltd. | Methods and devices for performing off-chain testing on smart contract |
EP3613203A4 (en) * | 2019-03-04 | 2020-05-20 | Alibaba Group Holding Limited | METHODS AND DEVICES FOR PERFORMING OFF-CHAIN TEST ON A SMART CONTRACT |
CN112966311A (zh) * | 2019-03-15 | 2021-06-15 | 创新先进技术有限公司 | 智能合约校验方法及装置和电子设备 |
CN109981679B (zh) * | 2019-04-08 | 2021-08-10 | 上海点融信息科技有限责任公司 | 在区块链网络中执行事务的方法和装置 |
CN109981679A (zh) * | 2019-04-08 | 2019-07-05 | 上海点融信息科技有限责任公司 | 在区块链网络中执行事务的方法和装置 |
EP3742675A1 (en) * | 2019-05-24 | 2020-11-25 | Samsung SDS Co., Ltd. | Accelerated processing apparatus for transaction considering transaction failure probability and method thereof |
US11507565B2 (en) | 2019-06-03 | 2022-11-22 | Samsung Sds Co., Ltd. | Accelerated processing apparatus for transaction and method thereof |
EP3748914A1 (en) * | 2019-06-03 | 2020-12-09 | Samsung SDS Co., Ltd. | Accelerated processing apparatus for transaction and method thereof |
US11991298B2 (en) * | 2019-06-14 | 2024-05-21 | Ailia Sa | Method for the execution of an instance of a smart contract by means of a blockchain |
US20220247583A1 (en) * | 2019-06-14 | 2022-08-04 | Ailia Sa | Method for the execution of an instance of a smart contract by means of a blockchain |
WO2020250206A1 (en) * | 2019-06-14 | 2020-12-17 | Ailia Sa | Method for the execution of an instance of a smart contract by means of a blockchain |
CN110380860B (zh) * | 2019-06-19 | 2023-02-07 | 深圳壹账通智能科技有限公司 | 基于区块链智能合约的共有资源数据处理方法和设备 |
CN110380860A (zh) * | 2019-06-19 | 2019-10-25 | 深圳壹账通智能科技有限公司 | 基于区块链智能合约的共有资源数据处理方法和设备 |
CN111164586A (zh) * | 2019-06-28 | 2020-05-15 | 阿里巴巴集团控股有限公司 | 用于更新区块链中的数据的系统和方法 |
CN111164586B (zh) * | 2019-06-28 | 2023-07-04 | 创新先进技术有限公司 | 用于更新区块链中的数据的系统和方法 |
WO2021008400A1 (zh) * | 2019-07-12 | 2021-01-21 | 深圳前海微众银行股份有限公司 | 基于区块链的数据批量处理方法、装置、设备及存储介质 |
CN110443712B (zh) * | 2019-08-09 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 合约冲突检测方法、装置、可读存储介质和计算机设备 |
CN110555773B (zh) * | 2019-08-09 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 合约冲突检测方法、装置、可读存储介质和计算机设备 |
CN110555773A (zh) * | 2019-08-09 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 合约冲突检测方法、装置、可读存储介质和计算机设备 |
CN110443712A (zh) * | 2019-08-09 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 合约冲突检测方法、装置、可读存储介质和计算机设备 |
CN110597884B (zh) * | 2019-09-23 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的募捐方法、装置、设备及存储介质 |
CN110597884A (zh) * | 2019-09-23 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的募捐方法、装置、设备及存储介质 |
IT201900020476A1 (it) * | 2019-11-06 | 2021-05-06 | Ailia Sa | Metodo di esecuzione di una istanza di uno smart contract mediante una blockchain |
CN111047449B (zh) * | 2020-03-12 | 2020-06-23 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法及装置 |
CN111047449A (zh) * | 2020-03-12 | 2020-04-21 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法及装置 |
CN111797160B (zh) * | 2020-06-16 | 2023-05-02 | 苏宁金融科技(南京)有限公司 | 共享智能合约的方法、系统及电子设备 |
CN111797160A (zh) * | 2020-06-16 | 2020-10-20 | 苏宁金融科技(南京)有限公司 | 共享智能合约的方法、系统及电子设备 |
WO2022042602A1 (en) * | 2020-08-28 | 2022-03-03 | International Business Machines Corporation | Trustless operations for blockchain networks |
CN112714158A (zh) * | 2020-12-21 | 2021-04-27 | 东软集团股份有限公司 | 事务处理方法、中继网络、跨链网关、系统、介质和设备 |
CN112714158B (zh) * | 2020-12-21 | 2023-11-17 | 东软集团股份有限公司 | 事务处理方法、中继网络、跨链网关、系统、介质和设备 |
CN113419823A (zh) * | 2021-06-22 | 2021-09-21 | 东北大学 | 一种适用于高并发事务的联盟链系统及其设计方法 |
CN113419823B (zh) * | 2021-06-22 | 2023-07-18 | 东北大学 | 一种适用于高并发事务的联盟链系统及其设计方法 |
CN117632140A (zh) * | 2023-12-07 | 2024-03-01 | 易方达基金管理有限公司 | 一种业务流程处理方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109040029B (zh) | 2021-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109040029A (zh) | 在区块链中执行事务的方法和装置 | |
CN109981679A (zh) | 在区块链网络中执行事务的方法和装置 | |
Fan et al. | Performance evaluation of blockchain systems: A systematic survey | |
JP6754495B2 (ja) | ブロックチェーンを介したアイデンティティと証明書の保護及び検証とのための方法及びシステム | |
Celik et al. | Blockchain supported BIM data provenance for construction projects | |
US20230092716A1 (en) | Methods and systems for a synchronized distributed data structure for federated machine learning | |
WO2019220260A1 (en) | Explanations for artificial intelligence based recommendations | |
JP2019106180A (ja) | ネットワークを介して互いに通信する複数のノードのいずれか1つで資源を運営する方法、および、ネットワークを介して互いに通信する複数のノードのいずれか1つとして動作するコンピュータ装置 | |
CN108960594A (zh) | 基于区块链与bim模型的建筑多供应链协调系统及方法 | |
Anagnostou et al. | Characteristics and challenges in the industries towards responsible AI: a systematic literature review | |
CN112703499A (zh) | 用于计算以及可信验证的分布式平台 | |
JP2023532959A (ja) | 許可制ブロックチェーンのためのプライバシー保護アーキテクチャ | |
WO2022017413A1 (en) | Sustainable tokens for supply chain with privacy preserving protocol | |
CN111177800A (zh) | 基于区块链的数据处理方法及装置、电子设备 | |
CN111581224B (zh) | 一种基于智能合约的电力物联网服务可信评估方法及系统 | |
CN110069295A (zh) | 区块链处理方法、装置、设备和介质 | |
CN110060155A (zh) | 区块链的智能合约执行方法及装置和电子设备 | |
Bellagarda et al. | An updated survey on the convergence of distributed ledger technology and artificial intelligence: Current state, major challenges and future direction | |
Vahdati et al. | A self-organized framework for insurance based on internet of things and blockchain | |
Eisenhofer et al. | Verifiable and provably secure machine unlearning | |
Gupta et al. | Blockchain-enabled healthcare monitoring system for early Monkeypox detection | |
CN109117629A (zh) | 用于在区块链网络中统计用户智能合约的方法和装置 | |
Rensaa | VerifyMed-Application of blockchain technology to improve trust in virtualized healthcare services | |
CN114826684B (zh) | 支持高效隐私保护的去中心化众包方法、系统及终端 | |
Eisele et al. | SolidWorx: A resilient and trustworthy transactive platform for smart and connected communities |
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 |