With Breeze, regular Bitcoin users will experience what the 1MB block size limit really means the first time

I decided to write the lightest Bitcoin wallet that can provide the same level of privacy as Bitcoin Core, or more generally a full node. The vast majority of Bitcoin users don’t understand how using a full node as a personal wallet is crucial to preserve one’s privacy, Core doesn’t even have a built-in mixer, right?

Why am I doing this?

Before I’d get into anyting I’d note that I suspect a regular Bitcoin user doesn’t run a full node and cares a about his/her privacy. And this is why I think what I’m working on is so important, because it dissolves this discrepancy.

Transparent Wallet

Now imagine a wallet that only uses one Bitcoin address. You send and receive money for years using only that address. How much privacy are you expecting this wallet to provide to you?

Image for post
Image for post

Full Block Downloading SPV Wallets

But we can do better than a full node, at least in the viewpoint of useability while not compromising privacy. We can build a wallet that downloads all the blocks, notes the transactions it is interested in, then throws away the rest. The obvious bottleneck of a wallet like this is the block size. In this article I will examine how performant, convenient this wallet can ideally be with the current maximum block size, without Segregated Witness, which further degrades it.

Ideal performance of Breeze

Brace yourself, a very sloppy calculation is coming!
Initial syncronization takes as long as any SPV wallet: a few minutes. This is for downloading the headers. The wallet starts to download full blocks from the creation of the wallet, so that means 1MB every 10 minutes.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store