Let’s talk about DigiByte v8 + fundraiser

So, let’s start with RandomX / ProgPoW

Late October 2020, I was contacted by Barrystyle via Reddit who noticed we’d been struggling with the RandomX + ProgPoW implementation, and that there was the possibility of a bounty for RandomX. Kristy-Leigh Minehan had graciously volunteered to do the ProgPoW implementation for us but had been having a tough time with finishing it off. Coupled with her catching COVID-19 twice throughout the year, and previous health complications, she advised that she was fine for Barry to do the implementation there for ProgPoW. I’m still personally grateful for the time she’d spent, but more importantly I’m glad that she’s been looking after her health.

Work on RandomX in the codebase, just, coz picture…

The DigiByte v8 development

In January, the 0.21 release of Bitcoin Core came out, and Barry asked me if it was worth us releasing from 0.20 given it was no longer the most recent. A fair question! Couple with the improvements from Schnorr + Taproot that the DigiByte community had been talking about for quite some time now (A year prior I’d given a presentation on it, in Feb 2020) were being prepared with the 0.21 codebase in-mind. As such, implementing Schnorr + Taproot would be far easier based on 0.21 rather than 0.20. On the 15th of Jan, Barry began to work on 0.21, which included some additional “fun” given the way Bitcoin now rebroadcasts transactions conflicts with Dandelion. Despite this, after just a couple of days in between his other jobs, it was working. He and I had it running on the network, which was when I made several tweets around the time showing it syncing.

  1. Provide sufficient time in between implementation of RandomX / ProgPoW for MultiShield difficulty to even out and minimize any risks of attack attempts
  2. Greatly minimize the effort from exchanges / wallets / service-providers who would have to upgrade every single time otherwise, and risk having some of them dropping support for DigiByte if we were to do too many “mandatory” upgrades of the Core wallet.

Where-to from here?

Well, we need to finish off DigiByte v8 based on 0.21, and the sooner we can do this the better it is for addressing the supply-curve. This is because as of right now the block-reward subsidy will drop from 84 DigiByte to 1 DigiByte in 2035. That’s a pretty sharp drop (Worse than any halving event) and after that it will carry on with an infinite supply (also not good). This needs to be done ASAP because the longer we kick the can down the road, the harder the adjustments are going to have to be, and we can avoid that by being prudent with our time.

  • Finishing 0.21, with the working unit tests, Dandelion changes implemented, and pull request to the DigiByte-Core/DigiByte repository made. This is what most of the donations are for / about.
  • Ensure that RandomX is operational and the appropriate stratum modifications available, and documentation / notes around implementation.
  • Ensure that ProgPoW is operational and the appropriate stratum modifications available, and documentation / notes around implementation.
  • Implementation of the supply-curve fixes.
  • Have a date set for Schnorr + Taproot set to the same as the supply-curve changes.
  • Implementing memory improvements from Yoshi
  • Improved sync times (I’ve done a full sync in under half the normal time)
  • Significantly improved launch speed (Which is great if you’re testing things regularly)
  • The full implementation of Scrypt in libsecp256k1
  • Improvements to MultiAlgo block generatetoaddress on testnet
  • Added algorithm stats RPC call
  • A large amount of the DigiByte-specific codebase has being refactored into a segregated area which will allow for much easier improvements / iterations upon in the future
Donate directly to Barrysty1e

How will this be delivered / what will successful completion look like?

The primary part here is the completion of an 0.21 based DigiByte v8. This will be something you can compile and test alongside us by going to github.com/digibyte-project/digibyte, where the branches / improvements being worked on are visible.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Josiah Spackman

Josiah Spackman

I write interesting things about cryptocurrency, especially DigiByte