Книга: Блокчейн от А до Я. Все о технологии десятилетия

Консенсус

Консенсус

Определение

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

Как мы уже говорили ранее, «информационный консенсус в области распределенных систем – это способ, при помощи которого узлы (участники) могут договориться о легитимности сделки и обновлять бухгалтерские книги, представляющие собой стройную систему согласованных фактов»[102].

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

Таким образом, в теоретической информатике проблема консенсуса требует наличия протокола, который отвечает следующим критериям:[103]

• окончание: любой процесс должен получить некую величину;

• целостность: все процессы принимают значение, которое было предложено одним из процессов;

• согласие: все процессы принимают одно и то же значение.

Протокол, который может гарантировать эти свойства в присутствии не менее t отключений, называется t-robust.

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

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

ПОДТВЕРЖДЕНИЕ ЗАИНТЕРЕСОВАННОСТИ ИЛИ УЧАСТИЯ

Мы знаем, что майнинг – это энергоемкий процесс и некоторые участники, в частности в эфириуме, предпочитают отбросить proof of work и перейти к proof of stake в связи со слишком большими энергозатратами на огромные вычислительные мощности.

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

Обзор консенсуса

Чтобы обеспечивать защиту, упорядоченный и целостный вид реестра, существует ряд алгоритмов консенсуса (по дате появления).


1998 год | Подтверждение выполнения работы proof of work (PoW)[104]: пользователи должны несколько раз выполнить алгоритм хеширования или просчитать математическую головоломку согласно определенному алгоритму для подтверждения электронных транзакций:

• биткойн (специфика: все узлы являются анонимными и потенциально вредоносными, поэтому необходим proof of work, «бесполезный» на первый взгляд, но необходимый для безопасности сети);

• эфириум (специфика: та же, что и для биткойна);

• Peercoin и Decred[105] используют гибридный метод PoW/PoS, чтобы воспользоваться преимуществами обеих систем и создать более устойчивый консенсус.


1998 год | Paxos


2013 год | Доказательство заинтересованности или участия – proof of stake (PoS)[106]: пользователь должен обладать некоторым количеством криптовалюты, если он хочет претендовать на подтверждение дополнительных блоковблокчейнейне, и получать за это вознаграждение, если таковое предусмотрено:

• проект Ethereum 2017 (Sharding[107]);

• Peercoin[108], подтверждение использования PoS;

• (i) подтверждение обладания – proof of hold (РоН): чем больше у вас денег, тем больше у вас прав на проведение проверки;

• (ii) подтверждение использования – proof of use (PoU): чем больше вы обмениваете валюту, тем больше у вас прав на проведение проверки;

• (iii) подтверждение ставки/время – proof of stake/time (PoST): математическая функция, которая учитывает время владения объектом, чтобы определить вероятность быть выбранным для проверки следующего блока в блокчейне (примеры: Peercoin, Vericoin);

• (iv) подтверждение минимальной ставки/время – proof of minimum aged stake (PoMAS): метод, объединенный со взвешиванием (s);

• (v) подтверждение значимости – proof of importance (Pol): пользователи, которые имеют наибольшее подтверждение ставки в криптовалюте, будут вознаграждены (пример: NEM).

PROOF OF WORK И PROOF OF STAKE

Proof of work (подтверждение работы) и proof of stake (подтверждение ставки или владения) – два наиболее известных способа проверки блоков. Они состоят из двух совершенно разных механизмов консенсуса.

Процесс, который заключается в решении вычислительных задач, подразумеваемый proof of work, называется майнингом: мы говорим о майнерах.

Процесс решения вычислительных задач, подразумеваемый proof of stake, называется минтинг: мы говорим о минтерах.


2013 год | Делегирование права на владение – delegated proof of stake (DPoS): здесь консенсус использует систему репутации, набираемой путем голосования, для подбора ограниченной группы людей, которым все доверяют. Только такие люди имеют право записывать блоки и делают это в случайном порядке. Все обладатели жетонов могут голосовать, голоса взвешиваются по количеству фишек, которыми владеет голосующий.

• Bitshares[109];

• Graphene [110];

• Steem[111].


2013 год I Raft[112] (производный от Paxos):

• подтверждение права: один или несколько узлов могут добавлять блоки;

• подтверждение активности (в соответствии с профилями узлов);

• подтверждение возможности (в зависимости от профилей узлов);

• подтверждение личности (например, beAchain);

• толерантность к ошибкам типа задачи византийских генералов (например, Hyperledger и beAchain).


2016 год | Juno[113] (производный от Raft) – творение JP Morgan.


2016 год | Tangaroa[114] (производный от Raft).


КОНСЕНСУС МЕЖДУ МАШИНАМИ, МЕЖДУ ОБЪЕКТАМИ, УСТАНАВЛИВАЕМЫЙ BEACHAIN

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

Оглавление книги


Генерация: 0.342. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз