CN109491682B - 一种基于智能合约的权限可控的区块链系统自动升级方法 - Google Patents
一种基于智能合约的权限可控的区块链系统自动升级方法 Download PDFInfo
- Publication number
- CN109491682B CN109491682B CN201811242646.5A CN201811242646A CN109491682B CN 109491682 B CN109491682 B CN 109491682B CN 201811242646 A CN201811242646 A CN 201811242646A CN 109491682 B CN109491682 B CN 109491682B
- Authority
- CN
- China
- Prior art keywords
- upgrading
- intelligent contract
- proposal
- upgrade
- system upgrading
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于智能合约的权限可控的区块链系统自动升级方法,此方法首先部署包含系统管理权限用户列表、通过系统升级提案的策略的系统升级智能合约,然后客户端接收用户向系统升级智能合约提出的携带系统升级包路径、系统升级包哈希值的系统升级提案,系统升级智能合约将此提案事件转发至所有拥有管理权限的用户客户端;客户端收到系统升级提案提出事件并接收用户的投票,将其反馈至系统升级智能合约;如果大部分节点通过此提案,将直接应用此提案,拉取系统升级压缩文件,进行解压升级。本发明解决了传统系统升级权限控制不到位,自动化程度低等问题,提升了系统升级的安全性,增加了实用性。
Description
技术领域
本发明涉及智能合约技术,尤其涉及一种基于智能合约的权限可控的区块链系统自动升级方法。
背景技术
智能合约是1990年代由尼克萨博提出的理念,几乎与互联网同龄。由于缺少可信的执行环境,智能合约并没有被应用到实际产业中,自比特币诞生后,人们认识到比特币的底层技术区块链天生可以为智能合约提供可信的执行环境。智能合约是编程在区块链上的汇编语言。通常人们不会自己编写字节码,但是会从更高级的语言来编译它。
系统升级是所有系统都需要解决的问题,去中心化的系统则更要考虑系统升级的权限问题。现有的去中心化系统都需要有专业人员现场操作,手动进行系统升级,而去中心化系统的节点数目多且分散,对人力资源的要求极高。
发明内容
本发明的目的是针对现有技术的不足,提供一种基于智能合约的权限可控的区块链系统自动升级方法,能够减少系统人力资源,增加其实用性。具体技术方案如下:
一种基于智能合约的权限可控的区块链系统自动升级方法,所述的区块链系统包括区块链节点和客户端,其特征在于,该方法具体包括如下步骤:
S1:在所有区块链节点上部署包含系统管理权限用户列表、通过系统升级提案的策略的系统升级智能合约;
S2:客户端接收用户向系统升级智能合约提出的携带系统升级包路径、系统升级包哈希值的系统升级提案;
S3:系统升级智能合约收到此提案,生成提案提出事件并将其转发至所有拥有系统管理权限用户的客户端;
S4:所述的客户端收集到系统升级提案提出事件,并接收用户根据系统升级包相应信息判断后的投票信息,并将该投票信息反馈至系统升级智能合约;
S5:系统升级智能合约根据预定义的策略判断是否收集了足够数量的同意信息,如果已经收集齐,此提案即通过,系统升级智能合约生成提案通过事件通知所有的区块链节点,节点根据系统升级包路径拉取预存在互联网中的含有新版本二进制、配置文件和升级脚本的压缩文件;如果超时还未收集齐,则放弃此次提案,不进行系统升级。
S6:所有区块链节点比对系统升级包哈希值,一致则解压系统升级包并执行升级脚本,完成二进制和配置文件的更新;不一致则放弃此次提案,不进行系统升级。
进一步地,在进行所述的S1的系统升级智能合约的部署之前,首先判断区块链节点中是否已经部署系统升级智能合约,若已经部署,则直接进行S2;若没有部署,则进行S1。
进一步地,所述的系统升级智能合约中的系统管理权限用户列表通过提案投票的方式进行变更。
进一步地,所述的系统升级智能合约中的通过系统升级提案的策略也可以通过提案投票的方式进行更新。
本发明的有益效果如下:
本发明的基于智能合约的权限可控的区块链系统自动升级方法进行了系统升级的权限控制,需要征得多数管理人员同意后才能进行系统升级,提高了安全性;同时利用智能合约的同步性,保证系统升级事件能够同时进行发放,保证了分布式系统的系统升级行为能够同时进行,提高了可用性。本发明能进行系统的自动化升级,提高了系统升级的自动化程度,减少人力消耗。
附图说明
图1为本发明的基于智能合约的权限可控的区块链系统自动升级方法的详细流程图。
具体实施方式
下面根据附图和优选实施例详细描述本发明,本发明的目的和效果将变得更加明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明的基于智能合约的权限可控的区块链系统自动升级方法,该方法具体包括如下步骤:
S1:在所有区块链节点上部署包含系统管理权限用户列表、通过系统升级提案策略的系统升级智能合约;
S2:客户端接收用户向系统升级智能合约提出的携带系统升级包路径、系统升级包哈希值的系统升级提案;
S3:系统升级智能合约收到此提案,生成提案提出事件并将其转发至所有拥有系统管理权限用户的客户端;
S4:所述的客户端收集到系统升级提案提出事件,并接收用户根据系统升级包相应信息判断后的投票信息,并将该投票信息反馈至系统升级智能合约;
S5:系统升级智能合约根据预定义的策略判断是否收集了足够数量的同意信息,如果已经收集齐,此提案即通过,系统升级智能合约生成提案通过事件通知所有的区块链节点,节点根据系统升级包路径拉取预存在互联网中的含有新版本二进制、配置文件和升级脚本的压缩文件;如果超时还未收集齐,则放弃此次提案,不进行系统升级。
S6:所有区块链节点比对系统升级包哈希值,一致则解压系统升级包并执行升级脚本,完成二进制和配置文件的更新;不一致则放弃此次提案,不进行系统升级。
优选地,在进行所述的S1的系统升级智能合约的部署之前,首先判断区块链节点中是否已经部署系统升级智能合约,若已经部署,则直接进行S2;若没有部署,则进行S1。即系统升级智能合约要在系统第一次启动时进行部署,而之后的重启应能获取此合约已经部署的信息,不进行重复部署。
优选地,所述的系统升级智能合约中的系统管理权限用户列表通过提案投票的方式进行变更,以适应系统增删节点的变更。
优选地,所述的系统升级智能合约中的通过系统升级提案的策略也通过提案投票的方式进行更新。
本领域普通技术人员可以理解,以上所述仅为发明的优选实例而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。
Claims (4)
1.一种基于智能合约的权限可控的区块链系统自动升级方法,其特征在于,该方法具体包括如下步骤:
S1:在所有区块链节点上部署包含系统管理权限用户列表、通过系统升级提案的策略的系统升级智能合约;
S2:客户端接收用户向系统升级智能合约提出的携带系统升级包路径、系统升级包哈希值的系统升级提案;
S3:系统升级智能合约收到此提案,生成提案提出事件并将其转发至所有拥有系统管理权限用户的客户端;
S4:所述的客户端收集到系统升级提案提出事件,并接收用户根据系统升级包相应信息判断后的投票信息,并将该投票信息反馈至系统升级智能合约;
S5:系统升级智能合约根据预定义的策略判断是否收集了足够数量的同意信息,如果已经收集齐,此提案即通过,系统升级智能合约生成提案通过事件通知所有的区块链节点,节点根据系统升级包路径拉取预存在互联网中的含有新版本二进制、配置文件和升级脚本的压缩文件;如果超时还未收集齐,则放弃此次提案,不进行系统升级;
S6:所有区块链节点比对系统升级包哈希值,一致则解压系统升级包并执行升级脚本,完成二进制和配置文件的更新;不一致则放弃此次提案,不进行系统升级。
2.根据权利要求1所述的智能合约的权限可控的区块链系统自动升级方法,其特征在于,在进行所述的S1的系统升级智能合约的部署之前,首先判断区块链节点中是否已经部署系统升级智能合约,若已经部署,则直接进行S2;若没有部署,则进行S1。
3.根据权利要求1所述的智能合约的权限可控的区块链系统自动升级方法,其特征在于,所述的系统升级智能合约中的系统管理权限用户列表通过提案投票的方式进行变更。
4.根据权利要求3所述的智能合约的权限可控的区块链系统自动升级方法,其特征在于,所述的系统升级智能合约中的通过系统升级提案的策略也可以通过提案投票的方式进行更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811242646.5A CN109491682B (zh) | 2018-10-24 | 2018-10-24 | 一种基于智能合约的权限可控的区块链系统自动升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811242646.5A CN109491682B (zh) | 2018-10-24 | 2018-10-24 | 一种基于智能合约的权限可控的区块链系统自动升级方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109491682A CN109491682A (zh) | 2019-03-19 |
CN109491682B true CN109491682B (zh) | 2021-12-17 |
Family
ID=65693169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811242646.5A Active CN109491682B (zh) | 2018-10-24 | 2018-10-24 | 一种基于智能合约的权限可控的区块链系统自动升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109491682B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110138592A (zh) * | 2019-04-09 | 2019-08-16 | 苏宁易购集团股份有限公司 | 一种智能合约的管理方法及系统 |
CN110134419B (zh) * | 2019-05-20 | 2023-03-21 | 深圳市丰巢科技有限公司 | 一种双面柜的系统升级方法、装置、设备及存储介质 |
CN111046055A (zh) * | 2019-12-11 | 2020-04-21 | 杭州趣链科技有限公司 | 一种区块链全局配置的变更方法、设备和存储介质 |
CN110784495B (zh) * | 2019-12-31 | 2020-04-14 | 南京纳网网络技术有限公司 | 基于区块链的大数据集群系统的发现与配置信息管理方法 |
CN111291365A (zh) * | 2020-02-28 | 2020-06-16 | 上海哈世科技有限公司 | 联盟链系统的智能合约管理方法、装置、设备及存储介质 |
CN112052021A (zh) * | 2020-08-12 | 2020-12-08 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 联盟区块链升级的方法、装置、设备及存储介质 |
CN112235137B (zh) * | 2020-10-12 | 2023-03-24 | 杭州溪塔科技有限公司 | 一种区块链节点程序的升级方法、装置及电子设备 |
CN112636984B (zh) * | 2020-12-28 | 2023-04-11 | 杭州趣链科技有限公司 | 联盟链配置更新方法、设备及计算机介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106709704B (zh) * | 2016-11-23 | 2020-04-24 | 杭州溪塔科技有限公司 | 一种基于许可链的智能合约升级方法 |
CN106778329B (zh) * | 2016-11-28 | 2020-12-04 | 中国银行股份有限公司 | 一种区块链智能合约模板动态更新方法、装置及系统 |
US9992022B1 (en) * | 2017-02-06 | 2018-06-05 | Northern Trust Corporation | Systems and methods for digital identity management and permission controls within distributed network nodes |
CN107464148A (zh) * | 2017-08-23 | 2017-12-12 | 众安信息技术服务有限公司 | 一种基于联盟链的智能合约升级方法和系统 |
CN107943580A (zh) * | 2017-11-13 | 2018-04-20 | 上海点融信息科技有限责任公司 | 用于管理区块链节点处的用户智能合约的方法以及设备 |
CN108170449A (zh) * | 2017-12-27 | 2018-06-15 | 邵美 | 一种区块链系统中核心协议的升级方法 |
-
2018
- 2018-10-24 CN CN201811242646.5A patent/CN109491682B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109491682A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109491682B (zh) | 一种基于智能合约的权限可控的区块链系统自动升级方法 | |
CN109358881B (zh) | 一种基于智能合约的权限可控的智能合约升级方法 | |
CN102662705B (zh) | 一种对计算机集群的系统环境进行升级的系统及方法 | |
US8522206B2 (en) | Selective delta validation of a shared artifact | |
US7000247B2 (en) | Automated computer vulnerability resolution system | |
CN104199666B (zh) | 一种应用程序动态配置方法及装置 | |
CN103559591B (zh) | 基于可信计算的软件管理系统和管理方法 | |
CN105487980B (zh) | 修复应用程序运行异常的方法及装置 | |
US8606765B2 (en) | Systems and methods for updating software appliances | |
CN102223380B (zh) | 一种基于网络服务的客户端自动升级框架及其应用 | |
KR20190124630A (ko) | 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램 | |
CN110602227B (zh) | 一种智能合约管理的方法以及相关装置 | |
US7216344B2 (en) | Side-by-side drivers | |
CN106502713A (zh) | 一种软件升级方法和系统 | |
CN105893545A (zh) | 一种高效的Hadoop集群部署方法 | |
CN109308184B (zh) | 一种中间件安装和更新方法、装置及计算机可读存储介质 | |
CN105700877A (zh) | 一种应用部署方法和装置 | |
CN112579289A (zh) | 一种可智能调度的分布式解析引擎方法及装置 | |
CN103813463A (zh) | 软件通信体系架构中的资源分配方法 | |
CN106886452B (zh) | 一种简化云化系统任务调度的方法 | |
CN111510428B (zh) | 安全资源运维平台系统及管控方法 | |
CN107015831A (zh) | 一种基于服务器端升级的客户端升级管理方法及系统 | |
KR20160000761A (ko) | 소스 관리 장치, 시스템 및 방법, 컴퓨터 판독 가능한 기록 매체 | |
CN108762773B (zh) | 一种模拟用户登录安装程序的方法 | |
CN106875184A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |