Что такое обрезанный узел Bitcoin?
Всегда рекомендуется запускать полный узел, если мы хотим поддерживать Биткойн и сохранить децентрализованность системы. Это не только помогает сети, но и имеет другие преимущества для участников.
Но поскольку блокчейн Биткойна постоянно растет, по данным Coinmarketrate.com, он достиг того момента, когда его общий размер стал значительным. Это делает сложным поддержание полного узла для каждого.
Существуют легкие SPV, мобильные и аппаратные кошельки, но ничто не сравнится с управлением основным кошельком. Проблема заключается в необходимых ресурсах, особенно в пространстве для хранения и пропускной способности.
В настоящее время блокчейн Биткойна весит почти 390 Гб, что слишком много для большинства людей, не имеющих такого объема дополнительного хранилища.
Одним из способов снизить это требование является использование так называемых обрезанных узлов, что позволяет пользователям запускать основной кошелек, не заботясь о пространстве.
В этом руководстве мы рассмотрим, как это работает, и как вы можете сделать свой собственный, если вас беспокоит пространство.
Как работает обрезанный узел
Блокчейн Bitcoin содержит историю всех транзакций, ежедневно совершаемых в сети Bitcoin, с момента ее создания до настоящего времени.
Учитывая, что размер блока составляет примерно 1 МБ и что они возникают каждые 10 минут, логично предположить, что рост всего блокчейна будет только расти и расти.
История размера блока Bitcoin. Источник: Blockchain.com
Для решения проблемы, когда люди хотят поддерживать узел Биткойна, но не имеют свободного места для выполнения этой задачи, разработчики ядра Биткойна выпустили в версии 0.11.0 функцию под названием «обрезка файлов блоков».
Эта функция позволяет нам запускать узел, но в его наименьшей версии. Это достигается путем удаления старой информации, которая не нужна, при загрузке последней из блокчейна.
Таким образом, мы можем использовать некоторые функции Bitcoin Core, такие, как кошелек, не имея всех старых транзакций.
Перед уменьшением размера блока на узле
Но прежде чем приступить к обрезке размера запущенного узла, необходимо знать несколько важных вещей:
- Обрезка не делает безопасность кошелька менее надежной. Это практически то же самое, что и запуск полного узлового кошелька.
- После включения этого режима повторное сканирование кошелька невозможно, поскольку необходимо снова загрузить весь блокчейн.
- Обрезка займет всего несколько секунд или минут. Но имейте в виду, что это поездка в один конец. Если мы хотим повторно запустить весь узел, то мы должны снова загрузить весь блокчейн.
- Хотя мы можем установить ограничение на размер блокчейна, который мы хотим сохранить, оно будет превышено, поскольку есть файлы, такие как состояние цепи и индексная база данных, которые также должны быть сохранены. Однако они не занимают слишком много места.
- По умолчанию эта функциональность включается при первой установке Bitcoin Core, и ее можно легко отключить в меню установки или позже.
Помните, что во время выполнения задачи обрезки будет использоваться много процессора, а также будет очень высокая нагрузка на накопитель, так как он должен читать, записывать и удалять много файлов одновременно.
Рекомендуется, чтобы во время этого процесса на компьютере не было запущено никаких других важных задач, особенно если доступно не так много ресурсов.
Как использовать функцию обрезки в BITCOIN CORE?
Команда, используемая для уменьшения пространства, занимаемого блокчейном, — «prune=N», где N — размер в МБ, который мы хотим, чтобы блокчейн был максимальным.
- prune=0: режим отключен.
- prune=1: позволяет производить обрезку вручную через RPC.
- prune=550: автоматически удаляет предыдущие блоки, чтобы не превышать это значение.
Вот шаги, которые необходимо выполнить, если вы хотите включить режим prune в клиенте Bitcoin Core.
В случае, если мы устанавливаем Bitcoin Core в первый раз:
- Мы открываем Bitcoin Core, и он сообщает нам, сколько у нас свободного места и сколько нам нужно. Эта опция включена по умолчанию и называется «Limit block chain storage to», в качестве параметра выбрано значение 2 ГБ. Мы можем отключить его или увеличить, или уменьшить пространство в зависимости от того, что мы хотим.
- Наконец, нажмите «OK», чтобы начать синхронизацию блоков.
В случае, если у нас уже установлен Bitcoin Core, и мы открываем приложение не в первый раз:
- Открываем кошелек и нажимаем «Настройки», а затем «Опции», что приведет нас к панели опций.
Активация обрезки в Bitcoin Core шаг 2
- Там мы нажимаем на флажок рядом с «Prune block storage to» и выбираем размер в ГБ.
Мы также можем активировать его, открыв «Open Configuration File» и набрав команды, которые мы видели выше «prune=N». Хотя этот вариант не рекомендуется, если вы не являетесь опытным пользователем.
- После ввода значения необходимо нажать кнопку OK.
- Наконец, мы должны закрыть клиент и открыть его снова, чтобы можно было обработать введенную конфигурацию.
Необходимо ли загружать полный блокчейн?
Режим обрезанных узлов, предлагаемый Bitcoin Core, является интересным вариантом, особенно если у нас ограниченное пространство или мы не хотим использовать его полностью для этого.
Но возникает вопрос, нужно ли загружать весь блокчейн или лучше использовать обрезанный узел с самыми последними блоками.
Хотя этот вариант позволяет нам сэкономить место на нашем хранилище, нам все равно приходится использовать большую пропускную способность, чтобы иметь возможность загружать старые и новые блоки.
Это правда, что вам придется загрузить всю цепочку блоков, если вы впервые используете Bitcoin Core. В этом случае у вас не будет выбора, кроме как загрузить блокчейн на компьютер, который это позволяет (например, компьютер друга), а затем перенести его на компьютер, который будет выступать в качестве узла.
Но если размер — это наша проблема, то вариант обрезки — это спасение жизни. Потому что он загрузит все блоки, но удалит самые старые, так как они ему больше не нужны.
Придется загружать много данных, что может быть немного раздражающим, если у нас нет хорошего соединения, но, если мы установим максимум, например, 25 ГБ, он всегда будет оставаться ниже этого значения.
Именно по этой причине, даже если он будет занимать меньше места, мы не сможем сделать синхронизацию быстрее. В конечном итоге нам все равно придется загрузить весь блокчейн.
Заключение
Обрезка блоков — это функция некоторых клиентов, которая позволяет удалять старую информацию, чтобы узел занимал меньше места. Мы должны синхронизировать весь блокчейн, хотя блоки будут удаляться по мере загрузки новых.
Синхронизация с блокчейном Bitcoin улучшается с каждым годом, и в результате загрузка информации происходит значительно быстрее.
Некоторые люди искали сайты или торренты, где можно скачать полные файлы, тем самым экономя время. Но на самом деле этот вариант довольно небезопасен и не рекомендуется. Всегда предпочтительнее использовать клиент, тем более с учетом оптимизаций, которые он получил.