Simplified Payment Verification
Simplified Payment Verification (SPV) – using Bitcoin without running a full network node. By default, upon receiving a new transaction a node must validate it: in particular, verify that none of the transaction's inputs have been previously spent. To carry out that check the node needs to access the blockchain. Any user who does not trust his network neighbors, should keep a full local copy of the blockchain, so that any input can be verified.
As noted in Nakamoto's whitepaper, it is possible to verify bitcoin payments without running a full network node. And this is called simplified payment verification or SPV. A user or user’s bitcoin spv wallet only needs a copy of the block headers of the longest chain, which are available by querying network nodes until it is apparent that the longest chain has been obtained. Then, wallet using spv client get the Merkle branch linking the transaction to its block. Linking the transaction to a place in the active chain demonstrates that a network node has accepted it, and blocks added after it further establish the confirmation.
Simplified Payment Verification (SPV) and SPV Wallet
The main thing you need to know when you ask «what is SPV Wallet»: SPV is not a developer or brand name, it’s a technology. SPV means simplified payment verification, and it's not anything new. It was mentioned in the original Bitcoin Whitepaper by Satoshi Nakamoto (section 8). In a nutshell, SPV lets you validate your transactions without having to worry about anybody else’s transactions. It ensures your transactions are in a block, and it provides confirmations (proof of work) that additional blocks are being added to the chain. So, SPV wallet definition is the same as «hot wallet» or «cold wallet» - it’s a type of bitcoin wallet, and it secures your data in the active chain.
Bitcoin SPV wallet client
There are some wallets on GitHub which called themself Bitcoin SPV wallet client.
- Native Bitcoin SPV client, but it is still experimental and you do not want to use it in production environments today, as developers written at GitHub. BitcoinSPV is still a work-in-progress and will eventually undergo huge modifications. Several basic things are left to do.
- Modified SPV wallet client for bitcoin, using Lightning Network, OpenBazaar and btcd developments.
API wallet vs SPV wallet
According to Nadav Ivgi, founder of Bitrated, at the end of 2017th most popular wallets used centralized API servers to fetch blockchain data. The ones that use SPV are exceptional - Bread Wallet and Android Bitcoin Wallet are the only popular SPV wallets.