Correct Aeternity Hashrate

Most of the pools are showing the wrong hashrate values.
This is the only correct hashrate:

Check the miningpoolstats:

It is wrong.
Beepool and f2pool are showing wrong hashrates too.

3 Likes

how it works for AE:

http://13.58.177.66:3013/v2/status

this difficulty showing summary difficulty for all blocks.

we getting http://13.58.177.66:3013/v2/key-blocks/current, and looking for “target”
target is 504393092

504393092 is packed difficulty in scientific form.
https://en.bitcoin.it/wiki/Difficulty

unpacking it…

target := UnpackBits(bitsBuff)

and getting unpacked target:

0x106d84000000000000000000000000000000000000000000000000000000

according to:

max diff for AE is 0xFFFF000000000000000000000000000000000000000000000000000000000000

so we dividing Diff1 to target
0xFFFF000000000000000000000000000000000000000000000000000000000000 / 0x106d84000000000000000000000000000000000000000000000000000000

= 1021254.500749 it’s the real network diff.

at this point we can calculate the network hashrate:

we need block time (values by design) or avgblocktime (the real number)

https://ae.2miners.com/api/stats - we use avgBlockTime for calculations
avgBlockTime: “179.97”

according to Tromp’s post for Cuckoo algorithms
https://www.grin-forum.org/t/on-dual-pow-graph-rates-gps-and-difficulty/2144

hashrate formula for AE will be:

Diff * (42 / avgBlockTime)

1021254 * (42.0 / 179.97) = 238425 GPS

here is golang example for all calculations:

how it works for AE:

http://13.58.177.66:3013/v2/status

this difficulty showing summary difficulty for all blocks.

we getting http://13.58.177.66:3013/v2/key-blocks/current, and looking for “target”
target is 504393092

504393092 is packed difficulty in scientific form.
https://en.bitcoin.it/wiki/Difficulty

unpacking it…

target := UnpackBits(bitsBuff)

and getting unpacked target:

0x106d84000000000000000000000000000000000000000000000000000000

according to:

max diff for AE is 0xFFFF000000000000000000000000000000000000000000000000000000000000

so we dividing Diff1 to target
0xFFFF000000000000000000000000000000000000000000000000000000000000 / 0x106d84000000000000000000000000000000000000000000000000000000

= 1021254.500749 it’s the real network diff.

at this point we can calculate the network hashrate:

we need block time (values by design) or avgblocktime (the real number)

https://ae.2miners.com/api/stats - we use avgBlockTime for calculations
avgBlockTime: “179.97”

according to Tromp’s post for Cuckoo algorithms
https://www.grin-forum.org/t/on-dual-pow-graph-rates-gps-and-difficulty/2144

hashrate formula for AE will be:

Diff * (42 / avgBlockTime)

1021254 * (42.0 / 179.97) = 238425 GPS

here is golang example for all calculations:

1 Like