Текущее местоположение: Главная / Командные утилиты и офлайн-восстановление / Текст статьи

Electrum Cash Wallet: продвинутое восстановление скриптами — пошаговое руководство

Electrum Cash Wallet: продвинутое восстановление скриптами — пошаговое руководство

Electrum Cash Wallet, который чаще называют Electron Cash, — это BCH-кошелёк на базе архитектуры Electrum. Когда стандартные способы восстановления не работают, на помощь приходит продвинутое восстановление скриптами: анализ wallet-файла, проверка пароля, восстановление частичной seed-фразы и поиск правильного derivation path. В этом руководстве собран практический подход к advanced script recovery для Electrum Cash Wallet — без онлайн-сервисов, с акцентом на изоляцию среды и сохранность ключей.

Важно: любые операции с seed, приватными ключами и wallet-файлами выполняйте только на изолированном компьютере или в виртуальной машине без доступа к сети. Перед первой командой сделайте несколько копий исходного wallet-файла и никогда не загружайте seed-фразу в облако, мессенджеры или на сомнительные сайты.

Коротко: что именно восстанавливают скриптами

Скриптовый подход нужен, когда ручной импорт в Electron Cash не даёт результата. Обычно он решает пять задач:

  • проверка пароля к зашифрованному wallet-файлу;
  • восстановление seed-фразы Electrum Cash по частично известным словам;
  • определение стандарта мнемоники: нативный Electrum seed или импортированный BIP39;
  • поиск derivation path и первых адресов по известным транзакциям;
  • извлечение публичных ключей и адресов для watch-only проверки без раскрытия приватных данных.

Шаг 1. Соберите исходные данные до запуска скриптов

Чем больше точных вводных, тем меньше пространство перебора. Зафиксируйте в офлайн-документе:

  • версию Electron Cash, которая создавала кошелёк;
  • путь к wallet-файлу, обычно default_wallet в каталоге данных приложения;
  • тип кошелька: standard, imported keys, multisig, BIP39-импорт;
  • количество слов seed-фразы и язык;
  • известные слова и их позиции, если помните хотя бы часть;
  • один или несколько BCH-адресов из истории транзакций;
  • примерную дату первой транзакции и сумму;
  • подсказки по паролю: длина, регистр, цифры, символы, вероятные годы и имена.

Не пытайтесь перебирать seed-фразу в облачных сервисах. Даже обезличенная мнемоника может быть связана с адресами и историей операций.

Шаг 2. Подготовьте изолированное Python-окружение

Для скриптов удобно использовать отдельную виртуальную среду. Если нужна полная изоляция, заранее скачайте wheel-пакеты и зависимости, проверьте контрольные суммы и перенесите их на офлайн-машину.

продвинутое восстановление кошелька BCH

python3 -m venv ec-recovery
source ec-recovery/bin/activate
pip install electroncash

Версия библиотеки electroncash должна быть совместима с версией Electron Cash, создавшей wallet-файл. Для старых кошельков иногда требуется отдельная версия Python или более ранняя ветка библиотеки.

Сценарий A. Проверка пароля к wallet-файлу скриптом

Сначала работайте с копией файла. Скрипт должен только проверять кандидатов пароля и не выполнять сетевые запросы. Ниже приведён псевдокод: названия методов могут отличаться в зависимости от версии Electron Cash.

from electroncash.storage import WalletStorage
from electroncash.wallet import Wallet

def try_password(path, password):
    storage = WalletStorage(path)
    wallet = Wallet(storage)
    wallet.load_keystore()
    if wallet.has_password():
        return wallet.check_password(password)
    return True

for pwd in generate_candidates(base_hints):
    if try_password(wallet_path, pwd):
        print('Пароль найден')
        break

Ключевой элемент — generate_candidates. Не запускайте слепой перебор по миллионам вариантов. Сначала используйте реальные подсказки: любимые годы, имена, клички, паттерны клавиатуры, замены букв на цифры, варианты регистра и окончания. Для сложных случаев можно сгенерировать список кандидатов и передать его в btcrecover, если ваша версия кошелька поддерживается инструментом. Для Electron Cash проверяйте совместимость отдельно или используйте собственную Python-обёртку.

продвинутое восстановление кошелька BCH

Сценарий B. Восстановление частичной seed-фразы Electrum Cash

Сначала определите тип мнемоники. Нативный seed Electron Cash и BIP39 — это разные стандарты. Для нативного seed используйте модуль electroncash.mnemonic; для BIP39 — библиотеку mnemonic. Проверка контрольной суммы отсеивает большинство неверных комбинаций.

from electroncash import mnemonic as ec_mnemonic

m = ec_mnemonic.Mnemonic('en')
for phrase in phrase_variants:
    if m.check_seed(phrase):
        print('Найден валидный seed')

Практическая стратегия: зафиксируйте известные позиции, подставьте слова из официального словаря, проверьте контрольную сумму и только затем переходите к следующему кандидату. Если неизвестны 2–3 слова из 12, перебор ещё реалистичен. Если неизвестно 6 и более слов, без дополнительных подсказок пространство вариантов становится огромным.

Сценарий C. Поиск derivation path и адресов

Даже при наличии seed-фразы кошелёк может показывать нулевой баланс из-за неверного пути. Для BCH чаще проверяют m/44'/145'/0', для старых сценариев — m/0' и другие ветки. Скрипт должен вывести первые 50–100 адресов и сравнить их с известными адресами из истории.

paths = ["m/44'/145'/0'", "m/0'"]
for path in paths:
    for i in range(0, 100):
        addr = derive_address(seed, path, i)
        if addr in known_addresses:
            print('Путь найден', path, i)

Учитывайте gap limit: некоторые кошельки не показывают адреса после длинной серии пустых. Если известен хотя бы один адрес получателя или отправителя, поиск пути становится намного точнее.

Сценарий D. Пароль через btcrecover и собственные правила

продвинутое восстановление кошелька BCH

btcrecover полезен как генератор кандидатов и движок проверки для поддерживаемых форматов. Но не стоит рассчитывать на универсальную совместимость с любой версией Electron Cash. Сначала проверьте формат wallet-файла, затем протестируйте инструмент на копии с заведомо известным паролем. Для GPU-ускорения через HashCat нужен корректно извлечённый хеш; без понимания формата это рискованно и может привести к повреждению данных.

Безопаснее комбинировать подходы: собрать реалистичные кандидаты, применить правила мутаций, проверить их локальным Python-скриптом и только после этого расширять перебор. Все логи и списки паролей храните на зашифрованном носителе.

Продвинутая диагностика: почему скрипт не находит решение

  • Неверно определён стандарт мнемоники: Electrum seed против BIP39.
  • Пропущен BIP39 passphrase или дополнительное слово.
  • Неверный derivation path или слишком маленький gap limit.
  • Кошелёк multisig, и одного seed недостаточно.
  • Wallet-файл повреждён или создан несовместимой версией Electron Cash.
  • Пароль содержит нестандартные символы, которые теряются при копировании.
  • Известные адреса относятся к другому кошельку или другой сети.

Чек-лист продвинутого восстановления Electrum Cash Wallet

  1. Сделайте резервные копии wallet-файла и журнала действий.
  2. Изолируйте машину от сети и отключите синхронизацию папок.
  3. Зафиксируйте версию Electron Cash и тип кошелька.
  4. Проверьте пароль на копии файла, а не на оригинале.
  5. Определите стандарт seed-фразы до перебора слов.
  6. Начинайте с известных адресов и вероятных derivation path.
  7. Ограничьте перебор реалистичными правилами и подсказками.
  8. Ведите офлайн-лог, чтобы не повторять неудачные гипотезы.

Профилактика вместо срочного восстановления

Лучший сценарий — тот, где восстановление не требуется. Делайте несколько резервных копий seed-фразы на разных носителях, используйте металлические пластины для долгого хранения, проверяйте восстановление на тестовой сумме и храните пароль отдельно от seed. Для BCH-кошельков Electrum Cash полезно заранее записать версию приложения, derivation path и тип мнемоники.

Если после диагностики становится понятно, что нужен более глубокий разбор, на сайте «Восстановление криптокошельков» (/) собраны проверенные методики для BTC, ETH и BCH, включая Electrum Cash Wallet. Материалы помогают систематизировать шаги, избежать опасных онлайн-сервисов и выбрать между ручным восстановлением и аккуратным скриптовым подходом.