Simplified Payment Verification (SPV)

Simplified Payment Verification (SPV) is a technique used to verify a transaction and add it to the blockchain without having to download the entire blockchain. Software run by SVP (or “lightweight”) wallets performs different, simpler operations than the full verification payment (FVP) software run by full nodes (or “heavyweight” wallets).

Full nodes verify transactions by downloading and examining the entire blockchain until the origin of the transaction is found and then comparing results with other nodes until a consensus is reached. In contrast, SVP wallets need only to check that full nodes have validated the transaction, and that the transaction has been added to the blockchain. To do so, they employ a hash structure known as Merkle tree, which works by downloading only block headers as opposed to full blocks. Essentially, SVP software is attractive because it allows one to verify one’s own transactions without verifying those of anyone else.