Here at the Bankless DAO, we often talk about blockchain technology as a revolution in finance because smart contracts create trustless, permissionless systems. But what does that first word, trustless, really mean?
First, it’s essential to know that trustless is not a synonym for untrustworthy. Saying that a system is trustless means that trust in humans or institutions isn’t required to make the system work — it happens without humans needing to interfere.
That may sound confusing now, but I’ll go in-depth and offer examples below.
To understand a trustless system, it’s important to first understand a trusted or trust-based system, which is the world we live in today.
Defining a Trusted or Trust-Based System
Since the beginning of time, humans have relied on trust to cooperate. Here’s an example:
- When you put your money in a bank, you trust the bank to hold your money so you can access it when you need it.
- When you initiate a trade on Robinhood, you trust that Robinhood will execute the trade for you, and not freeze trading of that asset.
- When you send money to a friend through Venmo, you trust that Venmo will put the money in your friend’s account, not someone else’s.
Trust-based systems are baked into our society. They’re fallible, as the examples above illustrates.
While people living in the developed world do not often encounter blatant, life-altering problems with trust, there have been significant negative results of trust-based systems, such as the 2008 housing crisis. For anyone living in the developing world or a country with an unstable currency, trusting their finances and their lives to the whims of government officials and corrupt politicians has proved faulty again and again.
Before the 21st century, it was impossible to imagine a world without trusted systems. But with blockchain technology, that all is changing.
Defining a Trustless System
A trustless system is a system that does not rely on actors to behave in a certain way for the intended result to occur. The system executes the action without relying on humans to do so. There is no intermediary party, like a bank or broker, moderating the event. You don’t have to worry if the person you’re interacting with can be trusted. The system creates trust for you.
No bank is required to hold your money, no humans are required to avoid your apple tree, and no friar is needed to deliver a message. There is no middleman, no intermediary, and no facilitator. The code executes the task.
Smart contracts are trustless systems. Blockchain technology uses smart contracts to facilitate trustless interactions between users.
Let’s break it down:
Total strangers from different countries who speak different languages can send and receive tokens without an intermediate actor facilitating it for them. The smart contract executes the transaction for them. It uses if, then logic statements written in the code to carry out instructions. Users put their trust into the soundness of the code, rather than the moral standing of the person or entity who would otherwise execute the transaction.
Instead of having to trust someone to do something for you, you replace the person and trust the code.
Also, the records of the transactions are held throughout the entire community: instead of a centralized authority, like Google, holding the information, the entire community holds it through the decentralized network. Multiple copies of the transactions are held on computers throughout the world, so no single authority can tamper with the history of those transactions.
But it’s important to note that no system can be entirely, inherently trustless. Blockchains and smart contracts are initially built by humans, and their code must be vetted by other humans. But getting closer and closer to a trustless system is something to strive for. People can cooperate with more peace of mind and security when a system is in place that allows users to have a range of motivations and morals, while the contract still executes the transaction. The if, then statement executes, regardless of your morals or those of the person you’re transacting with.
How do users know if the code is trustworthy or not?
Once a smart contract is deployed to a blockchain, its code is publicly accessible. Most projects have a public Github and a wealth of documentation for the community to read, so users can do their own research to determine if they would like to interact with the smart contract.
Smart contracts are immutable, meaning that once they have been deployed on the blockchain, a malicious developer cannot change the functionality of the code. So this system can be considered trustless, because users trust that a malicious actor or developer can’t abuse their power and make a massive change in the project, such as freezing trade abilities during the GameStop squeeze or collecting and selling user data without their knowledge. (Are you starting to see how trust fails us?)
Can users really verify everything themselves?
When a new protocol or project is released, people analyze it for potential problems in the code. However, users don’t sit around watching every new block being minted to make sure malicious actors aren’t tampering with anything. There are a series of safeguards against this, which will be expanded upon in further articles. Proof of Stake and Proof of Work are the consensus mechanisms blockchains use to mint blocks and determine if the blocks are safe or malicious. Those two systems work in different ways, but they prevent malicious blocks from being minted. These safeguards contribute to the trustlessness of the system.
Isn’t trust necessary in exchanging any form of money?
On the highest level, yes. Individuals must accept that a token holds value. For example, they must accept that ETH is a digital asset that is worth trading for other assets. This is similar to how people using cash must accept that the cash they are trading holds value.
Trusting in a scarce, tradable store of value (money) was necessary to transition from a bartering-only society to one where people with differing interests could exchange value to acquire what they seek.
In our current, trust-based world, transactions and systems go awry because we rely on humans to execute and maintain them for us. Instead of relying on human morals or middlemen, we can use trustless systems that execute and record events autonomously.
There is no fully trustless system because everything must be initially built by people. Once the project is up and running on the blockchain, the smart contract cannot be altered. Traditional hierarchies are removed and users with differing morals and values can still cooperate.
Watch the first fifteen minutes of this video to hear trustless systems explained and defined by the experts: The Future of Hybrid Smart Contracts
The Ethereum Foundation weighs in: The Problem of Trust
Defining trustless systems with helpful diagrams: What do we mean by “blockchains are trustless”?
In-depth article detailing all forms of trust: Trusted vs. Trustless