🔮
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

Account-based model & UTXO-based model

In blockchain technology, there are two main models for managing transactions: the account-based model and the UTXO-based (Unspent Transaction Output) model.

In the account-based model, like Ethereum, users hold accounts that are associated with a balance of tokens or cryptocurrency. Transactions on the blockchain are performed by updating the account balances associated with each transaction. The balance of each account can be checked at any time, and the account owner can initiate transactions by sending funds to other accounts.

In contrast, in the UTXO-based model, like Bitcoin, users hold a set of UTXOs, which are essentially unspent outputs from previous transactions. Each UTXO has a specific value and is associated with a public key or address. Transactions are performed by spending a set of UTXOs and creating new ones with different values and public keys. The balance of a user's holdings is calculated by adding up the values of all their UTXOs.

There are several differences between these two models:

  1. Complexity: The UTXO model is generally more complex than the account-based model, as it requires tracking and managing individual transaction outputs, while the account-based model simply tracks account balances.

  2. Flexibility: The UTXO model is more flexible in terms of transaction types, as it allows for complex multi-input, multi-output transactions. The account-based model, on the other hand, is simpler and more straightforward, but may be less flexible for more complex transactions.

  3. Privacy: The UTXO model provides more privacy for users, as each UTXO is associated with a different public key or address, making it more difficult to track individual transactions. In contrast, the account-based model is more transparent, as all transactions are associated with specific account addresses.

  4. Scalability: The account-based model may be more scalable than the UTXO model, as it requires less data storage and processing power to track account balances compared to individual UTXOs.

In summary, while both the account-based and UTXO-based models have their own advantages and disadvantages, they are both widely used in different blockchain networks and have proven to be effective at managing transactions in a decentralized and secure manner.

PreviousGoerliNextExternally Owned Account (EOA)

Last updated 2 years ago