Block
JSON-RPC getwork 數據欄位
我最近嘗試使用 JSON-RPC 的 getwork 命令,並試圖了解我從中得到了什麼。根據API 呼叫列表 wiki 條目,“數據”欄位應包含要散列的塊數據。
我得到的數據欄位是:
00000001a10bacc7e639d1c69a01014bc5db6f2604b3477a3f273a4e019a232700000000a5942372cc60477c8a276e59c8f1a3f58654ea2f6c4402bf1b18e48455b5b8f64f10868b1c07475200000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000
根據協議對其進行了一些剖析後將產生:
00000001 - version a10bacc7e639d1c69a01014bc5db6f2604b3477a3f273a4e019a232700000000 - prev_block a5942372cc60477c8a276e59c8f1a3f58654ea2f6c4402bf1b18e48455b5b8f6 - merkle_root 4f10868b - timestamp 1c074752 - bits 00000000 - nonce 00 - txn_count of 0? 0000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000 - ??
我得到的數據有問題嗎?如果我使用 -gen 選項執行它,客戶端會做出不同的響應嗎?
根據規範,標頭中的事務數始終為零。該
-gen
選項對getwork
RPC 呼叫沒有影響。我不確定您認為該資訊有什麼問題,但如果只是零交易計數,那總是這樣。如果事實是您只獲得需要散列的標頭,那麼總是這樣。當然
nonce
是 0 因為客戶不知道 nonce 應該是什麼。(這就是挖礦的重點。)