Often times Engineers get distracted with new technology and go off the rails solving problems that no one actually has. At a previous job a question that was intentionally asked anytime someone proposed a new solution, or multiple times throughout the implementation process was, “What is the problem we are trying to solve?” This helps ensure we remain focused on solving actual problems rather than building solutions in need of a problem.
Enter distributed ledger technology. What is the problem we are trying to solve that requires a distributed ledger? The common answer to this question is “Censorship Resistance”. While that is an answer, it isn’t an actual user story that anyone will naturally care about.
Censorship Resistance is a nice buzzword, but it isn’t very specific as to what type of censorship you are trying to resist. Lets take a look at a currency and prediction markets to explore the types of censorship that can happen, and then explore the types of censorship that have happened with previous systems.
Censorship Resistance in Digital Currency
When exchanging a digital currency, I want confidence that I can use it in exchange with someone without my transaction failing to go through because some third party (e.g., centralized currency provider) blocked it. I also want to be sure that any digital currency I have stored will be accessible to me in the future, and I won’t be prevented from accessing that currency.
If we look at the current digital financial system, we can see both of these things occurring. States control all major currencies, and most of them have policies that allow them to freeze accounts (via pressure/legal action against banks involved in the system). Getting your accounts frozen is not an uncommon occurrence overall, and it is a tool that many states use against actors they dislike when they do not have any/enough evidence to mount a legal case against them. State actors also sometimes use this as a means of raising capital for their own spending.
As a user of a digital currency, I want confidence that I will always be able to send my assets and I will always be able to receive assets people want to send me. Something to keep in mind however is that as a user, I am probably annoyed, but willing to accept, a system that may censor me short-term as long as I eventually regain access to my funds. Having your assets frozen for a minute, hour, day, week or month is annoying but if you have high confidence that you will eventually regain access to your funds then in most cases you will just suffer through it. On top of that, third party services can offer you temporary loans if you can prove that you have the funds and will eventually gain access to them. It is only when you have uncertainty as to whether you will ever regain access to the funds that things get really bad for you.
As a user, I want confidence that any assets I control will remain accessible to me in the future.
Censorship Resistance in Prediction Markets
Another place that the world sees a lot of censorship is in prediction markets. This is in the form of both financial trading (e.g., stocks, commodities, futures, etc.) and gambling (e.g., sports betting, lotteries, etc.). In this case, short term censorship can be a problem for day traders who need to be able to close their position quickly, but it is less of a problem for long-term traders who don’t need to close their position on tightly constrained time frames.
We have seen heavy censorship in these markets anytime someone tries to create one without the blessing of the state, some state actor shuts it down and freezes (or seizes) funds.
As a user, I want the freedom to choose what to do with my money, including staking it on predictions of future outcomes.
So, what is the problem we are trying to solve?
In the current financial system, the two user stories described above are not well solved for. Many users do not have high confidence that their assets won’t be frozen and many users do not have unconstrained ability to spend their money on things they desire, like prediction markets.
If we assume that the above two scenarios are representative examples of the problem we are trying to solve with Distributed Ledger Technology, then we can state that we are trying to solve the problem of people having their assets frozen or otherwise not being able to spend them on what they desire.
The way traditional crypto-currencies solve this problem is by making it so there is no central party that a state actor can target to “turn off the system”. If a state actor turns off one node in a blockchain’s gossip network, then the other nodes will all still continue to operate and the holders of any private keys will continue to have access to their assets and be able to utilize any applications built on top of those blockchains (e.g., Augur). If a single node censors a transaction, then the next node that mines a block may not censor the transaction so while I may suffer from short-term censorship, I won’t suffer from long-term censorship.
In a more extreme scenario, if a state actor takes over 51% of mining in the network and censors transactions, they will likely be successful. This is one of the problems with Proof of Work, it makes it so any actor that controls 51% of the network can freely censor transactions. Thus allowing a state actor to take over the network and resume its modus operandi of censorship. This suggests that we have not yet fully solved the problem, since a sufficiently well financed state actor can still freeze assets as long as they maintain a dominant hashing position.