Is it possible to create a wallet service, which doesn't have all the blockchain downloaded? Like not running a full node itself?


Without any security trade-off vs. running validating nodes, there is no way to create a wallet-service without downloading and validating the blockchain.

If SPV node security trade-offs are acceptable, you may consider running the wallet service with these.

SPV nodes do not fully-validate the blockchain, and only download the longest header-chain. However, since they only validate POW in the header-chain, and do not index all transactions (only those related to the wallet service addresses), they need to obtain a proof that a tx of interest is confirmed via. another full-node peer. This proof can be delivered a merkle-proof, which represents a specific branch of the merlke-tree beginning with the txid of interest, of which the root is committed to each block header.

The security trade-off for SPV nodes is two-fold:

  • Privacy: Since the wallet service is interested in tx's pertaining to specific addresses, some information about addresses will necessarily leak to the queried full-nodes.
  • Potential for omission: Peers can always remain silent about specific confirmed transactions without the SPV client being able to prove this, potentially requiring cross-comparison heuristic across validating peers.
  • A SPV client does not validate any consensus rules, thereby not knowing whether the chain/branch it is following correctly validates according to the validation rule set the user supports.
  • so any waller service provider, like Electrum, let's say, has all blockchain on their server 200+ gb ? I mean, that costs a lot, which means that sooner or later the service of wallet itself will stop being free? Is it correct? – Frank Jan 21 at 11:09
  • It represents the cost of validating your transactions yes. Although once validated and indexed the chain can be pruned to reduce storage. Validating for others without revenue is not sustainable longterm, unless there are other ways the service is cross-subsidizing the validation. – James C. Jan 21 at 11:18

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.