Peer-to-peer system architectures are not merely so-called clients talking to other clients. Sometimes the situation is a server communicating with another server. Or even a client making requests of a collection of servers that logically act as one distributed system.
Author and blockchain expert Craig S. Wright speaks of this in his article titled “The Distributed Processing System”. As an example, Wright holds out the venerable Internet technology, Network Time Protocol (NTP). NTP uses a hierarchical structure of servers around the world that not only speak to each other to keep their time values in sync, but then also answer client requests for time updates in an abstract fashion, so that clients need not know how the distributed system works.
Wright’s proposition is that in a similar way.
What Are Distributed Transaction Processing Systems
It begins like in any commercial context, a consumer makes a transaction with a merchant. On the blockchain, this is a cryptographically-signed, electronic transaction sent in a peer-to-peer exchange between the consumer and the merchant. Wright notes that the original design of Bitcoin included this direct IP to IP merchant exchange, but it was subsequently deprecated due to implementation issues that were never addressed.
Again, similar to well-known commercial transactions, the next step is for the merchant to validate the transaction. For example, a credit card presented as payment must be validated with a processor, like VISA, so that the merchant can trust that the consumer will fulfill their side of the exchange. For a cryptocurrency, the transaction is sent to the miners for validation and inclusion within the blockchain.
But the miners are not a single corporate entity like VISA; they are a network of individual nodes that function together as a distributed processing system. The structure of the system is very efficient. It can be described, as Wright explains, with the Moran process and a distribution efficiency close to O(1), i.e. the processing will complete within an essentially fixed amount of time regardless of the size of the network and the nature of the transaction.
Unlike with credit cards, the consumer, merchant, and miners don’t really need to know anything about each other, nor place any trust in them through prior knowledge, registrations, etc. The transaction is cryptographically-signed, and the miners can authenticate it using the public keys that are part of the system. In fact, unlike a shared secret key, nothing even needs to happen in real-time on active network connections.
This final step places the responsibility on the merchant to ensure that transactions are processed, authenticated by the miners, registered and settled in the ledger, and ultimately cleared for payment – i.e. the exchange of cryptocurrency from one account to another. Processing transactions in this way is quite literally the essence and purpose of “cryptocurrency mining”.
The overall efficiency of the distributed processing system is best optimized, according to Wright, when the network nodes are outfitted with high-powered computing hardware. Not only do these system process faster, but they can maintain more connections to other nodes. Thereby the network becomes more dense. When weaker systems are in play, and they use fewer connections, the network is more “spread out” – more sparse. He points out that this kind of network is not only less efficient, but also more vulnerable to Sybil attacks.
Assigning Transaction Costs In A Distributed Processing System
A likely cause for difficulty in rightly determining which entity should be responsible for paying transaction fees, is that many view processing cryptocurrency transactions as a large, yet atomic, thing. They do not see the parts that make up the whole.
Wright, however, becomes very specific in his assessment of the system’s parts, which part has the greatest stake in transaction processing, and therefore which part should pay the fees. He says that because the merchant must request the transaction validation from the network, and because the merchant is the one ………….who will lose revenue from a failed transaction, that the merchant is then the one to pay for the transaction.
Furthering the argument, Wright adds the economic theories from Ronald Coase, concluding that the transaction costs will be allocated where there is the greatest efficiency. He located this efficiency at where:
- the risk of loss is minimized,
- the costs are minimized, and
- the overall losses in the system are lowest.
It is the merchant who best describes these conditions. The merchant will require the processing of far more transactions than any single consumer, creating the incentive to both make the effort as efficient as possible (thus minimizing costs) and to ensure the transactions are processed completely and correctly (thus minimizing the risk of loss). This is true even if the transaction value is relatively small.
Additionally, due to the merchant’s transaction volume, their ability to optimize the risk of loss means that the overall system will sustain fewer losses than if each consumer were to attempt to minimize their own losses. This is because each consumer will be able to do so with varying degrees of success, if they are able to do so at all.
Blockchain Distributed Ledger Processing System Conclusion
Transaction costs are a fundamental factor within economic systems, and have been studied for decades within “traditional” industries. As cryptocurrencies emerge into the mainstream, they must be examined and treated in much the same fashion as their predecessors – economic laws are considered such because they have wide applicability.
We cannot become confused or complacent regarding blockchain technology just because it might be convenient to consider it as a “black box”. Its components and actors must be isolated and understood, just as Wright has shown, so that each may be treated appropriately, fairly, and efficiently.
In this regard, the use of cryptocurrencies within the commercial marketplace will best gain acceptance if the burden of transaction processing costs is placed upon the merchant rather than the consumer.