Mining

帳戶隨機數和塊隨機數有什麼區別?

  • June 20, 2019

塊和帳戶都使用稱為“nonce”的值,但它們似乎代表了非常不同的東西。

  • 對於帳戶,我理解 nonce 是一個整數,表示該帳戶創建的交易數量,以防止交易重播。
  • 對於塊,我知道它是一個 64 位的值,結合混合雜湊,證明建構塊所需的計算工作已經完成。

如果我的理解是正確的,您是否有更多關於如何計算這個塊隨機數的資訊?也許為什麼它與帳戶 nonce 的名稱相同,即使它們不是同一個東西?

您對這兩個隨機數的理解都是正確的。

區塊隨機數是礦工不斷更改以計算工作量證明的解決方案(在乙太坊中,它是Ethash)。礦工可能從 0 值開始(所有位都設置為 0),然後不斷將其遞增 1,直到找到解決方案。

nonce的定義是“僅發生、使用或製作一次或用於特殊場合”。塊的隨機數非常符合定義:相同的隨機數很少在其他塊中有效。

加密隨機數是一種防止重放攻擊的技術,並且與帳戶隨機數的目的相匹配。然而,跨區塊鏈分叉的重放攻擊表明,賬戶隨機數不足以防止跨叉重放。

引用自:https://ethereum.stackexchange.com/questions/72042