Velvet has always been a sign of nobility, but in the crypto space, it’s now the name adorning a new and promising way for upgrading blockchain software.
At least that’s the hype behind “velvet forks,” a mechanism for upgrading cryptocurrency code that has some high-profile crypto enthusiasts intrigued.
“We think the most interesting part is the idea that you can introduce some new concepts to permissionless blockchains without necessarily having a majority of consensus participants agree to do so,” said Imperial College London research assistant Alexei Zamyatin.
And that complex statement cuts to the core of why Zamyatin and others believe velvet forks might be beneficial.
In short, in the cryptocurrency space, there have long been two types of forks that people generally discuss – soft forks and hard forks.
While soft forks are seen as less disruptive in that they’re backwards-compatible, they can still be controversial when used to initiate changes not all cryptocurrency users agree with. Further, hard forks are generally seen in a dubious light since they can split a blockchain in two if not all users decide to update to the new rules.
With velvet forks, however, some researchers think the cryptocurrency world can get around some of the disruptive politics that generally bog down major code changes.
First coined by computer scientists working on building proofs that can potentially be used to improve sidechains, a layer-two cryptocurrency technology for pushing transactions off-chain, a velvet fork allows developers to add new rules to a blockchain without full support from the entire ecosystem.
According to Zamyatin, “It’s not rocket science. It’s a pretty simple concept.”
As such, Zamyatin and several other researchers co-authored a new paper that dives deeper into where the mechanism can be applied, which he presented during the Financial Crypto 2018 conference in Curacao at the beginning of the month.
The new paper states:
“The velvet fork […] does not require support of a majority of participants and can potentially avoid rule disagreement forks from happening altogether.”
In the wild
Simply, a fork is a way to upgrade a cryptocurrency system to support important new rules, and throughout the history of multiple cryptocurrency protocols, forks have been used often.
From the hard fork that split ethereum into a competing cryptocurrency ethereum classic to less controversial forks like the one used to move bitcoin to a new signature scheme to the ever-growing number of forks designed to not only create new cryptocurrencies with new features, but also make entrepreneurs (or scammers) substantial amounts of money, forks have become a part of life in the cryptocurrency ecosystem.
But these mechanisms come with a fair amount of controversy much of the time, which is partly why Zamyatin and other academics are so interested in the velvet fork approach.
In the December 2017 paper where velvet forks were first mentioned, the mechanism is described as one that allows for “gradual deployment” without harming the miners that haven’t upgraded to the new rules. In this way, it acts similar to a soft fork in that clients that upgrade to new rules are still compatible with those that don’t.
Further, the paper states that velvet forks require “no rule modifications to the consensus layer,” what some see as advantageous since these are the rules everyone in the system needs to agree with, or everything will break.
While it hasn’t become widely-used as a way of upgrading, velvet forks exist in the wild today in various forms (although researchers argue there wasn’t an official name for the mechanism before this recent wave of research).
For example, the decentralized mining pool P2pool regularly uses a velvet fork of sorts.
Since there is no one entity (replacing that with code instead) that controls the payments dispersed to the miners of the pool for their work, the pool created a second blockchain with an easier difficulty that only miners part of the pool can contribute to. This blockchain is used to gauge how much computing power each miner is contributing, so the protocol can pay them out proportionally.
Even though the blocks generated by P2pool use these extra rules, miners that don’t play by these same rules still accept P2pool’s blocks.
As such, P2pool is an example of a “velvet fork” because the blocks (from both their proprietary blockchain and the bitcoin blockchain) live side-by-side in harmony, without causing a split.
Bias and bribery
Still, velvet forks are a potential vulnerability.
Namely, the paper describes possible ways that velvet forks could be abused by bad actors for their own gain.
For instance, say a velvet is deployed. Zamyatin’s paper describes a scenario where some miners, called “velvet miners,” upgrade to new rules while others ignore the new rules. If the blocks that the velvet miners create are somehow more lucrative than regular blocks, the paper argues other miners could be “biased towards accepting upgraded over legacy blocks.”
“This, in turn, can have an unclear impact on the security assumptions of such systems, as current attack models mostly do not assume a variable utility of blocks,” the paper continues.
And Zamyatin himself described another attack vector, which involves “selfish mining.”
Selfish mining is a process whereby miners hide the fact that they’ve found a block, keeping other miners searching for that block while they move on to searching for the next block. This gives them a head start of sorts in also winning the next block. And according to Zamyatin, velvet forks could enable new opportunities here.
He told CoinDesk:
“I can bribe people to work on my chain. There’s no guarantee that I’ll win, but it could potentially offer an incentive to deviate from the protocol rules.”
Still, more research is needed, as Zamyatin admits he isn’t sure how serious these problems are in practice.
Opening the door
But both these vulnerabilities and the thought of the changes velvet forks might enable are reasons Zamyatin wants researchers to spend more time looking into velvet forks.
Although, Zamyatin acknowledges that velvet forks aren’t a silver bullet.
“This doesn’t work for something like Segregated Witness (SegWit) of course,” he said, referring to a bitcoin code change that fueled a two-year debate in the community over the technical direction of the protocol.
That said, it’s still potentially useful for other types of changes.
Zamyatin noted that he’s looking into how it might be possible to use a velvet fork for bringing GHOST, the protocol that ethereum was originally modeled after, to bitcoin. Because it completely restructures the system to try to speed things up, it likely wouldn’t get enough support for a soft or hard fork, and as such a velvet fork where some get to opt in while staying in consensus with those that don’t could be the only way.
And velvet forks might also help breath new life into older proposed innovations.
Cornell associate professor Emin Gün Sirer, for instance, said he “very much” likes the idea of using a velvet fork for adding the long-stalled Bitcoin-NG (standing for “next-generation”) protocol, an idea he pioneered which looks to improve throughput by rearranging the bitcoin blockchain, to the cryptocurrency.
“While [the paper is] short on the details, the overall idea of adding new functionality without incurring the risks and complication of either a soft or a hard fork is quite compelling,” Sirer told CoinDesk.
And perhaps most far-fetched but interesting of all, Zamyatin believes an even bigger vision could be realized with velvet forks.
He told CoinDesk:
“You could even have multiple versions running in parallel, perhaps even compatible to each other, and all this without necessitating often controversial soft or hard forks.”