從子密鑰或兄弟密鑰中檢索擴展私鑰
我瀏覽了有關此主題的各種問題和答案,但找不到我的答案。
自從呼叫encryptwallet導致比特幣軟體崩潰後,我無法訪問我的錢包。我使用 github 上的所有工具以及我編寫的一些工具進行了多次掃描。
我的錢包包含 4 個主密鑰(m 路徑),其中 2 個可以用錢包的密碼解密,包含 1500 多個地址。使用密碼只能解密大約 200 個。
我通過使用sethdseed函式將它們導入比特幣核心,找到了這兩個解密的主密鑰的xpriv 。
我在投資組合的十六進制鏈中發現了 20 個未加密的地址,因此我知道其中的私鑰、加密密鑰、發布密鑰和推導。
我找不到任何方法來找到其他兩個 masterrkey 的 xpub,這將使我能夠找到所有其他私鑰。鏈碼失去,無法在 wallet.dat 中找到。
我嘗試修改比特幣程式碼以根據與 WIF 密鑰導入相同的邏輯進行轉換,但沒有成功。
我的問題是:
- 有沒有辦法像我對私鑰一樣轉換公鑰?
- 我可以找到具有已恢復的私鑰數量的兄弟密鑰嗎?
- 你有其他方法可以收回我的資金嗎?
我期待著豐厚的回報。謝謝你
根據您的說法,無法恢復這些私鑰。
Bitcoin Core 的錢包不儲存 xpubs,甚至 xprvs。它根據需要從種子中派生私鑰。此外,對於您使用的錢包類型,Bitcoin Core 僅使用硬化派生,因此您所指的漏洞不適用。
此外,聽起來您的錢包處於不應該發生的狀態。比特幣核心的錢包加密是專門為避免錢包中同時包含加密和未加密數據而編寫的。如果加密失敗,它應該會崩潰,這應該會迫使數據庫恢復到以前的狀態,而沒有加密。可能是您只查看數據庫文件,而不查看可以包含其他數據的數據庫日誌(儘管應該是日誌包含加密數據,而數據庫只包含送出的內容,如果它崩潰了,那麼數據沒有送出)。
但是,如果您正在查看帶有日誌的數據庫,那麼您可能還會在未送出狀態下查看它,並且未加密的密鑰實際上並沒有被刪除,只是隱藏起來,因為它們被標記為刪除,但尚未真正刪除。