A blockchain is just a file

João Ritter
4 min readJul 15, 2018

Like a file on the desktop of your computer. Instead of representing a text-document or an image, the blockchain file represents a history of exchanges. If you have this file on your computer, you can open up the file and add additional exchanges at will, just like you can add a new paragraph to that story you’ve been writing.

Banks today have a similar file handy on their computer. When their customers want to exchange money, they open up the file, and add the proposed transaction. As a result of adding to this file, the customers’ balances change. Since each bank owns its transaction history file, each bank can change their transaction history at will. It’s in a bank’s best interest to act honestly and only change the file when customer’s have indicated an intent to do so, because the customers will no longer pay them if the they misbehave. Profit is the incentive for trust and honesty.

Why doesn’t the bank allow each of their customers to have a copy of this file, and continuously push out updated versions as transactions are added? If it’s just a file, why keep it secret? If a bank is acting honestly, wouldn’t it be no-big-deal if anyone, anywhere, can audit a bank’s behaviors by having a look at the entirety of their transaction history? Banks don’t publicly publish their ledger for the same reason they spend millions of dollars on security to keep hackers from accessing and exposing this ledger file: the file contain sensitive identity information of their customers, and they don’t want the public to understand the entirety of their business practices.

A blockchain’s transactions file and a bank’s transactions file solve similar problems, but they also differ quite a bit in how they handle trust and security. They both are responsible for representing a truthful ledger—which transactions happened when, by whom—but blockchains solve the trust problem by explicitly making the file open for anyone to download and look at. In fact, no one entity owns this file, it can be downloaded directly from any other computer who currently has it! Banks on the other hand do the opposite—no one gets to see the entire body of transactions file except the bank, who owns it entirely.

Lets say you now want to add a transaction the ledger. If you were using a bank, you’d tell your bank that you want to make a transaction, and they would edit their file on your behalf. If, when doing accounting later, the numbers the bank gives you access to look off, you can give them a call and let them know. The bank could change the transaction file’s contents if they agree that the numbers should be changed—maybe due to miscommunication or miscalculation.

Making a change to a blockchain is different. Lets say you’ve downloaded a copy of a blockchain’s ledger and it’s siting on your desktop, and now you want to add a new transaction to it. You open up the file, and write in a new transaction. Great, now what? You’ve successfully added a transaction to the copy of the blockchain file on your computer, but how do you get everyone who has a copy of the file to agree that your new transaction is valid? Blockchains reach consensus not by trusting a single entity to declare that everything is as it should be, but rather by using open-source algorithms made up of cryptographic principles and economic incentives to allow everyone to reach the same conclusion. Instead of placing trust in profit-seeking companies, trust is placed in math and probability. There are blockchains that even provide you the ability to dispute the publicly shared transaction history by reaching out to representatives appointed by the transacting users of that blockchain. The reason multiple blockchains exist is because there are many different ways to program these consensus algorithms, just as different banks exist because there are different ways to create and leverage the trust of their customers.

Instead of paying a bank to hold a single file on your behalf and deploy secret algorithms within the company to manage it, blockchains let everyone download an up-to-date copy of the file, and provide the trust layer for free by virtue of transparency. Since the file is designed to be open, blockchains address identity transparency at the protocol layer. This means you know which details about yourself will ever be public before making a transaction—there is no possibility of an outsider hacking and revealing information about you that should’ve been kept private by a company you were paying to do so.

Now that you’ve gotten a taste for the goodies a blockchain can offer you, I’ll leave you with some food for thought. Most apps on your phone, like Facebook, behave just like a bank, but instead of a file containing a history of transactions, they own a file containing a history of actions like posts, likes, shares, etc. In the case of Facebook, when users take these actions, the company changes their file to acknowledge that you took the action, and leverages this data from you elsewhere in their business to make money. These interactions may seem less severe than moving money around, but the same important trust principles apply. Blockchain files can be used not only to create publicly owned ledgers, but also to create publicly owned applications. To help you imaging how massively impactful this could be, I wrote this story illustrating how full-scale decentralized economies could work.

We’re in the very early days of building distributed applications and businesses, and there is so much potential ahead. If you’re interested in learning more, I encourage you to ask questions, research, and get involved!

--

--