CN109087104A - 区块链智能合约管理方法和系统、计算机可读存储介质 - Google Patents
区块链智能合约管理方法和系统、计算机可读存储介质 Download PDFInfo
- Publication number
- CN109087104A CN109087104A CN201810991279.2A CN201810991279A CN109087104A CN 109087104 A CN109087104 A CN 109087104A CN 201810991279 A CN201810991279 A CN 201810991279A CN 109087104 A CN109087104 A CN 109087104A
- Authority
- CN
- China
- Prior art keywords
- block chain
- intelligent contract
- ballot
- contract
- node
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种区块链智能合约管理方法和系统、计算机可读存储介质。该区块链智能合约管理方法包括:在一个通道建立成功的情况下,在所述通道设置系统级智能合约;利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。本发明利用通道级系统链码的方式,为联盟链上成员之间达成智能合约共识提供便捷的线上方式,从而提高了超级账本网络的效率。
Description
技术领域
本发明涉及区块链领域,特别涉及一种区块链智能合约管理方法和系统、计算机可读存储介质。
背景技术
Hyperledger Fabric(超级账本网络)是目前非常流行的区块链解决方案,多个组织可以通过Hyperledger Fabric组成联盟链,通过在链上部署ChainCode(链码)的方式进行业务上和数据上的协同,可以说ChainCode是Hyperledger Fabric与实际业务落脚在区块链技术的落脚点,对上层业务来说最重要的环节之一。
发明内容
申请人发现:相关技术在Hyperledger Fabric中对智能合约的管理特别是如何对智能合约达成共识,并没有统一的解决方案,往往依赖线下沟通。
相关技术Hyperledger fabric对ChainCode的管理,主要集中在如何安装,部署以及调用ChainCode。但是实际上,ChainCode作为联盟链上各成员重要的共识之一,相关技术却缺少如何达成ChainCode共识,如果保证安装的ChainCode是达成共识的版本等方面的功能,往往依赖于线下沟通。相关技术的这种方式不仅效率低下,而且很难保证ChainCode不会在这个过程中被人篡改。
鉴于以上技术问题,本发明提供了一种区块链智能合约管理方法和系统、计算机可读存储介质,利用通道级系统链码的方式,为联盟链上成员之间达成ChainCode共识提供便捷的线上方式。
根据本发明的一个方面,提供一种区块链智能合约管理方法,包括:
在一个通道建立成功的情况下,在所述通道设置系统级智能合约;
利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。
在本发明的一些实施例中,所述智能合约为链码;所述系统级智能合约为管理链码。
在本发明的一些实施例中,所述利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理包括:
发起针对智能合约更新或安装的投票;
根据投票结果,更新或安装智能合约。
在本发明的一些实施例中,所述发起针对智能合约更新或安装的投票包括:
区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票;
区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票。
在本发明的一些实施例中,所述区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票包括:
发起者区块链网络客户端接收区块链联盟中一个成员管理员发起的智能合约更新或安装的投票请求;
发起者区块链网络客户端通过去中心化分布式存储节点将智能合约源代码上传到去中心化分布式存储网络中;
去中心化分布式存储网络生成与智能合约源代码相关的地址信息。
在本发明的一些实施例中,所述区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票还包括:
发起者区块链网络客户端向同一通道的背书节点发送投票开始请求,以便背书节点对所述投票开始请求进行验证,并返回背书响应;
发起者区块链网络客户端在收到的背书响应数量大于预定值的情况下,将投票开始交易到排序节点;
排序节点在排序后,将包含所述投票开始交易的区块分发给所有记账节点;
记账节点在验证通过后,将所述区块计入本地账本。
在本发明的一些实施例中,所述区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票包括:
背书节点的区块链网络客户端发现有成员发起智能合约更新或安装的投票请求之后,根据地址信息从去中心化分布式存储节点获取待投票智能合约的源代码;
背书节点的区块链网络客户端将所述待投票智能合约的源代码展示给管理员,以便管理员进行投票;
背书节点的区块链网络客户端根据管理员的投票结果,对系统级智能合约的数据进行更新。
在本发明的一些实施例中,所述对系统级智能合约的数据进行更新包括:
将对系统级智能合约的更新数据发送至同一通道背书节点进行背书。
在本发明的一些实施例中,所述区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票还包括:
背书节点的区块链网络客户端在收到的背书响应数量大于预定值的情况下,将投票开始交易到排序节点;
排序节点在排序后,将包含所述更新投票结果交易的区块分发给所有记账节点;
记账节点在验证通过后,将所述区块计入本地账本。
在本发明的一些实施例中,所述根据投票结果,更新或安装智能合约包括:
发起者区块链网络客户端在构造带签名提案的情况下,携带待处理智能合约在去中心化存储网络的地址信息;
背书节点在收到所述带签名提案的情况下,通过系统级智能合约查看所述带签名提案的投票结果是否满足预定生效条件;
在所述带签名提案的投票结果满足预定生效条件的情况下,背书节点根据待处理智能合约的地址信息,从去中心化分布式存储节点获取智能合约的源代码到本地。
根据本发明的另一方面,提供一种区块链智能合约管理系统,包括:
系统级智能合约设置模块,用于在一个通道建立成功的情况下,在所述通道设置系统级智能合约;
智能合约管理模块,用于利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。
在本发明的一些实施例中,所述区块链智能合约管理系统用于执行实现如上述任一实施例所述的区块链智能合约管理方法的操作。
根据本发明的另一方面,提供一种区块链智能合约管理系统,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述装置执行实现如上述任一实施例所述的区块链智能合约管理方法的操作。
根据本发明的另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例所述的区块链智能合约管理方法。
本发明利用通道级系统链码的方式,为联盟链上成员之间达成智能合约共识提供便捷的线上方式,从而提高了超级账本网络的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明区块链智能合约管理方法一些实施例的示意图。
图2为本发明一些实施例中管理ChainCode的接口示意图。
图3为本发明区块链智能合约管理方法另一些实施例的示意图。
图4为本发明一些实施例中发起智能合约更新或安装投票请求的示意图。
图5为本发明一些实施例中投票过程的示意图。
图6为本发明区块链智能合约管理系统一些实施例的示意图。
图7为本发明区块链智能合约管理系统另一些实施例的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本发明区块链智能合约管理方法一些实施例的示意图。优选的,本实施例可由本发明区块链智能合约管理系统执行。该方法包括以下步骤:
步骤11,在一个通道建立成功的情况下,在所述通道设置系统级智能合约(通道级智能合约)。
在本发明的一些实施例中,步骤11具体可以包括:当一个通道Channel建立成功之后,会默认在该Channel上安装一个该Channel内的系统级ChainCode。
在本发明的一些实施例中,系统级ChainCode的作用是管理同一通道内所有ChainCode的生命周期。系统级ChainCode可以简称其为管理ChainCode。
在本发明的一些实施例中,链码ChainCode为Fabric网络上智能合约的一种实现方式。
在本发明的一些实施例中,所述系统级智能合约可以为管理链码ChainCode。
在本发明的一些实施例中,所述系统级智能合约可以为通道级系统链码。
步骤12,利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。
在本发明的一些实施例中,步骤12可以包括:
步骤121,发起针对智能合约更新或安装的投票。
步骤122,根据投票结果,更新或安装智能合约。
在本发明的一些实施例中,步骤12可以包括:通道内其他ChainCode,在安装、更新之前,都需要先通过该管理ChainCode进行投票。只有投票结果满足预设条件,该更新、安装ChainCode的请求才能真正进入执行阶段。
图2为本发明一些实施例中管理ChainCode的接口示意图。如图2所示,管理ChainCode可以提供投票开始(StartVote)、背书(Endorse)、反对(Oppose)等接口。
在本发明的一些实施例中,步骤12还可以包括:同时推荐所有背书节点要监听该管理ChainCode的区块更新事件,如果发现有更新、安装ChainCode的投票交易发生时,可以通知上层应用,以便成员管理员及早进行投票或查看投票结果。
基于本发明上述实施例提供的区块链智能合约管理方法,当一个通道Channel建立成功之后,会默认在该Channel上安装一个该Channel内的系统级ChainCode。这个系统级ChainCode的作用是管理同一通道内所有ChainCode的生命周期。通道内其他ChainCode,在安装、更新之前,都需要先通过该系统级ChainCode进行投票。
本发明上述实施例利用通道级系统链码的方式,为联盟链上成员之间达成ChainCode共识提供便捷的线上方式,从而提高了Hyperledgerfabric的效率。
针对相关技术fabric背书的方式只能通过预制程序对提案进行同步的验证和背书,无法让成员人为参与到背书过程中,非常限制背书的适用场景的技术问题,本发明上述实施例创新的使用了投票的方式,从而实现了异步背书。本发明上述实施例的这种实现方式还可以用于其他需要采用异步背书的场景。
图3为本发明区块链智能合约管理方法另一些实施例的示意图。优选的,本实施例可由本发明区块链智能合约管理系统执行。该方法包括以下步骤:
步骤31,在一个通道建立成功的情况下,在所述通道设置系统级智能合约。
步骤32,区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票。
图4为本发明一些实施例中发起智能合约更新或安装投票请求的示意图。如图4所示,图3实施例的步骤32具体可以包括:
步骤321,区块链联盟中某一个成员管理员作为发起者,向区块链网络客户端发送一个发起ChainCode更新投票的提案请求。
在本发明的一些实施例中,该提案请求消息相比一般提案请求,额外还可以包括以下信息:1.更新的ChainCode源码或者路径;2.对此次更新的描述。
步骤322,发起者区块链网络客户端在收到更新或安装ChainCode投票开始请求之后,通过本地(或者远程可信)的去中心化分布式存储节点将智能合约源代码上传到去中心化分布式存储网络中。
步骤323,去中心化分布式存储网络生成并返回与智能合约源代码(具体上传内容)相关的地址信息。
在本发明的一些实施例中,所述地址信息可以为Hash地址。
在本发明的一些实施例中,通过该地址信息可以从分布式存储网络中获取到该上传文件,同时任何对源文件的修改,都会得到新的地址,从而保证通过原Hash地址永远可以得到原有文件。
步骤324、步骤325,发起者区块链网络客户端向同一通道的多个背书节点发送投票开始请求(提案请求),以便背书节点在收到这个提案请求之后,需要安照常规背书流程,对所述提案请求做验证。如果验证通过,则返回带签名的背书响应给发起者区块链网络客户端。
在本发明的一些实施例中,所述投票开始请求中除了一般提案请求携带的发起者签名等信息之外,额外携带了上一步得到的待投票ChainCode在去中心化存储网络上的Hash地址;这一过程实际上是调用管理ChainCode的StartVote接口(投票开始),通过管理ChainCode写入如下KV数据结构:{key:待投票链码的Hash地址,value:{“endorse”:[],“oppose”:[],description:“对此次更新的文字描述”}}。
步骤326,发起者区块链网络客户端在收到的背书响应数量大于预定值的情况下,即,收到足够多的背书之后,将投票开始交易(“更新ChainCode投票开始”的交易)发送到排序节点。
步骤327,排序节点根据共识算法进行排序。
步骤328、步骤329,排序节点在排序后,将包含所述投票开始交易的区块分发给所有记账节点;记账节点在验证通过后,将所述区块计入本地账本;并更新状态数据库。同时所有背书节点,在发现有更新或安装ChainCode的投票开始的事件时,将进入下一阶段处理。
步骤33,区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票。
图5为本发明一些实施例中投票过程的示意图。如图5所示,图3实施例的步骤33具体可以包括:
步骤331,区块链联盟中其他成员管理者,通过区块链联盟中有背书节点的区块链网络客户端,采用监听事件(或者其他查询)方式,发现区块链联盟中有某一成员发起智能合约更新或安装的投票请求。
步骤332,区块链联盟中所有背书节点的区块链网络客户端,通过监听事件(或者其他查询)方式,发现区块链联盟中有某一成员发起智能合约更新或安装的投票请求之后,根据待投票链码的Hash地址,从本地部署的去中心化分布式存储节点(或者其他可信的去中心化存储节点)获取待投票智能合约(例如待投票ChainCode)的源代码。
步骤333,去中心化存储节点返回待投票ChainCode源码。
步骤334,背书节点的区块链网络客户端将所述待投票智能合约的源代码展示给管理员,以便管理员review源码之后,投出自己的一票(赞成或者反对),发送给背书节点的区块链客户端。
步骤335、步骤336,背书节点的区块链网络客户端根据管理员的投票结果,对系统级智能合约的数据进行更新。
在本发明的一些实施例中,步骤335和336可以包括:客户端根据管理员的投票结果,通过Endorse或者Oppose接口发起对管理ChainCode中数据更新的流程。
在本发明的一些实施例中,步骤335和336可以包括:如果管理员投赞成那么将通过管理ChainCode接口Endorse更新该值为:{key:待投票链码的Hash地址,value:{“endorse”:当前投赞成的成员列表+本次投票人MSPID,“oppose”:当前投反对的成员列表,description:“一些对此次投票的描述”}};将对系统级智能合约的更新数据发送至同一通道背书节点进行背书。
步骤337,背书节点的区块链网络客户端在收到的背书响应数量大于预定值的情况下,将投票开始交易到排序节;排序节点根据共识算法进行排序。
步骤338、步骤339,排序节点在排序后,将包含所述更新投票结果交易的区块分发给所有记账节点;记账节点在验证通过后,将所述区块计入本地账本。
步骤34,根据投票结果,更新或安装智能合约。
在本发明的一些实施例中,所述步骤34可以包括:
步骤341,发起者区块链网络客户端在构造带签名提案的情况下,相关方案是携带ChainCode源码,或者本地源码地址的方式传递ChainCode;而本发明上述实施例发起者区块链网络客户端在构造带签名提案的情况下,携带待处理智能合约在去中心化存储网络的地址信息。
步骤342,背书节点在收到所述带签名提案的情况下,通过系统级智能合约查看所述带签名提案的投票结果是否满足预定生效条件。
在本发明的一些实施例中,所述步骤342可以包括:背书节点在收到该提案时,除了相关技术的检查之外,还需要额外通过系统ChainCode接口GetState查看该提案的投票结果是否满足预定生效条件。
步骤343,在所述带签名提案的投票结果满足预定生效条件的情况下,背书节点根据待处理智能合约的地址信息(例如待处理ChainCode的Hash地址),从本地中心化存储节点(或者其他可信的去中心化存储节点)获取智能合约(ChainCode)的源代码到本地。
本发明上述实施例可以通过在通道中专门启动一个管理ChainCode来对整个通道的ChainCode进行更新、安装操作的管理。
本发明上述实施例以IPFS(InterPlanetary File System,星际文件系统)为例做描述,但是不限于IPFS,任何满足去中心化存储,而且可以根据内容寻址的方案都可以采用相同的方式使用。其中,IPFS是一个分布式的web,点到点超媒体协议.可以让我们的互联网速度更快,更加安全,并且更加开放。
本发明上述实施例中去中心化存储的使用,既保证了整体区块链结构的去中心化,同时可以利用存储Hash地址与源文件内容相关的特性,来保证达成一致的ChainCode无法被篡改。
针对相关技术fabric背书的方式只能通过预制程序对提案进行同步的验证和背书,无法让成员人为参与到背书过程中,非常限制背书的适用场景的技术问题,本发明上述实施例的投票流程,创新的使用了投票的方式,实现了异步背书。本发明上述实施例的这种实现方式还可以用于其他需要采用异步背书的场景。
本发明上述实施例的区块链智能合约管理方法,采用一种基于去中心化的分布式存储系统结合通道级系统链码的方式,为联盟链上成员之间达成ChainCode共识提供便捷的线上方式,并且可以保证部署在链上的ChainCode与达成共识的ChainCode版本绝对一致,由此可以防止有人恶意篡改ChainCode,从而提高了Hyperledger fabric的效率,并保证了ChainCode的安全。
图6为本发明区块链智能合约管理系统一些实施例的示意图。如图6所示,所述区块链智能合约管理系统可以包括系统级智能合约设置模块61和智能合约管理模块62,其中:
系统级智能合约设置模块61,用于在一个通道建立成功的情况下,在所述通道设置系统级智能合约。
智能合约管理模块62,用于利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。
在本发明的一些实施例中,所述区块链智能合约管理系统用于执行实现如上述任一实施例(例如图1-图5任一实施例)所述的区块链智能合约管理方法的操作。
在本发明的一些实施例中,如图4或图5实施例所示,所述区块链智能合约管理系统可以包括发起者区块链网络客户端、去中心化分布式存储节点、多个背书节点、排序节点、记账节点、背书节点的区块链网络客户端,其中,发起者区块链网络客户端、去中心化分布式存储节点、多个背书节点、排序节点、记账节点、背书节点的区块链网络客户端于执行实现如上述任一实施例(例如图1-图5任一实施例)所述的区块链智能合约管理方法的操作。
图7为本发明区块链智能合约管理系统另一些实施例的示意图。如图7所示,所述区块链智能合约管理系统可以包括存储器71和处理器72,其中:
存储器71,用于存储指令;
处理器72,用于执行所述指令,使得所述装置执行实现如上述任一实施例(例如图1-图5任一实施例)所述的区块链智能合约管理方法的操作。
本发明上述实施例的区块链智能合约管理系统,采用一种基于去中心化的分布式存储系统结合通道级系统链码的方式,为联盟链上成员之间达成ChainCode共识提供便捷的线上方式,并且可以保证部署在链上的ChainCode与达成共识的ChainCode版本绝对一致,由此可以防止有人恶意篡改ChainCode,从而提高了Hyperledger fabric的效率,并保证了ChainCode的安全。
根据本发明的另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例(例如图1-图5任一实施例)所述的区块链智能合约管理方法。
本发明上述实施例可以通过在通道中专门启动一个管理ChainCode来对整个通道的ChainCode进行更新、安装操作的管理。
本发明上述实施例中去中心化存储的使用,既保证了整体区块链结构的去中心化,同时可以利用存储Hash地址与源文件内容相关的特性,来保证达成一致的ChainCode无法被篡改。
本发明上述实施例的投票流程,创新的使用了投票的方式,实现了异步背书。本发明上述实施例的这种实现方式还可以用于其他需要采用异步背书的场景。
在上面所描述的区块链智能合约管理系统可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (14)
1.一种区块链智能合约管理方法,其特征在于,包括:
在一个通道建立成功的情况下,在所述通道设置系统级智能合约;
利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。
2.根据权利要求1所述的区块链智能合约管理方法,其特征在于,
所述智能合约为链码;
所述系统级智能合约为管理链码。
3.根据权利要求1或2所述的区块链智能合约管理方法,其特征在于,所述利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理包括:
发起针对智能合约更新或安装的投票;
根据投票结果,更新或安装智能合约。
4.根据权利要求3所述的区块链智能合约管理方法,其特征在于,所述发起针对智能合约更新或安装的投票包括:
区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票;
区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票。
5.根据权利要求4所述的区块链智能合约管理方法,其特征在于,所述区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票包括:
发起者区块链网络客户端接收区块链联盟中一个成员管理员发起的智能合约更新或安装的投票请求;
发起者区块链网络客户端通过去中心化分布式存储节点将智能合约源代码上传到去中心化分布式存储网络中;
去中心化分布式存储网络生成与智能合约源代码相关的地址信息。
6.根据权利要求5所述的区块链智能合约管理方法,其特征在于,所述区块链联盟中一个成员管理员作为发起者,发起智能合约更新或安装的投票请求,请求联盟成员对是否更新、安装所述智能合约进行投票还包括:
发起者区块链网络客户端向同一通道的背书节点发送投票开始请求,以便背书节点对所述投票开始请求进行验证,并返回背书响应;
发起者区块链网络客户端在收到的背书响应数量大于预定值的情况下,将投票开始交易到排序节点;
排序节点在排序后,将包含所述投票开始交易的区块分发给所有记账节点;
记账节点在验证通过后,将所述区块计入本地账本。
7.根据权利要求4所述的区块链智能合约管理方法,其特征在于,所述区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票包括:
背书节点的区块链网络客户端发现有成员发起智能合约更新或安装的投票请求之后,根据地址信息从去中心化分布式存储节点获取待投票智能合约的源代码;
背书节点的区块链网络客户端将所述待投票智能合约的源代码展示给管理员,以便管理员进行投票;
背书节点的区块链网络客户端根据管理员的投票结果,对系统级智能合约的数据进行更新。
8.根据权利要求7所述的区块链智能合约管理方法,其特征在于,所述对系统级智能合约的数据进行更新包括:
将对系统级智能合约的更新数据发送至同一通道背书节点进行背书。
9.根据权利要求7所述的区块链智能合约管理方法,其特征在于,所述区块链联盟中作为背书节点的其他成员,发现有成员发起智能合约更新或安装的投票请求之后,对待投票的智能合约进行投票还包括:
背书节点的区块链网络客户端在收到的背书响应数量大于预定值的情况下,将投票开始交易到排序节点;
排序节点在排序后,将包含所述更新投票结果交易的区块分发给所有记账节点;
记账节点在验证通过后,将所述区块计入本地账本。
10.根据权利要求3所述的区块链智能合约管理方法,其特征在于,所述根据投票结果,更新或安装智能合约包括:
发起者区块链网络客户端在构造带签名提案的情况下,携带待处理智能合约在去中心化存储网络的地址信息;
背书节点在收到所述带签名提案的情况下,通过系统级智能合约查看所述带签名提案的投票结果是否满足预定生效条件;
在所述带签名提案的投票结果满足预定生效条件的情况下,背书节点根据待处理智能合约的地址信息,从去中心化分布式存储节点获取智能合约的源代码到本地。
11.一种区块链智能合约管理系统,其特征在于,包括:
系统级智能合约设置模块,用于在一个通道建立成功的情况下,在所述通道设置系统级智能合约;
智能合约管理模块,用于利用所述系统级智能合约对整个通道的智能合约更新、安装操作进行管理。
12.根据权利要求11所述的区块链智能合约管理系统,其特征在于,所述区块链智能合约管理系统用于执行实现如权利要求1-10中任一项所述的区块链智能合约管理方法的操作。
13.一种区块链智能合约管理系统,其特征在于,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述装置执行实现如权利要求1-10中任一项所述的区块链智能合约管理方法的操作。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1-10中任一项所述的区块链智能合约管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810991279.2A CN109087104A (zh) | 2018-08-29 | 2018-08-29 | 区块链智能合约管理方法和系统、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810991279.2A CN109087104A (zh) | 2018-08-29 | 2018-08-29 | 区块链智能合约管理方法和系统、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109087104A true CN109087104A (zh) | 2018-12-25 |
Family
ID=64795021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810991279.2A Pending CN109087104A (zh) | 2018-08-29 | 2018-08-29 | 区块链智能合约管理方法和系统、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109087104A (zh) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491981A (zh) * | 2019-01-11 | 2019-03-19 | 珮金(上海)信息科技有限公司 | 基于区块链的文件管理方法和装置 |
CN109547488A (zh) * | 2018-12-29 | 2019-03-29 | 杭州趣链科技有限公司 | 一种基于联盟区块链的可信数据计算及交换系统 |
CN109840780A (zh) * | 2019-02-14 | 2019-06-04 | 重庆金窝窝网络科技有限公司 | 农产品信息维护方法、装置及系统 |
CN109934598A (zh) * | 2019-03-07 | 2019-06-25 | 重庆市千将软件有限公司 | 区块链烟草溯源防伪系统 |
CN110022217A (zh) * | 2019-04-04 | 2019-07-16 | 深圳大通实业股份有限公司 | 一种基于区块链的广告传媒业务数据可信存证系统 |
CN110020860A (zh) * | 2019-04-09 | 2019-07-16 | 湖南天河国云科技有限公司 | 一种跨链资产转移方法、系统及计算机可读存储介质 |
CN110119430A (zh) * | 2019-04-29 | 2019-08-13 | 深圳市元征科技股份有限公司 | 一种智能合约管理方法、服务器及计算机可读存储介质 |
CN110223170A (zh) * | 2019-05-15 | 2019-09-10 | 北京瑞卓喜投科技发展有限公司 | 基于联盟链的证券型通证的发行方法及系统 |
CN110288179A (zh) * | 2019-05-10 | 2019-09-27 | 深圳壹账通智能科技有限公司 | 联盟链的治理方法及装置、计算机设备、存储介质 |
CN110599181A (zh) * | 2019-09-26 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置和设备及存储介质 |
CN110727939A (zh) * | 2019-12-17 | 2020-01-24 | 成都四方伟业软件股份有限公司 | 一种基于区块链的数据使用权认证方法及系统 |
CN110766554A (zh) * | 2019-09-29 | 2020-02-07 | 南京金宁汇科技有限公司 | 基于多中心化管理的智能合约共识方法、系统及存储介质 |
CN110851877A (zh) * | 2019-11-19 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及区块链节点设备、存储介质 |
CN110866273A (zh) * | 2019-11-09 | 2020-03-06 | 北京工业大学 | 一种基于区块链和星际文件系统的企业间标准共识方法 |
CN110880966A (zh) * | 2019-11-22 | 2020-03-13 | 哈尔滨工业大学 | 一种域名解析系统搭建和域名查询方法 |
CN111105242A (zh) * | 2020-01-09 | 2020-05-05 | 江苏恒为信息科技有限公司 | 一种区块链智能合约实现方法 |
CN111163165A (zh) * | 2019-12-28 | 2020-05-15 | 北京工业大学 | 一种基于Fabric联盟链的投票共识方法 |
CN111159764A (zh) * | 2019-12-26 | 2020-05-15 | 杭州趣链科技有限公司 | 基于投票选举的链上与链下相结合实现联盟链自治的方法 |
CN111475578A (zh) * | 2020-04-21 | 2020-07-31 | 吴海娟 | 征信联盟链中智能合约的上链表决方法及系统 |
CN111626853A (zh) * | 2020-04-14 | 2020-09-04 | 北京交通大学 | 一种装配式建筑预制供应链多主体信息协同方法 |
CN111651469A (zh) * | 2020-06-01 | 2020-09-11 | 杭州溪塔科技有限公司 | 一种管理区块链系统合约的方法和装置 |
WO2020224243A1 (zh) * | 2019-05-08 | 2020-11-12 | 深圳壹账通智能科技有限公司 | 数据发送方法、装置、服务器及存储介质 |
CN112291327A (zh) * | 2020-10-23 | 2021-01-29 | 中化能源股份有限公司 | 区块链节点管理方法、装置及电子设备 |
CN112882744A (zh) * | 2021-03-26 | 2021-06-01 | 中国工商银行股份有限公司 | 应用在区块链系统上的智能合约升级和兼容方法及系统 |
CN114047980A (zh) * | 2021-11-29 | 2022-02-15 | 珠海格力电器股份有限公司 | 可编程控制器配置数据的管理系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106919419A (zh) * | 2017-02-03 | 2017-07-04 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 区块链上的智能合约程序的更新方法及装置 |
CN107451874A (zh) * | 2017-07-27 | 2017-12-08 | 武汉天喻信息产业股份有限公司 | 基于区块链的电子发票综合处理方法及系统 |
CN107943580A (zh) * | 2017-11-13 | 2018-04-20 | 上海点融信息科技有限责任公司 | 用于管理区块链节点处的用户智能合约的方法以及设备 |
CN108196872A (zh) * | 2017-12-27 | 2018-06-22 | 邵美 | 一种区块链系统中智能合约的升级方法 |
-
2018
- 2018-08-29 CN CN201810991279.2A patent/CN109087104A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106919419A (zh) * | 2017-02-03 | 2017-07-04 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 区块链上的智能合约程序的更新方法及装置 |
CN107451874A (zh) * | 2017-07-27 | 2017-12-08 | 武汉天喻信息产业股份有限公司 | 基于区块链的电子发票综合处理方法及系统 |
CN107943580A (zh) * | 2017-11-13 | 2018-04-20 | 上海点融信息科技有限责任公司 | 用于管理区块链节点处的用户智能合约的方法以及设备 |
CN108196872A (zh) * | 2017-12-27 | 2018-06-22 | 邵美 | 一种区块链系统中智能合约的升级方法 |
Non-Patent Citations (2)
Title |
---|
李赫: "《区块链技术金融应用实践》", 30 September 2017 * |
郭学沛: "《区块链技术及应用》", 《信息安全研究》 * |
Cited By (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547488A (zh) * | 2018-12-29 | 2019-03-29 | 杭州趣链科技有限公司 | 一种基于联盟区块链的可信数据计算及交换系统 |
CN109547488B (zh) * | 2018-12-29 | 2021-11-05 | 杭州趣链科技有限公司 | 一种基于联盟区块链的可信数据计算及交换系统 |
CN109491981B (zh) * | 2019-01-11 | 2021-05-28 | 珮金(上海)信息科技有限公司 | 基于区块链的文件管理方法和装置 |
CN109491981A (zh) * | 2019-01-11 | 2019-03-19 | 珮金(上海)信息科技有限公司 | 基于区块链的文件管理方法和装置 |
CN109840780A (zh) * | 2019-02-14 | 2019-06-04 | 重庆金窝窝网络科技有限公司 | 农产品信息维护方法、装置及系统 |
CN109840780B (zh) * | 2019-02-14 | 2023-04-18 | 重庆金窝窝网络科技有限公司 | 农产品信息维护方法、装置及系统 |
CN109934598B (zh) * | 2019-03-07 | 2023-10-27 | 重庆市千将软件有限公司 | 区块链烟草溯源防伪系统 |
CN109934598A (zh) * | 2019-03-07 | 2019-06-25 | 重庆市千将软件有限公司 | 区块链烟草溯源防伪系统 |
CN110022217A (zh) * | 2019-04-04 | 2019-07-16 | 深圳大通实业股份有限公司 | 一种基于区块链的广告传媒业务数据可信存证系统 |
CN110022217B (zh) * | 2019-04-04 | 2021-11-05 | 深圳大通实业股份有限公司 | 一种基于区块链的广告传媒业务数据可信存证系统 |
CN110020860A (zh) * | 2019-04-09 | 2019-07-16 | 湖南天河国云科技有限公司 | 一种跨链资产转移方法、系统及计算机可读存储介质 |
CN110020860B (zh) * | 2019-04-09 | 2023-09-05 | 湖南天河国云科技有限公司 | 一种跨链资产转移方法、系统及计算机可读存储介质 |
CN110119430B (zh) * | 2019-04-29 | 2023-06-30 | 深圳市元征科技股份有限公司 | 一种智能合约管理方法、服务器及计算机可读存储介质 |
CN110119430A (zh) * | 2019-04-29 | 2019-08-13 | 深圳市元征科技股份有限公司 | 一种智能合约管理方法、服务器及计算机可读存储介质 |
WO2020224243A1 (zh) * | 2019-05-08 | 2020-11-12 | 深圳壹账通智能科技有限公司 | 数据发送方法、装置、服务器及存储介质 |
CN110288179A (zh) * | 2019-05-10 | 2019-09-27 | 深圳壹账通智能科技有限公司 | 联盟链的治理方法及装置、计算机设备、存储介质 |
WO2020228531A1 (zh) * | 2019-05-10 | 2020-11-19 | 深圳壹账通智能科技有限公司 | 联盟链的治理方法及装置、计算机设备、存储介质 |
CN110223170A (zh) * | 2019-05-15 | 2019-09-10 | 北京瑞卓喜投科技发展有限公司 | 基于联盟链的证券型通证的发行方法及系统 |
CN110599181B (zh) * | 2019-09-26 | 2021-05-11 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置和设备及存储介质 |
CN110599181A (zh) * | 2019-09-26 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置和设备及存储介质 |
CN110766554A (zh) * | 2019-09-29 | 2020-02-07 | 南京金宁汇科技有限公司 | 基于多中心化管理的智能合约共识方法、系统及存储介质 |
CN110866273A (zh) * | 2019-11-09 | 2020-03-06 | 北京工业大学 | 一种基于区块链和星际文件系统的企业间标准共识方法 |
CN110866273B (zh) * | 2019-11-09 | 2023-05-12 | 北京工业大学 | 一种基于区块链和星际文件系统的企业间标准共识方法 |
CN110851877A (zh) * | 2019-11-19 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及区块链节点设备、存储介质 |
CN110851877B (zh) * | 2019-11-19 | 2024-03-15 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及区块链节点设备、存储介质 |
CN110880966A (zh) * | 2019-11-22 | 2020-03-13 | 哈尔滨工业大学 | 一种域名解析系统搭建和域名查询方法 |
CN110727939A (zh) * | 2019-12-17 | 2020-01-24 | 成都四方伟业软件股份有限公司 | 一种基于区块链的数据使用权认证方法及系统 |
CN111159764A (zh) * | 2019-12-26 | 2020-05-15 | 杭州趣链科技有限公司 | 基于投票选举的链上与链下相结合实现联盟链自治的方法 |
CN111163165A (zh) * | 2019-12-28 | 2020-05-15 | 北京工业大学 | 一种基于Fabric联盟链的投票共识方法 |
CN111105242A (zh) * | 2020-01-09 | 2020-05-05 | 江苏恒为信息科技有限公司 | 一种区块链智能合约实现方法 |
CN111626853A (zh) * | 2020-04-14 | 2020-09-04 | 北京交通大学 | 一种装配式建筑预制供应链多主体信息协同方法 |
CN111475578B (zh) * | 2020-04-21 | 2022-12-13 | 布谷维客科技有限公司 | 征信联盟链中智能合约的上链表决方法及系统 |
CN111475578A (zh) * | 2020-04-21 | 2020-07-31 | 吴海娟 | 征信联盟链中智能合约的上链表决方法及系统 |
CN111651469B (zh) * | 2020-06-01 | 2023-05-26 | 杭州溪塔科技有限公司 | 一种管理区块链系统合约的方法和装置 |
CN111651469A (zh) * | 2020-06-01 | 2020-09-11 | 杭州溪塔科技有限公司 | 一种管理区块链系统合约的方法和装置 |
CN112291327A (zh) * | 2020-10-23 | 2021-01-29 | 中化能源股份有限公司 | 区块链节点管理方法、装置及电子设备 |
CN112882744A (zh) * | 2021-03-26 | 2021-06-01 | 中国工商银行股份有限公司 | 应用在区块链系统上的智能合约升级和兼容方法及系统 |
CN112882744B (zh) * | 2021-03-26 | 2024-03-26 | 中国工商银行股份有限公司 | 应用在区块链系统上的智能合约升级和兼容方法及系统 |
CN114047980A (zh) * | 2021-11-29 | 2022-02-15 | 珠海格力电器股份有限公司 | 可编程控制器配置数据的管理系统 |
CN114047980B (zh) * | 2021-11-29 | 2024-01-19 | 珠海格力电器股份有限公司 | 可编程控制器配置数据的管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109087104A (zh) | 区块链智能合约管理方法和系统、计算机可读存储介质 | |
CN108881232B (zh) | 业务系统的登录访问方法、装置、存储介质和处理器 | |
CN113098907B (zh) | 一种区块链的群组划分方法与装置 | |
CN111539750A (zh) | 一种基于区块链和大数据技术的商品溯源系统 | |
CN101253488B (zh) | 网络中文件的分布式高速缓存 | |
CN109728954A (zh) | 联盟链节点管理系统以及方法 | |
CN110430087A (zh) | 区块链热升级的架构设计与实现 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
CN104301142B (zh) | 一种配置文件的备份方法和设备 | |
CN110784495B (zh) | 基于区块链的大数据集群系统的发现与配置信息管理方法 | |
CN107171829A (zh) | 一种基于bft共识算法实现的动态节点管理方法 | |
CN109104451A (zh) | Docker镜像的下载方法及节点、Docker镜像的预热方法及节点 | |
CN109286685A (zh) | 可拓展子链的主链加并行多子链的系统架构 | |
CN111027936A (zh) | 一种联盟网络中基于智能合约的工作流实现方法、设备及介质 | |
CN108921694B (zh) | 区块链管理方法和区块链节点以及计算机可读存储介质 | |
CN111510333B (zh) | 基于k3s平台的联盟区块链系统、实现方法及装置 | |
CN111931215B (zh) | 数据管理方法和装置及存储介质 | |
Neu et al. | The availability-accountability dilemma and its resolution via accountability gadgets | |
US11019166B2 (en) | Management services for distributed computing architectures using rolling changes | |
CN111737104A (zh) | 区块链网络服务平台及其测试用例共享方法、存储介质 | |
CN115174570B (zh) | 一种基于动态委员会的跨链共识方法及系统 | |
CN108605042A (zh) | 用于sdn群集化中基于信任的认证的方法和设备 | |
CN111131318B (zh) | 一种去中心化的密钥管理分发方法、系统及存储介质 | |
CN101404575A (zh) | 一种更新签名算法的方法和系统 | |
CN114553884A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181225 |