Одноранговая сила Биткоина заключается в его обширной сети узлов. Знаменитое высказывание в крипто-сообществе «не ваши ключи, не ваши монеты» распространяется и на крипто-узлы как «не ваш узел, не ваши правила».
Полные узлы Биткоина защищают конфиденциальность пользователей и укрепляют распределенный консенсус в сети. И совсем недавно сеть достигла рекордного уровня для активных узлов, что сделало ее еще более надежной.
Что такое биткоин-узел?
Прежде чем говорить об узлах Биткоин, давайте поговорим об узлах в целом в контексте модели распределенной сети. В распределенной сети самый простой способ определить узел — сказать, что это точка пересечения или соединения с сетью. Он может действовать как точка перераспределения или как конечная точка связи. Это нечеткое определение помогает нам лучше понять различные способы функционирования узла Биткоин в сети Биткоин.
Биткоин-узел — это программа, которая проверяет транзакции и блоки. Существуют различные типы узлов, между каждым классом есть технические различия, но Биткоин узлы, независимо от формата, помогают обеспечивать соблюдение правил консенсуса в сети.
Правила консенсуса — это набор условий, закодированных в сети. Биткоин-узел обеспечивает соблюдение этих правил, проверяя адрес и баланс при отправке платежа BTC. Узлу не нужно доверять другим узлам для проверки платежей. Он сам проверяет их перед трансляцией в сеть.
Сеть биткоин-узлов быстро игнорирует узел, который пытается распространить неверную информацию, запрещая его как минимум на 24 часа или даже дольше, в зависимости от количества неправильных распространений.
Полный узел
Полный биткоин-узел является неотъемлемым компонентом сети биткоин, поскольку он проверяет блокчейн. Он делает это, скачивая его копию. Он также способен ретранслировать транзакции и недавние блоки, но это не обязательно, чтобы считаться полным узлом.
При первом запуске клиента Full Node, например Bitcoin Core, полный узел ограничен количеством подключений, к которым он может подключиться (около 8), он ищет только супер узлы, также известные как узлы прослушивания. Причина этого в том, что ваш полный узел еще не доступен для публичного подключения.
Обрезанный полный узел
Подтип полного узла — это обрезанный полный узел. Особенностью здесь является то, что он начинает загрузку блоков с самого начала и по достижении установленного лимита удаляет самые старые, сохраняя только их заголовки и размещение в цепочке. Например, если вы установите ограничение размера 550 МБ, вы сохраните все последние блоки, которые могут поместиться в этом пространстве жесткого диска, но для того, чтобы перейти в это состояние, вам сначала нужно будет пройти через весь блокчейн, чтобы проверить все те предыдущие блоки.
Обрезанные узлы считаются полными узлами и, следовательно, также могут проверять транзакции и участвовать в консенсусе.
Так же полные узлы можно разделить на несколько подтипов — те, которые могут добавлять блоки в блокчейн, и те, которые не могут.
Супер-узел, он же узел прослушивания
Суперузлы — это тип полных узлов, которые обычно работают круглосуточно, чтобы помочь соединить другие полные узлы друг с другом и распределить цепочку блоков по всей сети. Они служат в качестве реле для передачи информации или перераспределения, для гарантии, что у каждого есть правильная копия блокчейна.
Такой узел может потребовать большей пропускной способности и ЦП, чем полный узел, из-за всей дополнительной работы, которую он выполняет.
Такие суперузлы обычно работают круглосуточно, без выходных и являются надежными координационными центрами для подключения других узлов. Чтобы активировать это в биткоин-клиенте, работающем как узел, вы должны сделать его общедоступным. Один из способов сделать это — обойти любые потенциальные брандмауэры и / или настроить переадресацию портов. В некоторых руководствах предлагается запускать bitcoind в фоновом режиме вместо Bitcoin-Qt, но в этом нет необходимости.
Майнинг узел
Сегодня майнеры используют программы майнинга отдельно от Bitcoin Core для майнинга блоков Bitcoin. Некоторые майнеры предпочитают майнить в одиночку и поэтому используют свой собственный Full Node для поддержки полной копии блокчейна.
Другие предпочитают объединяться в пулы и работать вместе, чтобы добывать блоки. В этом случае администратор пула поддерживает полный узел, а майнеры пула вносят свою хэш-мощность.
Третий метод, хотя и крайне нежелательный и вредный для сети, — это майнинг SPV путем майнинга поверх блоков до их полной проверки. Майнеры SPV-пула обычно доверяют полному узлу другого майнинг-пула в качестве ориентира для добычи блоков.
Исходя из этого, майнинг-узел может быть дополнительно разделен на подкатегорию как полный узел одиночного майнера, и как полный узел майнинг пула.
Клиент упрощенной проверки платежей (SPV), также известный как Light Wallets
Клиенты SPV не являются полными узлами, но выполняют ту же функцию, что и полные узлы. Вместо того, чтобы хранить всю копию блокчейна, они содержат только ее часть. Клиенты SPV загружают только заголовок блока предыдущих транзакций, чтобы подтвердить действительность цепочки блоков и передать эту информацию другим узлам.
Поэтому в самом широком смысле SPV-клиент может соответствовать критериям узла. Однако они мало что делают для поддержки и проверки распределенного реестра Биткоин. Следовательно, клиенты SPV не могут проверить какие-либо транзакции в цепочке, потому что у них нет к ней доступа.
Таким образом, они функционируют как конечные точки связи, так как они не могут пересылать транзакции или данные из блокчейна.
Как настроить биткоин-узел
Владение полным узлом Биткоин требует места на жестком диске. Размер блокчейна Биткоин линейно увеличивается во времени; в настоящее время это около 320 ГБ.
В настоящее время средний размер блока BTC составляет 1,3 МБ. Объем блокчейна увеличивается чуть более чем на 1ГБ в неделю, менее чем за 10 минут на блок.
Другие требования для запуска полного узла:
- Компьютер или автономное устройство, например Raspberry Pi;
- Жесткий диск / твердотельный накопитель 500 ГБ;
- Оперативная память не менее 2 ГБ;
- Стабильное интернет-соединение.
Bitcoin Core — самый популярный графический интерфейс для настройки узла. Основная команда Bitcoin, в которую входят ведущие разработчики, выпускает различные исправления и обновления протокола. Совсем недавно сообщество работало над значительным обновлением Schnorr/Taproot.
Вы можете найти инструкции по настройке полного узла с использованием Bitcoin Core на официальном сайте.
Загрузка всей истории для полного узла, также называемого архивными узлами, может занять несколько дней. Программному обеспечению требуется подключение к Интернету для выполнения задач проверки и отправки транзакций.
BTCPayServer и RaspiBlitz — популярные решения с открытым исходным кодом, которые позволяют использовать все возможности узла на микропроцессоре Raspberry Pi с набором других функций, таких как обработка торговых платежей.
Инструкции по настройке BTCPayServer на компьютере или микропроцессоре, таком как Raspberry Pi, можно найти здесь.
Добавить комментарий