Odocrypt

From DigiByte Wiki
Revision as of 11:48, 4 August 2019 by NigelDigiByte (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Odocrypt is a unique GPU / FPGA-friendly hashing algorithm made specifically for DigiByte that changes itself every 10 days as an anti-ASIC method.

Blog post from Jared Tate (founder of DigiByte) regarding DigiByte v7.17.2 Odocrypt Algo Fork

How does Odocrypt work?

Odocrypt uses the Keccak algorithm (SHA3) for its hashing function, as it is a relatively streamlined and low-memory requirements (Perfect for all common FPGAs). It changes the hashing details every epoch (10 day time-period) based on the new seed. This change occurs at midnight UTC. When the epoch changes, the miners must compile a new .sof file (analog of a binary executable for the FPGA CPU) and program it on to the hardware. During this time, there is a 2-hour period prior to the midnight of the epoch in which the blockchain will accept the new epoch settings and / or the old epoch settings. This gives all miners a chance to re-optimize their settings and reprogram their FPGA's, without causing immediate issues in the overall hashrate for the algorithm, despite automated re-programmings taking only a matter of seconds in most instances. Once reprogrammed the FPGA uses the new seed as it's base, which is required in order to maintain the 'optimized' settings. Without this, the FPGA will be churning out invalid hashes and have an effective efficiency of zero.