Protocol

池getwork“目標”?

  • March 17, 2012

在 getwork 請求中,bitcoind 發送一個與目前塊的比特值相對應的目標。主要礦池發送的目標是否與人們對比特幣的預期相同,“1”目標的難度,或者其他什麼?

我剛剛啟動了一個連接到slush’s pool的礦工。我的getwork礦工發送的回復是這樣的:

{"id": "1",
"result": {"hash1": "00000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000010000",
           "data": "00000001c5993e03c08cea1b78a2190865f68698c069a8033d60e5e70000082a00000000e0884a966424aac62b4997dc0bae1c60fab2ba12887fa842f07c9cacaf24b4534f3b53931a0c290b00000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000",
           "midstate": "390b85042008bac15b6ce310d791c8612610a0c5ee441b252ee6abee70bf742a",
           "target": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000"
          },
"error": null
}

它給我的目標是 64 個十六進制數字長。這大約是 2^256,因此大於2^(256-32)-1 的最大目標。然後我意識到目標是’little-endian’,這意味著它是逐字節向後的。反轉它給出:

00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff

這恰好是最大目標 2^(256-32)-1。

所以 slush 的池子至少要求我解決難度 1 的塊。

我知道P2Pool將難度設置得更高,因此 P2Pool 共享鏈上的共享大約每 10 秒就會被找到一次。目前為了實現這一點,它很難完成工作609.82,但它會根據最近找到 P2Pool 共享的速度每隔幾秒更改一次。

編輯:我剛剛檢查過,結果我錯了。這是getwork我正在執行的 P2Pool 實例中的一個:

{"error": null,
"jsonrpc": "2.0",
"id": 0,
"result": {"hash1": "00000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000010000",
           "target": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000",
           "submitold": true,
           "identifier": "15578",
           "data": "000000011e90271e3071e27e4b16142162e54a68776176deeef5fe6e000001a800000000534e460eb3798f9d4149c56dddf486610512007201745fefd7661cedbde821fa4f3b5c461a0c290b00000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000",
           "midstate": "acb6f89399060ab343bbd17e3a6cccb89c2211af189bec8da15284a1d5e87b29"
          }
}

請注意,目標與 slush 的池中的目標相同。它代表難度為 1。因此礦工認為它正在尋找難度為 1 的份額,但 P2Pool 拒絕礦工送出的任何難度小於 的份額609.82,或當時礦池的難度。

引用自:https://bitcoin.stackexchange.com/questions/2925