Главная особенность технологии распределенного реестра заключается в том, что в ней отсутствует центральный орган управления. Это означает, что в основе технологии участники должны согласовать состояние реестра. Это фундаментальная часть любой распределенной системы, и то, как она реализована, определяет остальную часть архитектуры. Это называется алгоритмом консенсуса..
Из-за своего подавляющего характера алгоритм консенсуса является сердцем распределенной системы. Это центральная часть, и для тех, кто хочет создать протокол, необходимо тщательно продумать ее дизайн и реализацию. Хороший алгоритм консенсуса должен давать следующие результаты:
1. Соглашение: Все узлы в сети должны достичь результата в отношении состояния сети..
2. Отказоустойчивость: Алгоритм должен иметь возможность работать должным образом даже при наличии неисправных или недобросовестных узлов..
3. Прекращение действия: Процесс консенсуса должен иметь четкую остановку, после которой все узлы приходят к решению..
4. Целостность: Все узлы должны достичь окончательного результата в течение одного согласованного цикла.
Это основные характеристики рабочего механизма консенсуса. Конкретные алгоритмы могут иметь больше или разные версии представленных концепций, но в некотором смысле все они разделяются любым децентрализованным протоколом. Кроме того, консенсусные алгоритмы имеют существенный уровень свойств, которые им необходимы для работы..
Это:
1. Последовательность: Это свойство означает, что все честные узлы производят одно и то же значение, которое считается правильным..
2. Допуск: Способность выдерживать некоторые неисправные или недобросовестные узлы и способность сети восстанавливаться.
3. Живучесть: Пока количество скомпрометированных узлов ниже допустимого предела, они не могут остановить или задержать достижение консенсуса в сети..
4. Аутентификация: Это свойство гарантирует, что существует механизм проверки идентичности узлов-участников..
5. Структура кворума: В распределенной системе для работы необходимо минимальное количество голосов..
6. Фиксация авторства: Способ проверки личности аккаунта отправителя, чтобы он мог оспорить транзакцию..
7. Равные полномочия: Все узлы в сети должны иметь одинаковую пропускную способность, при этом центральный орган не может отменить решение..
Опять же, это базовый набор свойств для идеального децентрализованного алгоритма консенсуса. Не все существующие механизмы соответствуют этому набору правил. Одним из примеров является IOTA, в которой есть центральный наблюдатель, способный изменять решения узлов. Для пуриста такое включение означает, что IOTA не является действительно децентрализованной сетью, хотя у нее есть некоторые другие свойства..
Прежде чем рассматривать наиболее распространенные используемые консенсусные алгоритмы, мы должны кое-что отметить. Те, которые мы обсудим, по большей части работают с блокчейнами. То есть структура данных, известная как блокчейн, – это то место, где они должны работать. В децентрализованной сети могут использоваться и другие структуры данных, такие как ориентированный ациклический граф (DAG), хешграф и т. Д. У них есть свои согласованные алгоритмы..
При этом блокчейн остается самой популярной структурой данных. Впервые он был реализован с помощью Биткойн; Ethereum принял его, и даже сейчас его используют новые протоколы третьего поколения, такие как Cardano. Похоже, что в обозримом будущем блокчейн останется доминирующей технологией..
Китай находится в авангарде интеграции блокчейнов. Проверить вся их стратегия блокчейн и почему они так быстро интегрируют технологию блокчейн в свою экономику.
Типы алгоритмов консенсуса
Здесь мы дадим общий обзор самых популярных в блокчейне..
Доказательство работы
Доказательство работы – это первый жизнеспособный алгоритм консенсуса, который до сих пор наиболее широко используется. В нем отдельные узлы соревнуются, чтобы найти хэш-функцию, которая представляет список транзакций внутри блока и добавленный поверх него одноразовый номер. Одноразовый номер – это число, которое требует, чтобы хеш-функции предшествовало несколько нулей, чтобы считаться действительной. Процесс поиска этой хеш-функции известен как майнинг..
Нажмите здесь, чтобы прочитайте все о полном руководстве по архитектуре Биткойн.
Все сетевые узлы соревнуются в очень требовательном к оборудованию процессе майнинга, чтобы получить биткойн в качестве награды. Многие критикуют, что энергоемкость доказательства работы расточительна и вредна для окружающей среды. Кроме того, затраты на электроэнергию и оборудование для майнинга привели к централизации сети в нескольких странах..
Это привело к разработке новых консенсусных алгоритмов..
Доказательство ставки
Основная альтернатива доказательству работы (PoW), доказательство доли владения (PoS), быстро завоевала популярность в мире блокчейнов. В нем узлы сети вносят основную валюту протокола и блокируются на некоторое время. Это позволяет им участвовать в полуслучайной лотерее для проверки следующего блока транзакций..
Возможность быть выбранной зависит от количества поставленных монет. Узел с депозитом в 1000 монет с большей вероятностью будет выбран, чем узел с 500. Это может привести к централизации, поскольку узлы с более крупными денежными пулами могут доминировать в сети. Даже с этой возможностью сторонники утверждают, что PoS дешевле в эксплуатации, чем PoW, поскольку для проверки транзакций не требуется дорогостоящее оборудование..
Делегированное подтверждение ставки
Это разновидность PoS. Здесь заинтересованные стороны используют свои монеты, чтобы выбрать, какой узел будет проверять следующий блок транзакций. Узлы, которым участник выделил деньги, становятся валидаторами и отвечают за распространение блоков в сеть. За них могут проголосовать заинтересованные стороны, если они будут действовать медленно или нечестно. В этой модели более высокий уровень централизации, поскольку количество узлов, которые могут стать валидаторами, ограничено и они выбираются до голосования другими способами..
Доказательство прошедшего времени
Это предпочтительный алгоритм консенсуса для нескольких цепочек блоков. Здесь каждый узел генерирует случайный период ожидания, в течение которого узел переходит в спящий режим. Узел, который просыпается первым, становится следующим валидатором. Недостатком является то, что идентичность узлов должна быть известна системе, поскольку период ожидания должен быть случайным. В противном случае нечестные узлы могут обмануть систему..
Алгоритм консенсуса лежит в основе блокчейна. Это главное проектное решение, которое определяет, что возможно и насколько быстро будет работать остальная часть системы. Для тех, кто хочет развиваться по данному протоколу, или для инвесторов, пытающихся определить, какой протокол будет лучшим в будущем, очень важно понимать основы..