Вы здесь

Блокчейн: что такое ноды и суперноды?

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

Блокчейн: что такое ноды и суперноды?

Что такое нода?

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

Криптовалютный блокчейн структурирован как сетевая архитектура между участниками сети (peer-to-peer, или сокращенно – P2P). Термин peer-to-peer, или P2P, означает, что компьютеры, участвующие в сети, равноправны. Термин не является новым, потому что, если сделать небольшой экскурс в историю, первое массовое использование P2P-сетей было реализовано сетью для обмена музыкальными файлами – Napster.

Несмотря на то, что сеть Napster была совсем несложной (просто протокол обмена файлами), но если сравнивать ее с сегодняшними блокчейн-сетями, ее основные принципы те же самые. В этом смысле самой старой P2P-сетью, которая больше всего напоминает работу текущих блокчейнов, является сеть SETI @ HOME. SETI @ HOME – это компьютерная сеть, созданная компанией SETI для анализа данных с расположенных по всему миру радиотелескопов для поиска разумной жизни в Галактике. Люди могут участвовать в этой сети, просто скачав программное обеспечение с их официального сайта.

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

Таким образом, термин «блокчейн-сеть» означает набор узлов, которые исполняют условия P2P-протокола для данного блокчейна. Сеть осуществляет управление и координирование действий полностью интегрированным, децентрализованным и распределенным образом – по таким канонам действует каждый пользователь в сети. Это означает, что эта сеть компьютеров со всего мира постоянно взаимодействует, инициируя новые транзакции. Каждый компьютер в этой сети является узлом, который полностью загрузил блокчейн. При этом сеть может перегружаться, но совместная работа делает ее масштабируемой по мере расширения.

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

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

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

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

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

Каковы основные задачи ноды?

Когда майнер или пользователь по какому-либо механизму рассматриваемого протокола пытается добавить новый блок транзакций в блокчейн, он передает блок всем нодам в сети. На основании легитимности блока (валидности подписи и транзакций) ноды могут принять или отклонить блок. Когда нода принимает новый блок транзакций, она сохраняет его и добавляет к остальным сохраненным блокам. Если кратко, работа нод протекает следующим образом:

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

Классификация нод

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

  • Ноды широкого вещания: они только инициируют транзакции и получают информацию о блокчейне от третьей стороны. Они известны как легкие кошельки, широко используемые в мобильных устройствах или просто людьми, которые не хотят загружать весь блокчейн.
  • Полные ноды: когда вы будете устанавливать полное программное обеспечение узла типа Bitcoin Core, то, помимо владения безопасным кошельком, вы загрузите копию блокчейна и станете нодой в сети Биткоин. Таким образом, вы будете инициировать транзакции, передавать информацию в остальную часть сети и проверять соблюдение правил консенсуса.
  • Ноды-майнеры: майнеры обязательно должны иметь копию цепочки блоков, помимо управления ПО, которое они предпочитают (BTCMiner, CGMiner). Эти ноды, помимо майнинга биткоинов и, следовательно, помощи в создании новых блоков, также выпускают и распространяют транзакции.

Насколько безопасна нода?

Ноды могут быть online или offline. Online ноды получают, сохраняют и передают все последние блоки транзакций другим нодам, в то время как ноды, не подключенные к сети, не делают этого. Когда offline нода переходит обратно в режим online, она сначала должна «нагнать» остальную часть блокчейна, загрузив все блоки, которые были добавлены в блокчейн, пока эта нода была в оффлайне. Этот процесс часто называют синхронизацией с блокчейном.

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

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

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

Среди этих мер можно отметить:

  • Использование официального программного обеспечения или ПО компании-разработчика с большим и проверенным послужным списком.
  • Защита закрытых ключей, мнемонических ключей и любой другой конфиденциальной информации о деятельности в блокчейне.
  • Использование компьютеров или электронного оборудования исключительно для своей майнинговой деятельности.
  • Использование программы sandboxing для изоляции программных приложений от остальной части вашей системы.
  • Использование системы MAC (обязательное управление доступом) или системных привилегий, которые позволяют вам запускать свое программное обеспечение для блокчейна с минимальными правами доступа к вашей ОС и другим системным API (это более высокая система защиты, чем sandboxing).

Что такое мастерноды?

Главные ноды, или мастер-ноды, являются уникальными характеристиками некоторых ныне существующих блокчейнов. Мастерноды обычно гораздо лучше оборудованы, чем обычные ноды. Помимо проверки, хранения и передачи транзакций, иногда мастерноды также ускоряют ход других событий в цепочке блоков в зависимости от природы этих событий, будь то голосование, выполнение протокольных операций и соблюдение законов построения цепочки блоков. Мастерноды всегда находятся в режиме онлайн (24/7) и обеспечивают гораздо больший объем памяти, чем обычные узлы. Так как для пребывания в статусе мастерноды обычно требуется гораздо больше ресурсов (электричество, время бесперебойной работы, обслуживание, место для хранения, память), сам статус в целом обеспечивает получение дивидендов в виде процентов.

Однако, учитывая особенности мастерноды, не каждый может запустить ее. Есть риск соблазна злоупотребить той властью, которую дает управление мастернодой, и именно поэтому от владельца ноды требуется залог в виде криптовалюты (часто довольно большой). Эта гарантия на тот случай, если владелец ноды нарушит правила цепочки блоков. Ставка процента, получаемого владельцем мастерноды, рассчитывается по вашему гарантийному депозиту. От удерживаемых средств зависит выигрыш владельца мастерноды, который измеряется процентом от всех сделок и операций, обрабатываемых мастернодами. Такие проекты, как DASH и Ethereum применяют в своей системе такое явление, как мастерноды.

Категория: 
Биткоин для "чайников"
Технология: 
3
Ваша оценка: Нет Средняя: 3 (1 оценка)
63169 / 0
Аватар пользователя Daritas
Публикацию добавил: Daritas
Дата публикации: чт, 03/21/2019 - 13:01

Что еще почитать: