Cryptography

BIP32 建議使用 256 位種子。為什麼大多數比特幣錢包只使用 128 位種子?

  • May 26, 2018

根據 BIP32 的“主密鑰生成”部分,“建議使用 256 位”。

見<https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#Master_key_generation>

為什麼 BIP32 認為 256 位是推薦的種子大小,為什麼這麼多比特幣錢包實現的作者認為 256 位是不必要的?

3個數字的原因:

  • 比特幣使用 256 位 ECDSA 簽名。這些需要大約 2 128個步驟才能從已知的公鑰中找到私鑰。這是比特幣的安全級別:我們的目標是始終要求攻擊者執行2128步。如果種子的熵少於 128 位,這不可避免地會導致更快的算法,攻擊者可以在不到 2128 步內簡單地遍歷所有可能的種子。因此,BIP32至少需要 128 位的熵
  • 當種子的熵小於 256 位(但大於 128)時,生成的密鑰也將具有小於 256 位的熵。由於橢圓曲線密碼術使用完整的 256 位密鑰(儘管攻擊者比在 2 128步中破解它更快),BIP32 還推薦 256 位熵
  • BIP32 中的私鑰和鏈碼(“擴展私鑰”)的組合大小為 512 位。因此,使用熵超過 512 位的種子不可能進一步提高安全性——它只是被丟棄的資訊。因此,BIP32 將種子限制為最多 512 位熵

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