Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

The problem with bitcoin and blockchain technology

It's not just bitcoin's prodigious appetite -- it uses as much energy as the country of Slovenia. Security scares and long transaction times cast doubt on its viability.

It's stunning to see the price of bitcoin rocket into the stratosphere. But almost equally surprising is the fact that so many software architects and solution developers, inspired by the bitcoin story, are looking for ways to integrate blockchain technology into their architectures.

In the healthcare industry, there is talk about consolidating patient records across hospitals using blockchain. The Republic of Georgia is using blockchain to verify property transactions. Governments are looking at using blockchain to verify the identity of their citizens or even to adopt a cryptocurrency of their own. From the energy sector to the media industry, there seems to be an unquenchable desire to find a problem for which blockchain architecture is a solution.

But the fact of the matter is: There is a big problem with bitcoin, and blockchain technology is at the center of that problem. The bitcoin story should be used as a caveat -- how not to build an application -- as opposed to being a template for how software projects should succeed.

Under the covers, bitcoin is simply a distributed ledger of accounts. A series of participants replicate, update and then validate changes made to the ledger, making sure they're valid and not fraudulent.

In terms of achieving those goals, bitcoin and its underlying blockchain architecture have been a success. Furthermore, the incentive-based participation structure -- in which nodes that help validate transactions are rewarded financially -- has managed to recruit a large number of participants, which is also a win for the cryptocurrency. But in terms of nonfunctional aspects of the technology, the losses greatly overshadow the wins, and this is where the big problem with bitcoin lies.

Beware the size of the blockchain

A minor issue with bitcoin is the rapidly growing size of the blockchain itself. Because the bitcoin blockchain holds a history of transactions, it has grown rather large. It currently sits at 146 GB in girth and will easily grow to over 200 GB before the end of 2018. And, oddly, bitcoin has grown this robustly throughout a period of time in which its adoption and daily use are still relatively small. Bitcoin handles approximately 350,000 transactions a day. Visa handles 150 million. For software developers looking to apply blockchain technology to use cases that handle large volumes of transactions, the potential size to which the blockchain might grow may put a limit on the usefulness of applying blockchain technology.

Even more troublesome than the potential size to which the bitcoin blockchain might grow is the amount of time it requires to create hashes and, subsequently, validate transactions when they occur. Currently, adding $100 to a bitcoin wallet through a service like Paxful or Coinbase takes approximately half an hour to process. That's a long time, especially compared to the subsecond processing time we experience with credit cards or debit machines.

Validating transactions has become a cumbersome and time-consuming process, a major problem in a world where customers expect instantaneous transactions. If a hospital is going to store patient data in a blockchain, will a life be put at risk if it takes 15 or 20 minutes to generate enough hashes to validate the incoming request and release information about a patient's drug allergies or existing medical conditions? If transactional processing time is important, blockchain technology might not be the right technology for the job.

Bitcoin needs more calories than Slovenia

Another big problem with bitcoin is the vast amount of resources transactions consume.

"It is said that the bitcoin network and the country of Slovenia consume equal amounts of energy on a daily basis," Gartner analyst Paul Vincent said.

By 2020, bitcoin might exceed the electrical consumption of Denmark. That's astronomical, not to mention completely unacceptable at a time when climate change threatens the long-term prospect of life on this planet.

Currently, 80% of all bitcoin data mining is performed by four miners based in China.
Paul VincentAnalyst, Gartner

It should also be taken into account that there are only 17 million blockchain wallets in use worldwide. That's less than the population of Kazakhstan. Just how massive would the blockchain grow if all 325 million citizens in the United States had a wallet? How slow would transaction processing be if those users regularly moved currency in and out of their account? And just how devastating would the environmental impact be? And that's just the energy consumption of the bitcoin network. If blockchain technology starts creeping into the software solutions of every industry, there might not be enough energy in the existing grid to power them.

And while it was mentioned earlier that bitcoin's incentive-based participation structure has done a good job in recruiting data miners and transaction processors, there has been a scary trend towards consolidation in that field.

"Currently, 80% of all bitcoin data mining is performed by four miners based in China," Vincent said.

Furthermore, blockchain verification requires that no more than 50% of transaction processing should be done by one entity, lest it could ply the blockchain with fraudulent transactions and then use its majority stake to validate those fraudulent transactions. If that happens, the whole system would fail.

Currency or speculative asset?

And finally, while this isn't a technical issue, the bitcoin currency has fundamentally failed as a currency. The whole point of a currency is that its value remains somewhat stable over time. At the start of 2017, a bitcoin was valued at around $1,000. On Nov. 28, it hit $10,000, and by Dec. 7, it was at $17,000. A day later, it was back down to a $14,000 handle. Bitcoin is failing as a predictable store of wealth and is instead behaving like a speculative commodity.

I understand the current zeal for bitcoin. The idea of a cryptocurrency is intriguing, and watching the unpredictable price spikes is exciting. But from a technical perspective, bitcoin is a failure, and software architects would be wise to steer clear of its use on any projects they are designing.

Dig Deeper on Enterprise development security

Join the conversation


Send me notifications when other members comment.

Please create a username to comment.

Do you think the underlying blockchain technology is the big problem with bitcoin?
I see the big problem with bitcoin is it's separation from reality.

Digitized objects are not real and will evaporate if systems fail due to electrical or human error events.

The fact that it is only backed by the popularity of owning the product and the greed that drives that ownership; is a failure before it starts.

It is a vapor commodity, unreal and fleeting.

If it were backed by something that actually exists, then it may have a chance to be a real currency.
Some argue that the cost of the energy put into mining a bitcoin represents its real value, or at least a base value. I personally don't agree with that take. Just because you invest money into something doesn't mean that thing acquires that value. You can invest all the money you want into a 1966 Studebaker. That doesn't mean you'll get that investment back on resale.

I do see a role for cryptocurrencies in the future. But I don't think it will be Bitcoin. And when one currency replaces another, the replaced currency tends to devalue overnight and its worth quickly approaches zero. When speculators realize that the fundamental problems with Bitcoin cannot easily be resolved, the money will flee, and investors will be fleeced.

And not to be too much of a gold bug, but I like the fact that I can still access my gold coins when the power goes out.
1. a 1966 Studebaker will be worth a lot more over time than Bitcoin.
2. Bitcoin is a commodity-less commodity: there is no "there" there.
3. The "cost of energy" is just that: a cost, not a value.
>>3. The "cost of energy" is just that: a cost, not a value.

Well put. Somehow people have conflated the terms 'cost' and 'investment'. They're not the same thing.
Not so sure about the Studebaker.
Even dismissing all your concerns (I share them), a stable secure permanent bitcoin would be impossible to manage, even in a world of unlimited electricity and infinite computing resources, because blockchain is an unworkable ledger at scale. 

But it doesn't really matter, for all the reasons you stated.  It's not meant to *work*.
The author assumes that various enterprise use cases built on blockchain use the same core technology as Bitcoin, which does consume a lot of power for "proof of work" algorithms, has long transaction delays, etc.  However, many enterprises use alternate blockchain technologies that do not have these issues and are well-designed from a technical architecture perspective, e.g., Hyperledger Fabric - they use much less compute-intensive consensus models, provide sub-second transaction latencies that scale to hundreds or thousands per second, etc. Don't conflate Bitcoin and the broader blockchain space.
Your point is well taken, and indeed, there is a lot of work being done in the blockchain space to address many of these issues. We will see how well they do to address the shortcoming encountered by the Bitcoin implementation.

Interestingly, Gartner analyst Paul Vincent said that a large percentage of projects that use the name 'blockchain' or say they are blockchain based end up not using blockchain at all. I think he said 80% or 60%, but I'm not positive. It seems like many people like the overall philosophy, but its workability when it comes to implementation is lacking.

There is no shortage of blockchain projects and frameworks arising out there from big vendors. It will be interesting to see what the future holds.
Ooooh... can (theoretically) scale to hundreds of transactions per second... as long as you don't have too many transactions.
Bitcoin has indeed problems related to energy consumption and transaction processing time. But there other blockchain solutions that are technically better at both ends. Amex has recently started using the Ripple blockchain, Visa is creating its own blockchain and Litecoin is finding its place as a global trading blockchain. IOTA has recently been adopted by Microsoft, and the list goes on. It would be interesting to read your vision on those, since it shows several industries going blockchain way, but not necessarily with bitcoin blockchain.
My take here is indeed on the shortcoming of the Bitcoin-esque blockchain, hopefully raising awareness about issues as more software architects jump in. I've been researching how other blockchains address these types of issues, including some of the interesting projects you mention. I plan to write some articles saying nasty and acerbic things about those projects too. 

Joking of course. I think all developers worry about many of these issues, and there are lessons to be learned in how other implementations deal with these problems at scale. I think it will be interesting to see how Bitcoin deals with them too, or if they even consider these issues worth addressing.
It appears that it is a good bet for smaller countries and small entities,
1) Limitations of data mining
2) Limitation of blockchain verification requires that no more than 50% of transaction processing should be done by one entity,
3) Limitation of too much energy consumption.
The above limitations would be happy news for ERP companies like SAP & Oracle as they could make the above limitation as their marketing strength.
Indeed, Oracle and SAP will always find a reason to sell their Enterprise Resource Planning software to companies.
I like the idea of blockchain more than bitcoin. I think it has scope for major transformations. But it will need time, more patience, checks in place before we dive into it with all our money.