There have been some alarmist articles recently which basically boil down to "Bitcoin is doomed! Abandon ship!", and while I agree with some of the points given, I think that almost all of them, together with most of the current users of Bitcoin, are a bit missing the point of its existence.
Here's my take on it.
Blockchain itself is independent from the networking part, and it works fine
The blockchain is basically a way of storing data, a database format if you'd like. Though it appeared very successfully in Bitcoin, and can be considered it's One Big Innovation, it's not really tied to Bitcoin, or even to cryptocurrencies. It can be used to store literally anything - and it makes sense to use where the data set regularly grows in size and where it's beneficial to ensure immutability of historical data.
With a different take on what the transactions really mean, and another interpretation of what the public key signatures mean, the blockchain can be (and is) used for distributing random authenticated data.
The networking part is the one which is "broken" the most
Almost six years ago (in 2010), VISA reached a burst capacity of 24.000 transactions per second. I imagine that the current numbers are at least trippled. On the other hand, Bitcoin can handle an average of 7 transactions per second and a burst of somewhere in the vicinity of 2000 (which would currently fill a whole block). There are a couple of reasons for that:
- The block size is fixed (currently at 1 MiB), as is the timing of block generation (1 per 10 minutes), both of which are changable parameters.
- New transactions need to be flooded into the network. Or actually they don't, they only have to reach the miners, but in reality they do, since there's no sure way to know which node is a miner. This means that the entire P2P network should be getting flooded with about 8 Mbit/s of data traffic. There are still ISPs in the world which don't deliver that fast a service. This is not fixable without radically changing the protocol.
- In any case, by any means, transactions need to get themselves, or a signature of themselves, into blocks, by traveling through the P2P network. If a cryptocurrency is to reach the level of spread the current credit card companies have achieved, there is no way that buyers will wait several minutes (or even several seconds!) until their transactions are confirmed. It just won't happen if the transaction latency is so high.
The requirement to transfer every single point of data over the P2P network, by, what amounts to, a flooding protocol, is what's preventing Bitcoin from becoming a CC replacement. Even if someone makes a transaction in the US, he has to wait until this transaction is visible all the way in China before it can be acted on.
As the transaction rate is configured now (approx. 7 transactions per second), Bitcoin can only be used as a sort of an inter-banking or large-transaction protocol (e.g. for transferring billions of dollars in value between large wallets).
The Bitcoin economics is also broken
Here I'm not even thinking about the secrecy of who holds what amounts of money (because the same is true, in practice, in real life), even if there are voices to whom this is of the most concern (going so far to speculate on the posession of the original early-mined coins). I'm not even thinking about the "he who has money, makes more money" mechanism by which it takes significant investments to become a large miner node (which is again true in the real world).
The two things which are economically broken in Bitcoin is the whole "upper limit on the number of coins" thing, and the current implementation of transaction fees.
The upper limit on the number of coins was intended to make Bitcoin strictly deflationary, completely disregarding that the actual value of money is tied to what you can buy with it, which is in turn tied to its spread / adoption by the users, and does not happen by a decree. As it stands now, it's only a psychological incentive to hoard coins instead of doing everything possible to make the whole currency more wide-spread.
The transaction fees are currently discretionary, with the intent that, if a client wants his transaction to be accepted into a block fast, he will include a large-ish fee in the transaction. This simulates scarcity of blocks, either by size or by generation time, and introduces competition between clients about who wants to spend more on the fee so his transaction goes in faster. On the other hand, if transaction fees were to be "flat", i.e. a fixed amount per transaction, miners would be incentivized to include as many transactions as possible. If halvening is done fast enough so that transaction mining is the sole source of new coins, the miners would be incentivized in the right direction naturally.
What's the point of Bitcoin?
Bitcoin is an incredible experiment, and it resulted in a huge amount of new research on cryptocurrencies, the blockchain, and related algorithms. Large-scale innovations such as Proof-of-Stake mining, smart contracts, etc., have been inspired by the existence of Bitcoin.
On the other hand, Bitcoin does is doing exactly as well as it should. The transaction rate cap was surely known by even Satoshi. Same for the (in)effects of the "deflationary decree". It's all going according to plan, which is to make the first successful cryptocurrency experiment.
And it's succeeded! Cheers, Satoshi, and without a doubt you'll get a Nobel if you come out!
That the coin was misunderstood and used for monetary speculation has nothing to do with all of this. Wall Street speculates on almost anything, and human individuals gamble on everything else.
What a next-gen coin (whatever it's called) needs to do
While I don't know of a system which currently has these features, it doesn't stop me from enumerating them:
- It needs to start with 2000 transactions/s globally (remember - that's 2010 VISA performance) and allow for easy (soft-fork or easier) upgrades to faster rates. Who's to say that the difficulty cannot decrease if the transaction pressure gets too large.
- It needs to have a slight inflation built-in, both to aid in preventing hoarding (by forcing the money to circulate to maintain its value), and to satisfy the psychological need of "having more" - people tend to feel happier with large numbers attached to money.
- Any other rewards, such as transaction fees, need to be set up such that they incentivise the number of transactions, and with that, the number of users. Once the number of transactions becomes the goal, miners will invest in the spread of the coin's popularity.
- While in theory anonymity is great, in practice it attracts the attention of both "real" criminals and the the taxmen, and those bring in even more politics and in-fighting. I don't want to say anonymity has to go, but it looks like I may have to.
The performance (transactions/s) problem could be solved by introducing "super-nodes" (or mini-VISAs) which would process and mine their own (regionally speaking) transactions. A top-level blockchain could include just the results and balances of the lower-level ones (and I even think I see how it could be done with Bitcoin as-is).
The others are more a matter of policy and people-work. I would love to hear about alternative proposals.