GPU-resistance hash algorithm
[email protected] Version 0.3 September 2018
IntroductionThe purpose of this algorithm is to equalize the people who are mining on a CPU and the people who are mining on a GPU. To achieve this, we suggest to use memory, but unlike other similar algorithms (such as Ethash) in our algorithm,
memory does not slow down the GPU, but accelerates a CPU. This can be done by using not an integer nonce when selecting a hash, but a certain value that is time - consuming to calculate-for example, calculated by the sha3 algorithm and allowing this value to be used for enumeration in a wide range of block hash calculations. Thus, it is more profitable to store these values in memory for selection than to recalculate them. This benefit should be maintained even if the speed of computing resources will increase by 1000 times.
AlgorithmThe input is a 32-byte hash of the current block CurrentDataHash, you need to find a Nonce (integer), so that the result is a suitable hash of the block with the maximum value of initial zeros.
Restriction:
1. The search should be optimized for memory usage - for protection from GPU mining
2. The check should be performed with a minimum amount of memory and be fast-about the speed of sha3 calculation(измeнeнo)
Algorithm Walkthrough:1. Calculated HashNonce= sha3(PrevHashN , Nonce)
2. The Resulting Hash = SimpleMesh(HashTemp,CurrentDataHash)
PrevHashN is a 32-byte hash of some previous block, different from the current block on NDelta (the maximum depth is limited to a certain number, for example 1000 blocks)
SimpleMesh () is a function of the rapid mixing (non-cryptographic). It must satisfy the conditions:
1. To keep the entropy
2. High speed-1000 times faster than the function calculation speed in the step 1 (sha3 in this example).
3. It should be good to mix a data - to prevent a quick search, i.e. guarantee busting of HashNonce
After searching for the most satisfying hash into the blockchain will be wirtten the following parameters:
CurrentDataHash, Nonce, NDelta - which quickly restores the block hash
Small calculations:- GPU GTX 1060 for 1 second will create and compare the order of 0.5 billion hashes.
- Computer: using the memory DDR4-2133 will have to have speed channel is 17Гб/s and therefore will be able to compare also the order of 0.5 billion hashes
RewardThis algorithm is very important for all of us, it will stop the discord and we hope to unite people again because we are all building a single decentralized future.
Note: a Fund of
500K Tera was established for the contribution to the creation of this algorithm.