Skip to main content

Daemon | Bitcoin Glossary | Mapping Bitcoin

Daemon

Desarrollo

Also known as: bitcoind

A background process that runs continuously on a computer, such as bitcoind (the Bitcoin Core daemon) which maintains a full node, validates transactions, and serves RPC requests. Daemons operate without a graphical interface and are typically used on servers.

Overview

In computing, a daemon is a program that runs as a background process rather than being directly controlled by a user through a graphical interface. In the Bitcoin context, the most important daemon is bitcoind, the Bitcoin Core daemon that operates a full node. Running bitcoind allows a server to participate in the Bitcoin network, validate transactions and blocks, maintain a copy of the blockchain, and provide services via its RPC interface.

bitcoind Architecture

┌──────────────────────────────────────────────┐
│                  bitcoind                     │
│                                              │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │   P2P    │  │Validation│  │  Wallet  │   │
│  │ Network  │  │  Engine  │  │ (optional)│   │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘   │
│       │              │             │          │
│  ┌────┴──────────────┴─────────────┴─────┐   │
│  │           Blockchain Database          │   │
│  └────────────────────────────────────────┘   │
│                                              │
│  ┌────────────────────────────────────────┐   │
│  │         JSON-RPC Interface             │   │
│  └────────────────┬───────────────────────┘   │
└───────────────────┼───────────────────────────┘
                    │
        ┌───────────┴───────────┐
        │                       │
   bitcoin-cli            Applications
   (command line)         (wallets, explorers)

Common Usage

Running bitcoind on a server is the standard way to operate a Bitcoin full node:

  • Initial block download (IBD): On first run, bitcoind downloads and validates the entire blockchain history
  • Ongoing operation: Continuously receives new blocks and transactions, validates them, and relays them to peers
  • RPC interface: Exposes a JSON-RPC API that allows other software to query blockchain data, submit transactions, and manage wallets

Configuration

bitcoind is configured through a bitcoin.conf file or command-line arguments. Common settings include network selection (mainnet, testnet, signet), RPC credentials, peer connection limits, pruning options for disk-constrained setups, and memory allocation for the UTXO cache.

Why Run a Daemon

Running your own bitcoind daemon is the most sovereign way to interact with Bitcoin. It allows you to verify all transactions independently, enhances your privacy by not relying on third-party services to check your balances, and contributes to the health of the network by relaying transactions and blocks to other peers.