We know that XTRABYTES is running on a PoSign (Proof-of-Signature) consensus method, while processing a new type of crypto-algorithm, called Zolt. But how did we get here, and why? And what does this even mean?
HOW WE GOT HERE: What the Heck IS a Blockchain?
Before we can begin talking about consensus methods and fancy algorithms, we need to understand what we’re trying to accomplish. Let’s try to make this easy by breaking down the blockchain into its two components; the block and the chain (which sounds much better than a ball and chain).
Imagine a single building block sitting on a table. Being the only block in existence, it’s eagerly waiting to become part of something larger. This “something larger” is the chain part. As a chain, it’s rather small but will grow to become much larger VERY fast.
In order to replicate a chain, let’s drill a hole through that building block and stick a string through it. The string/chain holds all the blocks together much like a bead bracelet/necklace. And we’ll keep adding blocks to the string.
Starting with a block on a string, we’re ready to begin making our block chain. But we need more blocks. We don’t have any more blocks. So… what do we do?
To create blocks, Bitcoin employs a Proof-of-Work (or PoW) consensus method. This proof-of-work method basically means that the Bitcoin people took a virtual digital tree (out of their virtual private digital forest – which, of course, everyone has), put it online, and said, “We need a BLOCK with a hole that will fit on our string! Help us, online community! You’re our only hope!”
Eventually, people began to respond. “Hey! I can cut down that digital tree and turn it into virtual blocks with my graphics card (hint: it’s how fast the cooling fans spin. They’ll slice right through a virtual tree)!” So they became (geeky) digital lumberjacks, working away at clearing the virtual forest. And they stopped playing video games, so their computers would make them money. More or less.
Anyway – in proof-of-work, the first person to cut the tree into the correctly sized block – with the right sized hole – with rings that match perfectly to the previous block’s rings – gets to slide their shiny new block onto the string. This then becomes a permanent part of the block chain. However, this string is unbreakable – once placed on the string, that block can NEVER come off. Ok, it CAN be taken off, but we’ll get into that later. Pretend for now that it can’t be taken off.
We’ve successfully set out on our quest to make a blockchain. So far, so good. We have digital lumberjacks all over the world hacking away at the virtual forest we started with. Moreover, we have a (near) endless supply of blocks coming on to our string.
What we need to determine is who gets to put their block on our string. This is where we start to delve into alternate consensus methods, because a bunch of nerdy lumberjacks isn’t the best way to make block beads.
Trusting the Lumberjacks: The Tree Rings of Consensus
At first, our blocks were smooth and easy to match up (they had hardly any rings/transactions in them). However, as we progressed down the chain, more and more people are hacking away at this poor virtual forest. Competition has caused gouges and marks to be made in the blocks (too many miners exist in the forest – they’re all pushing and shoving, trying to get their block on the string). Since we don’t want new blocks that don’t line up with the previous block, it’s become MUCH harder to make a block from a tree. The last tree ring (cryptographic key) in the old block must match the first ring of the new block. If it doesn’t, it will get rejected (kicked off the string).
Since beginning our great digital deforestation, its become harder and harder to make the correct block shape. It’s also become harder to find trees to cut down. At our current rate, we’ll eventually run out of trees in the virtual forest and we’ll have to plant new ones. But that’s a problem we won’t run in to for some time. So we’ll ignore it for now. Just like we ignore deforestation in the real world.
In addition, some jerk put a bunch of cryptographic junk inside the trees. Imagine these cryptographic puzzle pieces as hard objects that break your saw blades and ruin your expensive lumberjacking (mining) equipment. They easily make your equipment overheat and die.
Wow. This analogy is turning out to be pretty apt ?
But back to the deforestation; proof of work is environmentally expensive. Each bitcoin transaction currently uses more electricity than 11 average households use in a single day. This energy cost is due to the high energy required by lumberjacking equipment.
So what keeps these digital lumberjacks chopping away at the virtual (and real) environment? Basically, the promise of a payout if they find the perfect block/bead. If you make the bead we accept, we’ll let you carve your initials into that block and take credit for it. And we’ll give you a few pre-allocated virtual coins (that is, they’re on the string). When you put your block on the string, it will displace so many of the coins – the coins will go to whom put his/her initials on the block once it’s on the string. We’ll also give you any “tips” – transaction fees – that people trading the virtual coins added on to their transactions that made it into your block. These mining payouts are the only real incentive you have to increase your utility bills and abuse your computer hardware. And unless you’re 100% solar/wind powered, you’re participating in the active destruction of our physical world as well.
Accordingly, there is a LOT of wasted wood (due to imperfections – bad “beads” or “guesses” at what the bead should look like). Since the first person to make each perfect bead gets the reward, the more “bad” beads you can make faster, the more likely one of them will fit. How quickly you can produce “beads” is your hashrate. These are often in the thousands per second. This means that there are a LOT of wasted beads and wood lying about. It’s getting messy in here. Luckily, we’re not creating round beads, or there would be a real risk of falling. The point is that this process is incredibly wasteful and if it were done to a real forest, blockchain operations would have been shut done long ago.
In the long term, we’ll face another problem; we only had enough coins to put on the string to get one bead from each tree. Bitcoin will eventually return an empty string (haha… sorry). Once we go through all the trees, we won’t have any more coins to give out. Eventually, finding people willing to make blocks for us will become very difficult. They’ll still get the transaction fees, but that’s it. This is a problem for much, much later though.
If we want to keep this blockchain thing going, we should consider an alternative. What’s been working for the banks for ages? A promise of an interest rate? Ok. Great. Let’s look at Proof of Stake (PoS) as an alternative.
In Part 2: Deforestation Sucks: Block Buying Old-School (PoS)