Bitcoin and the Blockchain
In the original Bitcoin whitepaper, Satoshi Nakamoto introduced the world to the concept we now call the blockchain. Every transaction is grouped into a “block” and verified by a miner, and each block references preceding block, creating a “chain” of blocks that are the extend backward in time to the Genesis block, which started the Bitcoin blockchain.
The Bitcoin Blockchain
The Bitcoin blockchain records transactions, but it doesn’t directly store the number of bitcoins owned by each address. Instead, each transaction has to reference a previous transaction to prove that they own the bitcoins being sent. In order to ensure that someone can’t send the same bitcoins twice (called a double-spend), the blockchain is used as the “source of truth” for every bitcoin node. If it’s not in the blockchain, it didn’t happen.
Though Bitcoin wasn’t the first electronic currency, it was the blockchain concept that allowed it to become the first successful one. But Bitcoin isn’t perfect. Each block takes around 10 minutes to create, and most places want a transaction confirmed in at least 6 blocks before they’ll trust it, meaning that a simple transaction can take up to an hour before it’s accepted. Also, each Bitcoin block has a limit of 1 MB, meaning that only about 7 transactions can occur per second – woefully inadequate for a worldwide currency.
Cryptocurrencies created since Bitcoin have focused on being faster, or more private, or adding new features, but at their core, most still rely on the blockchain concept.
RaiBlocks and the Block Lattice
Colin LeMahieu, the creator of RaiBlocks, went with a very different approach. In the RaiBlocks whitepaper, he outlined the concept of a “block lattice”, where each account has it’s own blockchain and each “block” contains just one transaction. The global set of accounts is referred to as the Ledger.
When you want to send RaiBlocks to another person, two transactions are required – a send transaction that deducts from your balance and a receive transaction, initiated by the recipient, that adds to their balance.
Every transaction creates Send and Receive blocks.
Sending and Receiving are asynchronous, meaning the two actions don’t have to happen in immediate sequence. If the recipient’s wallet is offline and can’t immediately create and sign the receive block, sending to them will create a transaction that will remain unsettled until the recipient comes online and creates the corresponding receive block, which will settle the transaction.
Benefits of RaiBlock Block Lattice
Consensus without mining
Since each RaiBlocks account maintains it’s own blockchain, and only the owner of the account can add to their blockchain, there’s no need for a miner to organize and verify transactions.
Since transactions in RaiBlocks don’t have to reference previous transactions to prove they’re the valid owner of the currency being sent, a double spend in RaiBlocks has a different meaning than it does in Bitcoin. Each send transaction has to reference the owner’s previous block, so a double spend would only occur if someone tried to reference the same previous block in two separate send transactions.
If this occurs, the RaiBlocks network votes on which one is correct. Every RaiBlocks account, when created, selects a representative node that acts as its voting proxy. These representative nodes are expected to be always online and controlled by a trusted individual. The weight of the representative’s vote is weighed by how many RaiBlocks have been linked to it. The more RaiBlocks it represents, the more its vote is worth.
Because each vote is weighed by the amount of RaiBlocks controlled by the representative, a 51% attack on RaiBlocks would require the attacker to control 51% of all RaiBlocks, which at current prices would equate to several hundred million dollars. Even if that occurs, the worst a 51% attack could do would be to make the network unusable (by constantly switching votes and not letting a consensus be reached) – the attacker couldn’t steal or create currency.
No fees and instant transactions
Bitcoin uses transaction fees to encourage miners to secure the network. Since RaiBlocks doesn’t need mining there are no transaction fees. And since it doesn’t rely on miners to decide the timing of transactions when they create a block, transactions are recorded as fast as they can propagate across the network – typically in less than a second.
Since each account’s blockchain contains its account balance it’s not necessary to keep a record of every transaction on the Raiblock Ledger. The Ledger can be pruned to maintain only the last several blocks for each account – just enough to rectify any double-spends that may be detected. Though millions of transactions have been sent across the RaiBlocks network, the Ledger is still less than 2 GB, compared to Bitcoin’s blockchain which requires over 100 GB.
Though it’s been worked on for several years now, the Block Lattice structure of RaiBlocks is still relatively unknown to researchers which means it hasn’t been as well studied and vetted as the Bitcoin blockchain, and it may contain flaws that aren’t yet obvious. And without transaction fees and mining, it remains to be seen if enough users will run full RaiBlock nodes to create a decentralized network that a good cryptocurrency needs.
That said, the improvements that RaiBlocks has over Bitcoin are immense and solve real-world needs. Bitcoin’s transaction fees now average over $25, even to send a small amount, and 10 minutes to record a transaction in the blockchain has always been a tough sell.
Barring any major black swan events, it looks like RaiBlocks could soon become one of the most popular cryptocurrencies in the world.
How to Buy RaiBlocks
Unfortunately, RaiBlocks isn’t as easy to purchase as Bitcoin. You can’t buy RaiBlocks with a credit card, so you’ll have to use one of the cryptocurrency exchanges to buy RaiBlocks using Bitcoin.
Buy Bitcoin easily at Coinbase
To start, if you haven’t already, head over to Coinbase and sign up. Coinbase will let you use a credit card to buy bitcoin, which is what you’ll be using to purchase RaiBlocks.
Sell Bitcoin for RaiBlocks on an exchange
After you’ve purchased Bitcoin, you’ll need to sign up for a cryptocurrency exchange that offers RaiBlocks. There’s only a few right now, but you can find a list at Coin Market Cap.