
The Myth of the Megabyte Bitcoin Block - ca98am79
http://hashingit.com/analysis/39-the-myth-of-the-megabyte-bitcoin-block
======
DennisP
The time it takes to propagate large blocks is definitely a major scalability
limit.

That's why the Bitcoin devs are working on invertible Bloom lookup tables. The
basic idea is that all the miners already have most of the transactions that
are in the block. It's possible to send a small, fixed amount of information,
that lets them reconstruct the entire block from the fixed-size block plus the
transactions they already have. It's ok if they're missing a few transactions.
If they're missing too many transactions, they can still request a full block.

This way the network can process almost as many transactions as can fit in
miners' bandwidth. Even home broadband is sufficient for VISA-scale.

How IBLTs work: [http://www.i-programmer.info/programming/theory/4641-the-
inv...](http://www.i-programmer.info/programming/theory/4641-the-invertible-
bloom-filter.html?start=1)

Applied to bitcoin:
[https://gist.github.com/gavinandresen/e20c3b5a1d4b97f79ac2](https://gist.github.com/gavinandresen/e20c3b5a1d4b97f79ac2)

------
xkarga00
Bitcoin can scale a lot, though: [https://blog.conformal.com/btcsim-
simulating-the-rise-of-bit...](https://blog.conformal.com/btcsim-simulating-
the-rise-of-bitcoin/)

------
Animats
Miners, not developers, control Bitcoin. If the big mining farms don't want
bigger blocks, there will not be bigger blocks. That's how the blockchain
works - the miners are in charge. Running out of transaction capacity means
transaction fees can be raised. If you run a big mining farm, that looks good.

If the blockchain TPS capacity is ever reached, (it's not even close yet)
we'll probably have exchanges dealing with miners for faster transaction
processing. Then demands for "net neutrality" for Bitcoin.

~~~
DennisP
They might run into a public goods problem though.

Overall, if transactions are scarce, transaction fees will go up. But for any
given block, if you don't include all the paying transactions, you're just
leaving money on the table. Since most blocks will be produced by other
people, your own personal decision won't affect the market much. You're better
off taking all the transactions.

Since all miners will do the same, the fees will stay low unless transactions
per block are limited by the developers.

