Only legacy wallets are supported by this command (code -4) отвечает вам терминал свежей версии кошелька Bitcoin Core на команду импорта приватного ключа importprivkey. Из текста ошибки видно, что команда поддерживает только старые legacy кошельки.
А решение очень простое - использовать другую, сложную и очень не интуитивную, команду для импорта importdescriptors.
Для сравнения...
Импортируем один ключ с тремя разными префиксами (которые копируем из окошка помощи) и получаем три разных адреса в Electrum.
А вот как выглядит точно такой же импорт ключа и точно такая же тройка адресов в Bitcoin Core.
Описание команды в терминале и в оригинальной документации не показывает возможные префиксы. Приходится их гуглить, находить на GitHub перечень префиксов и напрягать извилины для выбора нужного... Потом продолжать гуглить и узнать про вложенность префиксов.
Можно напихать больше данных, например сразу указать метку. Но мне бы не хотелось усложнять. Сложности хватает в том, что параметры в команду подставляются JSON-объектом (это уже боль для не программистов). А метку можно задать мышкой после импорта.
Обратите внимание, что тут вложенный префикс sh(wpkh(ключ))
Подставляете свой ключ... И получаете ошибку не правильного хэша, в тексте которой будет назван правильный (Provided checksum 'не_правильный_хэш' does not match computed checksum 'правильный_хэш'). Подставляете свой правильный хэш (8 символов после решётки) и у вас всё импортируется. Всратый... Зато простой способ с лишним телодвижением... Зато без ручного вычисления хэша.
Показываю как выглядит результат телодвижения с хэшем при экспорте всё того же ключа, только тип адреса в этот раз - самый новый Taproot (префикс tr).
А решение очень простое - использовать другую, сложную и очень не интуитивную, команду для импорта importdescriptors.
Всё сложно
Если сравнивать с импортом в Electrum, где нужно просто добавить префикс типа адреса (префиксы можно подглядеть нажатием кнопки с не влезающим текстом). В Bitcoin Core всё сложно и нет подсказки с префиксами (которые пишутся иначе).Для сравнения...
Импортируем один ключ с тремя разными префиксами (которые копируем из окошка помощи) и получаем три разных адреса в Electrum.
А вот как выглядит точно такой же импорт ключа и точно такая же тройка адресов в Bitcoin Core.
Описание команды в терминале и в оригинальной документации не показывает возможные префиксы. Приходится их гуглить, находить на GitHub перечень префиксов и напрягать извилины для выбора нужного... Потом продолжать гуглить и узнать про вложенность префиксов.
Синтаксис команды импорта
Итак, минимальный синтаксис команды импорта такой...
JSON:
importdescriptors '[{"desc":"префикс(ключ)#хэш","timestamp":"now"}]'
Импорт Legacy
Адрес начинается с единицы. Пример: 1aVuTnZ22if6ruQGPWEvXftRFHQGjraVp
JSON:
importdescriptors '[{"desc":"pkh(KyWKGSvCpGFesNJRTbL3eaib6QH9H9ZzAzskC1QjXFmr5WGz6A48)#4rd0q5zs","timestamp":"now"}]'
Импорт Segwit
Адрес начинается с тройки. Пример: 34kYMg3uNptmXEKi3L1Tea1fuNLjNFsRatОбратите внимание, что тут вложенный префикс sh(wpkh(ключ))
JSON:
importdescriptors '[{"desc":"sh(wpkh(KyWKGSvCpGFesNJRTbL3eaib6QH9H9ZzAzskC1QjXFmr5WGz6A48))#tg8szzjs","timestamp":"now"}]'
Импорт Native Segvit
Адрес начинается с bc1. Пример: bc1qqe2a4csk86t73ecxuvwwzs5vgesnzsulwa22zh
JSON:
importdescriptors '[{"desc":"wpkh(KyWKGSvCpGFesNJRTbL3eaib6QH9H9ZzAzskC1QjXFmr5WGz6A48)#xkymzh6k","timestamp":"now"}]'
Подставляете свой ключ... И получаете ошибку не правильного хэша, в тексте которой будет назван правильный (Provided checksum 'не_правильный_хэш' does not match computed checksum 'правильный_хэш'). Подставляете свой правильный хэш (8 символов после решётки) и у вас всё импортируется. Всратый... Зато простой способ с лишним телодвижением... Зато без ручного вычисления хэша.
Показываю как выглядит результат телодвижения с хэшем при экспорте всё того же ключа, только тип адреса в этот раз - самый новый Taproot (префикс tr).
Последнее редактирование: