I'm writing my own software to do the double SHA-256 hashing on my Windows 10 system.
I want to test it on real data, i.e., testnet.
My code can be called from C++, Python, or run as an executable from a command line.
It will take a message header as an input, and try to find a hash that satisfies the level of difficulty.
I expect that my code will be invoked with many such headers before it succeeds, even on testnet. If I understand it correctly, the nodes on the network each receive different versions of the current block (with the extra nonce varying).
So I'm looking for a program that will get current data from the network, feed the message header to my program, try again if not successful, and post the success when successful. I'd like to see that eventually, I will have successfully mined something.
Alternatively, I'd like to access an older block on the network to see if I can duplicate the successful hashing of that block, using the version of the message that was actually solved by the miner. That way, I know that my program should succeed.
Can I get access to test cases which have a known result?
Is there a way I can estimate how many hashing attempt it would take, on average, to solve a hashing problem? I know this will vary over time because of the adjustments to the level of difficulty, but I'd be interested in a ball-park answer for the testnet. If the answer is in days (given the hashing speed of my software), then I might want to abandon attempts to successfully mine with live data and try some other approach.
Here are the first 50 nonce values for bitcoin.
There is no way to know exactly how long hashing would take it's all down to the numbers.
1639830024
2573394689
1844305925
2850094635
2011431709
2538380312
2258412857
1716931356
1397702696
1709518110
4161222679
208296255
2259603767
615369513
2566641720
3591544324
2474926087
4064360242
766824726
1901123894
3592540203
1645155368
1437882917
2969614887
837891875
1555516980
3012316214
2396281646
2688142130
3893691144
716922133
230744328
1076005922
616579874
3890072084
797229870
2244623873
3941073664
1610743848
1902584070
3522947079
3600650283
2093702200
429798192
2771238433
1626117377
2957174816
3759171867
3014810412
1028409902