WO2022040315A1 - Systèmes et procédés de commande d'accès basée sur consensus pour des fonctions de contrat intelligent - Google Patents

Systèmes et procédés de commande d'accès basée sur consensus pour des fonctions de contrat intelligent Download PDF

Info

Publication number
WO2022040315A1
WO2022040315A1 PCT/US2021/046506 US2021046506W WO2022040315A1 WO 2022040315 A1 WO2022040315 A1 WO 2022040315A1 US 2021046506 W US2021046506 W US 2021046506W WO 2022040315 A1 WO2022040315 A1 WO 2022040315A1
Authority
WO
WIPO (PCT)
Prior art keywords
smart contract
blockchain
function
signed
module
Prior art date
Application number
PCT/US2021/046506
Other languages
English (en)
Inventor
Peter Jihoon KIM
Original Assignee
Coinbase, Inc.
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
Priority claimed from US17/331,114 external-priority patent/US20210374731A1/en
Application filed by Coinbase, Inc. filed Critical Coinbase, Inc.
Priority to EP21859060.2A priority Critical patent/EP4200780A4/fr
Publication of WO2022040315A1 publication Critical patent/WO2022040315A1/fr

Links

Classifications

    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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
    • H04L9/3255Cryptographic 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 using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting

Definitions

  • FIGs. 3A-B are representations of admin system configuration, in accordance with various embodiments.
  • Fig. 4 is a representation of proposal and voting, in accordance with various embodiments.
  • Minters can be removed via the removeMinter function. This will remove the minter from the list of minters and set its mintingAllowance to zero. Once a minter is removed, it will no longer be able to mint or burn tokens. In variants, only the masterMinter role may call removeMinter.
  • the token smart contract implements an unblacklist function that removes an account from a blacklist.
  • the token smart contract implements an unblacklist function that removes an account from a blacklist.
  • only a blacklister roll can call the unblacklist function.
  • the token smart contract implements an upgrade function that can be called to upgrade the token smart contract.
  • only the admin role can call the upgrade function.
  • configuring access control S210 can include configuring consensus-based access control at the admin system S212.
  • Consensusbased access control can be configured for one or more target smart contracts (e.g., 151-153)-
  • the target smart contracts can be executed by the same blockchain, or executed by a plurality of blockchains.
  • Target smart contracts can implement one or more functions, and consensuses-based access control can be configured for any smart contract function.
  • smart contract administration system no functions to provide access control for a single target smart contract, and the owner can add one or more admins that are authorized to configure access control for the target smart contract (e.g., a USDC token contract).
  • the configurations for each control target can be: automatically specified, manually specified (e.g., using signed blockchain messages received from a threshold number of addresses authorized to change the configurations), be a default, be specified as a batch (e.g., wherein the configurations for all functions of a target contract can inherit the configurations of the target contract), be specified individually, and/ or otherwise specified.
  • voters and admins can be different entities, and voters and admins can have different privileges.
  • admins can define configuration information for a smart contract function (for which the admin has admin privileges), which includes identifying eligible voters. While eligible voters can propose function calls, vote on function calls, and trigger execution of function calls, voters cannot define smart contract configuration information (e.g., add or remove voters). In this manner, protection is provided against a threat of voters colluding to add more malicious voters.
  • a proposal for function execution is a vote for the proposal.
  • a proposal for function execution is not a vote, and the proposer must explicitly vote for the proposal.
  • voters can be identified by one or more of: a blockchain address, a digital signature, authentication credentials, a security token, etc. However, voters can be otherwise identified. Smart contract administration system no can determine if a voter is an eligible voter for the proposal by retrieving the configuration information for the function associated with the proposal ID. If a vote is received from an in-eligible participant, then the vote is rejected. In variants, the proposer for the proposal can also be an eligible voter.
  • the participant system 121 proposes a contract call for the function call of target.fooQ S221, which is sent to the smart contract administration system no.
  • the participant system 122 sends a vote for the function call S222 to the smart contract administration system 110, which is then accepted by the smart contract administration system 110.
  • the participant system 121 sends a request to execute the function call of target.fooQ to the smart contract administration system 110, which is then approved by the smart contract administration system 110.
  • Fig. 5 is a schematic representation of an example of proposal, voting, and voting execution, in accordance with various embodiments.
  • Variants of the method can include: deploying a first smart contract to a blockchain network, wherein the first smart contract is configured to execute a first smart contract function when a set of execution conditions, associated with the first smart contract function, are met; orchestrating generation of signed blockchain messages to call the admin smart contract function; and optionally orchestrating signed blockchain message transmission to the blockchain, wherein the first smart contract receives the set of signed blockchain messages, verifies that the set of signed blockchain messages satisfy the execution conditions associated with the first smart contract function, and executes the first smart contract function (e.g., via an on-chain transaction) when the associated execution conditions are satisfied.
  • the first smart contract receives the set of signed blockchain messages, verifies that the set of signed blockchain messages satisfy the execution conditions associated with the first smart contract function, and executes the first smart contract function (e.g., via an on-chain transaction) when the associated execution conditions are satisfied.
  • the first smart contract function is preferably an invocation of a target smart contract function of another smart contract on the blockchain, but can alternatively be an autogenous function (e.g., to change the administrators of the first contract) or other function.
  • the execution conditions can include: receiving a threshold number of signed blockchain messages (e.g., that identify the first smart contract function) from a set of authorized blockchain addresses (e.g., authorized for the first smart contract function) and/or other conditions.
  • the method can include: at a module of the first smart contract, receiving at least the threshold number of signed transactions from blockchain addresses within the set of authorized blockchain addresses for the module; and executing a function of a target smart contract associated with the module when at least the threshold number of signed transactions is received.
  • the signed transaction can: identify the module (e.g., by a function signature, function hash, etc.), include values for arguments of the function of the target smart contract (e.g., wherein the module uses the values when executing the function), and/ or other information.

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)

Abstract

L'invention concerne des systèmes et des procédés pour au moins fournir une commande d'accès pour l'exécution de fonctions de contrat intelligent (procédés) par l'intermédiaire de mécanismes de consensus. Un premier contrat intelligent est stocké sur un réseau à chaîne de blocs. Pendant l'exécution, le premier contrat intelligent exécute des opérations qui consistent à: agréger un nombre seuil de transactions de chaîne de blocs signées à partir d'adresses de chaîne de blocs autorisées, recevoir un ensemble de transactions de chaîne de blocs signées appelant une fonction d'un contrat intelligent cible à partir d'un ensemble d'adresses de chaîne de blocs, vérifier que chaque adresse de chaîne de blocs de l'ensemble d'adresses de chaîne de blocs autorisées est autorisée à effectuer l'appel, et appeler la fonction du contrat intelligent cible lorsqu'un certain nombre de transactions de chaîne de blocs signées appelant la fonction dépasse un nombre seuil.
PCT/US2021/046506 2020-08-19 2021-08-18 Systèmes et procédés de commande d'accès basée sur consensus pour des fonctions de contrat intelligent WO2022040315A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP21859060.2A EP4200780A4 (fr) 2020-08-19 2021-08-18 Systèmes et procédés de commande d'accès basée sur consensus pour des fonctions de contrat intelligent

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202063067533P 2020-08-19 2020-08-19
US63/067,533 2020-08-19
US17/331,114 US20210374731A1 (en) 2020-05-26 2021-05-26 Systems and methods for consensus-based access control for smart contract functions
US17/331,114 2021-05-26

Publications (1)

Publication Number Publication Date
WO2022040315A1 true WO2022040315A1 (fr) 2022-02-24

Family

ID=80350540

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2021/046506 WO2022040315A1 (fr) 2020-08-19 2021-08-18 Systèmes et procédés de commande d'accès basée sur consensus pour des fonctions de contrat intelligent

Country Status (2)

Country Link
EP (1) EP4200780A4 (fr)
WO (1) WO2022040315A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190050855A1 (en) * 2017-07-24 2019-02-14 William Martino Blockchain-based systems, methods, and apparatus for securing access to information stores
US20190333059A1 (en) * 2017-05-24 2019-10-31 NXM Technologies Inc. Network configuration management for networked client devices using a distributed ledger service
US20200097950A1 (en) * 2018-09-20 2020-03-26 Ca, Inc. Privileged entity consensus for digital asset creation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190333059A1 (en) * 2017-05-24 2019-10-31 NXM Technologies Inc. Network configuration management for networked client devices using a distributed ledger service
US20190050855A1 (en) * 2017-07-24 2019-02-14 William Martino Blockchain-based systems, methods, and apparatus for securing access to information stores
US20200097950A1 (en) * 2018-09-20 2020-03-26 Ca, Inc. Privileged entity consensus for digital asset creation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4200780A4 *

Also Published As

Publication number Publication date
EP4200780A4 (fr) 2024-09-11
EP4200780A1 (fr) 2023-06-28

Similar Documents

Publication Publication Date Title
US20210374731A1 (en) Systems and methods for consensus-based access control for smart contract functions
CN110380858B (zh) 用于处理区块链的游戏共识协议的方法和系统
CN111144881B (zh) 对资产转移数据的选择性访问
CN111164935B (zh) 在基于区块链的私有交易中提供隐私和安全保护的系统和方法
US10985907B2 (en) Identifying faults in a blockchain ordering service
US11388010B2 (en) Blockchain account migration
US20200410461A1 (en) Sharded Permissioned Distributed Ledgers
US11296864B2 (en) Identifying faults in a blockchain ordering service
CN111797159B (zh) 数据库中的信息管理和访问控制
AU2020414467B2 (en) Partially-ordered blockchain
CN109802941A (zh) 一种登录验证方法、装置、存储介质和服务器
CN110674128B (zh) 区块链的链上治理
EP4216077A1 (fr) Procédé et appareils basés sur un réseau à chaîne de blocs pour le traitement de données, et dispositif informatique
US11057188B2 (en) Database service token
CN111260398A (zh) 一种广告投放控制方法、装置、电子设备及存储介质
CN112154434A (zh) 区块链上智能合约组的自动数据投影
KR20070114801A (ko) 컴퓨터 상태 모니터링 및 지원
US11757884B2 (en) Method and system for controlling the release of a resource
CN111241196B (zh) 广告频次控制方法及系统
CN108965331B (zh) 登录校验方法、装置和登录系统
US20210320797A1 (en) Prevention of majority attacks
CN111600709A (zh) 可验证随机数的生成方法和装置
WO2008094780A1 (fr) Approvisionnement sécurisé avec synchronisation temporelle
US20200344074A1 (en) System for method for secured logging of events
CN110807209B (zh) 一种数据处理方法、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21859060

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021859060

Country of ref document: EP

Effective date: 20230320