Post
Topic
Board Mining (Altcoins)
Re: Ravencoin mining software development?
by
NightEule5
on 20/11/2018, 20:55:13 UTC
Ravencoin code works on the PoW consensus algorithm and the x16r cryptographic algorithm, which is a combination of 16 hash functions, the order of which constantly changes depending on the hash of the previous block (its last 8 bytes are taken into account).
Ravencoin is using following hash algorithms:
  • blake;
    bmw;
    groestl;
    jh;
    Keccak;
    Skein;
    Luffa;
    Cubehash;
    Shavite;
    Simd;
    Echo;
    Hamsi;
    Fugue;
    Shabal;
    Whirlpool;
    sha512.
The set of hash functions are currently identical to the X15 algorithm with the addition of SHA512. In the future the algorithms can be modified and extended to protect against ASICs.

Ok. A few questions though:
Are they ran sequentially? Like, do you hash with one algorithm for one try and then the next for the next try and so on, with the order determined by the hash of the last block? Or are they nested, where you hash a hash again and again in that order? I suck at explaining stuff, does that make sense?

Also, is the SHA512 algorithm the SHA2 or SHA3 version? If it's the SHA3 version wouldn't it just be Keccak?

And lastly, some of these algorithms (if not all of them, excluding SHA512) can output different length hashes (Keccak has 224, 256, 384, 512 etc. for example). Which length are they supposed to be? I'm assuming 512 bits?

Ravencoin coin mining is currently mined on video cards using the following programs:
sgminer-x16r;
RavenMiner;
ccminer;
Z-Enemy-CUDA;
T-Rex.
Most of them are open source. You can take them as an example for your program.

I'm curently looking at the source for RavenMiner but I'll check those out too. Smiley