Written by Malik Corbett
There is a lot of misinformation and confusion surrounding the topic of cryptonetworks, blockchains and cryptocurrencies. In this edition of Mining Bytes I hope to describe these concepts and how they work together.
Blockchain, Cryptocurrency and Cryptonetworks Defined
A blockchain is a special type of database that is constructed to “write once read many” or WORM, which is a fancy way of saying that its a database in which individual records are stored in collections called blocks. Information stored in a blockchain is designed to be unchanging i.e. immutable. Each new block contains a reference, called a hash, of the previous block. Once a block is verified, it is added to the database creating a chain of blocks, hence the word blockchain. This data is preserved immutably in chronological order through a process determined by the network’s consensus protocol.
In other words, a blockchain maintains the network’s ledger of transactions and balances. For example, Bitcoin is a cryptonetwork that uses software which implements blockchain architecture to support a decentralized digital currency.
To better grasp the concept, I like to describe cryptonetworks as having 4 main components which power the network:
- The Blockchain
- Consensus Protocol
- Peer-to-Peer Layer
Each component of a cryptonetwork is configurable to meet the needs and requirements of the network.
Blockchain is a type of distributed ledger or database that stores the state of a cryptonetwork. In the case of public blockchain networks, the network is peer-to-peer (P2P). Once a transaction occurs on the network between two parties, the transaction is recorded in blocks. Once data is recorded in the blockchain, the data in any given block cannot be altered retroactively without the alteration of all subsequent blocks, which requires consensus from the network majority.
A blockchain (the ledger) must be managed and secured to make sure that the system is trust-less. In distributed ledger technology, trust-less means that each peer in the network need not necessarily trust each other. Each consensus protocol explicitly assumes that some peers will act maliciously. In the case of Bitcoin, its consensus protocol will maintain security as long as 51% of nodes are acting in good faith. This means that no central authority is required for the network to function.
The only trust that needs to exist in this system is trust in the software implementations of each protocol. Users must trust that the software is safe for broadcasting transactions. Blockchain technology achieves this by having many competing block producers which are a network of computer nodes that validate the blocks and adds them to the ledger in a chain like structure (blockchain). The transactions of the network are in chronological order. The rules on how the network agrees and who gets to validate blocks is called the consensus protocol.
More specifically a consensus protocol is an algorithm that determines:
• Who should produce the next transaction block to apply to the blockchain.
• When should the next block be produced?
• What transactions should be included in the block?
• How are block producers compensated for their services?
There are Different Types of Consensus Protocols
Each cryptonetwork has its own type of consensus protocol to reach agreement amongst peers about the state of the blockchain. Each type of algorithm has its pros and cons. The consensus mechanism has a direct impact on the stability and scalability of the network. Special attention must be paid to the choices and assumptions made in achieving consensus. The 3 types of consensus protocols are:
- Delegate Proof-of-Stake
The consensus protocol has direct influence on the speed of the network. If the protocol takes too long for enough of the network to come into agreement than the network transactions and operations take too long to verify causing a bad user experience. Imagine waiting 15 minutes on a store line with the receptionist waiting for the to blockchain network to verify the transaction?
To give an analogy, as it relates to cryptonetworks, if the blockchain and the consensus protocol are the engine then cryptocurrencies and tokens are the gasoline that allows the engine to run.
From a technical standpoint, cryptocurrencies and tokens are digital signatures that can prove ownership cryptographically. These signatures allows the network to verify the transactions between two parties.
However the difference between a token and a cryptocurrency is how each are structured within a cryptonetwork. (It is important to note that tokens and “cryptocurrencies” are often both regarded incorrectly as cryptocurrencies.)
Although the difference between the two may be subtle, it is important to understand the distinction between a cryptocurrency and a token.
Not all cryptonetworks are the same nor are they designed to solve the same problem. In other words, cryptonetworks and the blockchain technology that powers it, are not meant to solve the same problem. As mentioned before, Bitcoin is designed to be a digital currency. Although Bitcoin currently has poor properties of a currency, nevertheless Bitcoin does represents a unit of account, a store of value and a medium of exchange. In order to make a transaction using Bitcoin, you have to connect to the Bitcoin network using its software. That’s it! There is no other purpose for Bitcoin and it is very limited in any thing else it can do. That is why general blockchain platforms were created to expand the usefulness of cryptonetworks.
As I mentioned above, Bitcoin was designed to be a digital currency and nothing else. However, there are general purpose cryptonetworks that have smart contract capabilities which enable developers to build decentralized applications (DApps) on top of the blockchain. For example, developers could build a social media site on a generalized blockchain network such as Ethereum. Or an entrepreneur could build a decentralized cryptocurrency exchange over the EOS cryptonetwork.
Smart contracts are programmable computer code that can execute and communicate with the blockchain autonomously and do not require a third party to operate. Through smart contracts, developers can build DApps. Users gain access to the developer’s application through a token that is paid to the smart contract. The token is powered by the blockchain and facilitates the creation of DApps that sits on top of cryptonetworks.
The token is used as a mechanism for incentivizing transactions between parties for access to DApps. In fact on some blockchain networks, developers could create native sub-tokens. Digital tokens are paving the way for new types of business models and the creation of new types of virtual economies.
The Peer-to-Peer (P2P) Layer is where the network participants communicate, share resources and where web services are delivered. The blockchain component is the digital ledger that maintains the state of the network. However there are other aspects of the cryptonetwork that allows for network to exist such as authenticated communication networks, API gateways, servers and other aspects of cloud computing.
The P2P layer is where users engage the cryptonetwork via the network software that brings all the components together. The P2P layer is powerful because it provides an innovative way for entrepreneurs to deliver web servers and for network participants (i.e. the end-user) to have more control of their personal data.
When thinking about blockchain technology, one must not forget that the innovation behind decentralized ledgers is that it allows individuals to participant in a censorship-less and trust-less financial network. The technology provides a way to build a digital network to facilitate commerce in a much more efficient and frictionless way than our current financial network. This architecture is seen as a potential advancement in financial technology that could provide a smarter and more robust digital infrastructure to power the global financial networks of the 21st century.