Seed

為什麼使用 bx 從種子到助記符再返回時種子不同?

  • February 20, 2022

從文件中的範例:

$ bx seed | bx mnemonic-new | bx mnemonic-to-seed | bx hd-new

655a1ed2d4fef69bb314198c7327f23c grab special regret prepare urge evidence slush lobster midnight odor wish ketchup 57bae342ae8e69eb63f17ef993a90a59159e0f78114b602bf0ebabfec0e5d086e883c31975bf03f8a47a32853452623094d1303fd0549745db457145e5756582 xprv9s21ZrQH143K43CUCgNp5SmXzg2axQx2P4WupA2zEnKpFM19QfqfdqfpJR3yfzAXZnsHeUaQhWQMwyuqL8DbdeLeCbdMoKNn6pCY4RUn2pK

在 Mastering Bitcoin 中,這裡給出的例子表明它可以追溯到最初創建的種子;這是使用舊版本的 bx 完成的。有人可以解釋範例中第 1 行和第 3 行的種子是如何編碼/相關的嗎?

他們採用了 bip39,其中種子助記符通過密鑰派生函式執行以派生種子。這是不可逆轉的一步。

這裡的根本缺陷是“種子”一詞的多重含義,即使在僅討論 BIP39 時也是如此。

“熵”是 BIP39 起點的更好術語。那麼這個過程的終點應該是“BIP39 數字種子”。

“將熵轉換為 BIP39 助記符。使用該助記符加上(技術上可選但沒有)密碼作為輸入來生成 ​​BIP39 數字種子。BIP39 結束。”

這就是我講故事的方式。

現在,從 *Mastering Bitcoin * 來看這個

可以使用 mnemonic-encode 命令對種子進行編碼:

$ bx hd-mnemonic < 種子 > 單詞 崇拜 重複 視覺 最糟糕 尤其 面紗 英寸 女人 演員 回憶 住 欣賞

然後可以使用 mnemonic-decode 命令對種子進行解碼:

$ bx 助記符解碼 < 單詞 eb68ee9f3df6bd4441a9feadec179ff1

Andreas Antonopoulos 在這裡清楚地使用“種子”來指代熵。所描述的過程不涉及散列或加密“編碼”,它只是表示形式的變化,例如從二進製到十六進制。

除了添加了 N/32 校驗和。

這意味著 256 位的輸入熵是完全可逆的,但最後 8 位達到 264(24 個字 x 11 位)是校驗和過程的結果。

這裡的其他答案所指的不是“熵種子”,而是輸出,即“BIP39 數字種子”,這確實是一種單向推導過程。

我相信該bx mnemonic-decode命令可能僅僅因為它沒用而被刪除,或者至少我想不出一個案例。

我不認為它在向 BIP39 的過渡中停止工作。編輯許多工具將熵轉換為助記符“轉換” - 請參閱<https://iancoleman.app>

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