|
January 13, 2014, 05:19:00 AM |
|
I am new to primecoins (and more generally crypto currencies) and have a few questions:
A) I am trying to understand how to get the block header hash from a given primecoin block.
For example, using primecoind, I can get block info:
./primecoind getblock b56ce048d64313380d2a947cbb99bda97825646d89c6fd4222d154fc7f145bdd { "hash" : "b56ce048d64313380d2a947cbb99bda97825646d89c6fd4222d154fc7f145bdd", "confirmations" : 347122, "size" : 198, "height" : 10000, "version" : 2, "merkleroot" : "478aa31ca6011384884c60a5a3c864475640dfa546be26631f1cc58366b3d2ad", "tx" : [ "478aa31ca6011384884c60a5a3c864475640dfa546be26631f1cc58366b3d2ad" ], "time" : 1373505507, "nonce" : 627, "bits" : "07a62bc2", "difficulty" : 7.64910519, "transition" : 7.97894430, "primechain" : "TWN07.ecf7e1", "primeorigin" : "3137429839290119515389894171750697301735643977360059424820833454775626872284966 6432245972690", "previousblockhash" : "835228e99c1617650f8d72a3167fc92a8a3cf4bebcf60860a645d5b5309f8f87", "nextblockhash" : "54d6ec1f98ba10f897f7d8ea0991a042438f38b066702fc53fa05b52f93c3525" }
My understanding (?) is that the primeorigin should be divisible by the `block header hash' of the previous block. But how do I determine the block header hash? I don't think it is the " "previousblockhash" which, in this example, is "835228e99c1617650f8d72a3167fc92a8a3cf4bebcf60860a645d5b5309f8f87" because when I convert this hex string to decimal I don't get a number that divides the given primeorigin.
B) I am also after a more detailed description of the primecoin specs. Sunny King's paper is very broad and not at the level that describes the particulars of implementation. For example, for the Cunningham prime chains, would the primecoin network accept any prime chains where the origin is *any* multiple of the block header hash (so long as the other requirements such as difficulty, size of primes etc are satisfied)? I noticed that primorials are built into the multiple in primecoind's search for prime chains, but I am guessing that it is not an actual requirement.
C) Also, I am trying to reverse engineer how primecoind searches for Cunningham chains. Can anyone point me to documentation or a description of the actual implementation.
D) Finally, what precisely do primespersec and chainsperday refer to here: ./primecoind getmininginfo { "blocks" : 357131, "chainspermin" : 5, "chainsperday" : 0.02283714, "currentblocksize" : 4614, "currentblocktx" : 5, "difficulty" : 10.38302714, "errors" : "", "generate" : true, "genproclimit" : -1, "primespersec" : 854, "pooledtx" : 5, "sieveextensions" : 9, "sievepercentage" : 10, "sievesize" : 1000000, "testnet" : false }
Thanks in advance for your help.
|