Startup Management – The Blockchain is the Fresh Database, Get Ready to Rewrite Everything
The Blockchain is the Fresh Database, Get Ready to Rewrite Everything
If you understand the core innovations around the blockchain idea, you’ll realize that the technology concept behind it is similar to that of a database, except that the way you interact with that database is very different.
The blockchain concept represents a paradigm shift in how software engineers will write software applications in the future, and it is one of the key concepts behind the Bitcoin revolution that needs to be well understood. In this post, I’d like to explain five of these concepts, and how they interrelate to one another in the context of this fresh computing paradigm that is unravelling in front of us. They are: the blockchain, decentralized consensus, trusted computing, wise contracts and proof of work / stake. This computing paradigm is significant, because it is a catalyst for the creation of decentralized applications, a next-step evolution from distributed computing architectural constructs.
These concepts are computer engineering related. They are technical in nature, but they will have business implications, because they are capturing the imagination of developers and business visionaries who are rushing to create a fresh generation of applications.
But this is not just a computing phenomena. Decentralized applications are going to enable a decentralization trend at the societal, legal, governance and business levels. As I wrote earlier, There is a Race to Decentralize Everything and Give Power to the Edge of the Networks, so, let’s get ready to understand these concepts.
Decentralized Consensus (on or off Bitcoin’s Blockchain)
To fully understand the blockchain concept and the benefits of cryptography in computer science, we need to very first understand the concept of “decentralized consensus”, a key tenet of the crypto-based computing revolution.
Decentralized consensus violates the old paradigm of centralized consensus, i.e. when one central database used to rule transaction validity. A decentralized scheme (which the Bitcoin protocol is based on, transfers authority and trust to a decentralized virtual network, and enables its knots to continuously and sequentially record transactions on a public “block”, creating a unique “chain”, the blockchain. Each successive block contains a “hash” (a unique fingerprint) of the previous code, therefore cryptography (via hash codes) is used to secure the authentication of the transaction source and liquidates the need for a central intermediary. The combination of cryptography and blockchain technology together ensures there is never a duplicate recording of the same transaction.
What’s significant here is that with this degree of unbundling, the consensus logic is separate from the application itself, therefore applications can be written to be organically decentralized, and that is the spark for a multiplicity of system-changing innovations in the software architecture of applications, whether they are money or non-money related.
You could think of Consensus as the very first layer of a decentralized architecture. It is the basis for the underlying protocol that governs a blockchain’s operation.
The Blockchain (and Blockchain Services)
A blockchain is like a place where you store any data semi-publicly in a linear container space (the block). Anyone can verify that you’ve placed that information, because the container has your signature on it, but only you (or a program) can unlock what’s inwards the container, because only you hold the private keys to that data, securely.
So the blockchain behaves almost like a database, except that part of the information stored, its “header” is public.
The data stored can be a token of value, or a crypto money balance. So, the blockchain acts as an alternative value transfer system that no central authority or potentially malicious third party can tamper with (because of the encryption process). It’s based on the public/private hegemony, which is the yin-yang of the blockchain: public visibility, but private inspection. It’s a bit like your home address. You can publish your home address publicly, but that doesn’t give any information about what your home looks like on the inwards. You’ll need your private key to inject your private home, and since you have claimed that address as yours, no one else can claim a similar address as theirs.
The blockchain can also be seen as a software design treatment that ties a number of peer computers together that commonly obey the same “consensus” process for releasing or recording what information they hold, and where all related interactions are verified by cryptography.
Brainy Contracts (and Brainy Property)
Wise contracts are the building blocks for decentralized applications. A wise contract is equivalent to a little program that you can entrust with a unit of value (as a token or money), and rules around that value. The basic idea behind brainy contracts is that a transaction’s contractual governance inbetween two or more parties can be verified programmatically via the blockchain, instead of via a central arbitrator, rule maker or gatekeeper. Why depend on a central authority when two (or more) parties can agree inbetween themselves, and when they can bake the terms and implications of their agreement programmatically and conditionally, with automatic money releases when fulfilling services in a sequential manner, or incur penalties if not fulfilled?
Here’s a ordinary example of a clever contract to “sell one hundred beanie babies” using a form of natural contract programming language, based on Ethereum.
The commencing point that you assume when applying brainy contracts is that third party intermediaries are not needed in order to conduct transactions inbetween two (or several) parties. Instead, the parties define and agree on elementary (or sophisticated) rules, and they embed them inwards the transactions, enabling an end-to-end resolution to be self-managed inbetween computers that represent the interests of the users. Brainy properties are digital assets (or things) that know who their owners are. Their ownership is typically linked to the blockchain.
Trusted Computing (or Trustless Transactions)
When you put the concepts behind the blockchain, decentralized consensus and clever contracts together, you begin to realize that they are enabling the spread of resources and transactions laterally in a vapid, peer to peer manner, and in doing that they are enabling computers to trust one another at a deep level.
Whereas institutions and central organizations were necessary as trusted authorities, a certain number of their central functions can be codified via brainy contracts that are rather governed by decentralized consensus on a blockchain.
Namely, due to the blockchain’s role as the unequivocal validator of transactions, each peer can proceed and trust one another, because the rules of trust, compliance, authority, governance, contracts, law, and agreements live on top of the technology.
If you rapid forward to a not-too-distant future, wise contracts and clever property will be created, dispensed or executed routinely inbetween consenting parties, without either of them even knowing that blockchain technology was the trusted intermediary.
Arguably, “trusted computing” on the Web is a key tenet of the fresh crypto-driven paradigm.
Proof of Work (and Proof of Stake)
At the heart of a blockchain’s operations is the key concept of “proof-of-work”, an integral part of Satoshi Nakamoto’s original vision for the blockchain’s role as the unequivocal authenticator of transactions. The “proof of work” is a “right” to participate in the blockchain system. It is manifested as a “big enough hurdle” that prevents users from switching records on the blockchain without re-doing the proof of work.
So, proof of work is a key building block because it cannot be “undone”, and it is secured via the strengths of cryptographic hashes that ensure it authenticity.
But proof of work is expensive to maintain (estimated cost of $600M per year for Bitcoin), and may run into future scalability and security issues, because it depends solely on the miners’ incentives which will be declining over time. An upgraded solution is “proof-of-stake” which is cheaper to enforce, but more expensive/difficult to compromise. Proof of stake not only determines who gets to update the consensus, but it also prevents unwanted forking of the underlying blockchain.
Edging Towards a Decentralized World
There will be a rush to develop fresh decentralized apps as a way to enable the decentralized world that we are edging towards.
To that end, business leaders and visionaries will need to learn a fresh vocabulary around crypto-related frameworks. Developers need to learn how to write decentralized apps that are enabled by blockchain technology. And end-users need to learn how to create or use wise contracts, e.g. as depicted via the Mist browser vision (Ethereum), which is a mix of marketplace discovery, management dashboard, and creation platform, all-in-one.
I recently outlined a comprehensive list of Bitcoin White Papers, and there were lots of protocols and proposals, but a protocol alone doesn’t make a sturdy development environment. We will need to see comprehensive development environments that support a utter stack of capabilities and value-add components on top of the blockchain services and consensus engines.
The original Bitcoin blockchain technology had limitations as we embarked to shove its boundaries outside of money related services and into the software applications area, so we shouldn’t be astonished that the way forward is a world of numerous blockchains. Some of them will be working together, some contesting with one another, and others just being benevolent to each other.
Despite all the excitement and high expectations surrounding blockchain technology, there will be significant issues that need to be addressed pertaining to deployment, scalability, security, and robustness, and many of these challenges are being worked on today.
Decentralized Apps will come in different flavors, sizes and complexity levels, so we must be ready for that multiplicity, and we must see beyond the Bitcoin promise to be the Internet of money, and into the Blockchain’s promise to become a fresh development environment, just as Web development was the fresh paradigm back in 1996.
Update: Also read Part II and Part III
Blockchain Apps: Moving from the Jungle to the Zoo