Bitcoin-Core
如何從 Bitcoin Core 導出 xpub 以在 BTCPayServer 中使用?
我正在使用 Bitcoin Core 0.17,並使用 bitcoin-cli getaddressinfo 方法為給定地址提取 xpub。
這個 xpub 有 66 個字元長,我正在使用需要這個 xpub 的 BTCPayServer,我必須選擇與此相對應的以下地址類型之一:
- P2WPKH
- P2SH-P2WPKH
- P2PKH
我正在嘗試做的事情:我正在嘗試將我的錢包連結到 BTCPayServer,為此他們的管理面板需要輸入 xpub 並且它還要求指定該 xpub/派生方案的確切格式。我不想使用像電子錢包這樣的錢包,所以我通過 bitcoin-cli 創建自己的私鑰
目前這是不可能的,因為比特幣核心使用強化的 BIP32 派生來計算密鑰和地址。此派生方案沒有可讓您公開派生相同密鑰的可用 xpub。
有關更多背景知識,xpub(或擴展公鑰)是由 BIP32 定義的字元串。每個 xpub 都有一個對應的 xprv(擴展私鑰)。從xpub中可以導出大量的子公鑰,其私鑰可以從對應的xprv中導出。這允許在不顯式傳輸所有公鑰的情況下查看大量地址。
缺點是 xpub 派生方案有一個弱點:如果攻擊者知道任何子密鑰和 xpub 的私鑰,他可以計算所有子密鑰的私鑰。由於這個問題,Bitcoin Core 目前不支持與 xpub 兼容的密鑰派生。
隨著描述符錢包的引入,這可能會在未來版本中發生變化,描述符錢包在指定哪些密鑰和地址屬於錢包方面更加靈活。