The above graphic shows the difference between a centralized, decentralized and distributed network for reference. It’s especially important to note that cryptocurrencies are decentalized networks – clients linking to nodes and nodes linking to each other – and not distributed networks in which each device is equal to all other devices. A typical Smart Phone would not be able to run Bitcoin if it had to store all of the Blockchain data as a full peer on the relevant network, but it can store a lightweight client that connects to a node on a server that can store that data.
A true decentralized network won’t exactly be like what you see in the diagram, where each node is only connected to one other node. A node can easily connect to four or five other nodes if the available bandwidth allows for it. This makes it easy to implement a system that makes use of algorithms like CryptoNight, in which each full node gets an equal vote on what happens on the Blockchain network. That makes it even harder for one colony or planet to take complete control of the system because it would have to get the agreement of a sufficient number of other nodes to maintain that control.
The links between full nodes in the Bitcoin system might be thought of as an interstate highway system designed to handle heavy traffic, while the side roads handle the lighter traffic between each node and the clients connected to it. If one “interstate highway” goes down, the affected node or nodes will search for a way to establish another one with other nodes so that they can keep their data current without too much of a hiccup. If for some reason one node can’t – if there’s a planet in the way, for instance – the node can still store Blockchain data it hasn’t transmitted yet.
This kind of system would make it easy to make sure nobody abuses their trading privileges. An industrial station in the asteroid belt would know that it gets one vote and only one vote. It’s less likely to cheat Mars on a contract when Martian colonies might control a dozen nodes by the time it becomes an issue. Likewise, Mars won’t want to cheat somebody in the asteroid belt because its industrial stations control a dozen nodes. A decentralized network can kick a single node off that network if it misbehaves and not really notice much of a difference. This would have an effect similar to slapping economic sanctions on a government that will not act in a civil manner toward the rest of Earth. The colony may not care much if it hasn’t done much actual trading, doesn’t own any assets in other colonies, and is entirely self-sufficient, but its members will recognize that nobody likes a troublemaker.
A Tangle of Sidechain Threads
The problem with this, though, is that most cryptocurrencies require multiple confirmations to validate a transaction. Essentially, the transaction data has to be processed and relayed to multiple nodes that can accept the transactions as valid. Colonists will likely become impatient if they have to wait for those confirmations simply because Jupiter won’t get out of the way very quickly. The problem might be solved by having multiple nodes on site or it might be solved by making use of a parallel sidechain that regards transactions as valid with as little as one confirmation and stores local transaction data until it can conveniently exchange data with distant nodes elsewhere in the solar system. A sidechain can be regarded as a semi-independent miniature Blockchain that is designed to work in tandem with the master Blockchain.
Exchanges between a sidechain and its master Blockchain can be one-way – one chain sends a transaction to the other and then never sees it again. When you see references to Bitcoin being burned, it means that Bitcoin is being sent from its Blockchain to a sidechain, and then the sidechain can’t send that Bitcoin back to the main Blockchain. This makes the Bitcoin as unusable as a piece of paper that caught fire. Colonies might prefer a two-way sidechain in which they can send data back and forth between the sidechain and the master Blockchain as often as they wish and never have a issue with earning the cryptocurrency back after they’ve spent it.
This is similar to an organization having subordinate servers in satellite offices that wait until most of the employees have gone home for the night before exchanging large amounts of data with other servers in the corporate headquarters. It takes a load off of available bandwidth and saves time for people who happen to be on the spot. Like these subordinate servers, a parallel sidechain can wait until it has a clear line of communications to distant nodes before it sends transaction data.
Some people may argue that we won’t even need a “master” Blockchain. One recent innovation is the Lightning Network, which is designed to confirm transactions more quickly by making use of a collection of sidechains that don’t necessarily need to communicate with a master chain. They just update one another with new information whenever it’s convenient. When the ever-dreaded Blockchain bloat becomes a concern, a future Lightning Network might include sidechains that might be used for purposes other than handling the accounting for a currency. It might include a Smart Contract sidechain that can check with the Public Notary sidechain if there’s a question about who owns what and can do it faster on a multifunction version of the Lightning Network than it would if it had to search a master Blockchain that holds everything.
A lot of sidechains could be seen as a collection of threads that can become horrendously tangled if one isn’t careful. Sidechains for an interplanetary economy will have to be carefully planned in a way that accounts for annoyances like the laws of physics, which can mess up the network’s ability to determine which transaction came first. In the hands of a skilled Blockchain developer, sidechains can become a smoothly integrated part of the Blockchain network that runs the financial side of trade between colonies.
Adding to the Standard Networking Model
The Blockchain ledger can be seen as an application that stores data in a way that is searchable and viewable by anyone who has the right tools. You could search for transaction information on the Bitcoin Blockchain using IP address, Bitcoin address or SHA hash by visiting Blockchain.info or just be impressed by the many thousands of dollars’ worth of Bitcoin that can change hands every minute by watching the scroll of the latest transactions.
This is what networking specialists would call the application layer of the 7-layered OSI Networking Model, in which information has already been assembled in a form that an application can present in a meaningful way. A protocol like HTTP is regarded as an application layer protocol because it tells web browsers how to interpret the coding needed to display websites. Cryptocurrency clients would not be able to function without a standardized way to present information in a way that makes sense to the user.
Alex Oberhauser is one expert who says that the OSI model doesn’t really need to be modified much to accommodate cryptocurrencies. The model used would simply need two more specialized layers that deal purely with cryptocurrencies and Blockchain apps. The first proposed layer, called the Blockchain Message Exchange, would be added on top of the application layer to provide an additional “handshake” in which both nodes confirm that the other is a valid, compatible node and agree on a protocol to use for communications. This layer would negotiate the specifications and serialization of binary packages to be transmitted. The Blockchain Message Exchange can be separated from the operating system of the host machine and placed in a library that can be accessed only by applications and protocols that involve the Blockchain in some way.
The other layer resides above the Blockchain Message Exchange. This layer is called the Blockchain Overlay Network and can operate with higher level functionality to allow for the management of multiple Blockchains. This would be especially useful for colonies that trade in six cryptocurrencies and also run Blockchains that manage financial services such as contracts and notary services because it automates the discovery of new Blockchain networks and the management of Blockchain networks already used by the colony. It might appear to the end user as a form of middleware that allows for development and customization of apps that make use of the Blockchain.
The decentralized Blockchain network and ledger is one of the two major reasons that I say cryptocurrencies are uniquely suited to act as a true international or interplanetary medium of exchange – the other being that cryptocurrencies have a very low barrier to entry even for people who can’t open a checking account for whatever reason. The decentralized network ensures that there’s no single point of failure and limits the number of ways that a single entity can take control of the network for its own profit. Even if one or a few nodes go down, the rest of the colonies still have complete copies of the ledger that they can use for reference.