Difficulty
位欄位是目標的唯一表示嗎?
該
bits
欄位是 的緊湊表示target
。例子:
bits: 1d00ffff target: 00ffff0000000000000000000000000000000000000000000000000000 bits: 1cfff00 target: ffff0000000000000000000000000000000000000000000000000000
但這兩個實際上代表的是同一個數字。
int(target) -> 26959535291011309493156476344723991336010898738574164086137773096960
對於上述兩個目標。
bits
是什麼(如果有的話*)*使target
?澄清:
在與數字的正常互動中,這種事情並不重要,因為幾個前導零不會影響我們如何解釋數字。然而,在比特幣中,該
bits
欄位被用作區塊雜湊的一部分。因此,不同的bits
表示會產生不同的塊散列。
簡而言之:不,nBits 編碼不是唯一的(可能有多個 32 位值對應同一個 256 位目標),但網路共識規則要求的 nBits 值是唯一的。
原因是所有計算都發生在目標上,然後將其轉換(使用確定性算法)為 nBits 格式。然後需要該 nBits 值來匹配塊頭中的值。