Consensus-Based Access Control for Smart Contract Functions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current smart contract systems lack effective access control mechanisms, leading to potential security vulnerabilities and difficulties in managing access to sensitive functions, especially in token management contracts, where unauthorized access can result in significant losses.
Innovation Solution
A system and method for implementing configurable access control for smart contract functions, utilizing a smart contract administration system to proxy and manage access requests, enforce consensus-based access control, and assign roles to participants, ensuring that only authorized entities can execute specific functions, even if a participant's private key is compromised.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If access control is implemented for smart contract functions, then security is improved, but device complexity increases
Solution Approach 1:
The patent introduces an administration smart contract as an intermediary layer between users and the target smart contract. This admin contract handles all access control logic, role management, and function authorization, thereby improving security without modifying the target contract's core functionality. The admin contract acts as a mediator that enforces access policies while keeping the target contract simple and immutable.
Solution Approach 2:
The system segments access control functionality into separate, modular components: role definitions, function permissions, participant assignments, and execution logic are all separated into distinct sections of the administration smart contract. This modular structure improves security through clear separation of concerns while managing complexity through organized, reusable code patterns.
2Adaptability or versatility
If the target smart contract code is modified to implement access control, then access control functionality is improved, but manufacturing precision deteriorates
Solution Approach 1:
Instead of modifying the target smart contract code directly, the patent introduces an administration smart contract as an intermediary that handles all access control logic. This approach provides adaptability through configurable roles and permissions while maintaining manufacturing precision by leaving the original target contract code unchanged and immutable.
Solution Approach 2:
The system performs preliminary configuration of access control policies, roles, and permissions in the administration smart contract before any function execution occurs. This preliminary setup establishes security rules in advance, allowing the target contract to execute its core functions without needing to be modified, thereby maintaining code precision while achieving adaptability.
3Ease of operation
If private keys are used for function execution, then ease of operation is improved, but security deteriorates
Solution Approach 1:
The administration smart contract serves as an intermediary that verifies participant authorization through roles and permissions rather than relying solely on private key possession. This maintains ease of operation by allowing participants to execute functions through standard transactions while improving security by enforcing additional authorization checks through the admin contract's access control logic.
Data Source
AI summary
Systems and methods to at least provide access control for execution of smart contract functions (methods) through consensus mechanisms are disclosed. A first smart contract is stored on a blockchain network. During execution, the first smart contract performs operations that include: aggregating a threshold number of signed blockchain transactions from authorized blockchain addresses, receiving a set of signed blockchain transactions calling a function of a target smart contract from a set of blockchain addresses, verifying that each blockchain address of the set of authorized blockchain addresses is authorized to make the call, and calling the function of the target smart contract when a number of signed blockchain transactions calling the function exceeds a threshold number.


