6

In other words, that there exists a nonce for the block that will result in sha256(sha256(block header + nonce)) hash under the current difficulty barrier number.

  • It would be better, if we could relate block n, in terms of f(block n-1). – vi.su. May 20 '13 at 8:37
  • I agree with some of the comments in the answers that this question is poorly worded. I'm going to submit an edit to what I think he means "how do we know that a block as a valid answer?", but that will essentially be a dup of "bitcoin.stackexchange.com/questions/9933/…" so I will submit a dup close as well. – David Ogren May 24 '13 at 14:56
  • On second thought, this might not be a true duplicate, so I'll just post an answer that covers the gaps between this question (at least with my pending edits) and that one. – David Ogren May 24 '13 at 15:10
4

The clients make use of the Target to determine if a block hash is valid and will be accepted by the network. The Bitcoin wiki states the following:

The target is a 256-bit number (extremely large) that all Bitcoin clients share. The SHA-256 hash of a block's header must be lower than or equal to the current target for the block to be accepted by the network. The lower the target, the more difficult it is to generate a block. [...]

Each hash basically gives you a random number between 0 and the maximum value of a 256-bit number (which is huge). If your hash is below the target, then you win. If not, you increment the nonce (completely changing the hash) and try again.

The current target value can be found here: http://blockexplorer.com/q/hextarget

  • Well, I am asking for mathematical formula that determines the existence of N valid blocks. That miners can find. – user1497250 May 20 '13 at 8:53
  • 1
    Then ask a question in understandable English. – Steven Roose May 20 '13 at 9:07
3

No, there is no way of proving that a hash exists other than actually finding that hash. (i.e. brute force). The existence of a method of being able to predict the result of a hash other than computing the hash would render the hash function cryptographically unsound. (And so we can infer that no mathematician has found such a method for SHA-256).

That said, as discussed in this other Q&A, there are a number of characteristics of a block that are dynamic so it isn't as if an "insolvable" block would actually cause any network problems.

  • do it implies? If sha256 has a unknown flaw, with non "random" data, block can not be solved with current "difficulty"? number of nonces per "diff space" vs expected probability results? – user1497250 Jun 5 '13 at 9:55
  • I am sorry, but I can't understand your English. But I think what you are asking is answered in the other question I linked to. Remember that a block isn't particularly "fixed". The coin base, the transactions, the order of the transactions, the timestamp: these all can change. Even if you could craft a block that is insolvable by using an unknown vulnerability in SHA-256 (and that's a huge if), changing any of those other inputs would result in a different (solvable) block. – David Ogren Jun 14 '13 at 14:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.