Simplified Payment Verification (SPV)

A lightweight approach to blockchain verification that allows resource-limited devices to verify payments without running a full network node, enhanced by Ergo's NIPoPoW technology.

What is SPV?

Full Node Requirements

A full Bitcoin node checks all the blocks in the blockchain (using headers) and ensures no fraudulent transactions. However, running a full node requires significant bandwidth, storage, and processing power, making it unsuitable for resource-limited devices like mobile devices.

Example: Bitcoin's blockchain size has exceeded 270 GB and continues to grow (source).

SPV Solution

To address this issue, Satoshi Nakamoto proposed Simplified Payment Verification (SPV) in theBitcoin white paper. SPV allows users to verify payments without running a full network node.

How SPV Works

Instead of downloading the entire blockchain, users only need to keep a copy of the block headers of the longest proof-of-work chain. By querying network nodes, users can obtain the Merkle branch linking their transaction to the block it's timestamped in.

Note: Although users cannot independently verify the transaction, they can trust that a network node has accepted it and that subsequent blocks confirm its validity.

SPV Limitations

Security Vulnerabilities

SPV is not a perfect solution and is vulnerable to attacks where an attacker overpowers the network and deceives SPV users.

Resource Constraints

While SPV mode is intended for resource-limited devices, it may not always be feasible. For example, Ethereum's headers alone total around 5 GB to download, making it challenging for Ethereum mobile clients to validate chain validity. As a result, these clients often have to blindly trust third parties.

Implementation Challenges

Efforts have been made to reduce the requirements for SPV mode by checking only a few random headers instead of all. However, securely implementing this approach requires significant work.

Efficient SPV with NIPoPoWs

NIPoPoW Technology

To further enhance the efficiency of SPV wallets, Ergo implements Non-Interactive Proofs of Proof-of-Work (NIPoPoWs). NIPoPoWs are short stand-alone strings that allow a computer program to verify events on a proof-of-work-based blockchain without connecting to the blockchain network or downloading all block headers.

Proof Capabilities

These proofs can demonstrate that a cryptocurrency payment was made, for example. By leveraging NIPoPoWs, Ergo enables the creation of highly efficient Light SPV mobile wallets.

Efficiency Comparison

Compared to full nodes, SPV wallets are already lightweight as they only require the download of block headers instead of the entire blockchain. NIPoPoW wallets need to download only a small sample of block headers, making them even more efficient for mobile and resource-constrained devices.

Benefits of Light SPV

Mobile Friendly

Perfect for mobile devices with limited storage and processing power.

Minimal Bandwidth

Requires only a small sample of block headers instead of the full blockchain.

Enhanced Security

NIPoPoW proofs provide cryptographic verification without full node requirements.

Fast Synchronization

Quick initial setup and synchronization with the network.