Title: hashing question Post by: crash893 on June 15, 2011, 05:55:11 AM Sorry this may have been published before but i was just curious
as i understand it the the 0000hash = (block data + random data) to get the correct hash (in this case with the N amount of leading "0") is that random (like a salt but im not sure if it is called a salt) data coordinated in anyway with other users is the salt generatoed randomly or is it brute force any information would be great Title: Re: hashing question Post by: fonzo on June 15, 2012, 11:40:36 AM I believe the number or preceeding 0s is set according to the required difficulty to achieve a roughly 10 minute interval.
In terms of salt, it's a bit like hashing the transaction data with millions of different salts until you achieve an output with n preceeding 0s. https://en.bitcoin.it/wiki/Difficulty Title: Re: hashing question Post by: riX on June 15, 2012, 11:43:59 AM If you're thinking about coordinating the nonce with other users to not calculate the same hashes, it is not needed, since you have different block data (the address the reward is payed out to).
Title: Re: hashing question Post by: Meni Rosenfeld on June 15, 2012, 11:45:16 AM The nonce ("random data") is incremented sequentially from 0 to 2^32-1. There's also an extraNonce in the coinbase transaction, which I believe is also incremented sequentially.
Some data is chosen randomly by each miner (such as the payout address of the coinbase transaction) and affects the Merkle root which is also part of the hashed data. Title: Re: hashing question Post by: tevirk on June 16, 2012, 03:57:57 PM Note that with the GPU hardware most miners use, scanning the whole 2^32 range of nonce values takes a matter of seconds. Mining software will scan the whole range looking for a valid hash for the block and then increment the timestamp or reorder some transactions so it can try again.
Title: Re: hashing question Post by: Nolybab on June 16, 2012, 08:47:18 PM Note that with the GPU hardware most miners use, scanning the whole 2^32 range of nonce values takes a matter of seconds. Mining software will scan the whole range looking for a valid hash for the block and then increment the timestamp or reorder some transactions so it can try again. Why would the miner increment the timestamp or reorder to try again? Once they get a valid hash for a block, wouldn't they just want to simply claim the 50 coins and move on? Title: Re: hashing question Post by: Meni Rosenfeld on June 16, 2012, 08:53:51 PM Note that with the GPU hardware most miners use, scanning the whole 2^32 range of nonce values takes a matter of seconds. Mining software will scan the whole range looking for a valid hash for the block and then increment the timestamp or reorder some transactions so it can try again. Why would the miner increment the timestamp or reorder to try again? Once they get a valid hash for a block, wouldn't they just want to simply claim the 50 coins and move on? |