Что такое консенсус и как он достигается

17.06.2021 |

Для статьи про консенсус

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

Протокол и алгоритм консенсуса

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

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

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

Если привести аналогию с использованием двух самых крупных по капитализации монет, то Bitcoin и Ethereum можно считать протоколами, а вот то, как подтверждаются транзакции в сети, Proof of Work или Proof of Stake для второй версии Eth, и будет алгоритмом консенсуса. То есть, протокол биткоина определяет:

  • принцип взаимодействия узлов,

  • передачу данных между участниками сети,

  • предъявляет требования к успешности проверки блока.

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

Консенсус

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

Если говорить о целях консенсуса, то можно выделить следующие категории:

  • согласование, при котором все стороны соглашаются с решением в как можно большей степени;

  • совместное выполнение заданий, при том, это работает в интересах всех участников группы;

  • кооперирование, при котором интересы группы ставятся выше личных интересов;

  • обеспечение равенства всех голосов;

  • вовлечение в процесс принятия решения как можно большего количества участников.

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

Проблема византийских генералов

Математики считают, что любое явление и процесс в жизни можно описать при помощи формул и найти алгоритмические решение. Так и проблема, при которой консенсус не будет работать в интересах всей группы, была описана и смоделирована, а в последующем и решена, получила название “Проблема византийских генералов”.

Говоря о данном вопросе можно привести одно из классических описаний:

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

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

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

В понимании криптовалют, консенсус позволяет включать в блоки только те транзакции, которые являются истинными и не нарушат работоспособность сети, например, не потратят монеты два раза, или не попытаются списать несуществующие активы. Только, в отличие от византийских генералов, у криптовалютной группы нет необходимости добиваться перевеса “истинных” участников таком количестве, достаточно простого большинства. Хотя последнее и упрощает проведение атаки, известной как 51%, но цифровые активы находятся уже на такой стадии развития, когда проведение данных мероприятий для злоумышленников будет стоить настолько дорого, что становится просто невыполнимо.

Почему консенсус так важен в криптовалютах

Как говорилось в самом начале, алгоритм консенсуса в криптовалюте имеет решающее значение. Именно он позволяет говорить о безопасности и целостности цепочки распределенных блоков. Одним из лучших решений в настоящее время является Proof of Work, как устойчивый к всевозможным атакам, в том числе, и атаке 51%. Организовать последнюю, по крайней мере в сети биткоина, становится сложнее с каждым днем. Над достижением консенсуса в блокчейне первой криптовалюты трудится множество майнеров, использующих огромное количество оборудования и объем потребленной электроэнергии. Поэтому эффективная атака потребует от злоумышленника колоссальных затрат, которые могут стать несопоставимыми с полученным эффектом. Все это позволяет цифровой экономической модели свободных финансов работать надлежащим образом, а алгоритм консенсуса позволяет пользователям договариваться, какая из текущих версий распределенного реестра является истинной.