
The term "node" in blockchain gets used loosely to describe anything from a server a company runs to a lightweight process on a phone. The two categories that matter for understanding the network are full nodes and light nodes — and the difference between them is not primarily about storage or hardware. It's about a different theory of what participation should require.
A full node verifies everything. A light node verifies enough to be useful. That distinction has real consequences for what each type of participant can know with certainty.
A full node downloads every block and independently validates every transaction against the protocol's consensus rules. On Bitcoin, that means downloading the entire chain from genesis (or a recent checkpoint), reconstructing the full UTXO set, and checking that every input is unspent, every signature is valid, and every block conforms to the rules in effect at that height.
As of early 2026, a Bitcoin full node requires roughly 600GB of storage. On Ethereum post-Merge, running a full node requires both an execution client (Geth, Nethermind, Besu, or Erigon) and a consensus client (Prysm, Lighthouse, Teku, or Nimbus) — a split architecture introduced at the Merge in September 2022. A pruned Ethereum full node, which discards historical state but retains current state, runs approximately 500GB to 1TB depending on the client. An archive node — which stores every historical state — is multiple terabytes.
What a full node operator gains: complete, independent verification. They do not ask anyone whether a block is valid. They check it themselves against the rules they've agreed to enforce. This means a full node operator can reject blocks from miners or validators that violate consensus rules, even if those miners or validators represent a majority of hashing power or stake. The rules are not enforced by any single authority — they're enforced by every full node independently applying the same ruleset.
This is the mechanism behind "don't trust, verify" as a design philosophy. The network's social contract is only as strong as the number of participants actually running it independently.
A light node takes a different approach. Rather than downloading and validating every block, it downloads only block headers — which are far smaller (80 bytes per Bitcoin block header, versus up to several megabytes of transaction data). It then uses Merkle proofs to verify that specific transactions are included in a given block.
This approach was described by Satoshi Nakamoto in section 8 of the Bitcoin whitepaper as Simplified Payment Verification (SPV). The core assumption: as long as the chain with the most accumulated proof-of-work is the longest chain, an attacker would need to re-mine all blocks from the point of the attack — computationally prohibitive as the chain grows. A light node trusts this economic security without verifying the underlying transactions directly.
Practical light client implementations have evolved. Bitcoin's original BIP 37 bloom filters (used by older SPV wallets) have privacy issues — the full node serving the filter can infer which transactions a light client cares about. Compact block filters (BIP 157/158), implemented in the Neutrino protocol and used by the Lightning Network's LND, reverse this: the light client downloads anonymized block filters and checks locally whether any of its addresses appear, without revealing them to peers.
On Ethereum, light clients were specified but not widely deployed until recently. Helios, an open-source Ethereum light client written in Rust, uses the Beacon chain's sync committee — a rotating group of 512 validators that sign block headers — to verify chain state without running a full node. It syncs in seconds rather than days, runs with minimal resources, and achieves this without trusting any third party. That last point matters.
Most wallets today are not light nodes. MetaMask, Coinbase Wallet, and most browser-based wallets operate by sending queries to a remote RPC provider — Infura, Alchemy, a public node, or a self-hosted node. This is meaningfully different from running a light node.
An RPC provider is a trusted intermediary. It can serve incorrect data without the wallet detecting it. A light node using Merkle proofs can detect inconsistencies with what the chain's committed headers claim — the provider can't fabricate inclusion proofs that verify against real block headers.
The slide from "light node" to "trust a server" happened gradually because running even a light client was operationally complex, and RPC providers made wallet development much simpler. But the security model is different: RPC delegation is closer to trusting a bank to show you your balance than cryptographically verifying the chain yourself.
Full nodes face hardware and bandwidth constraints that grow with chain size. Initial sync takes hours to days depending on hardware. Ethereum chain data grows at roughly 100GB per year for a pruned node. If hardware costs outpace consumer hardware improvements, the network becomes more dependent on institutional node operators — which reintroduces centralization risk at the verification layer.
Light nodes face a different set of constraints. They cannot verify that a transaction is valid — only that it appears committed to in a valid block header. They're also vulnerable to eclipse attacks, where an attacker surrounds the light client with malicious peers feeding it a fabricated chain. These attacks are costly and require controlling the light client's network connections, but they're theoretically possible if the client doesn't maintain diverse peer connections.
Ethereum's roadmap includes structural changes that affect this tradeoff. EIP-4444 would allow full nodes to stop serving historical block data older than a certain age, distributing that responsibility across a Portal Network of volunteer nodes. Verkle trees — a cryptographic data structure that would replace Ethereum's current Merkle Patricia Trie — would reduce proof sizes dramatically, enabling stateless validation: a client could verify any transaction with a small witness rather than maintaining the full state. If stateless clients become practical, the distinction between full and light nodes compresses significantly.
Bitcoin's light client trajectory is more stable. Compact block filters (BIP 157/158) are the current best practice. The main trend is integration into Lightning Network infrastructure, where nodes need to monitor the chain for channel state without running a full Bitcoin node.
Now: The practical distinction is mostly full node vs. RPC-delegating wallet. Genuine light client deployment remains limited outside of Bitcoin Lightning tooling. Running a Bitcoin or Ethereum full node is still feasible on a mid-range machine with adequate storage.
Next: Ethereum statelessness (Verkle trees, Portal Network, EIP-4444) is a multi-year path. Progress on testnet implementations will indicate whether the full/light distinction starts to compress in practice.
Later: The architecture of node participation — how it scales, who can participate, what's required for meaningful verification — is an open design question that will shape blockchain decentralization for the next decade.
This post explains the mechanism. It does not assess whether any specific wallet's trust assumptions are acceptable for a particular use case, nor does it constitute a recommendation to run a node. Whether running a full node matters depends on your threat model and what you're trying to verify — not on any general prescription.
The network's security properties depend on the full node count remaining distributed. That dependency is worth understanding regardless of whether you run one.




