Electrum

將資金發送到 ColdCard BIP 32 地址,我如何將它們轉出到不同的地址?

  • March 4, 2022

設置

我購買了一個真正的 ColdCard,驗證了它的真實性,設置了它,備份了我的密鑰和所有這些好東西。然後我想從交易所轉移一些 BTC,但我很偏執,甚至不想將 MicroSD 從我的電腦連接到我的 ColdCard,所以為了獲得將我的 BTC 發送到的地址,我從 ColdCard 做了以下操作:

Advanced -> Address Explorer然後我從 4 個選項中選擇了出現的第一個地址。第一個和第二個地址都以我現在認為的開頭,1這意味著它是“傳統”類型的地址(但當時我不知道)。我選擇的地址(第一個選項)也使用 m/0/0、m/0/1、m/0/2 等的派生路徑,所以我認為這意味著它們是 BIP 32 地址。

現在我確實有一個只用手錶的錢包,它是我在 Electrum 中創建的,只需通過 QR 碼從我的 ColdCard 導入原始地址,這樣我就可以看到我的 ColdCard 的交易。但是,我現在正試圖將它們移到另一個地址,但我正在苦苦掙扎……

問題

問題是,當我從 ColdCard 導出我的 Electrum 錢包時,即使我選擇“舊版”選項,地址也會以派生路徑 m/44'0’/0’/0/0, m/44'0 開頭’/0’/0/1, m/44'0’/0’/0/2 (所以我認為這些是 BIP 44 地址)。

正如我上面提到的,我想花掉這些資金/將它們轉移到另一個錢包,但我現在似乎被卡住了……

由於我從 ColdCard 導出的“Electrum”錢包不包含 BIP 32 地址,因此我無法在該錢包中看到我的交易發送到那些 BIP 32 地址,因此我也無法為這些資金創建未簽名交易 (AFAIK)。

我嘗試從 Electrum 中的僅限手錶的錢包創建一個未簽名的交易,我可以創建一個並將其導出為 PSBT(至少它看起來像一個……我不確定如何獨立驗證它)。不幸的是,當我將該 PSBT 導入 ColdCard 並使用“準備簽名!”時 選項,它無法簽名並出現以下錯誤:

Failure
We require subpaths to be specified in the PSBT

如何使用通過 BIP 32 地址發送到我的 ColdCard 的資金?我需要將我的私鑰載入到 Electrum 中(因此不會被隔離)還是有其他合理的選擇?這非常令人沮喪,我因為沒有先導出 Electrum Skeleton Wallet 而自責……

我的 ColdCard 韌體是3.1.9

我聯繫了 CoinKite 支持,他們非常有幫助。如果您愚蠢到沒有遵循他們在文件中的指導並犯了同樣的錯誤,那麼希望這個解決方案也能幫助您。

要將正確的錢包導入 Electrum(或支持 Electrum 風格錢包的錢包系統,例如 Blue Wallet),請在 ColdCard 上執行以下步驟:

  1. 將您的錢包從 ColdCard 導出為 Electrum 錢包並選擇 Legacy 選項(MicroSD -> Export Wallet
  2. 這會在你的 MicroSD 卡上創建一個名為的 JSON 文件new-wallet.json(或者如果你已經導出了多個錢包,它可能是new-wallet2.json,等等。
  3. 在文本編輯器中打開它new-wallet.json,您將看到如下內容(請注意,我出於隱私考慮對這些值進行了清理,但您可以看到結構):
{
   "keystore": {
       "ckcc_xpub": "xpub<ckcc_xpub value>",
       "xpub": "xpub<xpub value>",
       "label": "Coldcard Import <id>",
       "ckcc_xfp": 1234,
       "type": "hardware",
       "hw_type": "coldcard",
       "derivation": "m/44'/0'/0'"
   },
   "wallet_type": "standard",
   "use_encryption": false,
   "seed_version": 12
}
  1. CoinKite 支持指示我將值從 複製ckcc_xpubxpub(替換它,所以現在兩者都相同),然後也更改derivation"m". 這導致 JSON 如下所示:
{
   "keystore": {
       "ckcc_xpub": "xpub<ckcc_xpub value>",
       "xpub": "xpub<ckcc_xpub value>",
       "label": "Coldcard Import <id>",
       "ckcc_xfp": 1234,
       "type": "hardware",
       "hw_type": "coldcard",
       "derivation": "m"
   },
   "wallet_type": "standard",
   "use_encryption": false,
   "seed_version": 12
}
  1. 然後我將這個錢包導入到 Blue Wallet 中,我可以看到我的交易歷史!

從此時起,您可以按照 ColdCard 文件中的說明在您的錢包應用程序中創建一個 PSBT,在 ColdCard 上對其進行簽名,然後在您的錢包應用程序上完成它。有關這些詳細資訊,請參閱ColdCard 快速入門指南

首先:不,請不要將您的種子/私鑰輸入電子。

您已將資金匯入舊地址。您的資金將是可收回的,儘管它可能需要更多的潛水來做。 本文提到了確切的場景 - 並警告您所做的確切事情。希望這會有所幫助。

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