Ethereum-кошелек не синхронизируется, долго синхронизируется: что делать

Что делать если кошелек для криптовалюты завис

Иногда цифровые кошельки теряют соединение с сетью. Некоторое время приложение работает исправно, но в один прекрасный день отправленные монеты не отображаются на балансе. Не стоит впадать в панику, если в блокчейн–обозревателе деньги засчитаны на ваш адрес, нужно всего лишь исправить соединение с сервером. Почему не синхронизируется кошелек и как с этим бороться мы вам сейчас и расскажем.

  • 1 Синхронизациякошелька
  • 2 Синхронизациябиткоин кошелька
  • 3 Почему кошелек Эфириум долго синхронизируется — причина
    • 3.1 Интернет
    • 3.2 Ошибкав блокчейн цепочке
  • 4 Обновлениекошелька, добавление узлов
  • 5 Заключение

Синхронизациякошелька

Цифровойбумажник не содержит монет, он предоставляет доступ к управлению вашей долейраспределенного реестра. Но, для этого кошелек должен взаимодействовать состальными узлами сети.

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

Искать историю операций того или иного узла сети методом перебора данных в блокчейне большого размера неэффективно. Нужно оптимизировать запросы с помощью специальных узлов, которые являются надстройками над основной сетью. Таким образом, работают сервисы blockchain explorer . Методы синхронизации криптокошелька зависит от типа приложения. Рассмотрим их на примере биткоин-клиентов.

Синхронизациябиткоин кошелька

Существует 3 варианта взаимодействия криптобумажника с экосистемой.

  1. Загрузка блокчейна жесткий диск. В вашем кошельке есть встроенный модуль, содержащий полную копию распределенного реестра. Такой кошелек представляет собой полную ноду связанную с другими узлами. Поскольку в системе постоянно совершаются транзакции и добавляются новые блоки кошелек должен регулярно обновлять данные о состоянии цепочки. Разработчики криптовалюты периодически проводят софт-форки и если ваш кошелек вовремя не обновить, он не сможет синхронизироваться с блокчейном и будет отображать данные не корректно. Иногда случается так, что файрвол на роутере отсекает исходящие соединения из локалки на нестандартных портах или брандмауэр блокирует соединение кошелька с сетью. В таком случае проверьте настройки, и добавьте кошелек в список исключений брандмауэра и антивируса. Попробуй также с live usb флешки на линуксе запустить кошелек.
  2. Подключение к доверенному узлу. Такой вариант работы с блокчейном менее надежен, зато менее требователен к вычислительным ресурсам. Ваш кошелек подключается к удаленной ноде, возлагая на нее проверку транзакций и синхронизацию с остальной сетью. Не нужно загружать всю цепочку блоков. Однако если канал передачи данных между кошельком и сервером не достаточно надежен появляется угроза атаки Man in the middle. При отказе доверенного узла bitcoin wallet не синхронизируется с сетью. Необходимо подключиться к резервной ноде, если, конечно, такой вариант предусмотрен разработчиками утилиты. Данный способ синхронизации широко используется на мобильных и веб-кошельках, поскольку, потому что он позволяет и верифицировать транзакции, и упрощает работу приложения.
  3. Использование SPV-узла. Облегченный узел сети Simplified Payment Verification напрямую работает с определенной группой нод, обмениваясь с ними p2p сообщениями. SPV-нода не требует загрузки полной копии блокчейна на жесткий диск. Кошелек получает только заголовки блоков необходимые для обработки конкретной информации. В заголовке каждого криптоблока присутствует поле Merkle Root, в котором записана хеш-сумма всех включенных транзакций. Для ее расчета используется схема Merkle Tree, дающая возможность проверить хеш конкретной операции, при условии, что кошелек будет синхронизирован с полными нодами .

Почему кошелек Эфириум долго синхронизируется — причина

Перейдем теперь к кошелькам Ethereum. Чаще всего используется кошелек MEW . Он представляет собой веб-интерфейс, работающий с блокчейном. Клиент получает доступ к цифровым активам путем взаимодействия с доверенным узлом сети с помощью приватных ключей.

Интернет

Кошелек ethereum не синхронизируется при отсутствии подключения к интернету. Важно позаботиться о безопасности соединения. Убедитесь, что вы не вошли на фишинговый сайт иначе потеряете деньги. На базе экосистемы эфириума работает много других монет и токенов.

Важно! Чтобы ethereum wallet синхронизировался с блокчейном другой криптовалюты, работающей на алгоритме Ethash , измените настройки доверенного узла.

Ошибкав блокчейн цепочке

Блокчейн ETH весит меньше, чем цепочка блоков биткоина, но все же его размер превышает 260 GB. Если на жестком диске недостаточно места кошелек не синхронизируется.

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

Обновлениекошелька, добавление узлов

Кошелек не будет синхронизироваться с сетью, если попадет на боковое ответвление. Такая проблема случается если вы работаете на устаревшем ПО. Войдите на официальный сайт разработчиков или на сервис GitHub, чтобы обновить версию программы. По завершении откройте blockchain explorers и сравните количество блоков в копии блокчейна вашего кошелька и число блоков в проводнике.

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

Альтернативный способ ресинхронизации.

  • Закройте программу.
  • Войдите на диск «С», далее переходим в папку администратора и наберите в строке поиска AppData/ Roaming.
  • Удалите папку с названием кошелька и очистите корзину.
  • Запустите Ethereum Wallet и не закрывайте до окончания загрузки блокчейна иначе он переключится в замедленный режим синхронизации.

В Linux или Mac OS будет другое месторасположения папки кошелька. Если полный узел не синхронизируется необходимо ее найти и полностью удалить с компьютера. Медленный или убитый жесткий диск можно заменить SSD соответствующего объема и переустановить кошелек на данный носитель. Но стоит это недешево.

Читайте также:
Как создать кошелёк для криптовалюты Эфириум Классик?

Заключение

У топовых криптовалют проблемы с кошельками случаются не так уж часто. Главное, выбрать надежное приложение и всегда иметь доступ в интернет.

Ethereum-кошелек не синхронизируется, долго синхронизируется: что делать

  1. Что такое синхронизация
  2. Почему кошелек Эфириум долго синхронизируется — причина
  3. Очень долгая синхронизация — как избежать, нюансы установки
  4. Как синхронизировать кошелек Ethereum — варианты
  5. Что делать, если кошелек Ethereum не синхронизируется — выводы

Синхронизация кошелька Ethereum — процесс, подразумевающий загрузку полной цепи блокчейн криптовалюты при установке официального кошелька на компьютер. С каждым днём размер базы увеличивается, что только усугубляет проблему и заставляет пользователей искать эффективное решение.

Согласно данным из сайта bitinfocharts.com, на 25 августа 2018 года полный размер blockchain Эфириума составляет 667,1 Гб. Это солидный объём, загрузка которого даже при быстром Интернете займёт много времени. По заявлению пользователей, скачать весь блокчейн удаётся не всегда. Как быть, если кошелек Ethereum не синхронизируется? Какие методы использовать для решения этой проблемы? Что говорят опытные пользователи криптовалютной сети? Обсудим эти вопросы подробно.

Что такое синхронизация кошелька Эфириум?

Первый блок криптовалюты Ethereum получен более 3-х лет назад — 30 июля 2015 года. Именно тогда началась эпоха популярной монеты, которая на 25 августа 2018 года занимает вторую строчку после Биткоина по капитализации (28,669 млн долларов). Многие инвесторы считают Эфириум одним из лучших инструментов для вложений, что и объясняет его популярность. Одним из главных факторов является цена, которая на 25.08.2018 года составляет 282,36 доллара, но имеет хорошие перспективы для роста в будущем.

Для накопления средств пользователи используют кошельки, которые бывают нескольких видов:

    Десктопные — работают на компьютере пользователя, делятся на «толстые» и «тонкие». В первом случае происходит синхронизация кошелька Эфириум и скачивание всей цепочки блоков криптовалютной сети (пример, Ethereum Wallet), а во второй — этого процесса удается избежать (Jaxx, Exodus).

Мобильные — бумажники, которые имеют вид приложений и устанавливаются на телефон пользователя. Здесь не происходит загрузки цепи blockchain, но уровень надежности значительно ниже.

Онлайн-хранилища. Особенность кошельков в том, что они находятся на специальных сервисах в Интернете. Такой вид хранения удобен, но имеет меньший уровень безопасности (пример — MyEtherWallet).

Аппаратные бумажники — специальные устройства, предназначенные для длительного хранения криптовалюты. Отправка и получение монет возможны после подключения к компьютеру (Trezor, Ledger).

  • Бумажные кошельки — тип хранилища, в котором приватный ключ отражается на бумаге. Особенность такого бумажника заключается в надежной защите денег от злоумышленников в Сети.
  • Для получения максимальной безопасности и удобства применения криптовалюты пользователи, как правило, выбирают официальное хранилище Эфириум, которое называется Ethereum Wallet. Именно при его создании происходит загрузка всей цепочки блокчейн.

    Клиент Ethereum Wallet — официальный бумажник, предназначенный для хранения Эфира. Он создан и поддерживается разработчиками виртуальной монеты, что и объясняет повышенную надежность (если сравнивать с другими бумажниками).

    «Толстый» кошелек Ethereum Wallet работает на основных ОС, среди которых Linux, Windows и Mac OS. Платить за программу не нужно — она доступна к скачиванию всем пользователям Сети. После инсталляции личные ключи пользователей находятся на компьютере, что гарантируют высокий уровень защиты от злоумышленников. Единственный минус — большой размер цепочки блокчейн. Как результат — очень долгая синхронизация кошелька Эфириум. Перед установкой бумажника на ПК важно позаботиться, чтобы на нем было необходимое пространство (лучше с запасом).

    Почему кошелек Эфириум долго синхронизируется — причина

    При первом входе в официальный кошелек запускается процесс синхронизации — скачивания всех блоков цепи, которые сформировались в период существования виртуальной валюты Ethereum. На 25 августа 2018 года эта информация занимает более 667 Гб, что является солидным показателем даже для современных компьютеров. При наличии в распоряжении ПК старого образца с небольшим жестким диском (до 250–500 Гб), кошелек Эфириума не синхронизируется вовсе. Вот почему перед установкой «толстого» бумажника важно проанализировать возможности ПК и убедиться в том, что свободного места достаточно.

    Даже при наличии необходимого объема скачивание блоков может занять долгое время — до нескольких недель. В такой ситуации пользователи вынуждены решать проблему. Здесь доступно несколько вариантов:

    • Отказаться от установки «толстого» кошелька в пользу менее надежных «тонких» бумажников или онлайн-хранилищ.
    • Использовать специальные методики, позволяющие ускорить синхронизацию.

    Первый вариант наиболее прост, но его выбор заставляет жертвовать главным фактором — безопасностью хранения криптовалюты. Известно, что полный узел архива осуществляет синхронизацию blockchain путем загрузки на ПК всей цепи. При этом майнеры скачивают имеющийся архив, что позволяет им участвовать в добыче виртуальной монеты. Кроме того, наличие полной цепочки на компьютере обеспечивает безопасность проведения транзакций.

    Если выбрать «тонкий» кошелек, полная цепь не грузится. Качаются только файлы-заголовки из блока первичного состояния. Благодаря связи «тонких» узлов с заголовками элементов цепи, они способы создавать, а также передавать важную информацию. Речь идет о транзакциях, происходящих событиях, объеме виртуальных монет на счету пользователя и так далее.

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

    Читайте также:
    Одновременный майнинг Эфириума и Zcash

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

    Пользователи отмечают, что из-за большого размера блоков Эфириум скачивание всей цепочки блоков может занять 1–3 недели. Чтобы избежать трудностей, желательно иметь, как минимум, 4-ядерный компьютер и жесткий диск типа SSD. При наличии ПК с устаревшей начинкой кошелек Ethereum долго синхронизируется или этого не происходит вовсе (даже при быстром Интернете).

    Если нет уверенности в своем компьютере и необходимости дополнительной защиты, лучше не применять Ethereum Wallet. Высокий уровень приватности обеспечивают и другие («тонкие») бумажники, поэтому в загрузке блоков часто нет необходимости. Как вариант, можно использовать Jaxx. Такой клиент не загружает весь блокчейн, поэтому его можно применять сразу после инсталляции на ПК.

    При желании защитить кошелек с монетами Ethereum лучше использовать оффлайн-хранилища, которые упоминались выше. Речь идет о специальных гаджетах или бумажных кошельках. Они обеспечивают «холодное» хранение без подключения к глобальной сети.

    Чтобы устранить проблемы с загрузкой blockchain, разберем тонкости установки бумажника. Алгоритм следующий:

      Переходим на сайт ethereum.org и скачиваем бумажник на компьютер. Все варианты программ находятся по ссылке github.com/ethereum/mist/releases.

    Устанавливаем программу, следуя подсказкам.

    Выбираем сеть для работы бумажника — тестовая или основная. Первый вариант подойдет для новичков, которым необходимо разобраться в тонкостях работы бумажника.

    Придумываем пароль (изменить его в будущем не получится, поэтому действуем наверняка). Комбинация должна быть максимально сложной. Рекомендуется использовать разные регистры, буквы и цифры.

  • Ожидаем загрузки блоков. Система показывает, сколько времени синхронизируется кошелек Эфириум, но этот показатель приблизительный. Скорость зависит от ряда факторов — Интернета, типа жесткого диска (SSD или HDD), числа ядер процессора и так далее.
  • Только после полной загрузки можно пользоваться бумажником, получать и переводить криптовалюту другим пользователям. При этом трудности возникают с последним пунктом установки.

    Как синхронизировать кошелек Ethereum — варианты

    Рассмотрим несколько проверенных способов, как синхронизировать кошелек Ethereum без больших задержек по времени.

    Способ №1 — полная переустановка

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

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

      Закрываем бумажник, который долгое время не может загрузить цепочку блокчейн.

    Входим в системный диск «С», далее переходим в папку пользователей и в администраторскую папку.

    Находим AppData. Это папка часто скрыта от посторонних глаз. Если это так, для начала делаем ее видимой. Для этого идем в меню пуск и управленческую панель, входим в параметры папок, а во вкладке видов и дополнительных параметров выбираем нужный пункт. В нем разрешаем показывать скрытые документы (ставим галочку»), после чего подтверждаем свое действие.

    Закрываем все приложения, которые связаны с Эфириумом. Интернет-страницы можно оставить открытыми.

    Входим в AppData (должна стать видимой) и находим Roaming. В ней должна быть папка с наименованием бумажника Эфириум. Внутри файл chaindata. Если он там, удаляем или переименовываем его. Первый вариант надёжнее. Не нужно переживать, ведь в случае полного уничтожения файлов после входа содержание восстанавливается. Чтобы исключить риск, папку chaindata можно переместить в другое место и поменять название.

    Возвращаемся в AppData и находим Local. Если там имеется папка с наименованием бумажника, удаляем и ее. Очищаем корзину.

    Запускаем кошелек Ethereum Wallet через пользовательский интерфейс (применение командной строки для решения этой задачи нежелательно).

    Ожидаем, пока закончится синхронизация. Если описанные действия выполнены правильно, после перезапуска процесс скачивания занимает меньше времени (при условии быстрого Интернета и наличии достаточного места на ПК). Факт ускорения загрузки можно заметить визуально.

  • Оставляем кошелек открытым до скачивания всех блоков. Если выйти или перезапустить программу, система снова переключится на медленную синхронизацию. В этом случае придется вновь проходить описанный выше процесс.
  • Способ №2 — использование SSD

    Если кошелек Эфириум долго синхронизируется, можно использовать альтернативное решение — приобрести ПК с SSD или установить такой тип жесткого диска на имеющийся ПК (по возможности). Анализ синхронизации блокчейна показывает, что при загрузке цепи винчестер не справляется с обязанностями и тормозит процесс. Это связано с тем, что стандартный HDD не может записывать данные с той скоростью, с которой они поступают с Интернета. Чтобы решить эту проблему, устанавливается SSD — твердотельный накопитель, способный быстрее записывать информацию.

    Что делать, если кошелек Ethereum не синхронизируется — выводы

    Практика показывает, что решений, позволяющих ускорить загрузку цепочки блокчейна в сети Эфириум, не так много. Все они сводятся к нескольким способам — перезапуску синхронизации, установке SSD, использованию более мощного ПК или выбору другого («тонкого» или онлайн) кошелька. Для большинства пользователей подойдет последний вариант, ведь он не требует дополнительных затрат, а уровень защиты Эфириума остается высоким. Чтобы максимально защитить накопления, всегда можно использовать аппаратные или бумажные кошельки, о которых упоминалось в статье, а небольшие транзакции приводить с применением «тонких» хранилищ.

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

    Читайте также:
    Эфириум краны для Фаусетхаб: что это

    Как ускорить синхронизацию Bitcoin, Ethereum и других кошельков?

    Хранить криптовалюты и управлять своими монетами лучше через клиентские программы. Их сейчас создано много, они практически не отличаются.

    Загружаются и устанавливаются стандартно, но почти все новички интересуются, как долго ждать полной синхронизации. Иногда она затягивается на несколько дней.

    Как ускорить синхронизацию Bitcoin, Ethereum и других кошельков? Скорость зависит от того, насколько у вас быстрый интернет.

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

    Синхронизация – загрузка блоков

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

    Блоки скачиваются за несколько месяцев, а иногда и за несколько лет, которые существует криптовалюта. Интерфейс везде разный, но выглядит процедура синхронизации одинаково:

    Кто-то решает эту проблему созданием мультивалютных кошельков через биржи, некоторые открывают онлайн кошельки или загружают «лёгкие» версии клиентских приложений. Но в них не всегда доступны малоизвестные криптовалюты, поэтому приходится скачивать весомые программы.

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

    На данный момент, блокчейн биткоина уже занимает больше 110 Гб., поэтому синхронизация вполне может продлиться больше недели (не обращайте внимания на подвисания, счетчик иногда глючит).

    Как ускорить синхронизацию Bitcoin или Ethereum wallet?

    Один из внимательных пользователей решил проанализировать процедуру синхронизации и сделал собственные предположения по поводу скорости.

    Проверив ресурсы ПК, он заметил, что используется не так много ОЗУ и на процессор не идет нагрузка. Скорость интернета позволяет грузить быстрее, но что-то тормозит операцию:

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

    Идеальное решение SSD диск. Его вы можете приобрести в любом магазине компьютерной техники или заказать на Aliexpress.

    Скачивай блоки одним архивом на Cryptochainer

    Данные иногда долго передаются не из-за плохого интернета со стороны пользователя, а низкой скорости на серверах.

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

    Специально для этого был создан проект Cryptochainer, где предлагаются блокчейны по многим криптовалютам. Все они загружены в виде архивов, которые можно бесплатно скачать.

    Сэкономить время действительно удается, но учтите, что блоки занимают много места, поэтому всё равно придется подождать их загрузки:

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

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

    Учтите, что данные увеличиваются постоянно, поэтому мы не можем сказать, сколько весит тот или иной архив под какую-то криптовалюту.

    Как работает синхронизация с Cryptochainer?

    Способ ускоренной синхронизации через загруженные блокчейны позволяет быстрее войти в сеть, причем платить ничего не потребуется.

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

    1. Заходите на Cryptochainer, находите в списке необходимый блокчейн под криптовалюту, потом нажимаете на кнопку загрузки.
    2. После завершения скачивания, необходимо извлечь данные из архива в любую папку на компьютере.
    3. Теперь нужно зайти в папку кошелька, как правило, она находится по этому адресу C:UserAdminAppDataRoamingBitcoin (последняя директория может называться по-другому, в зависимости от криптовалюты.
    4. Нужно удалить всю информацию из этой папки, за исключением файла wallet.dat. На всякий случай создайте резервную копию на ПК.
    5. Остается только загрузить в эту папку извлеченные данные из архива (пункт 2).

    Архивы с блоками на Cryptochainer обновляются не каждый день. Но они не сильно устаревшие (на неделю, месяц). Поэтому, при запуске кошелька, всё равно начнется синхронизация, однако будут подгружены остальные данные.

    По крайней мере, не придется ждать неделю или даже месяц (некоторые говорят, что у них синхронизация длится больше 3х недель).

    Подобные архивы можно поискать на форумах (если для нужной валюты на Cryptochainer их нет). Только будьте осторожны, мошенники могут загружать вирусы и прочую ненужную информацию таким хитрым методом.

    Здесь же все блоки проверенные, а о сайте написано немало положительных отзывов.

    Узел Geth начинает синхронизацию с самого начала после быстрой синхронизации

    Я синхронизировал команду –fast . Теперь, как мне следует продолжить?

    Я попытался остановить его, а затем запустить geth –rpc , но он говорит:

    Что делать, чтобы оставаться синхронизированным?

    1 ответ

    Почему перезагрузка быстрой синхронизации

    Как указано в комментарии Péter Szilágyi выше, вам нужно будет дождаться синхронизации –fast , иначе вам придется перезапустить процесс снова. Сообщение, которое вы должны увидеть на консоли при завершении синхронизации –fast , – « быстрая синхронизация, автоматическое отключение », как показано ниже:

    И для перезагрузки вам нужно будет очистить папку с цепочкой каталогов – см. «Как сбросить свою блок-цепочку и запустить geth-fast» ниже.

    Ethereum Mining после быстрой синхронизации

    Синхронизировать блок-цепочку, а когда у вас есть последние блоки, вы можете ввести следующую команду в консоли:

    Читайте также:
    Как зарабатывать на Эфириум – лучшие способы с вложениями и без

    где n – это количество потоков, которое вы хотите, чтобы ваш процессор работал с.

    Я предполагаю, что вы хотите разделить блокчину с обычным процессором, а не графическим процессором (GPU). Возможно, вы захотите обратиться к Является ли производительность процессора даже стоимостью Ether? .

    Если у вас есть GPU на вашем компьютере, вы можете сначала просмотреть этот сайт для «разработки» Q & As или задать отдельный вопрос, если вы не можете найти ответ. Вот один Q & A – Как вывести эфир на GNU + Linux? .

    Обратите внимание, что вам придется сначала создать учетную запись, на которую выплачиваются ваши вознаграждения за участие в конкурсе. См. «Но у меня есть графический процессор и вы хотите его использовать» ниже.

    Как мне продолжить?

    Подробнее см. ниже.

    Что делать, чтобы синхронизироваться?

    Вам нужно только запустить geth –fast console в первый раз. Опция –fast не будет синхронизировать блоки быстрее после первого раза. Вы можете опустить параметры –fast в последующих прогонах geth .

    Когда вы запускаете geth в первый раз без параметра –fast , geth может потребоваться несколько дней, чтобы загрузить блок-цепочку из другие компьютеры через Интернет – на этот раз зависит скорость вашего сетевого подключения и процессор компьютера.

    Если вы впервые используете geth –fast в своей новой установке, geth –fast потребуется несколько часов, чтобы загрузить блок-цепочку – это снова зависит от вашего сетевого подключения и вашего процессора.

    После первоначальной загрузки блочной цепи с помощью geth –fast вы запускаете geth без параметра –fast . Синхронизация теперь будет быстрой, так как только новые блоки должны загружаться из других узлов Ethereum через Интернет, и они производятся со средней скоростью около одного блока каждые 14-15 секунд.

    Если вы хотите сбросить блок-цепочку и повторно загрузить блок-цепочку с помощью –fast , см. раздел ниже «Как сбросить мою цепочку и запустить geth –fast ».

    Я сделал что-то неправильно или geth –fast не для разработки?

    geth –fast используется для INITIALLY для загрузки копии текущей блок-цепи из других узлов Ethereum через Интернет. Как указано в Что такое «быстрая» синхронизация Geth , и почему это происходит быстрее? :

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

    geth –fast НЕ для разработки. Это всего лишь первый шаг при загрузке копии блочной цепи. Впоследствии вам понадобится постоянная синхронизирующая копия блок-цепи, если вы хотите поделиться.

    Был ли какой-либо другой шаг, который я пропустил?

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

    Подробности

    Я предполагаю, что вы хотите запустить команду синхронизации в одном окне (# 1) и прикрепить другую консоль geth в другом окне (# 2). И когда вы хотитевыйдите из консоли, используйте Ctrl-D (^ D) нажатие клавиши. Если вы используете Control-C несколько раз или убиваете процесс другими способами ( kill в Linux или Mac или диспетчер задач в Windows), ваши данные о блокировке могут быть повреждены (только очень редко – меня один раз).

    Синхронизация в первый раз

    В окне # 1 запустите команду:

    В окне # 2 запустите следующую команду для подключения к экземпляру geth –fast console выше:

    Для этого вам не нужны флаги –rpc , так как связь между этими двумя экземплярами geth будет выполняться по протоколу IPC. Протокол IPC работает только на локальном компьютере через файловый дескриптор. Протокол RPC может использоваться для связи на разных компьютерах.

    Синхронизация через первый раз

    В окне # 1 запустите команду:

    В окне # 2 запустите следующую команду для подключения к экземпляру geth console выше:

    Разница между сообщениями –fast и обычной синхронизацией

    На экране geth –fast console отображаются следующие сообщения: обратите внимание на заголовки и (-ах) :

    И следующие сообщения отображаются на экране geth console – обратите внимание на блок (ы) :

    Вот переход, когда синхронизация –fast завершена и начинается обычная синхронизация:

    Как сбросить мою блок-цепочку и запустить geth –fast

    Данные блок-цепи по умолчанию хранятся в следующих местах (ссылка Резервное копирование и восстановление ):

    /Library /Ethereum /chaindata ​​li>
    Linux:

    /.ethereum /chaindata ​​li>

  • Windows:% APPDATA% Ethereum chaindata ​​li>
  • Удалите содержимое каталога выше или переместите его в другое место и когда вы успешно синхронизировали свои данные, затем удалите старую копию.

    Как только данные в каталоге chaindata будут удалены, вы сможете снова синхронизировать –fast .

    Но у меня есть графический процессор и вы хотите его использовать

    В этом случае вам понадобится другое приложение, например ethminer , которое будет выполнять операции по добыче на графическом процессоре. Связь между geth и ethminer не работает через IPC. Вам необходимо включить RPC-связь, используя:

    geth использует стандартный –rpcaddr 127.0.0.1 и –rpcport 8545 . Начните свой ethminer с помощью следующей команды

    Параметр -G является инструкцией для ethminer для выполнения вычислений с использованием вашего GPU.

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

    Читайте также:
    Обзор проекта Exereum - форка Ethereum

    Вам будет предложено ввести пароль дважды, тогда вам будет полезно выполнить приведенные выше команды.

    Вопросы, относящиеся

    Модераторы могут отмечать этот вопрос как дубликат, поскольку на этом сайте есть несколько вопросов, которые могут быть связаны:

    Но я надеюсь, что это более полное руководство, которое поможет вам преодолеть проблемы с синхронизацией.

    Почему кошелек не синхронизируется и как это исправить?

    Причина, по которой пользователи выбирают основной кошелек – это запустить полный узел, поддерживать сеть и дополнительно иметь полный контроль над своими средствами, поскольку такой кошелек обеспечивает лучшую конфиденциальность и безопасность.

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

    Если кошелек не синхронизирован, вы не сможете отправлять или получать монеты, и он не покажет вам самые последние транзакции.

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

    Итак, почему ваш кошелек не синхронизируется или работает медленно, и что делать, если он не синхронизирует / не обрабатывает блок-цепочку?

    Синхронизация кошелька

    Биткойн, Dash, Litecoin и каждый альткоин имеет свой собственный основной кошелек. Хотя внешний вид каждого кошелька может незначительно отличаться, его функциональные возможности остаются неизменными.

    Всякий раз, когда вы открываете свой кошелек QT, первое, что делает ваш кошелек – это начинает сканировать все последние блоки на блокчейне и пытается догнать сеть.

    Является ли ваш кошелек только что вышедшим продуктом или вы используете его в течение длительного времени; если он не обновлен, он начнет загружать блок-цепочку.

    Ваш кошелек загружает и проверяет блоки, инициируя связь с другими узлами в сети. Из-за этого процесс синхронизации будет идти медленнее. Во время этого процесса ваша недавняя транзакция может быть не видна, и поэтому ваш баланс в кошельке может быть неправильным.

    Также попытка сети тратить монеты, которые затронуты пока еще не отображаемыми транзакциями, не будет приниматься сетью.

    Итак, все, что вам нужно сделать – это дождаться, пока кошелек полностью синхронизируется, то есть пока не покажет символ тика в правом нижнем углу вашего кошелька.

    После завершения синхронизации информация, отображаемая на вашем кошельке, будет исправлена. Теперь вопрос: ваш кошелек действительно синхронизируется? И если да, то сколько времени потребуется для завершения этого процесса?

    Действительно ли идет синхронизация?

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

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

    Теперь, сколько времени потребуется на синхронизацию, зависит от следующих факторов:

    1. Общее количество оставшихся блоков для обработки
    2. Количество активных подключений к сети Bitcoin
    3. Скорость вашего интернета.

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

    Прежде чем мы перейдем к руководству по устранению неполадок, нам нужно сначала выяснить, действительно ли ваш кошелек синхронизируется или он застрял?

    Наведите указатель мыши на индикатор выполнения или щелкните значок обновления, показывая состояние обработанных блоков и последних принятых блоков. Просто взглянув на статус загрузки блочной цепи, вы узнаете, действительно ли ваш кошелек синхронизируется или завис. Он показывает что-то вроде этого:

    Catching up .
    Downloaded 383912 blocks of transaction history.
    Last received block was generated 6 days ago.

    Если кошелек показывает некоторый прогресс – он синхронизируется и подождите, пока он это делает.

    Но если количество обработанных блоков не меняется в течение длительного периода времени – ваш кошелек завис. Если это ваш случай, вот несколько способов устранения неполадок синхронизации кошелька qt.

    Кошелек не синхронизируется – Устранение неполадок с кошельком QT

    Так почему ваш кошелек не синхронизируется? Вот несколько распространенных причин:

    1. Проблемы с широкополосным доступом и межсетевым экраном
    2. Активное подключение к монете
    3. Ваши блокчейн данные могут быть повреждены
    4. Ваш кошелек может быть старым и может быть подключен к неправильной цепочке, исключенной из основной цепи блокчейна (про виды таких блоков Вы можете почитать в статье: Что такое «Uncle Block», «Orphaned Block» и «Stale Block» в блокчейне?)

    Теперь, прежде чем делать какие-либо изменения, первое, что мы рекомендуем сделать – это взять резервную копию кошелька.

    Проблемы с подключением к Интернету

    Сначала проверьте, подключен ли ваш компьютер к интернету и все ли в порядке с сетью. Если с вашим Интернетом ничего не случилось, проверьте, не блокирует ли сеть ваш брандмауэр или антивирус.

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

    Проверьте соединение кошелька и добавьте узлы

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

    Читайте также:
    Как выгодно обменять Эфириум на рубли?

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

    Вы можете добавлять узлы либо из окна консоли вашего кошелька, либо путем редактирования файла конфигурации. После этого перезапустите кошелек.

    Если файла конфигурации нет, то создаем его сами. Для этого создаем текстовый документ и сохраняем его под именем (ИМЯ_МОНЕТЫ.conf). Например bitcoin.conf или dogecoin.conf. Далее добавляем в него узлы, от которых кошелек будет скачивать и синхронизирвоать блоки.

    daemon=1
    rpcuser=user
    rpcpassword=pass
    addnode=110.171.217.177:65350
    addnode=128.69.234.3:26969
    addnode=149.28.163.40:26969

    addnode= – сначала пишем ip адрес, затем через двоеточие указываем порт.

    Теперь общее количество активных соединений должно быть больше, чем раньше, и ваш кошелек должен начать синхронизацию.

    Если это все равно не помогло, у вас может быть поврежден блокчейн.

    Поврежденный блокчейн

    Лучший способ получить поврежденные файлы кошельков – это заставить ваш кошелек аварийно завершить работу во время его работы.

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

    В таком случае вам нужно перейти в папку с папкой ядра кошелька и удалить все остальные файлы и папки (за исключением файла «wallet.dat»).

    Но прежде чем вы это сделаете, закройте свой кошелек и снова выполните резервное копирование вашего файла «wallet.dat». После удаления файлов перезапустите кошелек и он должен начать синхронизацию с сетью.

    Обновите и переиндексируйте свой кошелек

    Еще одна причина, по которой ваш кошелек не будет синхронизироваться, – это если он находится на неправильной вилке цепи.

    Криптовалюта, которую вы используете, может быть подвергнута жесткой деформации, и вы можете не знать об этом. В результате ваш старый кошелек может оказаться в неправильной цепочке.

    Поэтому сначала проверьте GitHub и обновите кошелек до последней версии. После обновления проверьте количество блоков вашего кошелька и сравните его с текущим количеством блоков в блочном проводнике.

    Если блоков в кошельке больше, то он находится в неправильной цепочке. Чтобы исправить это, закройте свой кошелек, а затем запустите его с помощью команды -reindex. Процесс займет некоторое время, так как он начнет процесс синхронизации с самого начала.

    Вывод и рекомендации

    Надеемся, эти действия исправят ваши проблемы с синхронизацией кошелька. Даже после выполнения этого руководства по поиску и устранению неисправностей, если ваш кошелек не синхронизируется, пожалуйста, опишите нам эту проблему более подробно или обратитесь в поддержку монеты.

    Cинхронизация Bitcoin-кошелька с сетью – как ускорить синхронизацию Bitcoin Core

    • Для чего нужна синхронизация Bitcoin-кошелька?
    • Bitcoin-кошелек долго синхронизируется или не синхронизируется вообще
      • Проблемы с подключением к Интернету
      • Поврежденный блокчейн
      • Обновите и переиндексируйте свой кошелек
    • Ускорение синхронизации криптокошельков
      • Как использовать файл начальной загрузки для ускорения начальной синхронизации?
      • Импортировать bootstrap.dat в существующий кошелек?

    Программные или десктопные Биткоин-кошельки – самые надежные для хранения криптовалюты, поскольку в них деньги находятся непосредственно у держателя монет. Их трудно взломать, а если установить приложение на ноутбук, то они даже могут быть мобильными.

    Все программные криптокошельки делятся 2 категории:

    1. Тонкие – Bither, Electrum.
    2. Толстые – Bitcoin Core, Bitcoin Knots, mSIGNA.

    Установка тонких кошельков занимает мало времени, и после нее ими сразу можно пользоваться. Толстые кошельки тоже легко установить, однако процесс синхронизации может занять не один день.

    Для чего нужна синхронизация Bitcoin-кошелька?

    Bitcoin – это пиринговая платёжная система, внутри которой применяется одноимённая криптовалюта. Основа системы -это технология блокчейн – последовательная цепочка криптографических блоков, внутри которых расположены данные о совершённых переводах. Все они связаны между собой, и ни один из них нельзя навсегда удалить или изменить. В блокчейне хранится информация обо всех транзакциях, которые совершались за время существования сети.

    Когда пользователь хочет переслать кому-то Биткоины, создаётся новая транзакция, которая становится частью одного из следующих блоков. За создание блоков отвечают майнеры – владельцы вычислительного оборудования (асиков). Аппараты считывают информацию обо всех предыдущих элементах блокчейна и подбирают хэш – 64-значное число. Когда число подобрано, создается новый блок и подтверждается перевод, а “шахтеры” получают вознаграждение (12,5 BTC). На создание нового элемента блокчейна уходит около 10 минут. Транзакция конкретного пользователя не всегда входит в следующий блок, и время её подтверждения зависит от приоритета, который можно повысить, увеличив комиссионный сбор.

    С каждым новым переводом система обращается к данным блокчейна. Если сведения находятся на компьютере пользователя, системе не нужно обращаться к другим ресурсам и отправлять им данные о транзакции. Вся основная информация хранится у держателя криптомонет. Но чтобы это стало возможным, криптокошельку нужен весь блокчейн, который необходимо скачать.

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

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

    Bitcoin-кошелек долго синхронизируется или не синхронизируется вообще

    Причин может быть несколько:

    1. Проблемы с широкополосным доступом и межсетевым экраном.
    2. Активное подключение к монете.
    3. Повреждены Блокчейн-данные.
    4. Кошелек устарел или подключен к неправильной цепочке, исключенной из основной цепи блокчейна.
    Читайте также:
    Общая капитализация криптовалюты Эфириум на сегодня

    Чтобы вносить изменения, нужна резервная копия криптокошелька.

    Проблемы с подключением к Интернету

    Кошельку необходимо подключиться к другим узлам, чтобы загрузить блок-цепочку. Проверьте, подключен ли компьютер к интернету, все ли в порядке с сетью. Если Интернетом работает идеально, проверьте, не блокирует ли сеть брандмауэр или антивирус.

      Проверьте соединение криптокошелька и добавьте узлы;

  • Откройте свой криптокошелек, в правом нижнем углу вы увидите значок сигнала. Наведите стрелку мыши на вертикальные полосы и проверьте общее количество активных соединений с сетью;
  • Если соединение сильное, переходите к следующему шагу. Если есть нулевые активные соединения или если у него их меньше 4 или 5, то нужно добавить узлы в кошелек;
  • Можно добавлять узлы либо из окна консоли криптокошелька, либо путем редактирования файла конфигурации. Потом перезапустите кошелек.
  • Если файла конфигурации нет, то сделайте его сами. Для этого создайте текстовый документ и сохраните его под именем (ИМЯ_МОНЕТЫ.conf). Например bitcoin.conf или dogecoin.conf. Добавьте в него узлы, от которых кошелек будет скачивать и синхронизировать блоки.

    addnode=- сначала пишите ip адрес, затем через двоеточие указываете порт.

    Теперь общее количество активных соединений будет больше, чем раньше, и кошелек начнет синхронизацию.

    Если это все равно не помогло, то возможно, у вас поврежден блокчейн.

    Поврежденный блокчейн

    Файлы кошельков часто повреждаются, когда пользователь аварийно завершает его работу. С поврежденной блок-цепочкой кошелек не будет синхронизироваться.

    Перейдите в папку с папкой ядра криптокошелька и удалите все остальные файлы и папки (за исключением файла “wallet.dat”).

    Но прежде чем вы это сделаете, закройте криптокошелек и снова выполните резервное копирование файла “wallet.dat”. После удаления файлов перезапустите кошелек и он начнет синхронизацию с сетью.

    Обновите и переиндексируйте свой кошелек

    Кошелек также не будет синхронизироваться, если он расположен на неправильной вилке цепи.

    Используемая криптовалюта может быть подвергнута жесткой деформации, и вы можете не знать об этом. И старый кошелек окажется в неправильной цепочке.

    Поэтому сначала проверьте GitHub и обновите кошелек до последней версии. После обновления проверьте количество его блоков и сравните с текущим количеством блоков в блочном проводнике.

    Если блоков в кошельке больше, то он располагается в неправильной цепочке. Чтобы исправить это, закройте свой криптокошелек, а затем запустите его с помощью команды -reindex. Процесс займет время, так как процесс синхронизации начнется с самого начала.

    Ускорить синхронизацию криптовалютного кошелька можно с помощью файла Bootstrap.dat

    Ускорение синхронизации криптокошельков

    Биткойн – это криптовалюта Peer-to-Peer. Клиент кошелька Bitcoin загружает блокчейн из сети путем синхронизации с другими узлами. Так же работает и большинство других криптовалют, так как они все основаны на Биткойне.

    Поскольку для загрузки и проверки каждого блока требуется одноранговая связь, процесс синхронизации всего блокчейна будет медленным. Даже компьютерам с высокой скоростью Интернета потребуется несколько дней или даже недель для синхронизации блокчейна Биткоинов.

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

    Bootstrap.dat – это файл, который содержит копию блокчейна из блока genesis до определенного момента времени. Используется для ускорения начального времени загрузки блокчейна.

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

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

    Как только клиент кошелька завершит чтение данных из файла начальной загрузки, он будет использовать P2P-соединение для загрузки оставшихся блоков.

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

    Загружать bootstrap.dat для Bitcoin следует только из официального источника.

    Bitcoin.org использовался для предоставления этого файла начальной загрузки для ускорения процесса синхронизации. Но они больше не поддерживают его, потому что синхронизация кошельков с использованием метода bootstrap.dat больше не нужна. Это связано с тем, что начиная с версии Bitcoin Core 0.10.0 и более поздних версий, загрузка блокчейна с использованием одноранговой сети стала намного быстрее, и загрузка блокчейна из файла bootstrap.dat занимает столько же времени.

    Как использовать файл начальной загрузки для ускорения начальной синхронизации?

    Хотя Биткойн больше не использует этот метод, другие криптовалюты рекомендуют его, и поддерживают этот файл официально. Найти файл можно на официальном сайте нужной криптовалюты или в ее официальной ветке на GitHub.

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

    1. Резервное копирование. Имейте копию файла wallet.dat в двух или более местах. После завершения резервного копирования выйдите из программы.
    2. Найдите официальный источник и загрузите файл bootstrap.dat, который обычно имеет вид сжатого zip-файла (чаще всего можно найти на официальной ветке в GitHub).
    3. После загрузки zip-файла разархивируйте его. Там вы найдете файл с именем bootstrap.dat.
    4. Затем вам нужно переместить bootstrap.dat в основную папку вашего криптокошелька. Весь кошелек криптовалюты хранит свои основные файлы в следующем месте (по умолчанию):

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

    Читайте также:
    Прогнозы по криптовалюте Эфириум на 2021 год

    Найдите каталог и поместите туда файл bootstrap.dat. После этого откройте файл wallet.qt, и в левом нижнем углу вместо “Подключение к пирам” вы увидите “Импорт блоков с диска”.

    Импортировать bootstrap.dat в существующий кошелек?

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

    Сначала закройте программу, если она уже запущена. Затем перейдите в основную папку и скопируйте wallet.dat в другое место. Это обязательный шаг, особенно если у вас там хранятся средства. Затем удалите папки и файлы, такие как: блоки, каталог цепочки и файл peers.dat.

    После этого переместите bootstrap.dat в это место, а затем запустите кошелек. Ваш кошелек-клиент теперь начнет импортировать блоки с диска, то есть он начнет обрабатывать блоки, найденные в bootstrap.dat.

    Примечание. Этот процесс использует много ресурсов ЦП и займет некоторое время. В течение этого периода не пытайтесь использовать или закрывать кошелек, так как это может привести к его поломке. Как только кошелек-клиент завершит импорт блоков с диска, он подключится к партнерам и начнет загружать самые последние блоки.

    Синхронизация кошельков с Биткоин сетью

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

    По материалу этой статьи записана одна из лекций онлайн-курса по blockchain “Синхронизация кошельков с Биткоин сетью”.

    Базовые функции кошелька


    Начнем с базовой функциональности цифрового кошелька:

    • резервное копирование личных ключей;
    • прием платежей;
    • отображение баланса;
    • отображение истории транзакций;
    • отправка платежей.

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

    Наиболее важное из того, что пользователь цифрового кошелька должен достоверно знать при приеме и отправке платежей, — это статус своих транзакций. Очевидно, что сделка считается незавершенной, если транзакция была отправлена, но не получила полное подтверждение. Как следствие, получатель не может принять платеж, чтобы, например, отдать товар или оказать услугу.

    Сложности работы в распределенной сети


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

    Еще одна проблема заключается в следующем. Чтобы получить историю транзакций по определенному адресу на полном узле сети, вам придется пройтись по всему блокчейну (от genesis до last known), что достаточно долго, поскольку это большой объем данных, а грубый перебор это мало эффективный подход. Поэтому можно использовать определенные подходы с целью оптимизации запросов. Для этого применяются специальные надстройки над обычным узлом сети, которые помогают индексировать блокчейн и кэшировать некоторые данные для ускорения поиска по популярным метрикам. По такому принципу работает любой blockchain explorer, например blockchain.info, который достаточно быстро возвращает данные практически о любом адресе, о любой транзакции и т. д.

    Итак, существует несколько принципиально разных подходов к осуществлению взаимодействия и синхронизации цифрового кошелька с распределенной сетью. Давайте их рассмотрим.

    Подходы синхронизации кошелька с платежной сетью


    Есть три основных подхода. Первый предполагает, что кошелек сам является полным узлом сети Биткоин. Во втором подходе используется так называемый доверенный узел. Фактически это чужой узел сети, но пользователь кошелька ему доверяет. А третий подход предполагает прямое взаимодействие с остальными узлами сети, но в облегченном варианте, с использованием методики Simplified Payment Verification (SPV). Эта методика позволяет с достаточно высокой степенью надежности проверить подтвержденность транзакций, но не прибегать к запуску полного узла сети. Давайте чуть подробнее остановимся на каждом из этих подходов синхронизации.

    Работа с полным узлом сети

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

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

    Читайте также:
    Доходность майнинга Эфириума: расчет прибыльности, окупаемость

    Такой способ используется обычными пользователями, которые регулярно принимают и отправляют платежи на крупные суммы, что требует высокого уровня надежности. Кроме того все крупные сервисы, которые предоставляют возможность централизованного хранения биткоинов и онлайн доступ к кошельку, обязательно используют такой подход. Потому что тут высокие требования к безопасности, а также к независимой работе с Биткоином.

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

    Отметим, что использование такого подхода является одним из самых простых и надежных, даже для обычного пользователя. Для этого просто нужно взять исходный код или готовые бинарники, например, Bitcoin Core и запустить ПО. Существенным недостатком можно считать только требования к компьютеру.

    Работа с доверенным узлом сети

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

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

    Какие же преимущества и недостатки этого подхода? Как и в предыдущем случае, хоть и косвенно, но можно влиять на проверку транзакций в сети Биткоин, потому что у пользователя остается доверенный узел сети. Преимущество состоит в том, что он освобождается от необходимости хранить полную копию блокчейна на своем устройстве. Тем не менее зависимость от доверенного узла является недостатком, ведь в случае его отказа пользователь не всегда может переключиться на другой доверенный узел. Поскольку проверка транзакций происходит на удаленном сервере, нужно убедиться в надежности канала передачи данных между кошельком и сервером, на котором происходит проверка. При таком подходе появляются угрозы таких атак как “Man in the middle”.

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

    Неудобство данного подхода заключается в зависимости цифрового кошелька от доверенного узла, в частности в плане доступа к актуальным данным платежной системы. Как только пользователь теряет доступ к доверенному узлу или узел отказывает в обслуживании, пользователь теряете связь с сетью. Соответственно, пользователь теряете возможность получать и отправлять платежи. Чтобы уменьшить риск потери доступа к доверенному узлу, можно выбрать несколько доверенных узлов. Это значит, что в нормальных условиях пользователь подключается и работает с одним доверенным узлом, но если случается потеря доступа, то цифровой кошелек автоматически подключается к другому доверенному узлу. По сути, при каждом соединении кошелек случайным образом выбирает один узел из списка доверенных.

    Такой способ используют преимущественно мобильные кошельки, потому что он позволяет и верифицировать транзакции, и упростить работу мобильного приложения. Примерами таких мобильных кошельков для Биткоина являются Mycelium и Coinomi. Компания Distributed Lab также разработала и поддерживает кошелек под названием Bitxfy, где применен данный подход.

    Работа с SPV-узлом сети

    Третий распространенный подход к синхронизации цифрового кошелька с Биткоин сетью — это облегченный узел сети. Речь идет о Simplified Payment Verification (SPV). В этом подходе может отсутствовать необходимость запуска своих полных узлов или выбора доверенных. Предполагается, что цифровой кошелек напрямую общается с другими узлами сети: фактически выбирает несколько десятков чужих полных узлов и поддерживает с ними соединение. Отличие состоит в том, что облегченный узел общается с другими узлами на равных, обмениваясь с ними р2р сообщениями, но при этом не хранит всю историю транзакций. Здесь для проверки входящих транзакций применяется методика SPV. Фактически облегченный узел проводит только часть наиболее важных проверок из тех, что проводит полный узел сети.

    Как происходит работа в этом случае? Вместо того, чтобы получать блоки, как это делает полный узел, SPV узел получает только заголовки блоков, которые имеют гораздо меньший размер (80 байт). В заголовке содержатся необходимые данные для проверки факта подтверждения конкретной транзакции в этом блоке. Если говорить более конкретно, то в заголовке блока есть поле Merkle Root, где записано хеш-значение от всех транзакций в блоке, рассчитанное по схеме Merkle Tree.

    Схема Merkle Tree позволяет проверить, входит ли хеш-значение конкретной транзакции в Merkle Root, не имея при этом всех остальных транзакций блока. Таким образом, имея транзакцию, заголовок блока и Merkle Branch для этой транзакции (можно запросить у полного узла), цифровой кошелек может убедиться, что транзакция была действительно подтверждена в конкретном блоке.

    Читайте также:
    Как вывести и обналичить Эфириум с кошелька?

    Почему это нельзя считать полноценной верификацией транзакций? Конечно, пользователь получает независимость от конкретных узлов сети и может напрямую общаться с распределенной сетью. Для этого ему не нужно хранить весь блокчейн. Но недостаток состоит в том, что облегченный клиент самостоятельно не проверяет транзакцию полностью, потому что у вас нет всех необходимых данных для этого (например, непотраченные монеты). Он проверяет лишь факт подтверждения транзакции валидаторами — т. е. убеждается, что эту транзакцию полностью проверили другие узлы и владельцы большинства вычислительной мощности сети (майнеры). В этом случае надежность снова сводится к доверию, что большинство вычислительной мощности используются для честной работы. Иначе говоря, вы не сами проверяете транзакцию, а доверяете это большинству.

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

    Как вы уже поняли, SPV узлы требовательны к стабильной работе сетевого соединения, тем не менее часто применяются даже в мобильных приложениях. Этот подход синхронизации с платежной сетью достаточно широко распространен и используется в ряде популярных Биткоин кошельков. Среди них можно выделить Bitcoin Wallet, Electrum, а также Bread Wallet.

    Часто задаваемые вопросы


    — Где можно найти полные узлы, которым можно доверять?

    Достаточно сложно ответить, каким узлам можно доверять. Это вопрос личного предпочтения. Есть сервисы, которые предоставляют доверенную информацию, такие как Blockchain.info, — редко кто им доверяет особенно если речь идет о крупных суммах. Нужно быть очень осторожным в выборе доверенного узла, поскольку он является посредников между пользователем и платежной сетью. Однажды Blockchain.info вышел из строя на двое суток из-за проблем с DNS провайдером, Кошельки, которые использовали Blockchain.info в качестве доверенного узла, не могли синхронизироваться с Биткоин сетью и хоть как-то работать.

    — Какие гарантии дает команда кошелька и какова ее ответственность?

    Этот вопрос имеет больше юридический характер, чем технический. У любого ПО, которое распространяется официально, есть “Terms of Use”, где прописано, что вы можете предъявить разработчикам в случае, если возникли определенные проблемы в их ПО. “Terms of Use” отличаются в разных приложениях. Как и всегда, пользователь отвечает на вопрос, доверяет он разработчикам или нет, перед тем как начать использовать их продукт.

    — Кто решает, доверенный ли узел?

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

    — Сколько может быть доверенных узлов?

    Вы можете выбрать любое количество доверенных узлов, чтобы минимизировать риск потери доступа к сети. Например, три узла. Если возникнут проблемы с доступом к первому, то вы подключаетесь ко второму и продолжаете с ним работать точно по такому же принципу.

    — Что произойдет с монетами, если сервера, на которых они хранятся, будут полностью или частично уничтожены землетрясением?

    Здесь нужно сказать не о монетах, а о хранении ключей, которые используются для доступа к этим монетам. Рассмотрим два варианта одной ситуации. Если уничтожен сервер, который обеспечивал доступ к сети Биткоин. То это на вас никак не повлияет. Вы временно потеряете доступ к распределенной базе данных, но у вас остануться ключи, которые позволят вам потратить эти монеты. Если же уничтожен сервер, на котором хранились ваши ключи, при этом у вас нет резервной копии этих ключей, то вы не сможете получить доступ к своим монетам.

    — Безопасно ли поставить кошелек, положить на него монеты, записать seed фразу на бумагу и удалить его?

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

    — Можно ли поставить некоторую надстройку над блокчейном у себя локально, чтобы иметь возможность анализировать данные в блокчейне?

    Можно добавить любое ПО, которое будет анализировать блокчейн. Это может быть ПО, написанное самим пользователем, а может существовать готовое решение. Все зависит от ваших целей. Если вы хотите оптимизировать запросы по поиску определенных транзакций, привязанных к определенным адресам, как это делает blockchain explorer, вы можете применить ПО, которое будет индексировать блокчейн и кэшировать определенные данные. Примером такого ПО является BitCore (поддерживается компанией BitPay). BitCore имеет открытый исходный код и вы можете его достаточно просто использовать вместе со своим полным узлом.

    Рейтинг
    ( Пока оценок нет )
    Понравилась статья? Поделиться с друзьями:
    Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: