The differences between “blockchain” and “software”

During a recent training about innovation in Finance that I was delivering, I decided to do a whiteboard exercise and list the differences between “a blockchain” and a conventional “software” with the help of the participants, in order to teach them how to distinguish the real from the fake news.

The first thing we agreed upon quickly is that it’s pointless to define a “blockchain” as a chain of blocks, or blocks that are linked together using cryptography, because such a chain has zero property by itself. That definition doesn’t describe accurately the innovation that was bitcoin in 2009. It would also make 99.9% of the blockchain news headlines of the past 5 years look even stupider than they already are:

How blockchain can end poverty (WSJ)

After that, every suggestion that the participants would come up with would fall under the “conventional software” category:

  • Distributed
  • Tamper evident
  • Tamper resistant
  • Automated
  • Transparent
  • Peer to Peer
  • Digital token
  • Asymmetric cryptography
  • Linked lists
  • Hash trees
  • Verifiable timestamps
  • Consensus protocol
  • Byzantine Fault Tolerance

Indeed the above properties and technical features have been implemented in computer programs for decades. Those software were not called “blockchain” before. So there is no reason to call them so after 2014, unless you’re fooling yourself or trying to fool somebody. Reminder:

The trainees were on the right track when they suggested “decentralized” but that term lacks precision. After challenging them, they got it right with “a blockchain is not controlled by a single party”. To which I added “nor a small group of entities”.

The innovation of the bitcoin blockchain in 2009 is that it’s permissionless in an hostile environment: not only anybody can join the system and write the next log in the shared transactions log, but participants will actively fight for it (= they will try to double spend). It isn’t controlled by anybody, including at the social / governance level to minimize trust and avoid any interference of any sort.

The Bitcoin blockchain was a radical innovation. Re-using pieces of bitcoin’s design without its core innovation, in environments where legal frameworks, regulatory regimes and business agreements apply, is only incremental innovation. That’s why all the enterprise blockchains / distributed ledgers seem to disappoint. It’s not that it’s early. It’s because those blockchains were hyped as the next revolution when they can only bring incremental innovation. They are simply software. But software is still useful, so there’s that. Those fake blockchains can still improve existing processes and give an appearance of success, when in reality it’s about software engineering ?‍♂️

Tagged with:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.