Drivechain: The Two-Way Peg Solution for Bitcoin Scalability
As the world is becoming more and more aware of cryptocurrencies, their popularity and adaptation are also on the rise. The rise in adoption has also brought to light the inefficiencies with regards to keeping up with the increasing demand. While bitcoin blockchain stills look to be healthy for now, but with the rising demand, it may soon turn vulnerable and probably may come to a halt. This scalability issue of the bitcoin is due to a variety of aspects of how the Bitcoin protocol works.
As Bitcoin uses blocks to process transactions, keeping security in mind, in its early days the minimum block size was held at just 1 MB. With this limitation, the Bitcoin’s protocol did become secure but at the cost of scalability. The scalability issue offered an opportunity for newer tokens to do things better than bitcoin.
With redundancy slowly creeping into the Bitcoin blockchain, developers that trust Bitcoin, have been on a continuous hunt of what could save the protocol from dying. One such search has led to the development of sidechains progressing on the development of Drivechains.
Sidechains: An Overview
Sidechains have been a concept of discussion among the developer’s community for quite some time. In October 2014, the idea was first brought forward by a group of blockchain experts Adam Back, Matt Corallo, Luke Dashjr, Mark Friedenbach, Gregory Maxwell, Andrew Miller, Andrew Poelstra, Jorge Timón, and Pieter Wuille who released a paper titled “Enabling Blockchain Innovations with Pegged Sidechain.”
The paper discussed “pegged sidechains, which enables bitcoins and other ledger assets to be transferred between multiple blockchains.” It further discussed the design aspects of pegged sidechains defining the Two-way peg which is the technical underpinning pegged sidechains. In simple terms, the two-way peg is the method to transfer BTC from the main chain into the sidechain and vice-versa. Practicality, when BTC is transferred from mainchain to sidechain, no currency is “transferred” between blockchains.
When a user transacts between the main chain and the sidechain, certain BTC’s are blocked on the main chain and the same amount of BTC’s are released on the sidechain, and vice versa happens when the transaction occurs from sidechain to mainchain. There is a security protocol which guarantees that the same bitcoins are not blocked or unlocked on both blockchains simultaneously.
With sidechains, the simplified payment verification (SPV), was the dynamic-membership multi-party signature (DMMS) demonstrating that an action occurred on a Bitcoin-Like POW blockchain. Although the sidechains provided solutions to a lot of problems with scalability and catered a platform for multiple innovation opportunities, it did come with certain drawbacks. Some of the drawbacks include adding complexity, the risk of fraudulent transferring, risk of centralized mining and the risk of soft forks.
With the emergence of altcoins and lack of progress on the actual project, the sidechains found themselves sidelined. But Paul Sztorc the economist at Bloq and the creator of Bitcoin Hivemind continued to believe on the sidechain project. Understanding the bit and pieces of sidechain, Sztorc created a way to implement sidechain.
He believed that the actual custodians of Bitcoin were its miners and created what we call as the Drivechain. As sidechains, in the original paper, were based on cross-chain consensus validation through SPV and reorganization proofs; Paul based Drivechain on miners being consensus proxies. According to Sztroc, the miners were the minimum problematic custodians of funds and were used on the sidechain with a perspective of game theory.
Drivechains, just like the proposed sidechain initially, used the two-way pegs (2WP) model to allow the transfer of bitcoin to the sidechain from the main chain. Sztroc recognized that this 2WP had many advantages as the sidechains did not have to create or have its monetary network, and would work by taking advantage of Bitcoin’s network effect and its security. The model also allowed users to choose their participation in the adoption of new features and updates assuming sidechains as an optional fork.
How does Drivechain Work?
When a user transfers the bitcoin from the main chain to the sidechain, the process locks the bitcoins to a unique P2SH address. The sidechain client watches the main chain and observes when the coin transfer takes place into the sidechains which are under the control of the user.
Once the coins are locked on the main chain and a decent period has passed so that no activity of bitcoin reorganization can take place, the coins are then released in the sidechain for the use. The Drivechain does this by way of merged mining.
Merged mining is the new method which uses game theory principles for mining drivechains. The miners, in merged mining, work simultaneously on main chain and sidechain. The Drivechain block is assembled and hashed first with the hash put into the coinbase transaction of the Bitcoin block. This hash is overlooked by the bitcoin network.
If the difficulty of the Bitcoin is achieved, the Bitcoin block is accumulated and sent out on the network. The Drivechain’s block is then put together with all the information from the associated Bitcoin Block, providing that good amount of work was done to secure the drivechain, allowing the Bitcoin to move to the sidechain from the main chain. While merged mining is used to send Bitcoin to sidechains, Drivechain uses the simplified payment verification method to move back coins from the sidechains to the main chains.
Miners Role in Drivechain Transaction
Drivechains consider miners as the real custodian and give them powers to drive the transactions. The premise of drivechain works on the assumes that the miner will be honest and will not try to steal the coins. Although to tackle this uncertain situation and counter this assumption, withdrawals from the subchain are made less frequently so the drivechain client can watch from miner fraud.
While sending coins to sidechains, the coins on the main chain are first sent to a P2SH address under the special “anyone can spend “ circumstances. After that, miners come to an accord via soft fork, to reject spending of coins unless the compelling universal drivechains act follows special rules as a lockbox. Once the individual states are developed, the coins are released on the sidechain.
When sending coins back to the main chain from the sidechain, the drivechain client creates a transaction that abolishes the sidechains coins and requests that coins be sent to a specific destination on the main chain. This creates a Bitcoin “conjoin” transaction, and the transaction ID is included in the sidechain block header. After that, the coinjoin transaction is incorporated in the coinbase of Bitcoin block. Miners have to wait for a long time before voting on the coinjoin transaction.
If miners vote to validate the transaction then they are obliged to confirm that the transaction has not been altered by referencing the sidechain – the actual coinjoin transaction is made part of the main chain. The principal drivechain address is then only will send coins to the coinjoined destinations.
Adding another layer of protection to drivechain, a second soft fork is deployed to prevent miners from redirecting the bitcoins to a different destination of their choice. This second soft fork needs miners to draw reference to associated sidechains and ensure that the coinjoin transaction ids match the other transaction id that is incorporated inside the block. In case of a mismatch, the miners will rebuff to mine the altered chain.
Benefits of Drivechain
Drivechains do give much-needed scalability to the bitcoin blockchain making it more future ready to accept more users onto it. It also eliminates the risk of congestions as the main chain is not flooded with transactions.
Innovation without permission
Anyone can create a new blockchain project without the hassles of building an entirely new blockchain and new monetary systems. This also solves the problems and efforts of marketing a new set of coins which may or may not be accepted by the public.
With no actual need of Altcoins, there will be no competition and Bitcoin will always be the superlative code and blockchain making it a truly global digital currency,
Freedom to Choice
As sidechain allows users to choose the benefits, they would like for pay for it gives them the freedom of choice as against paying for everything.
Unlike in case of Altcoins, drivechains, being on bitcoins network filter out the fraudulent project that scams investors by showing them ways to get rich quickly. This eliminates the whole debate of which coins will last in the future and which ones are fraudulent and scamming people.
Drivechains, like other sidechains, allow testing new features. As these tests don’t happen on the main network, in case of any failure, it will not take down the whole network allowing innovation with minimal risk.
Is Drivechain a solution to bitcoin scalability? Let us know your views in the comments section.