Why does Electrum's SPV require proprietary servers?


What does an Electrum server do that a regular Core full node doesn't do? If the wallet downloads block headers and verifies transactions using SPV and bloom filters, why does it require special servers at all?


Posted 2017-12-21T19:19:21.923

Reputation: 4 072

Thanks for that source! This answers my question if you want to format it as an answer – pinhead – 2017-12-22T00:19:11.237

2Not a full answer, but Electrum servers offer UTXO scanning by scriptPubKey. – Pieter Wuille – 2017-12-22T00:32:32.477



Quoted directly from the source:

One security advantage of Electrum is that servers are authenticated using SSL; this provides protection against MITM attacks, which is a problem for thin clients, including bloom filter clients. However, this advantage comes at the cost of privacy, because the main Electrum server you use knowns which addresses you are using; bloom filter clients have more privacy although the default setting in other clients is to favor speed at the expense of privacy.


Posted 2017-12-21T19:19:21.923

Reputation: 1 255

That "source" is dubious. It copies verbatim, including the "knowns" typo, this comment from the author of Electrum on reddit. I wouldn't be surprised if the .docx source has some macro virus.

– Gascoyne – 2020-06-22T05:12:03.390


EDIT2: Please don't downvote, I've edited my answer 10 minutes later.

EDIT: https://bitcoin.stackexchange.com/a/16630/11112

Electrum is not peer-to-peer (P2P). It only connects to electrum-specific servers to broadcast your transactions and to receive transactions.

I'm not an expert and I didn't inspect network traffic or anything.

My understanding is that in this context "remote servers" === "full nodes"

Might be worth opening an issue - https://github.com/spesmilo/electrum/issues - to verify at the source and clarify the wording.

enter image description here

Mars Robertson

Posted 2017-12-21T19:19:21.923

Reputation: 309

Electrum connects to Electrum servers. Other SPV wallets like MultiBit or Breadwallet connect directly to bitcoind full nodes using the SPV protocol. My question is, why? What do the Electrum servers do besides the usual SPV method? – pinhead – 2017-12-21T20:34:48.560

YEAH, got it. Seems really counterintuitive. At first I thought it's an error in wording rather than some proprietary s••t. – Mars Robertson – 2017-12-21T20:36:48.080