Written by Matthew Davis. Inspired by doyouneedablockchain.com and David Gerard's blog.
If you need to add a verification system to your verification blockchain, why do you need the blockchain?
Blockchains are no better at verifying things in the real world than any other database.
The hard part of verification is converting attributes of physical things into bytes. Blockchains cannot bridge the cyberspace-meatspace interface. They just take the bytes they're given and put them on hard drives, slowly.
So if your blockchain says some random Twitter user painted the Mona Lisa, then what?
That wouldn't happen. All writes will be verified. We'll just correct that It's in the blockchain, so it must be trueThe reason blockchains were invented was to make an immutable, censorship-proof database. That means no central authority should have the power to unilaterally modify records.
Editable blockchains are like infrared coloured fireworks. They're straightforward to build, but there's no point creating such a thing.
Just use a normal database. It will be faster, cheaper and greener.
Blockchains are like a normal database, but deliberately slow to allow many parties to write without centralised coordination or authority.
If only one party is going to write to the database, just use a normal database. It will be faster, cheaper and greener.
You're only allowing trusted parties to write to the database. So you'll need an authority who approves or denies parties wanting to write to the database.
The reason blockchains were invented was to ensure that no one has the authority to deny anyone write access to the database.
Just use a normal database. It will be faster, cheaper and greener.
Blockchains were invented as a way to transact with untrusted parties.
If you can trust a third party, then you can transact with the untrusted parties via the trusted third party.
Just use the trusted party and a normal database. It will be faster, cheaper and greener.
The reason blockchains were invented was to make an immutable, append-only database. If you use a blockchain you cannot delete data in it.
Editable blockchains are like infrared coloured fireworks. They're straightforward to build, but there's no point creating such a thing.
Just use a normal database. You'll be able to comply with privacy laws that way.
Blockchains are like a normal database, but deliberately slow to allow many parties to write without a central authority.
If one party has the power to overwrite other data then you have a centralised authority. So there's no point using a blockchain.
Just use a normal database. It will be faster, cheaper and greener.
The reason blockchains were invented was to create an immutable database. This means that data written to it cannot be deleted.
The only way you can modify a true blockchain is to convince everyone using it to instead use a new amended copy, and ignore the old copy. This is called a soft fork. This requires a lot of effort, and involves convincing a large community (who are not all trustworthy) to throw away the cherished immutability property of blockchains.
The unique value proposition of blockchains is that they are immutable. If you want to overwrite data then you do not want immutability. So just use a normal database.
What do you do when a malicious party uploads hate speech, child porn, terrorist propaganda or other illegal materials to the database?
(That literally happened to the Bitcoin blockchain, and also to Ethereum.)
Delete It Leave It There Won't happen. Only nice people will be allowed to write to the blockchainThe reason blockchains were invented was to make an immutable, censorship-proof database. If you use a blockchain you cannot censor data written to it.
Editable blockchains are like infrared coloured fireworks. They're straightforward to build, but there's no point creating such a thing.
Just use a normal database. That way other parties can't make it illegal to store or transmit your own database.
This means that you and anyone else using your database will be violating the law (if such content is uploaded).
No, I don't want that Yes, that's fineYou're only allowing trusted parties to read the database. You'll need an authority who approves or denies parties wanting to read the database.
The reason blockchains were invented was to create a database that anyone can read or write to.
Just use a normal database. It will be faster, cheaper and greener.
The reason blockchains were invented was to ensure that no one has the authority to deny read and write access to the database.
We've already established that untrusted parties can read the database. What's to stop them from making a copy of that data and sending it overseas?
Just use a normal database. That way you'll be able to see and control where the data resides.
Blockchains require many expensive computers, which burn a huge amount of energy playing Number Wang, to decide who gets to write to the database. So blockchains are expensive to run. Also, buzzword consultants charge high fees.
I'm willing to pay moreThere's a law in mathematics that says you can't have truly distributed databases, without central orchestration.
Satoshi (the inventor of blockchains) found a loophole. It's possible, but only if you deliberately slow everything down, a lot.
Bitcoin is the world's most famous blockchain, and it can only process about 3 transactions per second. Other versions of that algorithm can deal with a little bit more, typically at the expense of security. Claims of substantially faster blockchains are usually vaporware.
If you need performance, just use a normal database.
There's a law in mathematics that says you can't have truly distributed databases, without central orchestration.
Satoshi (the inventor of blockchains) found a loophole. It's possible, by using as much electricity as a whole country[1][2][3], spent powering many computers playing Number Wang. Only once a computer wins Number Wang can it write something to the database.
Other types of blockchains have been proposed, which use Proof-of-Stake or Proof-of-Storage instead of Proof-of-Work. These are largely vaporware.
Screw the environment, I want a blockchain!That's what a blockchain is.
git is a very popular tool for managing code.
It's designed to allow multiple people to modify files at the same time. It has an auditable history of all changes made to the data. Most developers already know how to use it, and there's a large ecosystem of tools and hosting systems for it.
If you want, you can use cryptographic signatures to verify writes to the files.
Yes NoGit repositories are like blockchains. The main difference is that they don't emit more pollution than whole countries.
Also, git is an established, well proven technology which most developers already have the skills to use. Whereas blockchain projects are largely vaporware, with eye-watering consultancy price tags.
Is this fundamentally different to the hundreds which already exist?
It's for a different demographic or use case The codebase is substantially differentYes, blockchains are the best way to make cryptocurrencies. However you shouldn't be making yet another shit-coin.
Cryptocurrencies are one of the few use cases where blockchains are the best available choice. However, does the world really need another cryptocurrency?
Make sure your coin is uniquely useful. Also, be careful. The world of cryptocurrencies is not very kind to those who write buggy code or have consumer grade security [1][2][3][4][5][6][7].
I hope the emissions, cost, low performance, legal risk and ethical costs are worth it.
For example, censorship-proof domain ownership and DNS, or a way to donate to Wikileaks?
Yes No, I'm not trying to defy governments or lawsJust use a normal database
It will be cheaper, greener, faster and more scalable
I hope the emissions, cost, low performance, legal risk and ethical costs are worth it.