Что происходит, когда я меняю пароль шифрования кошелька Bitcoin-Core

Что произойдет, если я изменю пароль шифрования кошелька Bitcoin-Core? Первый проход утерян навсегда, где он сохраняется — в блокчейне или в файле wallet.dat? Что если зашифровать кошелек с помощью пароля1, сохранить wallet.dat, затем изменить пароль и снова зашифровать его с помощью пароля2 - что произойдет, если я введу первый файл wallet.dat с помощью пароля1 - смогу ли я разблокировать кошелек?

Ответы (1)

Шифрование кошелька Bitcoin Core работает путем шифрования закрытых ключей, хранящихся в файле кошелька. Закрытые ключи шифруются мастер-ключом, который является полностью случайным. Затем этот главный ключ шифруется с помощью AES-256-CBC с помощью ключа, полученного из парольной фразы, которую вы вводите с помощью SHA-512 и EVP_BytesToKey OpenSSL, и динамического количества раундов, определяемого скоростью машины, которая выполняет начальное шифрование.

Теперь первый файл кошелька содержит закрытые ключи, которые были зашифрованы с использованием исходной фразы-пароля. Таким образом, если вы сделали резервную копию этого файла перед изменением парольной фразы, то ваша старая парольная фраза будет работать для разблокировки этого кошелька. Таким образом, вы можете потратить средства, хранящиеся в исходном файле wallet.dat, со старым паролем.

Однако упреждающий пул ключей обновляется, так что любые новые адреса, которые вы запрашиваете после смены пароля, не находятся в старом кошельке со старыми закрытыми ключами. Это означает, что если вы не потратите свои биткойны после смены пароля, любой, у кого есть копия исходного кошелька со старым паролем, все еще может украсть ваш биткойн, если у него есть старый пароль.

Можете ли вы взглянуть на мой другой вопрос и сказать мне, имеет ли это смысл? 10x
@ in7ane на этот вопрос уже дан ответ.