æternity Documentation Hub
AeternityGitHub
  • æternity Hub
  • Developer Documentation
  • Welcome to æternity documentation
  • Getting Started
    • What is æternity?
    • How to Use Aeternity
  • æternity core concepts
    • Introduction
    • æternity Protocol
      • æternity Coin
      • Fast Æternity Transaction Engine (FATE VM)
      • æternity Nodes
        • Node architecture
        • Node types
        • Node Roles
      • Transactions
        • Types of transactions
        • Transaction Lifecycle
        • Transaction Fees
        • Meta-transactions and Generalized Accounts
        • State Channel Transactions
      • Networks
      • Consensus Mechanisms
        • Next Generation Nakamoto Consensus (Bitcoin-NG)
        • Cuckoo Cycle Proof of Work
        • Hyperchains and Delegated Proof of Stake
        • Governance and Weighted Coin Voting
      • State Channels
      • Oracles
      • Aeternity Naming System (AENS)
    • Hyperchains
      • Hyperchains Whitepaper
    • Aeternity Governance
    • Aeternity Foundation
  • aeternity user tools and services
    • Introduction
    • Run an æternity node
    • Hyperchains web app
    • Hyperchains Bridge app
    • Mine aeternity coin
    • Superhero DEX
    • Superhero Wallet
    • ærc Bridge
    • Make an NFT
    • aepps: decentralized applications on æternity
    • æScan: æternity blockchain explorer
  • æternity Developer tools
    • Quick Start Guide
      • Development Environment Setup
      • Essential Tools Overview
      • Æternity Stack
      • First Steps in Development
    • Protocol
      • Core Protocol Components
        • æternity Consensus Protocol
        • Generalized Accounts
        • Smart Contracts
          • FATE VM
          • Smart contract languages
            • æternity Sophia Language
              • In-Depth Overview
              • Sophia Compiler
              • Sophia Visual Studio
              • Sophia http
              • æREPL
            • Solidity
          • Contract Transactions
        • State Channels
        • Oracles
      • Network Layer
        • Nodes
          • Node Documentation
          • Node API Reference
        • Sync
        • Gossip
        • Stratum
      • Utility Features
        • æternity Naming System (AENS)
        • Seralization Formats
    • æternity Sophia Language
      • In-Depth Overview
      • Sophia Compiler
      • Sophia Visual Studio
      • Sophia http
      • æREPL
    • Development Infrastructure
      • CLIs
      • SDKs and APIs
        • Javascript/Typescript SDK
        • Java SDK
        • Outdated SDKs
        • APIs
          • Node API reference
      • Middleware
      • Testing and Deployment
        • æproject
        • Testnet
          • Localnet
          • Faucet
        • Testnets and Faucet
    • Token Standards
      • æternity token standards
        • AEXs: Aeternity Expansions
        • AEX-1
        • AEX-9
        • AEX-141
    • Aepps: Building apps on Aeternity
      • Boiler Plates
        • Angular Boiler Plate
        • React JS BoilerPlate
        • Vue BoilerPlate
      • Æpp architecture
      • Implementation Guidelines
      • Reference æpps
        • Case Studies
        • Code Examples
        • Aeternity Graffiti
    • Data and analytics
      • æScan
    • ÆRC Bridge
  • Hyperchains
    • Hyperchains Development Guide
    • Hyperchains Bridge
Powered by GitBook
On this page
  • Next Generation Nakamoto Consensus (Bitcoin-NG)
  • Key Blocks and Micro Blocks
  • Leader Responsibilities and Incentives
  • Security and Fork Resolution
  • Performance Benefits
  • Future Innovations

Was this helpful?

Export as PDF
  1. æternity core concepts
  2. æternity Protocol
  3. Consensus Mechanisms

Next Generation Nakamoto Consensus (Bitcoin-NG)

Next Generation Nakamoto Consensus (Bitcoin-NG)

In traditional blockchain systems like Bitcoin, each block serves two purposes: it establishes who gets to add the next block (leader election) and contains the actual transactions. This dual role creates a fundamental limitation on transaction throughput because the network must wait for a new block to be mined before processing new transactions. æternity solves this problem by implementing Bitcoin-NG, a next-generation consensus protocol that separates these two functions.

Key Blocks and Micro Blocks

Bitcoin-NG introduces two distinct types of blocks: key blocks and micro blocks. This separation is at the heart of æternity's improved performance:

Key blocks are used for leader election through proof of work, similar to traditional Bitcoin blocks. When a miner successfully creates a key block, they become the leader for that generation (or epoch). Each new key block starts a new generation and contains the public key of the new leader.

Micro blocks contain the actual transactions and are created by the current leader in rapid succession. Unlike key blocks, micro blocks don't require proof of work, allowing them to be generated quickly - every three seconds in æternity's implementation. This rapid micro block creation is what enables æternity to achieve its high transaction throughput.

Leader Responsibilities and Incentives

Once elected through a key block, a leader can create micro blocks until the next key block is mined. To incentivize proper behavior, transaction fees are split between block creators: 40% goes to the leader who creates a micro block, while 60% goes to the miner of the next key block. This split incentivizes both efficient transaction processing and continued participation in the mining process.

Security and Fork Resolution

The Bitcoin-NG protocol includes several mechanisms to maintain security and prevent abuse:

Fraudulent behavior by leaders (such as creating multiple conflicting micro blocks) can be detected and proven through a Proof-of-Fraud mechanism. When detected, the malicious leader loses their block reward, which is held for 180 blocks before being released.

If a new key block is mined while micro blocks are still being processed, some transactions might temporarily appear in a "micro-fork." These transactions are automatically returned to the transaction pool and will be included in future micro blocks by the new leader.

Performance Benefits

This innovative approach to consensus provides several key advantages:

  • Transaction throughput increases to approximately 117 transactions per second, compared to Bitcoin's 7 transactions per second

  • Block confirmation time reduces to just 3 seconds, versus Bitcoin's 10 minutes

  • Network bandwidth is used more efficiently by spreading transaction data across multiple smaller micro blocks

  • The system maintains high security while achieving better scalability

Future Innovations

The Bitcoin-NG consensus mechanism in æternity is designed to be forward-compatible with future improvements. As the platform evolves, this foundation enables the implementation of additional scaling solutions like state channels and Hyperchains, while maintaining the core benefits of decentralization and security.

Understanding Bitcoin-NG is crucial for developers building on æternity, as it influences how transactions are processed and confirmed. The rapid block time and high throughput enable new types of applications that wouldn't be practical on traditional blockchain platforms.

PreviousConsensus MechanismsNextCuckoo Cycle Proof of Work

Last updated 6 months ago

Was this helpful?