Что такое Консенсус?
Термин Консенсус (лат. Consensus – согласие) в общем случае трактуется как процесс принятия группой лиц единого решения, достижение согласия по какому-либо вопросу. При этом как такового голосования не проводится – решение принимается на основе отсутствия возражений у большинства участников.
Стоит отметить, что консенсусом называют не только сам процесс принятия решения, но и само принятое в результате такой процедуры решение, то есть результат.
Алгоритм консенсуса
Тот или иной метод, который используется для принятия решения, называется «механизмом консенсуса» или «алгоритмом консенсуса».
Алгоритм консенсуса имеет следующие цели:
- Согласование. Достижение максимальной степени согласия всех сторон
- Эгалитаризм. Соблюдение равноправия, равенство всех участников
- Кооперирование. Участники заинтересованы работать сообща
- Инклюзивность. В процессе достижения консенсуса должно участвовать максимальное количество участников
Консенсус в блокчейне
Алгоритм консенсуса в блокчейне – это набор определенных математических правил и функций, регулирующих работу сети.
Как известно, первой криптовалютой, в основе которой лежит технология блокчейн, является Биткоин. Однако и до его появления было достаточно много попыток разработки одноранговых децентрализованных платежных систем, но все они потерпели неудачу, главным образом, из-за неспособности решить основную проблему достижения консенсуса. Эта проблема получила название «задача византийских генералов». Более подробно о ней читайте в статье по ссылке.
Современные механизмы консенсуса в блокчейне основаны именно на данной криптографической задаче.
Для применения в отношении криптовалют принципы «византийской» задачи были несколько скорректированы и адаптированы под работу в P2P-сети.
Применяя данную задачу к блокчейну можно выделить следующие моменты:
- Стойкость к цензуре. Так как блокчейн – децентрализованная система, не нуждающаяся в едином управляющем органе, то соответственно никто никому не может запретить заниматься майнингом, т.е. участвовать в работе сети.
- Объективность. В блокчейне всегда находится актуальная информация касательно состояния сети. Таким образом, записи не нуждаются в подтверждении какими-то особыми авторитетными источниками.
Функции механизмов консенсуса в блокчейне
- Частота генерации новых блоков. Благодаря данным алгоритмам исключаются ситуации, каждый узел генерирует свой блок и записывает его в блокчейн. К примеру, в сети Биткоин блоки генерируются каждые 10 минут. Однако иногда возникают ситуации, когда два или более узлов генерируют блок практически одновременно, с разницей в долях секунды. В этом случае возникает конфликт, который разрешается в пользу узла, раньше всех создавшего блок. Транзакции, которые входили в конкурентный блок или блоки, помещается в список неподтвержденных транзакций, и отрабатываются в следующем блоке.
- Проверка информации в блоке. Все участники должны подтвердить, что данные в сгенерированном блоке верны. Проверке подлежат хеши транзакций как текущего, так и предыдущего блока, а также корректность подбора числа nonce.
- Размер вознаграждения. Размер вознаграждения зависит от сложности сети, причем, как это ни парадоксально в обратной пропорции.
- Недопущение двойного списания средств. Например, в сети Биткоин при проведении транзакции в блокчейн направляются все средства. После этого необходимая сумма перечисляется получателя, а остаток возвращается отправителю.
Основные алгоритмы консенсуса в блокчейне
- Proof-of-Work (PoW)
- Proof-of-Stake (PoS)
- Leased Proof-of-Stake (LPoS)
- Delegated Proof of Stake (DPoS)
- Proof-of-Devotion (PoD)
- Proof-of-Importance (PoI)
- Proof-of-Activity
- Proof-of-Burn
- Proof-of-Capacity
- Proof-of-Signature (PoSign)
- Proof-of-Authority (PoA)
- Proof-of-Brain
Все перечисленные механизмы консенсуса имеют свои преимущества и недостатки. Ознакомится с каждым из них вы можете по ссылкам.
Самыми распространенными в настоящее время являются два алгоритма — Proof-of-Work и Proof-of-Stake. Другие механизмы находят применение в намного меньшем количестве криптовалютных платформ. Это связано с их относительным малым возрастом, и, соответственно, не в полной мере отработанными технологиями.