Bip44
為什麼不在地址 BIP44 中強化密鑰?
意識到 BIP32 的一個弱點:
一個可能不會立即明顯的弱點是,知道父擴展公鑰加上任何從它傳下來的非硬化私鑰等價於知道父擴展私鑰(因此每個私鑰和公鑰都從它傳下來)。這意味著必須比正常公鑰更仔細地對待擴展公鑰。這也是硬密鑰存在的原因,以及它們用於樹中的帳戶級別的原因。這樣,帳戶特定(或以下)私鑰的洩漏永遠不會危及主帳戶或其他帳戶。
如果 BIP44 對更改/內部帳戶仍然存在風險,為什麼 BIP44 在最後 2 個級別使用非硬化密鑰?使用總是硬化的鍵不是更好嗎?
m / purpose' / coin_type' / account' / change / address_index
在這種情況下,變化代表外部/內部鏈。通常,如果那是外部鏈,您可以與各方共享。想像一下,有一個客戶必須經常向您發送比特幣。如果你把
xpub
整個外鏈都給他,他可以自己生成地址,你就不用費心了。它沒有被大量使用,但有時會發生。如果這個派生被強化,外部方就不能為這個鏈派生子密鑰(地址)。僅限手錶的錢包也不是一回事。
BIP44:
常量 0 用於外部鏈,常量 1 用於內部鏈(也稱為更改地址)。外部鏈用於在錢包之外可見的地址(例如用於接收付款)。內部鏈用於在錢包之外不可見的地址,並用於返回交易更改。
在此級別使用公共推導。