With none safety trade-off vs. operating validating nodes, there isn’t any strategy to create a wallet-service with out downloading and validating the blockchain.
If SPV node safety trade-offs are acceptable, it’s possible you’ll contemplate operating the pockets service with these.
SPV nodes don’t fully-validate the blockchain, and solely obtain the longest header-chain. Nevertheless, since they solely validate POW within the header-chain, and don’t index all transactions (solely these associated to the pockets service addresses), they should acquire a proof {that a} tx of curiosity is confirmed through. one other full-node peer. This proof may be delivered a merkle-proof, which represents a particular department of the merlke-tree starting with the txid of curiosity, of which the foundation is dedicated to every block header.
The safety trade-off for SPV nodes is two-fold:
- Privateness: For the reason that pockets service is enthusiastic about tx’s pertaining to particular addresses, some details about addresses will essentially leak to the queried full-nodes.
- Potential for omission: Friends can all the time stay silent about particular confirmed transactions with out the SPV shopper having the ability to show this, probably requiring cross-comparison heuristic throughout validating friends.
- A SPV shopper doesn’t validate any consensus guidelines, thereby not realizing whether or not the chain/department it’s following accurately validates in accordance with the validation rule set the person helps.