🔮
Ethereum
  • General
    • What is Ethereum
      • Ethereum & Bitcoin General Comparison
      • Singleton State
      • The Ethereum Virtual Machine (EVM)
      • Opcodes (operation codes) EVM
      • Ethereum Client
      • Forks
      • Gas (wei)
        • EIP-1559
        • Table Conversion (wei)
      • Proof of Stake (PoS)
      • Proof of Authority (PoA)
      • The Beacon Chain
      • Networks
        • Ethereum mainnet
        • Goerli
      • Account-based model & UTXO-based model
      • Externally Owned Account (EOA)
      • Node Clients
        • Geth
        • Nethermind
      • Contract Account
      • Smart Contract Upgradeability
      • Ultrasound Money
      • Merkle Trees
        • Patricia Merkle Tree
      • Tries
        • State Trie
        • Storage Trie
        • Transactions Trie
        • Receipts Trie
      • Transactions
        • Ethereum Transaction Architecture
      • World State
        • Chain of States
        • Chain of Blocks
        • Stack of Transactions / Mempool
      • Contract Creation
      • Message Call Transaction
      • P2P Network
      • Web3.js
      • Ether.js
        • Smart Contract Interaction Example
      • Web3.js vs Ether.js
      • Node Providers
      • ENS (Ethereum Name Service)
      • Web3 dapp
      • Escrow
      • Multi-signature
      • ERC-20 tokens
        • Send ERC20s to Contracts
      • NFTs
        • ERC-721 and ERC-1155
      • Solidity
        • State Variables
        • Data Location
        • Numbers
        • Modifiers
        • View & Pure Modifiers
        • Data Types
          • Modifiers
          • Modifiers (Functions)
          • Address & Address Payable
        • Hardhat
        • Payable Functions
        • Receive Function
        • Fallback Function
        • Global Variables
        • Self Destruct
        • Create2 Function
        • Revert function
        • Require function
        • Assert Function
        • Calldata
        • Interface
        • Mapping
        • Array
        • Struct
        • Inheritance
          • Virtual & Overwrite
          • Multiple inheritance
          • Hierarchical Inheritance
        • Events
          • Indexed (keyword)
          • LOG0 - LOG4
        • Multi-signature Example
        • Smart Contracts
          • Context
      • Application Binary Interface (ABI )
  • Extras
    • Terminology
      • Bytecode
      • Keccak-256
      • Turing complete
Powered by GitBook
On this page
  1. General
  2. What is Ethereum

Multi-signature

Multi-signature contracts are smart contracts that require multiple parties to sign and approve a transaction before it can be executed on the blockchain. This is a security feature that helps prevent unauthorized transactions and reduces the risk of funds being stolen or lost.

In a multi-signature contract, a group of individuals or entities are designated as signatories, and a transaction can only be executed if a certain number of them approve it by signing it with their private keys. This can be useful in situations where there is a need for increased security, such as in corporate finance, or when handling large sums of money.

Flowchart

                            Multi-Signature Contract

+---------+                          +---------+
|         |                          |         |
| Sender  +------------------------>  Owner 1 |
|         |                          |         |
+----+----+                          +----+----+
     |                                    |
     |                                    |
     |                                    |
+----v----+                          +----v----+
|         |                          |         |
| Sender  +------------------------>  Owner 2 |
|         |                          |         |
+----+----+                          +----+----+
     |                                    |
     |                                    |
     |                                    |
+----v----+                          +----v----+
|         |                          |         |
| Sender  +------------------------>  Owner 3 |
|         |                          |         |
+----+----+                          +----+----+
     |                                    |
     |                                    |
     |                                    |
+----v----+                          +----v----+
|         |                          |         |
| Sender  +------------------------>  Owner 4 |
|         |                          |         |
+---------+                          +---------+
     |                                    |
     |             Transactions           |
     +----------------------------------->

In this flowchart, there are multiple owners who each have control over the contract. Transactions can only be initiated if a certain number of owners sign off on the transaction, typically through a voting process. Once enough owners sign off, the transaction is approved and can be executed on the blockchain.

PreviousEscrowNextERC-20 tokens

Last updated 2 years ago