Permission-Controlled Smart Contract Upgrade via Consensus Voting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional blockchain smart contract upgrade methods suffer from a single point of failure and unilateral upgrade risks, where a deployer can unilaterally modify contracts without consent from other participants, leading to potential breaches.

Innovation Solution

A permission-controlled smart contract upgrade method that requires consensus from a predetermined number of contract participants, involving a contract upgrade smart contract that verifies proposal legitimacy, collects voting information, and performs binary replacements only after achieving the required consensus.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the deployer can directly upgrade the contract without consent, then the upgrade process is simple and fast, but the security and reliability deteriorate due to single point of failure and unilateral breach risks

Engineering Contradiction:
Improveupgrade process simplicityVSAvoidcontract upgrade security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The upgrade authority is segmented from the deployer and distributed to multiple contract participants. The upgrade process is divided into proposal submission, voting, and execution phases, with each participant having specific roles. This segmentation eliminates the single point of failure by requiring collective action rather than relying on a single deployer's private key.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A permission control smart contract is introduced as an intermediary between the deployer and the contract upgrade process. This intermediary verifies participant identities, collects votes, and only permits upgrades when the required quorum is achieved. The intermediary mechanism ensures that no single entity can unilaterally control the upgrade, thereby improving security while maintaining a structured process.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple participants are involved in contract upgrades, then the security and reliability improve through consensus, but the complexity of the upgrade process increases

Engineering Contradiction:
Improvecontract upgrade securityVSAvoidupgrade process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The permission control smart contract automatically performs verification of participant identities, collection of votes, and determination of whether the quorum is met. The system self-manages the complex consensus process without requiring external coordination, thereby reducing the perceived complexity for users while maintaining high security through automated multi-party verification.

Inventive Principle:
Principle #25Self-service

3Reliability

If the deployer loses private key, then the security model is compromised, but allowing multiple participants to control upgrades adds complexity to the system architecture

Engineering Contradiction:
Improveresilience to key lossVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The control authority is segmented into multiple participants rather than concentrated in a single deployer's private key. This segmentation ensures that loss of one private key does not compromise the entire system, as other participants can still reach the required quorum for upgrades. The architectural complexity is justified by the significant improvement in resilience to key loss.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11301233B2Permission-controlled smart contract upgrade method based on smart contract
Publication Date: 2022.04.12 HANGZHOU QULIAN TECHNOLOGY CO LTD
  • US11301233B2 patent drawing

AI summary

The present disclosure provides a permission-controlled smart contract upgrade method based on a smart contract. The method first deploys a contract upgrade smart contract, and then deploys a smart contract to be upgraded including information of contract participants and information of a required minimum number of agreements on passing a proposal related to the contract. Then any of the blockchain nodes receives a contract upgrade proposal submitted by a user to the contract upgrade smart contract, the contract upgrade proposal carrying an address of the smart contract to be upgraded and binary information of a new contract. After the contract upgrade smart contract determines to pass the proposal, a proposing event is generated and then is forwarded to each user client participating in the contract. After the client receives the proposing event, the client receives user's vote and feeds it back to the contract upgrade smart contract. If the number of agreements exceeds the required minimum number of agreements, the proposal is passed and employed, and a binary replacement is performed to complete upgrade of the smart contract. The present disclosure solves a problem of centralization of the traditional contract upgrade, solves a problem of single point of failure, and improves a security of contract upgrade.