Bitcoin-Core

備份期間您會在哪些情況下失去比特幣?

  • January 6, 2017

我從 bitcoin.it 閱讀了這一段,但我沒有完全理解。

錢包包含一個排隊的密鑰池。預設情況下,密鑰池中有 100 個密鑰。池的大小可使用“-keypool”命令行參數進行配置。當您出於任何原因(發送、“新地址”、生成等)需要地址時,密鑰實際上並不是新生成的,而是從這個池中獲取的。將生成一個全新的地址以將池填充回 100。因此,當第一次創建備份時,它包含您所有的舊密鑰以及 100 個未使用的密鑰。發送交易後,它有 99 個未使用的密鑰。在總共 100 次新密鑰操作後,您將開始使用不在備份中的密鑰。由於備份沒有授權花費這些硬幣所需的私鑰,因此從舊備份恢復將導致您失去比特幣

有人可以清楚地解釋這一點,尤其是粗體部分嗎?


注意:由於 Bitcoin Core 現在使用確定性錢包 (BIP32),因此此行為不適用於使用 Bitcoin Core 0.13.0 及更高版本創建的新錢包。它確實適用於使用先前版本創建的舊錢包,這些舊錢包被轉移到新版本的比特幣核心!

當您執行某些操作(通常是發送)時,會生成一個新密鑰。您的備份會預先生成 100 個這樣的密鑰。一旦您需要生成超過 100 個密鑰,您的備份就不再知道新密鑰。這意味著您應該定期執行備份,至少每 100 個事務執行一次。

你不關心交易(這些是線上儲存的)你只需要關心你地址的私鑰,這是儲存在錢包中的唯一重要資訊。

您引用的那篇文件談到了比特幣客戶端中的一項功能,該功能會提前生成 100 個密鑰,因此添加一個新地址會從股票中獲取密鑰。如果您的錢包被銷毀但您有錢包的備份,並且您在某些地址上有一些錢,這些錢是在創建備份之後添加到您的錢包中的,您仍然可以收回這些錢。這就是該功能的重點。

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