2

enter image description here

It says that PoW evaluates to an array with the first item being the mix-hash, and the second item being a pseudo-random number. However, from equation 49, it would seem it is the second item, m, which is equal to the mix-hash, and the first item, n, which is the pseudo-random number. Is there something I'm missing here?

2

First of all, please someone corrects me if I am wrong. I will try to clarify some things, but I guess the yellowpaper has some minor errors of this kind. I always prefer and recommend to look at the code.

In section 4.3 we have:

the proof-of-work function (see section 11.5): this evaluates to an array with the first item being the mix-hash, to prove that a correct DAG has been used, and the second item being a pseudo-random number cryptographically dependent on H and d.

Let's see what the yellowpaper says in section 11.5:

PoW-yellowpaper_ethereum

PoW is the proof-of-work function which evaluates to an array with the first item being the mixHash and the second item being a pseudo-random number cryptographically dependent on H and d.

We can see that the equation now is (m,n) instead of (n,m), but the sentence is the same in both parts of the paper. It seems that they copied the sentence from section 11.5 into section 4.3, or vice versa.

Then, we go to appendix J.4 to see how the PoW function works:

yellowpaper_ethereum_2

Then, we need to look up on the code to see what elements are returned from the PoW function (I think this is the function we want):

return digest, crypto.Keccak256(append(seed, digest...))

We can see that the second element is indeed a hash, which seems to be the mixHash. So, I believe the equation 49 is the correct one, but not the sentence which explains it.

In addition, there is an unresolved open issue related to this question on GitHub.

Finally, excuse me if I've made wrong assumptions.

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.