Author: solar 2011-09-29 12:49:46
Published on: 2011-09-29T12:49:46+00:00
The original CPU miner for Bitcoin was implemented locally and did not use any libraries. The SHA2 algorithm can be implemented easily without OpenSSL or other large libraries. Since the brute force value is in the second half of the block, the first half never needs to be recalculated. The OpenCL miner's prototype shows the calculations for block1 and block2. BitcoinJS uses OpenSSL to calculate midstate, as seen on its GitHub page. The getwork "midstate" field is redundant and can be easily calculated from the blockheader, according to a message by Nils Schneider. Schneider wants to simplify the internal reference miner and remove all dependencies on cryptopp, which is only used to calculate midstate. A pull request has been made to mark midstate (and hash1) as deprecated. John Smith is doubtful about depending on two crypto libraries when OpenSSL does perfectly well. However, losing compatibility with miners is not ideal. Schneider wonders where such a change should be announced so that all miners can be upgraded.
Updated on: 2023-06-04T20:10:45.007588+00:00