Developers behind the popular privacy coin monero are ramping up their efforts to keep specialized mining hardware from operating on the cryptocurrency network.
Called RandomX, the code is based off the work of Howard Chu – CTO and founder of computer software firm Symas Corporation – who also developed Lightweight Directory Access Protocol (LDAP), the database type that the monero blockchain presently runs on.
Speaking to CoinDesk in an interview, Chu said that four different audits of the RandomX code are being completed for an expected code freeze date by July.
Of the coins that have a strong privacy focus, monero – launched in 2014 – possesses the largest market capitalization by far with an estimated $1.5 billion valuation. The annual mining rewards generated by the now 5-year-old blockchain total roughly $62 million, according to data on cryptocurrency information site Messari.
But such rewards appear to be increasingly falling into the hands of ASIC operators, nudging out smaller, independent or hobby-minded participants. To keep an even playing field, monero developers have conducted regular hard forks to stave off ASICs — but recent analysis suggests that this approach has proven ineffective as of late and that ASICs are keeping one step ahead of such efforts.
“ASIC manufacturers can make equipment far faster than we expected,” affirmed monero community contributor Justin Ehrenhofer during an interview with CoinDesk. “It takes maybe a month for them to have chips designed and in production so they generally can still make a return on investment even within a six month period.”
To this, Diego Salazar – another monero contributor – added:
“We [also] saw that this was very unsustainable. … It takes a lot to keep [hard forking] again and again for one. For two, it may decentralize mining but it centralizes in another area. It centralizes on the developers because now there’s a lot of trust in developers to keep hard forking.”
As such – for both these reasons raised by Ehrenhofer and Salazar – the monero community is moving forward with activation of a new mining algorithm known as RandomX, designed to render ASICs noncompetitive for the long-term. An audit of the code was recently completed and several others are in-progress.
As it stands, the algorithm could go live in October.
“So I think we’ve ultimately come to consensus in general that RandomX is what will be implemented. It’s our best shot to preserve monero as it was founded,” said Ehrenhofer. “And if this fails then monero will probably move to an ASIC-friendly algorithm.”
According to Salazar, RandomX is monero’s “last ditch effort to keep ASIC’s out.”
Putting CPUs at the fore
RandomX according to Chu is designed to be “CPU-centric.”
As opposed to application-specific integrated circuits (ASICs), central processing units (CPUs) are a type of computer hardware designed for multi-purpose use.
Calling it a “spectrum of computing power,” Salazar explained:
“On one end, where computers are a jack of all trades are the CPUs…On the other end, computers which does only one thing but extremely well are ASICs.”
CPU’s are the most widely distributed computing resource in the world, according to Chu.
“Practically everyone in the world now has a smart phone in their pocket with a CPU and memory that’s capable of mining RandomX,” highlighted Chu.
With maximum miner decentralization as the goal, Chu predicts that RandomX will preserve an advantageous lead favoring CPU miners over ASICs for at least the next three to five years.
Leaving GPUs behind
At the same time, estimates for miner performance based a RandomX algorithm favors CPU miners over not only ASIC miners but GPU miners as well.
Graphics processing units (GPUs) are optimized for what Chu calls a “graphics workload which tends to be very sequential.”
“Data goes in at the head of the pipeline and you do some munching on it and it all spits out at the end of the pipeline,” Chu said. “The main emphasis there is fast transfers of data from the input to the output, pretty much in a straight line.”
For monero’s current mining algorithm, called CryptoNight, GPU miners take the lead over CPUs in terms of computation and energy efficiency. Originally, however, even CryptoNight was intended to boost CPU performance over other types of hardware.
“It’s really again kind of an accident of fate that [CryptoNight] turned out to work fairly well on GPUs. Nobody expected CryptoNight to be good on GPUs and it was anyways,” explained Chu. “The fact is today GPUs have so much memory and so much massive memory bandwidth that it’s not very much of an obstacle when it comes to CryptoNight, which was designed back in 2013 or so.”
Soon, with the activation of RandomX, Chu predicts CPUs to be “at least three times better than GPUs” at mining on the monero blockchain.
And while this has disgruntled “a very vocal but extremely small minority” of GPU miners, Ehrenhofer maintains that “people with GPUs can always either resell or repurpose their hardware.”
“If I have a monero ASIC I don’t have that same economic option available,” said Ehrenhofer.
As such, despite the impact RandomX will have on not only ASIC miners but also GPU miners on the monero network, Ehrenhofer maintains:
“I’m not concerned about a community split here because RandomX is the closest algorithm that we can pick that retains a vast majority of monero’s ideals.”
Perhaps a more realistic concern in the mind of Ehrenhofer and others in the community is the proliferation of botnets on the monero network as a result of a CPU-friendly mining algorithm like RandomX.
“The basic concern is there’s millions or hundreds of millions of computers that are out there that are poorly secured,” explained Chu. “It’s very easy for malware to invade these computers and take them over to do whatever a particular network operator wants to do.”
Such botnets, infected by malware, have always been somewhat of an issue on monero, according to Ehrenhofer.
“Monero is by far the most illicitly mined cryptocurrency at the moment and it has been for several years,” Ehrenhofer said. “RandomX does not prevent people from crypto-jacking and other nefarious versions of malware.”
Indeed, given that monero’s present mining algorithm – CryptoNight – has always favored CPU and GPU mining, Ehrenhofer notes that there are resources in place on the monero website and other related forums to help users who’s devices are impacted.
Even still, efforts to bootstrap RandomX have seen support from those outside of the community as well, particularly by other crypto projects that might make use of CPU-friendly mining algorithm.
Arweave, which raised a reported $8.7 million in an initial coin offering (ICO), is teseting RandomX via its developer team.
“An ASIC-resistant proof-of-work algorithm like RandomX will further enhance our permanent, low-cost, tamper-resistant storage network,” said Sam Williams, founder and CEO at Arweave, in a press release from earlier this month. “RandomX helps us ensure that power over the decentralised content policies in the Arweave network remains well distributed across many globally distributed parties.”
To this, Arweave has funded one of the four audits over the RandomX code. Completed officially on Friday, the audit cost a reported $80,000 and was conducted by security firm Trail of Bits. Speaking to CoinDesk in an interview, Williams explained:
“It was one of our hopes going into the audit process that by helping to fund it we could do a small public service by making sure other [crypto] projects can see there is a programmatic proof-of-work algorithm that is likely ASIC-resistant in practice without fear of security.”
The other three audits totaling $130,000 that are still to be finalized by security firms Kudelski Security, X41 D-Sec, and QuarksLab were funded through crowd-sourced donations from the monero community. They are expected to wrap up by July, according to Chu.
The next step after that is an eventual launch of the algorithm on a public monero test network before a tentatively scheduled mainnet activation this October.
For all the development and discussion that has gone into preparing RandomX for a mainnet impelemtnation, Ehrenhofer maintains that the true benefits of RandomX won’t be certain until it’s live on the network.
“We don’t know if RandomX will work yet even if all the audits come back and they say your cryptography is pretty good. We don’t know in practice how things will actually turnout,” warned Ehrenhofer.
But the worst-case scenario in Ehrenhofer’s mind if the algorithm proves to be unsuccessful is a switch to an ASIC-friendly mining algorithm similar to the one currently utilized by bitcoin.
“I think if RandomX does fail and monero switches to something more ASIC-friendly, many in the bitcoin community will tell us, ‘I told you so.’” Ehrenhofer joked.
Even so, Salazar maintains that monero should have the runway to try new things and fail at them.
“Isn’t the idea to see what’s going to work best so that one day we can have a good digital, private, fungible cryptocurrency?” Salazar asked. “If monero is not but a stepping stone to get to that good currency then by all means let monero be the lost leader.”
“The monero people are nothing if not resilient nerds that decide to take on the man. So we said, ‘You know what? Let’s give this a go, one last ditch effort.’”
Monero miner image via CoinDesk archives