Bip32-Hd-Wallets
xpub 和 xprv 洩露時兄弟鍵的後果
假設以下密鑰被洩露:
- 44’/60’/4’/0 擴展私鑰
- 44’/60’/4’/0 擴展公鑰(你可以從上面的私鑰派生出來)
現在使用上面的資訊我們可以推導出這條路徑的私鑰或公鑰:
44’/60’/4’/1
我不認為我們可以導出私鑰,因為要獲得 44’/60’/4’/1 的私鑰或公鑰,我們需要知道路徑的私鑰或公鑰
44'/60'/4'
。但這不是我們可以從上述資訊中計算出來的。我的理解對嗎?
您已經正確解釋了這一點。如果您屬於 path 的子擴展私鑰
m/44'/60'/4'/0
洩露,攻擊者無法從 path 中找出子擴展私鑰m/44'/60'/4'/1
。子私鑰的非硬化派生是
kchild = kpar + hash(Kpar, cpar, i)
. 這裡k
表示私鑰,K
是公鑰,c
是鏈碼,i
是索引號。如果您注意到,索引號位於子密鑰派生的散列函式內。由於散列函式是不確定的,其輸入的微小變化會對輸出產生非常不同的影響。因此,將索引號i
從 0 增加到 1 將產生完全不同的結果,因此無法反向計算。但是,請注意,根據BIP 44推導,賬戶級別之後的索引號表示它是接收還是更改。已洩露的子擴展私鑰(索引 = 0)將充當父私鑰,以派生屬於帳戶 5 的所有接收地址。因此,在您的情況下,從第 5 個帳戶派生的所有接收地址都受到損害**。**