Blockchain:
* Separates your transactions into blocks and hashes the blocks together.
* Uses proof-of-work to add new blocks.
* Is slow (a block has to be filled).
* Is unreliable (your transaction may be rejected).
* Locks transactions at the block level.
* Easy for user to lose unique tokens (coins).
My SQL design for blockchain replacement:
* Take a database table.
* Allow INSERT permission only.
* Hash each record and insert the hash into next record, which chains them together like blockchain.
* Replicate the database.
This is like blockchain, because it hashes the records together, can't be modified, and has backups to ensure it can't be modified.
Unlike blockchain, it:
* Is centralized but still has backups.
* Is cheap (does not require proof of work).
* Is fast (one transaction at a time).
* Is reliable (ACID transactions).
* Locks transactions at the record level.
* User not required to keep track of coins.
So what's so great about blockchain compared to this design? The only thing blockchain does better is that there is no central server, so it's hard to shut down. But for industry use, no one is going to shut down their intranet servers. Only criminals need to worry about being shut down.