Что такое полный узел
Что такое ноды (узлы) в Ethereum и других криптовалютах?
Давайте начнем с объяснения, что такое нода (она же «Узел») в сети Блокчейн или в конкретной криптовалюте, как Ethereum.
В общем понимании, каждый участник сети криптовалюты является нодой.
Активные ноды Ethereum:
Зачем нужна нода?
Обычно нода имеет три назначения:
Нода – это узел в сети блокчейна, взаимодействующий с другими компьютерами в сети
Технология блокчейн по своей природе децентрализована – это одно из ключевых свойств, которое сделало ее настолько привлекательной для широкой публики.
Блокчейн основан на принципах P2P (Peer to Peer, или От человека к Человеку) в сети.
В большинстве сетей нет выделенных серверов, нет ни одного централизованного управляющего органа, но есть консенсус среди пользователей. Поскольку все они имеют решающее значение для безопасности и целостности сети, членство в определенном сообществе криптовалют является не только захватывающим, но и обязанностью.
Иллюстрация показывает, как различные узлы взаимодействуют в блокчейне
Консенсус в децентрализованной сети
Как мы уже говорили, криптовалюты работают в децентрализованной P2P-сети. Как вы можете себе представить, согласование чего-то с большим количеством людей неизбежно приведет к осложнениям.
Вот где алгоритмы консенсуса вступают в игру. Наиболее распространенными из них являются Proof of Work (PoW) и Proof of Stake (PoS).
Правила, по которым работает блокчейн сеть, а та же подтверждение достоверности информации, записанной в блоках называются «консенсусом».
Хотя консенсус должен быть достигнут определенным типом узлов, прелесть сети P2P заключается в том, что любой может стать полноценным узлом и, таким образом, достичь более высоких уровней независимости и децентрализации.
Самая первая криптовалюта, Биткион, предлагает один из самых высоких уровней децентрализации по сравнению, например, с EOS, где за утверждение валидатора должно голосовать определенное количество пользователей, а доступные позиции ограничены. Это открывает сеть для коррупции и манипуляций.
Типы нод
Делает новые блоки | Отправляет новые транзакции | Знает баланс своего кошелька | Знает все транзакции | |
Ноды майнинга | + | — | — | — |
Полные ноды (Full Nodes) | — | + | + | + |
Облегченные ноды (Light nodes) | — | + | + | — |
«Web» nodes | — | + (через сторонние сервисы) | + (через сторонние сервисы) | — |
Полные ноды (Full Nodes) содержат полную копию истории блокчейна, включая все созданные блоки.
Наряду с «Full» и «Light» нодами, существуют еще ноды для майнинга новых монет, Веб-ноды Архивные, Обрезанные ноди и др.
Основные типы нод в блокчейне
Давайте рассмотрим различные подвиды нод в деталях.
Полные ноды (Full Nodes)
Полные узлы действуют как сервер в децентрализованной сети. В их основные задачи входит поддержание консенсуса между другими узлами и проверка транзакций. Они также хранят копию блокчейна, что делает их более безопасными и позволяет настраивать такие функции, как мгновенная отправка и частные транзакции.
При принятии решений о будущем сети именно полные ноды голосуют за предложения. Если более 51% из них не согласны с предложением, оно игнорируется. В некоторых случаях это может привести к хард-форку. Если сообщество не может договориться об определенном изменении и, таким образом, решает пойти своим путям, создав две разные цепочки. Самым известным примером этого является форк Bitcoin Cash.
Обрезанные полные ноды (Pruned Full Node)
Особенностью здесь является то, что кошелек начинает загрузку блоков с самого начала и, как только достигает установленного предела, удаляет самые старые блоки, сохраняя только заголовки и размещение цепочки.
Например, если вы установите ограничение размера в 550 МБ, вы будете хранить все последние блоки, которые могут уместиться в этом пространстве жесткого диска, но для того, чтобы перейти в это состояние, вам сначала нужно будет пройти весь пусть синхронизации блокчейна с самого начала его существования, чтобы проверить все предыдущие блоки.
Обрезанные ноды считаются полными узлами и поэтому могут также проверять транзакции и участвовать в консенсусе.
Архивный полный узел (Archival Full Node)
Ноды, которые могут добавлять новые блоки:
Ноды майнинга (Mining Nodes)
Чтобы выполнить задачу, майнеры должны либо сами быть полными нодами архивации, либо получать данные от других полных нод в сети, чтобы узнать текущее состояние цепочки блоков и необходимые параметры для следующего блока.
Участники процесса используют аппаратные компоненты (будь то видеокарта, процессор или ASIC) для решения криптографической задачи.
Первый человек, решивший задачу, передает свои результаты в сеть, чтобы они могли быть проверены полными нодами, и после достижения консенсуса ему предоставляется право добавить блок в существующий блокчейн.
За свою работу майнеры получают заранее определенное количество монет в дополнение к комиссиям за работу сети.
Легко понять и следовать концепции доказательства участия
Возможность работать в тандеме с другими и повысить скорость получения вознаграждений
Процесс добычи потребляет много электроэнергии и, таким образом, является расточительным
Высокая начальная стоимость и неопределенность ROI
Ноды ставок (Staking Nodes)
Ethereum планирует имплементировать ноды ставок (своего рода мастерноды).
Ставку можно сравнить с традиционным депозитом в виде фиатных денег. Вы покупаете монеты и держите их, а взамен получаете проценты в виде вознаграждения.
Конечная цель состоит в том, чтобы определить на основе заранее определенного набора правил и фактора удачи, кто будет следующим, чтобы создать блок и получить вознаграждение.
Факторы включают в себя продолжительность ставки, сколько у вас монет и их соотношение с доступными в сети.
При размещении ставок вам не нужны дорогостоящие устройства, вы просто поддерживаете свой крипто-кошелек онлайн 24/7, что можно сделать с помощью такого устройства, как Raspberry Pi.
Чтобы иметь возможность делать ставки, вам необходимо стать полным архивным узлом, то есть загрузить основной кошелек для монеты и синхронизировать весь блокчейн на своем устройстве.
Если вы хотите более подробно изучить концепцию или узнать, какие монеты с наибольшим количеством ставок, вы можете сделать это, посетив сайт www.staking.com.
Барьер для входа низок, и монеты могут быть легко куплены
Система вознаграждения основана на удаче
Сложно работать совместно в пулах
Часто нарушается децентрализация сети (богатые скупают все монеты)
Алгоритмы консенсуса включают в себя Delegated Proof of Stake, Delegated Byzantine Fault Tolerance, Proof of Believability и другие.
Сети, использующие такие алгоритмы, должны определять фиксированное количество узлов. Сколько их будут всего выбирается сообществом или определяется командой разработчиков.
Задача этих узлов, как и для полных узлов, заключается в создании и проверке блоков, в то же время распространяя информацию среди пользователей в сети.
Увеличена скорость транзакций
Нет требований к хранению, вы можете использовать мобильное устройство в качестве кошелька
Проще модернизировать сеть и привлечь разработчиков
Более низкий уровень доверия из-за централизации
Уязвимая сеть, так как ее легче атаковать
Мастерноды (Masternodes)
Однако дополнительным преимуществом является то, что, запустив мастерноду, вы не только защищаете сеть, но и можете получить долю вознаграждений за ваши услуги.
Чтобы установить мастерноду, вам необходимо заблокировать определенную сумму средств в качестве залога.
Ожидается, что вы будете в сети 24/7, и хостинг на виртуальном частном сервере считается хорошей практикой.
Если вы хотите узнать больше о том, как настроить свою собственную мастерноду или какие из них являются лучшими, вы можете посетить masternodes.com.
Выгодно для сети, а также полезно
Отличный источник пассивного дохода
Не слишком дорогой в обслуживании
Требуются большие начальные инвестиции
Процесс установки не так прост
Облегченные узлы (Lightweight SPV Nodes)
Другим типом узлов блокчейна, используемых в повседневных криптографических операциях, является облегченный узел или узел простой проверки платежей (SPV).
Вы, скорее всего, знакомы с определением «легкий кошелек». Эти типы узлов связываются с блокчейном, полагаясь на полные узлы, чтобы предоставить им необходимую информацию.
Поскольку они не хранят копию всего блокчейна, они только запрашивают текущее состояние, для которого блок является последним, и передают транзакции для обработки.
Имея в виду вышеупомянутые функции, ясно, что для запуска узла SPV не требуется много ресурсов, но он жертвует безопасностью ради удобства.
Молниеносные ноды (Lightning Nodes)
Идея заключается в том, чтобы установить связь между пользователями за пределами блокчейна (см. что такое SideChain в блокчейне).
Это работает путем открытия отдельного канала оплаты между субъектами (см. каналы состояния).
Таким образом, вместо ожидания подтверждения каждой транзакции и заполнения сети бесполезными данными, стороны могут взаимодействовать друг с другом и снизить нагрузку на блокчейн.
Кроме того, если кто-то еще захочет иметь дело с тем же платежным каналом, сеть молниеносной связи будет искать путь с наименьшим количеством посредников и наименьшей комиссией за перевод, тем самым сокращая время ожидания.
Что происходит с нодой после форка?
Теперь, когда вы знаете различные типы нод в криптовалюте и вы знакомы с их работой, давайте рассмотрим, как они связаны с консенсусом сети и возможными форками.
Вы знаете, что, если между полными узлами нет соглашения по крайней мере в 51%, предлагаемое изменение в сети отклоняется.
Но что произойдет, если большая часть сообщества все еще хочет принять предложенное изменение? Вот где форки вступают в игру.
Разработчик решает создать новый клиент, используя исходный код монеты, и реализует предложенное изменение.
Пользователи, желающие идти в этом направлении, скачивают новую версию и принимают решение о поддержке разветвленной цепочки.
Хардфорк (Hard Fork)
Параметры консенсуса, которые могут спровоцировать хард-форк при изменении, могут включать вознаграждение за новый блок, время нахождения блока, переход от PoW к PoS, реализацию мастернод и другие.
После запуска хард-форка каждый узел в сети, который не обновился до новой версии программного обеспечения, отклоняется консенсусом в отношении его работы по недопустимым правилам. Это одна из причин, по которой разработчики и сообщества обычно избегают серьезных изменений, поскольку это означает, что некоторые люди будут не учтены, или переходный этап может поставить под угрозу безопасность сети.
Софтфорк (Soft Fork)
Одним из таких примеров является добавление функции «SegWit» в Биткойн. По сей день, транзакции могут быть сделаны на блокчейне BTC с или без использования этой функции.
Как только 95% клиентов в сети обновятся до версии, которая поддерживает SegWit, консенсус автоматически изменится и откажется от любых старых транзакций без него.
Таким образом, мы имеем более плавный переход, который не заставляет пользователей немедленно обновлять свои ноды.
Виртуальные частные серверы (VPS) и их использование с нодами
Независимо от того, решили вы использовать виртуальный частный сервер или нет, зависит от ваших личных предпочтений.
Если вы решите запустить мастерноду, узел Lightning или даже узел холодного хранения монет, VPS будет выгоден, поскольку вы платите небольшую плату в обмен на защиту от DDoS-атак, не требуя покупки какого-либо оборудования и не заботясь о пропускной способности.
С другой стороны, если вы не примете достаточных мер безопасности, вы рискуете подвергнуть взлому ваш сервер и хищению ваших средств, если вы храните свои монеты в этих кошельках.
Это основы, но мы бы рекомендовали подробно изучить серверы VPS, прежде чем принимать решение о том, покупать ли его или нет.
Вопросы-Ответы
Если вы хотите поддержать сеть данной монеты или просто не хотите полагаться на другие полные ноды для вашей информации, вы можете разместить свой собственный узел и сохранить копию блокчейна. Это более безопасно, однако, установка займет больше времени.
Мастерноды и полные узлы схожи по своей функции, как обсуждалось в статье. Если ваша цель состоит в том, чтобы получить прибыль, тогда стоит запустить мастерноду.
Да, но это зависит от того, какой тип ноды вы решили разместить.
С мастерноами вам будут платить за ваши услуги, но вы должны учитывать первоначальные инвестиции, которые вы внесете на депозит в самом мастер-узле. Другим вариантом будет узел ставок, он будет предлагать вам пассивный доход, который будет увеличиваться по мере того, как вы будете больше в него инвестировать.
Это зависит от ваших аппаратных возможностей. Одновременно может быть запущен только один экземпляр кошелька, поэтому вам необходимо использовать виртуальные машины.
Если вы решите использовать VPS, вам необходимо убедиться, что вы используете не более 80-85 процентов доступных ресурсов, поскольку вы можете быть отстранены от участия в сети из-за плохого хостинга (нода будет работать нестабильно).
Выбор остается за вами, основываясь на нашем собственном опыте и исследованиях рынка, некоторые из ведущих поставщиков включают Amazon EC2, DigitalOcean Droplets, Vultr, OVH и Microsoft Azure.
Что такое Узлы (Ноды)?
Определение узла (ноды), может сильно варьироваться в зависимости от используемого контекста. Когда дело доходит до компьютерных или телекоммуникационных сетей, узлы могут предлагать различные цели, действуя либо как точка перераспределения, либо как конечная точка связи. Обычно узел состоит из физического сетевого устройства, но есть определенные случаи, когда используются виртуальные узлы.
Bitcoin Узлы
Даввинг в контексте блокчейнов, который разработан как распределенная система из сети компьютерных узлов, это то, что позволяет использовать биткойн как децентрализованную одноранговую (P2P) цифровую валюту, по своей архитектуре устойчивой к цензуре, без потребности участия посредников во время обмена от пользователя к пользователю (независимо от того, насколько он далеко находится).
Поэтому блокчейн узлы несут ответственность за то, что они действуют как точка связи, которая может выполнять разные функции. Любой компьютер или устройство, которое подключается к Биткойн интерфейсу, может рассматриваться как узел, в том смысле, что они каким-то образом обмениваются друг с другом. Эти узлы также могут передавать информацию о транзакциях и блоках, в распределенной сети компьютеров, с использованием Биткойн протокола одноранговой (P2P) сети. Однако каждый вычислительный узел определяется в соответствии с его конкретными функциями, поэтому существуют различные типы Биткойн узлов.
Полный Узел
Как правило, полный узел загружает копию Биткойн блокчейна, с каждым блоком и транзакцией, но это не является обязательным требованием к полному узлу (вместо этого может использоваться сокращенная копия блокчейна).
Портативный компьютер или ноутбук с новейшей версией Windows, Mac OS X или Linux.
200 ГБ свободного места на диске.
2GB оперативной памяти (RAM).н
Высокоскоростное подключение к Интернету со скоростью передачи не менее 50 кБ/с.
200 ГБ при первом запуске своего полного узла.
Ваш полный узел должен работать не менее 6 часов в день. Еще лучше, если он будет работать круглосуточно (24/7)
Помимо общедоступных узлов, существует много других скрытых узлов, которые не видны (не отслеживаемые узлы). Эти узлы обычно работают в Файрвол через скрытые протоколы, такие как Tor или просто потому, что они настроены так, чтобы не отслеживалось соединение.
Узлы отслеживания (Супер Узлы)
По сути, узел отслеживания или суперузел это тот же полный узел, который является общедоступным. Он связывается и предоставляет информацию любому другому узлу, который решает установить соединение с ним. Следовательно, суперузел в основном является точкой перераспределения, которая может действовать как источник данных и как мост связи.
Надежный суперузел обычно работает 24/7 и имеет несколько установленных соединений, передающих историю блокчейна и данные транзакций, на несколько узлов по всему миру. По этой причине суперузел, вероятно, потребует большей вычислительной мощности и лучшего интернет-соединения по сравнению с полным скрытым узлом.
Майнеры Узлов
Чтобы иметь возможность конкурентоспособно майнить Биткойн, в данный момент, нужно обеспечиться специализированными аппаратные устройствами и программами. Эти программы (программное обеспечение) не напрямую связаны с Bitcoin Core, а выполняются параллельно, в попытках майнить блоки Биткойна. Майнер может выбрать, работать самостоятельно (solo miner) или в группе (pool miner)
В то время как соло-майнеры полных узлов используют свою собственную копию блокчейна, пул майнеры работают вместе, каждый из которых вносит свои собственные вычислительные ресурсы (хеш мощность). В майнинг пуле только администратор пула требуется для запуска полного узла, который может быть назван пул майнером полного узла.
Lightweight или SPV Clients
Также известный как Simplified Payment Verification (SPV), клиенты lightweight, это те клиенты, которые используют сеть Bitcoin, но на самом деле не действуют как полный узел. Таким образом, клиенты SPV не вносят вклад в безопасность сети, потому что они не хранят копию блокчейна и не участвуют в процессе проверки и подтверждения транзакций.
Клиент vs Майнинг Узел
Важно отметить, что запуск полного узла, это не то же самое, что и запуск полного майнинг узла. В то время как майнерам приходится вкладываться в дорогостоящее оборудование и программное обеспечение для майнинга, каждый может запустить полный проверяющий (validating) узел. Более того, прежде чем пытаться добыть блок, майнер должен собрать пендинг транзакции, которые ранее были приняты как действительные для полных узлов. Затем майнер создает блок-кандидат (с группой транзакций) и пытается майнить этот блок. Если майнер сумеет найти правильное решение для этого блока, он транслирует его в сеть, а остальные полные узлы будут проверять достоверность этого блока. Поэтому, правила консенсуса определяются и защищаются распределенной сетью проверяющих узлов, а не майнерами.
Заключение
Узлы Биткойна взаимодействуют друг с другом через сетевой протокол Bitcoin P2P, и тем самым они гарантируют целостность системы. Узел, который неправильно использует или пытается распространять неверную информацию, быстро распознается честными узлами и отключается от сети.
Несмотря на то, что запуск полного проверяющего узла не дает финансовых вознаграждений, он настоятельно рекомендуется, поскольку он обеспечивает доверие, безопасность и конфиденциальность для пользователей. Полные узлы обеспечивают соблюдение правил. Они защищают блокчейн от атак и мошенничества ( от такого как, двойное расходование). Кроме того, полный узел не должен доверять другим, и он позволяет пользователю полностью контролировать свои деньги.
Что включает в себя реализация полного узла биткойн? (Russian)
Часто в прессе я вижу много противоречивых сообщений о том, чем фактически «является» реализация полного узла биткойн. Я счел это прекрасной возможностью попробовать разъяснить все как можно проще и собрать всю информацию в одном месте. Надеюсь, это поможет устранить путаницу. Отдельное спасибо Мэтту Коралло (основному разработчику) и моим коллегам из Purse за помощь мне при подготовке первоначальных черновиков, благодаря которой я справился так быстро.
Что такое полный узел и что он может делать?
Проще говоря, полный узел биткойн может играть роль основы сети биткойн, даже если все остальные узлы станут недоступны в сети и перейдут в автономный режим. По определению полные узлы должны быть в состоянии в полной мере соблюдать уникальные правила протокола биткойн. С учетом этого критерии, которые определяют различные типы узлов в сети, выполняющих полную проверку, могут немного отличаться, но по большей части используется общепринятый стандарт.
Иными словами, эффективный полный узел будет проверять каждый блок входящих транзакций, который он получает. Его цель при этом состоит в обеспечении того, чтобы все в этом блоке было полностью «действительным» (с учетом всех согласованных правил). Это позволяет полному узлу быть уверенным в общей целостности блока без необходимости доверять конкретному майнеру, который создал его.
Для того чтобы придерживаться набора согласованных правил биткойн, ваш полный узел должен быть способен выполнить следующее:
Полные узлы, которые описаны выше (также имеются другие правила, но они выходят за рамки темы этой публикации), эффективно активно участвуют в работе сети биткойн. Эти узлы постоянно проверяют, соответствуют ли транзакции/блоки всем согласованным правилам. Они также могут использоваться для цели перенаправления блоков другим полным узлам сети (если включена переадресации портов; подробнее об этом рассказывается ниже, но это не является непосредственным требованием для того, чтобы считаться полным узлом). Эти требования гарантируют, что блокчейн биткойна останется неизменным (не допускающим изменений), и его безопасности ничего не будет угрожать.
Текущий размер базы данных блокчейна после полной загрузки и проверки окажется примерно равным 110 ГБ (сведения о размере исторических данных можно найти здесь).
Поскольку сейчас нет никакой формальной спецификации биткойн, эталонный клиент (широко известный под названием Bitcoin Core) часто упоминается как лучшая спецификация для большинства разработчиков биткойн. Это гарантирует, что реализация останется полностью совместимой и не будет раздваивать сеть.
Дополнительные требования : некоторые полные узлы помогают передавать информацию о транзакциях другим узлам и обычно управляются такими сервисами, как обменники, исследователи блоков и майнеры (часто называются « экономические полный узлы »).
Услуги сети P2P
Полные узлы, которые также используются для проверки соответствия согласованным правилам, также могут предоставлять различные услуги активным участникам сети P2P.
Эти дополнительные услуги также играют ключевую роль в обеспечении безопасности легких узлов (SPV-клиентов) и позволяют обеспечить наличие у легких узлов точных сведений о транзакциях, так как они не обрабатывают весь блокчейн и должны ссылаться на полный узел для выполнения соответствующей синхронизации.
В число услуг, предоставляемых полными узлами, может входить следующее:
Основная часть этих услуг предлагается полными узлами после включения ими входящих соединений посредством перенаправления портов их узла на порт 8333. Чем больше полных узлов принимают подключения, тем более безопасной/децентрализованной становится сеть биткойн в целом. Узлами могут управлять частные лица или компании. Однако многие сервисы также часто решают запустить полный узел в облаке (подумайте о AWS/Google). Запустив экземпляр своего полного узла в облаке, компании и разработчики могут обеспечить себе фиксированный узел для постоянного архивирования/резервного копирования всего блокчейна, чтобы они в любое время по своему желанию могли запрашивать из него информацию.
Вы всегда можете просмотреть количество активных, перенаправляющих порты узлов в сети на таких сайтах, как Bitnodes и NodeCounter. Однако важно отметить, что некоторые люди (т.е. люди, для которых важнее всего конфиденциальность) не хотят пересылать свои порты, или, возможно, местная плата за пропускную способность канала для них слишком высока. Мы можем рассчитать довольно корректное приблизительное значение, но по большей части общее реальное число активных узлов неизвестно. И ничего страшного. Децентрализация биткойн не зависит от знания того, что каждый пользователь намеревается сделать со своим кошельком. 🙂
Открытые порты помогают сети биткойн выполнять инициализацию новых узлов, загружая исторические блоки на новые узлы, выполняющие синхронизацию. Сеть P2P в биткойн помогает противостоять цензуре. Пока где-то (будь то на сервере или в сохраненных данных в какой-либо децентрализованной сети, не подверженной цензуре) имеется копия записи, сеть биткойн будет продолжать существовать и процветать.
Преимущества эксплуатации полного узла
Самое главное — это безопасность! SPV-узлы не обрабатывают весь блокчейн, из-за чего возникает риск принятия ими недопустимых транзакций или блоков. Если только данные сервис не эксплуатирует параллельный экземпляр проверяющего согласованность полного узла с целью перепроверки собственных транзакций, поврежденные блоки/транзакции могут быть обработаны автоматически, что приведет к потенциальному финансовому ущербу/убытку для пользователей сервиса.
Конфиденциальность: то, что вы сами являетесь своим банком, предоставляет вам полный финансовый контроль. Поддерживая работу полного узла, вы можете помочь обеспечить максимальную конфиденциальность ваших транзакций (помните, что публичный блокчейн является … общедоступным). Большинство веб-кошельков и сервисов используют SPV-узлы, и поэтому им приходится передавать свои функции проверки сторонним серверами (в том числе ваши адреса). Эти сервисы знают, какие адреса являются вашими, и могут без особых усилий связать их вместе, чтобы выяснить, кому принадлежат средства из остатков по этим адресам. Чтобы максимально эффективно пользоваться сетью биткойн, вам нужно обеспечить работу полного узла.