Replacing The Dollar With Bitcoin Architecture
This is the third article in a series about lessons that can inform bitcoin’s replacement of the U.S. dollar. Read the first article in the series, on leaving the gold standard, here. And read the second, on dismantling fiat architecture, here.
In part two of this series, we discussed the application of the Open Systems Interconnection (OSI) model as an architecture model for understanding the fiat system. In part one, we discussed the abandonment of sound money principles and why that happened. Here, we will discuss a new system, one backed by Bitcoin. Then, the next article will address the reasoning for our abandoning of sound money principles, and how our new system of Bitcoin incentivizes everyone to hold to those principles within the architecture we will discuss today.
The OSI model has seven layers, which were all discussed in the aforementioned entry in this series. This particular model didn’t win the battle of networks. It’s more decentralized successor, Transmission Control Protocol/Internet Protocol (TCP/IP), would eventually take over as the internet that we know today for a multitude of reasons, not least of all being a simplification of layering.
I will reiterate that this is a conceptual discussion of system architecture with the intention of furthering the discussion of Bitcoin replacing the U.S. dollar. I am by no means claiming this as a final financial architecture. My intention is not to provide the final answer of how we replace the dollar, rather my intention is to allow the discussion within the architecture we understand, as we know the only true path to adoption is one of free choice and continued improvement.
Since OSI is largely used as a model to understand architecture, and some of its layers are not always used for each application, we will discuss Bitcoin through a lens of the architecture that birthed what we now call “the internet.” This is accomplished through building a similar system to the one used in the last entry in the series, though this system focuses on Bitcoin instead of the dollar, and there are only four layers for TCP/IP. Let’s begin with a short reminder of the seven layers of the fiat system discussed previously:
Fiat Layers
- The Physical Layer: This was gold when we had sound money
- Data Link: The connection of two nodes. Example: two central banks connecting through the SWIFT system, as discussed in part two.
- Network: Here we create the path to nodes — individual addresses, or routing and account numbers for the banking system.
- Transport: This allows the ease of transportation for currency. In the fiat structure, we compared this to credit, which allows faster processing on the promise of an IOU.
- Sessions: Easily referred to as “bidirectional token management.” This is the process of building tokens (stocks, bonds, derivatives) that can be both bought and sold. This is the derivatives market.
- Presentation: This is how the network builds a presentation for the user experience. Think of the programming behind the user experience of your online banking platform.
- Application: This is where the consumer comes in. All of these layers coalesce into an application that the consumer uses to manage their fiat
TCP/IP Layers
“TCP/IP Network Administration” describes the TCP/IP layers as:
- Application
- Transport
- Internet
- Network Access
Bitcoin’s layers generally follow this architecture, but in a slightly different order.
TCP/IP Layer: Network Access
All of the quotes below are from “TCP/IP Network Administration.”
This is the base layer of what we will refer to as the Bitcoin standard for the rest of this article, based on the TCP/IP model.
“The protocols in this layer provide the means for the system to deliver data to the other devices on a directly attached network… The TCP/IP Network Access layer can encompass the functions of all three lower levels of the OSI Reference Model.”
The network access layer of the Bitcoin standard is the foundation of the architecture, represented by the Bitcoin network itself. The first layer of the Bitcoin system, as described with the TCP/IP model, encompasses the first three layers of the fiat system, described with the OSI model: the physical, data link and network layers.
The physical layer — though more accurately, the “digital” layer, is represented by the hard assets of combining unspent transaction outputs (UTXOs) to represent your total holdings of bitcoin create the “physical” layer, though more accurately, we would say it is the digital layer. This is referred to as “on chain,” it moves slowly, it provides security, immutability and a public ledger.
The “data link” layer encompasses the idea of transmitting data from one node to another. This is accomplished on the base layer of Bitcoin. Anyone can download Bitcoin Core and start running a node. All of these nodes cooperate and communicate to reach consensus for every block solved in the blockchain. In the fiat standard, the Federal Reserve serves as the central node, and communication systems like SWIFT allow them to communicate with international centralized nodes. This requires so many different trusted entities and the creation of said entities, while Bitcoin accomplishes this system at the base layer by decentralizing the nodes and allowing each node a direct connection to one another.
The third layer is the network layer. The Bitcoin standard accomplishes the network on the base layer as well. Since the network is addresses that allow communication between nodes that allow currency to be sent from one place to the next, this clearly takes us to wallet addresses, the place where you hold all of those precious UTXOs we mentioned earlier.
When a UTXO is spent, we have a sender, receiver, and signatures to verify the transaction. No central entity is necessary to validate the transaction, and we have a public record. In the fiat standard, this process is centralized and the data is not accessible on a public ledger like it is on the Bitcoin standard.
TCP/IP Layer: Internet
“The Internet Protocol is the building block of the Internet. It’s functions include:
• Defining the datagram, which is the basic unit of transmission in the Internet
• Defining the Internet addressing scheme
• Moving data between the Network Access Layer and the Transport Layer
• Routing diagrams to remote hosts
• Performing fragmentation and re-assembly of datagrams”
The datagram is a UTXO. While Bitcoin is denominated in satoshis or full bitcoin units, the actual data that is being transmitted either on- or off-chain is the UTXO. These data packets that serve as proof that the “coins” or UTXOs you possess have not been spent and are therefore available as usable funds.
The addressing scheme performs duties mentioned earlier, such as routing transactions between nodes or the remote hosts of the Bitcoin blockchain, but also between layers. The internet layer is often referred to as an “unreliable protocol” because it does not perform its own error detection or recovery code. This isn’t the proper depiction of this layer because it serves as the transition between other layers that provide these much-needed functions.
Layer two of the Bitcoin standard allows communication of layer one (network access) and layer three (transport), and utilizes these layers for missing functionalities of the Internet layer.
When a transaction is broadcasted on- hain, this means that the transaction has been sent to a singular, or many nodes. As more nodes or remote hosts join in on validating a transaction, it receives security and error detection — security by becoming part of the immutable Bitcoin blockchain once the transactions are lodged firmly within a block, and error detection not by finding errors made by the users, but by creating a system of incentives through penalty keys that demand users only present current channel states from Layer 2 networks like Lightning. This means that the current state is incentivized to be accurate and presented by both parties, disincentivizing errors.
Fragmentation occurs through “change outputs.” Fragmented data becomes necessary when data is too large for transference. For example, if you needed to make a purchase and only had one UTXO in your wallet for $30, but the purchase is only for $10, you would need to fragment that UTXO into smaller bits of data. In this example, you would create two transactions, one for $10 that is going to the merchant in order to make the purchase, and one for $20 that will be returned to your wallet address.
The total amount of bitcoin held in a wallet is actually an algorithm adding up the sum total of your UTXOs, and each UTXO is probably worth a different amount of satoshis. Since we will not always meet the “coincidence of wants” with the exact amount of satoshis in the perfect amount of UTXOs, we need to fragment the data as required. This is accomplished via change outputs.
TCP/IP Layer: Transport
“The two most important protocols in the Transport Layer are Transmission Control Protocol (TCP) and User Datagram Protocol (UDP). TCP provides reliable data delivery service with end-to-end error detection and correction. UDP provides low-overhead, connectionless datagram delivery service.”
TCP is the blockchain. The interconnected process of Bitcoin miners adding transactions to the blockchain and nodes validating the transactions added to the blockchain ensures reliable delivery of each transaction with verifiable proof, and provides high-level security in the transactions preventing malleability or error submissions.
Transactions can happen on-chain, with Layer 1, or off-chain with Layer 2. The miners and nodes are the transport layer that provide access to whichever layer is being utilized at the time.
UDP is easily recognized as Lightning, or other Layer 2 applications on Bitcoin. Low overhead is provided with exceptionally low transaction fees. Lightning does not have an operational cap, meaning an unlimited amount of channels can be opened to create an unlimited scale.
The datagram delivery service for UTXOs is maintained by “channels” opened between two willing participants that create a multi-sig wallet of funds to be used for micro transactions that are not connected to the blockchain. Once both parties want to close the channel, it is then broadcast to the transport layer and becomes part of the blockchain.
You might be thinking, “Why does it seem like some of this repeats?” It is because the system is not always linear. The open interconnection of the system allows for the best use demanded for the existing scenario. This ability to transact with directional freedom with applications that best serve the transaction is a defining feature of Bitcoin.
TCP/IP Layer: Application
All processes utilized in the transport layer to deliver data in myriad different ways come together in raw form with their individual intention. Examples of applications include:
- Lightning: I think we’ve discussed this enough for you to get the point — Layer 2 scalability for Bitcoin with two party channels built for micro-transactions and low fees.
- Strike: Application built on top of Lightning to allow direct micro payments to any end user.
- Sphinx Chat: Decentralized social media used for encrypted messaging and content creation without the fear of censorship.
- Zion: Decentralized social media built toward content creation using communities where each community owner runs off their own node, preventing censorship and allowing direct-to-consumer creation.
- Casa: Multi-sig, non-custodial service for Bitcoin wallets with a focus on security education.
Many other applications exist and many more are being developed by the day.
At this point in the series, we have discussed why sound money principles were abandoned on the international stage, with a focus on the U.S dollar as the world reserve currency. We then talked through the OSI architecture as a way to break down the layers of the fiat system that replaced the sound money principles we abandoned, so we could understand how to replace it. Now, we have shown how, much like TCP/IP beat OSI for the standard network architecture, Bitcoin can replace the current fiat system through the lens of a TCP/IP architecture.
Therefore, we can see that not only can Bitcoin replace the current system of fiat, but it already has the systems in place to do so, and in a far more efficient manner. This is not a process of removing the USD as the world reserve currency, nor is it the destruction of fiat altogether. Rather, the system of Bitcoin must exist as a parallel, simultaneous to the system of fiat, and people must choose to adopt this new system. Once adoption and education reach the necessary critical mass, the other system falls without sufficient use.
But what of the reasons discussed in the first article of this series for turning our backs on sound money? Have we created the correct systems of incentives to sustain the choices of our past or the haunts of our future? I hope you’ll join me for the next article where we discuss the incentives of the Bitcoin standard, and if we can achieve not only adoption, but sustainability.
This is a guest post by Shawn Amick. Opinions expressed are entirely their own and do not necessarily reflect those of BTC Inc or Bitcoin Magazine.