Permission-Controlled Smart Contract Upgrade via Consensus Voting
Find Innovative SolutionsGenerate 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 upgrade a contract without consent from other participants, leading to potential breaches and security issues.
Innovation Solution
A permission-controlled smart contract upgrade method that requires consensus from a predetermined number of contract participants, involving proposal validation, voting, and binary replacement on blockchain nodes to ensure legitimate and secure upgrades.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a deployer can directly upgrade a smart contract without consent, then upgrade efficiency is improved, but security and reliability deteriorate due to single point of failure and unilateral breach risks
Solution Approach 1:
The upgrade authority is segmented from the deployer and distributed to multiple contract participants. Instead of one deployer controlling upgrades, the system divides upgrade rights among multiple participants who must collectively approve upgrades through voting, eliminating the single point of failure
Solution Approach 2:
A permission control smart contract is introduced as an intermediary between the deployer and the upgrade process. This intermediary contract validates upgrade proposals against stored permission information and executes upgrades only when proper authorization is confirmed, preventing unilateral breaches
2Reliability
If permission control and voting mechanisms are implemented, then contract upgrade security is improved, but system complexity increases
Solution Approach 1:
The permission control smart contract automatically manages the entire upgrade authorization process without external intervention. It self-stores permission information, self-validates upgrade proposals, self-executes approved upgrades, and self-manages the voting mechanism, reducing the need for complex external control systems
Solution Approach 2:
The permission control smart contract performs multiple functions within a single system: it stores permission information, validates upgrade proposals, manages voting processes, and executes upgrades. This multi-functionality consolidates what would otherwise require separate systems into one unified contract
Data Source
AI summary
The present disclosure provides a permission-controlled smart contract upgrade method. The method first deploys a contract upgrade smart contract, and then deploys a smart contract to be upgraded including 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 one of the plurality of user clients. 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 user client receives the proposing event, the user 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.


