Difficulty
為什麼目標以緊湊的形式儲存在塊頭中?
為什麼目標轉換為“Bits”而不是完整儲存在塊頭中?
例如,為什麼:
{ "hash" : "000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506", "height" : 100000, "bits" : "1b04864c", "difficulty" : 14484.16236123, }
並不是:
{ "hash" : "000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506", "height" : 100000, "target" : "000000000004864c000000000000000000000000000000000000000000000000", "difficulty" : 14484.16236123, }
是為了節省空間嗎?
如果不出意外,您的演繹會更長,整個標頭只有 80 個字節長。“位”的編碼是歷史的,是 0.1.0 預發行版客戶端遺留下來的。標頭中還有其他可以更好地編碼的東西(nonce 應該更長,並且版本讀取為位域而不是 int,並且 aux merkle root 會很好),但實際上並沒有很好由於目前形態背後的慣性量,有理由改變任何東西。