CN110138592A - 一种智能合约的管理方法及系统 - Google Patents

一种智能合约的管理方法及系统 Download PDF

Info

Publication number
CN110138592A
CN110138592A CN201910284149.XA CN201910284149A CN110138592A CN 110138592 A CN110138592 A CN 110138592A CN 201910284149 A CN201910284149 A CN 201910284149A CN 110138592 A CN110138592 A CN 110138592A
Authority
CN
China
Prior art keywords
node
management
cryptographic hash
intelligent contract
alliance
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
Application number
CN201910284149.XA
Other languages
English (en)
Inventor
盛伟
郑志探
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.)
Suningcom Group Co Ltd
Original Assignee
Suningcom Group Co Ltd
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 Suningcom Group Co Ltd filed Critical Suningcom Group Co Ltd
Priority to CN201910284149.XA priority Critical patent/CN110138592A/zh
Publication of CN110138592A publication Critical patent/CN110138592A/zh
Priority to CA3177205A priority patent/CA3177205C/en
Priority to PCT/CN2019/109114 priority patent/WO2020206956A1/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种智能合约的管理方法及系统,该方法包括:S1:在联盟链节点中设置若干管理节点,将其余节点设置为普通节点;S2:为管理节点和普通节点设置相应的权限,其中普通节点有共享数据的权限,管理节点有共享数据和管理智能合约以及联盟链节点的权限;S3:管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在联盟链上进行审核结果的广播;S4:若所有管理节点均同意安装或更新智能合约,则自动触发执行智能合约的安装或更新。本发明通过管理节点对即将要升级的智能合约安装包和代码进行审核和校验,且需要联盟内的所有管理员同意安装升级后才能执行安装升级操作,保证智能合约升级包的真实性和安全性。

Description

一种智能合约的管理方法及系统
技术领域
本发明涉及区块链技术领域,特别涉及一种智能合约的管理方法及系统。
背景技术
区块链被认为是一种可以带来重大变革和突破的技术,它可能会彻底改变或者颠覆某些产业的运作方式,就像云计算、物联网、大数据的出现和发展。区块链技术并不是一种单一的信息技术,而是依托于现有技术,加以独创性的组合及创新,从而实现以前未实现的功能。
联盟链是指由若干个机构共同参与管理的区块链,每个机构都运行着一个或多个节点,其中的数据只允许系统内不同的机构进行读写和发送交易,并且共同来记录交易数据。智能合约是运行在可复制、共享的账本上的计算机程序,可以处理操作区块链账本信息。从本质上讲,智能合约的工作原理类似于其它计算机程序的if-then语句。当一个预先编好的条件被触发时,智能合约执行相应的合同条款。智能合约程序不仅仅只是一个可以自动执行的计算机程序,它更像是一个系统的参与者,负责临时保管资产,并且严格按照事先商定好的规则执行操作。
在目前区块链系统中,只要节点接入区块链系统中,该节点就可以安装升级智能合约。当其他节点不知道升级的智能合约内容,又不能对升级操作做出限制的情况下,将导致智能合约升级失去安全性和可靠性。
鉴于智能合约在区块链中的重要地位,如何保证区块链内的多个用户共同参与制定一份智能合约已成为区块链参与方需要重点解决的问题。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种智能合约的管理方法及系统,以克服现有技术中某节点安装升级智能合约时,其他节点不知道升级的智能合约内容,又不能对升级操作做出限制,从而导致智能合约升级失去安全性和可靠性等问题。
为解决上述一个或多个技术问题,本发明采用的技术方案是:
一方面,提供了一种智能合约的管理方法,该方法包括如下步骤:
S1:在联盟链节点中设置若干管理节点,将其余节点设置为普通节点;
S2:为所述管理节点和所述普通节点设置相应的权限,其中所述普通节点有共享数据的权限,所述管理节点有共享数据和管理智能合约以及所述联盟链节点的权限;
S3:所述管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在所述联盟链上进行审核结果的广播;
S4:若所有管理节点均同意安装或更新所述智能合约,则自动触发执行所述智能合约的安装或更新。
进一步的,所述申请信息包括智能合约的代码、安装包、第一代码哈希值、第一安装包哈希值以及签名信息,所述步骤S3具体包括:
S3.1:所述管理节点使用上传所述申请信息的节点的公钥验证所述签名信息,验证所述上传申请信息的节点的身份,若验证通过则执行步骤S3.2,否则结束流程;
S3.2:所述管理节点验证所述第一代码哈希值以及第一安装包哈希值,若验证通过则执行步骤S3.3,否则结束流程;
S3.3:所述管理节点验证所述智能合约的代码的真实性,若验证通过则执行步骤S3.4,否则结束流程;
S3.4:将所述管理节点的审核结果在所述联盟链上进行广播。
进一步的,所述步骤S3还包括:
所述上传申请信息的节点对所述智能合约的代码以及安装包进行哈希运算,获取第一代码哈希值和第一安装包哈希值。
进一步的,所述管理节点验证所述第一代码哈希值以及第一安装包哈希值包括:
所述管理节点对所述智能合约的代码以及安装包进行哈希运算,获取第二代码哈希值以及第二安装包哈希值,将所述第一代码哈希值与所述第二代码哈希值、所述第一安装包哈希值与所述第二安装包哈希值进行比较,若均一致,则验证通过,否则不通过。
进一步的,所述步骤S3还包括:
所述上传申请信息的节点使用自己的私钥对所述第一代码哈希值和第一安装包哈希值进行签名,获取签名信息。
进一步的,所述步骤S4具体包括:
若所有管理节点均同意安装或更新所述智能合约,则触发所述联盟链上所有节点安装所述智能合约的安装包,并指定其中一个节点对所述智能合约做升级操作。
另一方面,提供了一种智能合约的管理系统,所述系统包括:
节点管理模块,用于在联盟链节点中设置若干管理节点,将其余节点设置为普通节点;
权限管理模块,用于为所述管理节点和所述普通节点设置相应的权限,其中所述普通节点有共享数据的权限,所述管理节点有共享数据和管理智能合约以及所述联盟链节点的权限;
信息上传模块,用于联盟链上任一节点上传的安装或更新智能合约的申请信息;
信息审核模块,用于所述管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在所述联盟链上进行审核结果的广播;
安装或更新模块,用于若所有管理节点均同意安装或更新所述智能合约,则自动触发执行所述智能合约的安装或更新。
进一步的,所述信息审核模块包括:
验签单元,用于所述管理节点使用上传所述申请信息的节点的公钥验证所述签名信息,验证所述上传申请信息的节点的身份;
哈希值验证单元,用于所述管理节点验证所述第一代码哈希值以及第一安装包哈希值;
代码验证单元,用于所述管理节点验证所述智能合约的代码的真实性;
结果广播单元,用于将所述管理节点的审核结果在所述联盟链上进行广播。
进一步的,所述信息上传模块包括:
计算单元,用于所述上传申请信息的节点对所述智能合约的代码以及安装包进行哈希运算,获取第一代码哈希值和第一安装包哈希值。
进一步的,所述哈希值验证单元具体用于:
所述管理节点对所述智能合约的代码以及安装包进行哈希运算,获取第二代码哈希值以及第二安装包哈希值,将所述第一代码哈希值与所述第二代码哈希值、所述第一安装包哈希值与所述第二安装包哈希值进行比较,若均一致,则验证通过,否则不通过。
进一步的,所述信息上传模块还包括:
签名单元,用于所述上传申请信息的节点使用自己的私钥对所述第一代码哈希值和第一安装包哈希值进行签名,获取签名信息。
进一步的,所述安装或更新模块具体用于:
若所有管理节点均同意安装或更新所述智能合约,则触发所述联盟链上所有节点安装所述智能合约的安装包,并指定其中一个节点对所述智能合约做升级操作。。
本发明实施例提供的技术方案带来的有益效果是:
1、本发明实施例提供的智能合约的管理方法及系统,引入智能合约安装升级管理机制,通过管理节点对即将要升级的智能合约安装包和代码进行审核和校验,且需要联盟内的所有管理员同意安装升级后才能执行安装升级操作,保证智能合约升级包的真实性和安全性;
2、本发明实施例提供的智能合约的管理方法及系统,引入联盟会员级别标签机制,标签包括普通节点和管理节点,管理节点具有管理职能的权限,联盟管理委员会中的机构拥有管理节点资格,保证联盟管理的权威性;
3、本发明实施例提供的智能合约的管理方法及系统,引入联盟会员管理机制,对申请加入联盟的机构需要管理节点对其申请信息进行审核,对联盟会员的准入、级别进行控制,一方面,保证加入联盟的会员的质量,另一方面保证只有联盟内的会员才能申请智能合约安装升级。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人节点来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的智能合约的管理方法的流程图;
图2是根据一示例性实施例示出的管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在联盟链上进行审核结果的广播的流程图;
图3是根据一示例性实施例示出的智能合约的管理系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人节点在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提出一种智能合约的管理方法及系统,其目的是控制联盟成员升级智能合约的权限,保证智能合约在联盟成员一致同意的基础上进行安装升级。本发明实施例结合联盟会员的管理机制、智能合约升级的审核机制。系统包括底层联盟链平台和业务平台两大模块,其中底层联盟链平台负责对联盟成员信息、智能合约信息的存储,联盟成员信息包括成员标签等信息,智能合约信息包括智能合约的代码、安装包以及代码和安装包的哈希值等信息。业务平台构建于底层区块链平台之上,完成对联盟成员的管理和智能合约的管理。
联盟会员的管理包括联盟会员的申请、审核、会员升降级、会员退出等,智能合约的管理包括智能合约安装升级、审核等。联盟会员包括普通节点和管理节点两种角色,在联盟会员存储的信息中用标签指示,其中管理节点除了有共享联盟数据的权限外,还有管理联盟会员和智能合约安装升级的权限,普通节点只有共享联盟数据的权限,没有管理相关的权限。
图1是根据一示例性实施例示出的智能合约的管理方法的流程图,参照图1所示,该方法包括如下步骤:
S1:在联盟链节点中设置若干管理节点,将其余节点设置为普通节点。
具体的,本发明实施例中,引入联盟会员级别标签机制,将加入联盟链中的节点划分为管理节点和普通节点两种。
S2:为所述管理节点和所述普通节点设置相应的权限,其中所述普通节点有共享数据的权限,所述管理节点有共享数据和管理智能合约以及所述联盟链成节点的权限。
具体的,作为一种较优的实施方式,可以赋予联盟管理委员会中的机构拥有管理节点资格,从而保证联盟管理的权威性。
为了保证加入联盟的会员的质量,本发明实施例中引入联盟会员管理机制,对申请加入联盟的机构需要管理节点对其申请信息进行审核,从而达到对联盟会员的准入、级别进行控制。其中,节点申请加入联盟流程如下:
S101:申请加入联盟的节点通过业务系统开放的会员资料提交入口提交会员申请资料,并将申请资料存储到底层联盟链。
具体的,提交的节点申请资料包括企业信息、法人信息以及验证节点身份的公钥,同时要指定申请的节点级别,包括普通节点和管理节点两种节点级别可以供选择。
S102:管理节点对接收到的新节点上传的节点申请资料进行审核,并将审核结果在联盟链中进行广播。
具体的,当有新节点提交申请信息时,联盟中所有节点都会接收到新节点的节点申请资料。管理节点会对新申请加入的联盟的节点提交的节点申请资料进行审核,其中包括对企业信息和法人信息进行审核,对审核结果用管理节点私钥签名,然后将审核结果和签名上传到区块链上。新节点申请通过的条件是所有管理节点都审核通过,所以只要有一个管理节点审核不通过,新节点加入联盟的申请就不通过,其它未审核该申请的管理节点不需要再进行审核。这样设置,一方面可以提高管理节点的审核效率,另一方面还可以减少管理节点的工作量。
S103:当所有管理节点均同意该节点加入后,为新节点生成联盟链的证书,并将证书文件写入到联盟链配置块中。
具体的,若所有管理节点审核通过,则新节点申请加入联盟成功,系统会生成新节点的身份证书,该身份证书是联盟链中成员身份的标识。新节点的身份证书会更新到联盟链配置区块中,更新完成后,新加入节点就可以被联盟内其它节点识别和验证。
S104:新加入节点部署联盟链系统,接入到联盟链,同步已有数据。
具体的,新节点部署自己的节点,接入到联盟链中。新节点将部署的节点加入到联盟数据通道中,然后安装智能合约,这样就可以和联盟内其它成员共享该通道的数据信息,新节点会同步该通道上存储的所有数据。
作为一种较优的实施方式,本发明实施例中,联盟内所有普通节点都有权利申请升级为管理节点,拥有管理节点的权限,同时所有管理节点都可能被降级为普通节点。其中,节点级别管理流程如下:
S201:提交节点级别调整申请,并将申请信息写入到联盟链中。
S202:管理节点审核接收到的节点级别调整申请,并在联盟链中广播审核结果。这里需要说明的是,联盟中所有节点都会接收到节点级别调整申请的相关信息。
S203:当所有管理节点均同意该节点级别调整申请后,申请节点的节点级别会变成已申请的级别,同时该节点的权限也会被相应调整。
具体的,本发明实施中,节点级别管理流程包括升级和降级两个流程,其中,普通节点申请升级为管理节点的具体实施方式如下:
1)普通节点提交升级为管理节点的升级申请信息,同时附带用自身私钥对升级申请信息签名的签名信息;
2)联盟中所有管理节点的业务系统都会接收到该升级申请信息,管理节点首先会用普通节点的公钥验证该申请节点的身份,然后对审核结果签名,将审核结果和签名信息上传到联盟链;
3)当所有管理节点都审核通过,自动触发该普通节点升级为管理节点,更新联盟中普通节点和管理节点的数量;
4)更新联盟中跟管理节点数量相关的审核信息,包括联盟节点加入申请审核信息、节点级别调整申请审核信息和智能合约升级审核信息。
管理节点被动降级为普通节点的具体实施方式如下:
1)管理节点A(联盟链中任意一个管理节点)提交将管理节点B降级为普通节点的降级申请信息,并上传用管理节点A私钥对降级申请信息签名的签名信息;
2)联盟链中所有管理节点的业务系统都会接收到管理节点B被动降级的申请信息,其它管理节点首先会用管理节点A的公钥验证该申请节点(即管理节点A)的身份,然后对审核结果签名,将审核结果和签名信息上传到联盟链;
3)当所有其它管理节点都审核通过,自动触发管理节点B降级为普通节点,更新联盟中普通节点和管理节点的数量;
4)更新联盟中跟管理节点数量相关的审核信息,包括联盟节点加入申请审核信息、节点级别调整申请审核信息和智能合约升级审核信息等。
S3:所述管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在所述联盟链上进行审核结果的广播。
具体的,当联盟链中有节点(该节点可以是管理节点,也可以是普通节点)需要安装或升级智能合约时,首先将申请信息上传至联盟链,该申请信息存储在所有节点都可以获取的地方,联盟链中所有节点均会接收到安装或升级智能合约的通知。管理节点会下载上述申请信息进行审核,并将审核结果在联盟链上进行广播。
S4:若所有管理节点均同意安装或更新所述智能合约,则自动触发执行所述智能合约的安装或更新。
具体的,联盟链上任一节点(可以是管理节点,也可以是普通节点)均可作为上传节点发起安装或更新智能合约的申请。上传节点首先会将安装或更新智能合约的申请信息上传至联盟链。在本发明实施例中,设置所有管理节点均同意安装或更新智能合约才会触发执行智能合约的安装或更新。也就是说,只要有一个管理节点审核不通过,安装或更新智能合约的申请就不通过,其它未审核该申请的管理节点不需要再进行审核。这样设置,一方面可以减少管理节点的工作量,提高管理节点的审核效率,另一方面通过采用管理节点审核机制,保证智能合约安装或更新的真实性和安全性。
作为一种较优的实施方式,本发明实施例中,所述申请信息包括智能合约的代码、安装包、第一代码哈希值、第一安装包哈希值以及签名信息。
图2是根据一示例性实施例示出的管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在联盟链上进行审核结果的广播的流程图,参照图2所示,所述步骤S3具体包括:
S3.1:所述管理节点使用上传所述申请信息的节点的公钥验证所述签名信息,验证所述上传申请信息的节点的身份,若验证通过则执行步骤3.2,否则结束流程。
具体的,申请信息包括智能合约的代码、安装包、第一代码哈希值、第一安装包哈希值以及签名信息等。管理节点会下载上述申请信息,对其进行验证。首先管理节点会使用上传上传节点的公钥验证上述签名信息(即验签),验证上传申请信息的节点(即上传节点)的身份,若验证通过则执行步骤3.2,继续进行下一步审核,否则结束流程。
S3.2:所述管理节点验证所述第一代码哈希值以及第一安装包哈希值,若验证通过则执行步骤S3.3,否则结束流程。
具体的,签名验证通过后,管理节点接着会验证智能合约的第一代码哈希值以及第一安装包哈希值,若验证通过则执行步骤S3.3,继续进行下一步审核,否则结束流程。
S3.3:所述管理节点验证所述智能合约的代码的真实性,若验证通过则执行步骤S3.4,否则结束流程。
具体的,哈希值验证通过后,管理节点会审阅智能合约的代码,保证智能合约的代码的完整性,若验证通过则执行步骤S3.4,继续进行下一步操作,否则结束流程。
S3.4:将所述管理节点的审核结果在所述联盟链上进行广播。
具体的,管理节点会将审核结果在区块链上进行广播,若是有一个管理节点审核不通过,安装或更新智能合约的申请就不会通过。
作为一种较优的实施方式,本发明实施例中,所述步骤S3还包括:
所述上传申请信息的节点对所述智能合约的代码以及安装包进行哈希运算,获取第一代码哈希值和第一安装包哈希值。
具体的,上传节点在上传申请信息前,会使用预设的哈希算法对需要安装或升级的智能合约的代码以及安装包进行哈希运算,计算获取第一代码哈希值和第一安装包哈希值,将第一代码哈希值、第一安装包哈希值和智能合约的代码以及安装包作为申请信息一起上传至联盟链。这里需要说明的是,本发明实施例中,预设的哈希算法可以是联盟链中所有节点一起确定的,也可以是上传节点自己设置的。若是第二种情况,上传节点在上传申请信息时,需要将自己使用的哈希算法一起上传至联盟链或者对自己使用的哈希算法作相应说明,保证联盟链中其他节点能够获取或获知其使用的哈希算法。
作为一种较优的实施方式,本发明实施例中,所述管理节点验证所述第一代码哈希值以及第一安装包哈希值包括:
所述管理节点对所述智能合约的代码以及安装包进行哈希运算,获取第二代码哈希值以及第二安装包哈希值,将所述第一代码哈希值与所述第二代码哈希值、所述第一安装包哈希值与所述第二安装包哈希值进行比较,若均一致,则验证通过,否则不通过。
具体的,管理节点进行哈希值验证时,首先将待安装或升级的智能合约的代码和安装包下载下来,然后使用与上传节点使用的同一种哈希算法对该智能合约的代码和安装包分别进行哈希运算,计算获取第二代码哈希值以及第二安装包哈希值。然后再将第一代码哈希值与第二代码哈希值、第一安装包哈希值与第二安装包哈希值进行比较,若是第一代码哈希值与第二代码哈希值一致,且第一安装包哈希值与第二安装包哈希值也一致,则验证通过,否则不通过(即若是有其中一组或者两组不一致,就不通过)。
作为一种较优的实施方式,本发明实施例中,所述步骤S3还包括:
所述上传申请信息的节点使用自己的私钥对所述第一代码哈希值和第一安装包哈希值进行签名,获取签名信息。
具体的,上传节点在上传申请信息前,还使用自己的私钥对第一代码哈希值和第一安装包哈希值进行签名,生成签名信息,并将该签名信息与其他申请信息一起上传至联盟链。
作为一种较优的实施方式,本发明实施例中,所述步骤S4具体包括:
若所有管理节点均同意安装或更新所述智能合约,则触发所述联盟链上所有节点安装所述智能合约的安装包,并指定其中一个节点对所述智能合约做升级操作。
具体的,当所有管理节点均同意安装或更新所述智能合约,即所有管理节点均审核通过,会自动触发执行智能合约的安装或更新操作。此时,联盟链上所有节点均会下载该智能合约的安装包进行安装,并且会指定其中一个节点对智能合约做升级操作。这里需要说明的是,本发明实施例中,可以由任一节点指定其中一个节点对智能合约做升级操作
图3是根据一示例性实施例示出的智能合约的管理系统的结构示意图,参照图3所示,该系统包括:
节点管理模块,用于在联盟链节点中设置若干管理节点,将其余节点设置为普通节点;
权限管理模块,用于为所述管理节点和所述普通节点设置相应的权限,其中所述普通节点有共享数据的权限,所述管理节点有共享数据和管理智能合约以及所述联盟链成节点的权限;
信息上传模块,用于联盟链上任一节点上传的安装或更新智能合约的申请信息;
信息审核模块,用于所述管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在所述联盟链上进行审核结果的广播;
安装或更新模块,用于若所有管理节点均同意安装或更新所述智能合约,则自动触发执行所述智能合约的安装或更新。
作为一种较优的实施方式,本发明实施例中,所述信息审核模块包括:
验签单元,用于所述管理节点使用上传所述申请信息的节点的公钥验证所述签名信息,验证所述上传申请信息的节点的身份;
哈希值验证单元,用于所述管理节点验证所述第一代码哈希值以及第一安装包哈希值;
代码验证单元,用于所述管理节点验证所述智能合约的代码的真实性;
结果广播单元,用于将所述管理节点的审核结果在所述联盟链上进行广播。
作为一种较优的实施方式,本发明实施例中,所述信息上传模块还包括:
计算单元,用于所述上传申请信息的节点对所述智能合约的代码以及安装包进行哈希运算,获取第一代码哈希值和第一安装包哈希值。
作为一种较优的实施方式,本发明实施例中,所述哈希值验证单元具体用于:
所述管理节点对所述智能合约的代码以及安装包进行哈希运算,获取第二代码哈希值以及第二安装包哈希值,将所述第一代码哈希值与所述第二代码哈希值、所述第一安装包哈希值与所述第二安装包哈希值进行比较,若均一致,则验证通过,否则不通过。
作为一种较优的实施方式,本发明实施例中,所述信息上传模块还包括:
签名单元,用于所述上传申请信息的节点使用自己的私钥对所述第一代码哈希值和第一安装包哈希值进行签名,获取签名信息。
作为一种较优的实施方式,本发明实施例中,所述安装或更新模块具体用于:
若所有管理节点均同意安装或更新所述智能合约,则触发所述联盟链上所有节点安装所述智能合约的安装包,并指定其中一个节点对所述智能合约做升级操作。
综上所述,本发明实施例提供的技术方案带来的有益效果是:
1、本发明实施例提供的智能合约的管理方法及系统,引入智能合约安装升级管理机制,通过管理节点对即将要升级的智能合约安装包和代码进行审核和校验,且需要联盟内的所有管理员同意安装升级后才能执行安装升级操作,保证智能合约升级包的真实性和安全性;
2、本发明实施例提供的智能合约的管理方法及系统,引入联盟会员级别标签机制,标签包括普通节点和管理节点,管理节点具有管理职能的权限,联盟管理委员会中的机构拥有管理节点资格,保证联盟管理的权威性;
3、本发明实施例提供的智能合约的管理方法及系统,引入联盟会员管理机制,对申请加入联盟的机构需要管理节点对其申请信息进行审核,对联盟会员的准入、级别进行控制,一方面,保证加入联盟的会员的质量,另一方面保证只有联盟内的会员才能申请智能合约安装升级。
需要说明的是:上述实施例提供的智能合约的管理系统在触发智能合约管理业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的智能合约的管理系统与智能合约的管理方法实施例属于同一构思,即该系统是基于智能合约的管理方法的,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人节点可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种智能合约的管理方法,其特征在于,所述方法包括如下步骤:
S1:在联盟链节点中设置若干管理节点,将其余节点设置为普通节点;
S2:为所述管理节点和所述普通节点设置相应的权限,其中所述普通节点有共享数据的权限,所述管理节点有共享数据和管理智能合约以及所述联盟链节点的权限;
S3:所述管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在所述联盟链上进行审核结果的广播;
S4:若所有管理节点均同意安装或更新所述智能合约,则自动触发执行所述智能合约的安装或更新。
2.根据权利要求1所述的智能合约的管理方法,其特征在于,所述申请信息包括智能合约的代码、安装包、第一代码哈希值、第一安装包哈希值以及签名信息,所述步骤S3具体包括:
S3.1:所述管理节点使用上传所述申请信息的节点的公钥验证所述签名信息,验证所述上传申请信息的节点的身份,若验证通过则执行步骤S3.2,否则结束流程;
S3.2:所述管理节点验证所述第一代码哈希值以及第一安装包哈希值,若验证通过则执行步骤S3.3,否则结束流程;
S3.3:所述管理节点验证所述智能合约的代码的真实性,若验证通过则执行步骤S3.4,否则结束流程;
S3.4:将所述管理节点的审核结果在所述联盟链上进行广播。
3.根据权利要求2所述的智能合约的管理方法,其特征在于,所述步骤S3还包括:
所述上传申请信息的节点对所述智能合约的代码以及安装包进行哈希运算,获取第一代码哈希值和第一安装包哈希值。
4.根据权利要求2或3所述的智能合约的管理方法,其特征在于,所述管理节点验证所述第一代码哈希值以及第一安装包哈希值包括:
所述管理节点对所述智能合约的代码以及安装包进行哈希运算,获取第二代码哈希值以及第二安装包哈希值,将所述第一代码哈希值与所述第二代码哈希值、所述第一安装包哈希值与所述第二安装包哈希值进行比较,若均一致,则验证通过,否则不通过。
5.根据权利要求2所述的智能合约的管理方法,其特征在于,所述步骤S3还包括:
所述上传申请信息的节点使用自己的私钥对所述第一代码哈希值和第一安装包哈希值进行签名,获取签名信息。
6.根据权利要求1或2所述的智能合约的管理方法,其特征在于,所述步骤S4具体包括:
若所有管理节点均同意安装或更新所述智能合约,则触发所述联盟链上所有节点安装所述智能合约的安装包,并指定其中一个节点对所述智能合约做升级操作。
7.一种智能合约的管理系统,其特征在于,所述系统包括:
节点管理模块,用于在联盟链节点中设置若干管理节点,将其余节点设置为普通节点;
权限管理模块,用于为所述管理节点和所述普通节点设置相应的权限,其中所述普通节点有共享数据的权限,所述管理节点有共享数据和管理智能合约以及所述联盟链节点的权限;
信息上传模块,用于联盟链上任一节点上传的安装或更新智能合约的申请信息;
信息审核模块,用于所述管理节点对联盟链上任一节点上传的安装或更新智能合约的申请信息进行审核,并在所述联盟链上进行审核结果的广播;
安装或更新模块,用于若所有管理节点均同意安装或更新所述智能合约,则自动触发执行所述智能合约的安装或更新。
8.根据权利要求7所述的智能合约的管理系统,其特征在于,所述信息审核模块包括:
验签单元,用于所述管理节点使用上传所述申请信息的节点的公钥验证所述签名信息,验证所述上传申请信息的节点的身份;
哈希值验证单元,用于所述管理节点验证所述第一代码哈希值以及第一安装包哈希值;
代码验证单元,用于所述管理节点验证所述智能合约的代码的真实性;
结果广播单元,用于将所述管理节点的审核结果在所述联盟链上进行广播。
9.根据权利要求8所述的智能合约的管理系统,其特征在于,所述信息上传模块包括:
计算单元,用于所述上传申请信息的节点对所述智能合约的代码以及安装包进行哈希运算,获取第一代码哈希值和第一安装包哈希值。
10.根据权利要求8或9所述的智能合约的管理系统,其特征在于,所述哈希值验证单元具体用于:
所述管理节点对所述智能合约的代码以及安装包进行哈希运算,获取第二代码哈希值以及第二安装包哈希值,将所述第一代码哈希值与所述第二代码哈希值、所述第一安装包哈希值与所述第二安装包哈希值进行比较,若均一致,则验证通过,否则不通过。
11.根据权利要求8所述的智能合约的管理系统,其特征在于,所述信息上传模块还包括:
签名单元,用于所述上传申请信息的节点使用自己的私钥对所述第一代码哈希值和第一安装包哈希值进行签名,获取签名信息。
12.根据权利要求7或8所述的智能合约的管理系统,其特征在于,所述安装或更新模块具体用于:
若所有管理节点均同意安装或更新所述智能合约,则触发所述联盟链上所有节点安装所述智能合约的安装包,并指定其中一个节点对所述智能合约做升级操作。
CN201910284149.XA 2019-04-09 2019-04-09 一种智能合约的管理方法及系统 Pending CN110138592A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910284149.XA CN110138592A (zh) 2019-04-09 2019-04-09 一种智能合约的管理方法及系统
CA3177205A CA3177205C (en) 2019-04-09 2019-09-29 Method of and system for managing smart contract
PCT/CN2019/109114 WO2020206956A1 (zh) 2019-04-09 2019-09-29 一种智能合约的管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910284149.XA CN110138592A (zh) 2019-04-09 2019-04-09 一种智能合约的管理方法及系统

Publications (1)

Publication Number Publication Date
CN110138592A true CN110138592A (zh) 2019-08-16

Family

ID=67569702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910284149.XA Pending CN110138592A (zh) 2019-04-09 2019-04-09 一种智能合约的管理方法及系统

Country Status (3)

Country Link
CN (1) CN110138592A (zh)
CA (1) CA3177205C (zh)
WO (1) WO2020206956A1 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110602217A (zh) * 2019-09-17 2019-12-20 腾讯科技(深圳)有限公司 基于区块链的联盟管理方法、装置、设备及存储介质
CN110708280A (zh) * 2019-08-21 2020-01-17 北京邮电大学 一种集合多家独立单元組成的根区块链认证系统及方法
CN110874741A (zh) * 2019-10-10 2020-03-10 北京海益同展信息科技有限公司 一种合约管理方法、区块链系统及存储介质
CN110992068A (zh) * 2019-12-17 2020-04-10 浙江大学 基于区块链的疫苗全生命周期管理方法及系统
CN111062730A (zh) * 2019-12-17 2020-04-24 浙江大学 基于物联网和区块链的猪肉信息管理方法及系统
CN111310223A (zh) * 2019-11-21 2020-06-19 中国民航大学 基于改进PoA区块链系统的民航虚占座位问题解决方法
CN111401900A (zh) * 2020-03-20 2020-07-10 深圳市网心科技有限公司 一种区块链验证人更新方法、装置、设备及可读存储介质
WO2020206956A1 (zh) * 2019-04-09 2020-10-15 苏宁云计算有限公司 一种智能合约的管理方法及系统
CN111897795A (zh) * 2020-06-24 2020-11-06 苏宁金融科技(南京)有限公司 一种联盟链的管理方法、装置及系统
CN112118107A (zh) * 2020-08-12 2020-12-22 北京大学 一种实现数据可信的自适应执行方法
CN112182608A (zh) * 2020-09-25 2021-01-05 中国人民大学 一种联盟链加密数据定期共享方法及系统
CN112954037A (zh) * 2021-02-03 2021-06-11 中国互联网络信息中心 一种基于联盟链的域名滥用处理方法及系统
CN113132441A (zh) * 2019-12-31 2021-07-16 阿里巴巴集团控股有限公司 一种分布式系统的信息处理方法、分布式系统及计算设备
CN113343288A (zh) * 2021-03-26 2021-09-03 江苏荣泽信息科技股份有限公司 一种基于tee的区块链智能合约安全管理系统
CN113689293A (zh) * 2021-08-09 2021-11-23 深圳前海微众银行股份有限公司 一种联盟链中智能合约文件确定方法及装置
CN115473747A (zh) * 2022-11-14 2022-12-13 苏州浪潮智能科技有限公司 一种状态变更方法、装置、设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116402471A (zh) * 2023-04-25 2023-07-07 中国人民解放军海军特色医学中心 一种基于联盟链的仪器设备信息管理方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593734A (zh) * 2013-11-12 2014-02-19 金蝶软件(中国)有限公司 电子会签方法和装置
CN106778329A (zh) * 2016-11-28 2017-05-31 中国银行股份有限公司 一种区块链智能合约模板动态更新方法、装置及系统
CN107424283A (zh) * 2017-04-22 2017-12-01 孙正义 一种投票方法及系统
CN107464148A (zh) * 2017-08-23 2017-12-12 众安信息技术服务有限公司 一种基于联盟链的智能合约升级方法和系统
US20180248880A1 (en) * 2017-02-24 2018-08-30 Verizon Patent And Licensing Inc. Permissions using blockchain
CN108881312A (zh) * 2018-08-24 2018-11-23 北京京东尚科信息技术有限公司 智能合约升级方法、系统和相关设备以及存储介质
CN109104415A (zh) * 2018-07-21 2018-12-28 江苏飞搏软件股份有限公司 构建可信节点网络的系统及方法
CN109358881A (zh) * 2018-10-24 2019-02-19 杭州趣链科技有限公司 一种基于智能合约的权限可控的智能合约升级方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6931999B2 (ja) * 2017-02-06 2021-09-08 株式会社日立製作所 信用度管理システムおよび信用度管理方法
CN109067553B (zh) * 2018-10-17 2021-06-25 杭州趣链科技有限公司 一种基于智能合约的区块链分布式证书的管理方法
CN109491682B (zh) * 2018-10-24 2021-12-17 杭州趣链科技有限公司 一种基于智能合约的权限可控的区块链系统自动升级方法
CN110138592A (zh) * 2019-04-09 2019-08-16 苏宁易购集团股份有限公司 一种智能合约的管理方法及系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593734A (zh) * 2013-11-12 2014-02-19 金蝶软件(中国)有限公司 电子会签方法和装置
CN106778329A (zh) * 2016-11-28 2017-05-31 中国银行股份有限公司 一种区块链智能合约模板动态更新方法、装置及系统
US20180248880A1 (en) * 2017-02-24 2018-08-30 Verizon Patent And Licensing Inc. Permissions using blockchain
CN107424283A (zh) * 2017-04-22 2017-12-01 孙正义 一种投票方法及系统
CN107464148A (zh) * 2017-08-23 2017-12-12 众安信息技术服务有限公司 一种基于联盟链的智能合约升级方法和系统
CN109104415A (zh) * 2018-07-21 2018-12-28 江苏飞搏软件股份有限公司 构建可信节点网络的系统及方法
CN108881312A (zh) * 2018-08-24 2018-11-23 北京京东尚科信息技术有限公司 智能合约升级方法、系统和相关设备以及存储介质
CN109358881A (zh) * 2018-10-24 2019-02-19 杭州趣链科技有限公司 一种基于智能合约的权限可控的智能合约升级方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020206956A1 (zh) * 2019-04-09 2020-10-15 苏宁云计算有限公司 一种智能合约的管理方法及系统
CN110708280B (zh) * 2019-08-21 2021-02-09 北京邮电大学 一种集合多家独立单元组成的根区块链认证系统及方法
CN110708280A (zh) * 2019-08-21 2020-01-17 北京邮电大学 一种集合多家独立单元組成的根区块链认证系统及方法
CN110602217B (zh) * 2019-09-17 2022-04-01 腾讯科技(深圳)有限公司 基于区块链的联盟管理方法、装置、设备及存储介质
CN110602217A (zh) * 2019-09-17 2019-12-20 腾讯科技(深圳)有限公司 基于区块链的联盟管理方法、装置、设备及存储介质
CN110874741A (zh) * 2019-10-10 2020-03-10 北京海益同展信息科技有限公司 一种合约管理方法、区块链系统及存储介质
CN111310223A (zh) * 2019-11-21 2020-06-19 中国民航大学 基于改进PoA区块链系统的民航虚占座位问题解决方法
CN110992068A (zh) * 2019-12-17 2020-04-10 浙江大学 基于区块链的疫苗全生命周期管理方法及系统
CN111062730A (zh) * 2019-12-17 2020-04-24 浙江大学 基于物联网和区块链的猪肉信息管理方法及系统
CN111062730B (zh) * 2019-12-17 2023-08-18 浙江大学 基于物联网和区块链的猪肉信息管理方法及系统
CN113132441A (zh) * 2019-12-31 2021-07-16 阿里巴巴集团控股有限公司 一种分布式系统的信息处理方法、分布式系统及计算设备
CN111401900A (zh) * 2020-03-20 2020-07-10 深圳市网心科技有限公司 一种区块链验证人更新方法、装置、设备及可读存储介质
CN111897795A (zh) * 2020-06-24 2020-11-06 苏宁金融科技(南京)有限公司 一种联盟链的管理方法、装置及系统
CN112118107A (zh) * 2020-08-12 2020-12-22 北京大学 一种实现数据可信的自适应执行方法
CN112182608A (zh) * 2020-09-25 2021-01-05 中国人民大学 一种联盟链加密数据定期共享方法及系统
CN112182608B (zh) * 2020-09-25 2023-10-20 中国人民大学 一种联盟链加密数据定期共享方法及系统
CN112954037A (zh) * 2021-02-03 2021-06-11 中国互联网络信息中心 一种基于联盟链的域名滥用处理方法及系统
CN113343288A (zh) * 2021-03-26 2021-09-03 江苏荣泽信息科技股份有限公司 一种基于tee的区块链智能合约安全管理系统
CN113343288B (zh) * 2021-03-26 2022-06-14 江苏荣泽信息科技股份有限公司 一种基于tee的区块链智能合约安全管理系统
CN113689293A (zh) * 2021-08-09 2021-11-23 深圳前海微众银行股份有限公司 一种联盟链中智能合约文件确定方法及装置
CN113689293B (zh) * 2021-08-09 2024-02-06 深圳前海微众银行股份有限公司 一种联盟链中智能合约文件确定方法及装置
CN115473747A (zh) * 2022-11-14 2022-12-13 苏州浪潮智能科技有限公司 一种状态变更方法、装置、设备及存储介质
CN115473747B (zh) * 2022-11-14 2023-03-24 苏州浪潮智能科技有限公司 一种状态变更方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CA3177205A1 (en) 2020-10-15
WO2020206956A1 (zh) 2020-10-15
CA3177205C (en) 2024-02-13

Similar Documents

Publication Publication Date Title
CN110138592A (zh) 一种智能合约的管理方法及系统
Nikitin et al. {CHAINIAC}: Proactive {Software-Update} transparency via collectively signed skipchains and verified builds
CN108667618B (zh) 区块链成员管理的数据处理方法、装置、服务器及系统
CN110348830B (zh) 一种基于区块链的网络系统、认证方法、设备及存储介质
CN111526200B (zh) 一种基于区块链和云平台的数据存储访问方法及系统
CN103595802B (zh) 家庭网关软件远程自动升级的方法
CN110443075A (zh) 一种区块链智能合约验证部署的方法及装置
CN112527912B (zh) 基于区块链网络的数据处理方法、装置及计算机设备
CN110599069A (zh) 基于区块链网络的应用评价方法及装置
CN109829296A (zh) 基于联盟链的智能合约的沙箱实现方法
CN110516474A (zh) 区块链网络中的用户信息处理方法、装置、电子设备及存储介质
Anisetti et al. A certification framework for cloud-based services
CN102215488A (zh) 智能手机数字证书的应用方法和系统
KR20060025587A (ko) 인증된 무선 디바이스 트랜잭션 이벤트 데이터를 이용하는과금 시스템
CN107493291A (zh) 一种基于安全元件se的身份认证方法和装置
US20130183948A1 (en) Application Store System and Development Method Using the Application Store System
CN109873711A (zh) 一种云平台管理方法、装置、电子设备及可读存储介质
CN112925529B (zh) 基于分布式云平台的应用安全分发方法、系统、装置及介质
CN110113334A (zh) 基于区块链的合同处理方法、设备及存储介质
CN113592677A (zh) 基于联盟链的教育证书管理系统及搭建方法
CN111131318B (zh) 一种去中心化的密钥管理分发方法、系统及存储介质
US20220318415A1 (en) Integrity auditing for multi-copy storage
CN108566280A (zh) 一种fpga硬件加速程序的远程升级方法和系统
CN113779642A (zh) 数据处理方法及其装置、系统、电子设备
CN112052033A (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: 20190816