Модели консенсуса: PoW, PoS и новый пионер, PoF

Источник · Перевод автора

То, как работает блокчейн, часто путается. Потому что люди сомневаются в том, как эта система может заменить банки. Потому что банки получают очень высокую комиссию за свои транзакции. Эти комиссионные ставки могут варьироваться от 10 до 20 процентов как для банков, так и для третьих сторон, таких как PayPal.

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

Разница между банком и свидетелями заключается в скорости и надежности транзакции, а также в разнице между комиссией, которую они получают. Блокчейн намного быстрее, надежнее и дешевле по сравнению с банками. Так как же эти свидетели получают награды, одобряя эти сделки?

Пока что было 2 метода. Первая — это система PoW, которую Сатоши Накамато предлагает в своей знаменитой статье. Второй — это система PoS, появившаяся в результате обсуждения на форуме в 2013 году. И, наконец, система Fleta PoF (номер заявки на патент США: 62717695), корейский проект.

Давайте внимательнее посмотрим на эти модели консенсуса.

Proof-of-work: первый, кто решил головоломку, получает приз

Пионер: Биткойн

Последователи: Ethereum, Monero, Ripple, EOS, Stellar, Cardano и др.

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

PoW (сокращенно Proof of Work) — это консенсусный протокол, представленный пионером, биткойнами и широко используемый многими другими проектами блокчейнов. Этот процесс в основном известен как «майнинг», и поэтому такие узлы в сети известны как «майнеры» , ПР представляет собой ответ на математическую проблему, которая требует значительной работы, но ее легко проверить на правильность после получения ответа.

Вернемся немного назад, давайте поговорим об «узлах». Узел — это мощный компьютер, который запускает программное обеспечение для биткойнов и помогает поддерживать работу биткойнов, участвуя в передаче информации. Любой может запустить узел, вы просто загружаете программное обеспечение для биткойнов (бесплатно) и оставляете определенный порт открытым (недостатком является то, что он потребляет энергию и место для хранения — сеть на момент написания занимает около 145 ГБ). Узлы распространяют транзакции биткойнов по сети. Один узел отправит информацию нескольким известным ему узлам, которые передадут информацию на известные им узлы и так далее. Таким образом, он в итоге довольно быстро обходит всю сеть.

Некоторые узлы являются узлами майнинга (обычно их называют «майнерами»). Они группируют незавершенные транзакции в блоки и добавляют их в цепочку блоков. Как они это делают? Решая сложную математическую головоломку, которая является частью биткойн-программы, и включая ответ в блоке. Головоломка, требующая решения, состоит в том, чтобы найти число, которое в сочетании с данными в блоке и передачей через хэш-функцию дает результат, который находится в определенном диапазоне. Это намного сложнее, чем кажется.

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

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

Proof-of-Stake: Вы должны быть в нем, чтобы выиграть

Пионер: Peercoin

Последователи: Dash, NEO, Pivx и так далее.

Описание в одном предложении является хорошей отправной точкой для объяснения сложных идей. Итак, вкратце:

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

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

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

Протокол доказательства кола эффективен не только для поощрения отдельных лиц к участию в системе, но и для того, чтобы любой человек не мог контролировать сеть. Чтобы выполнить атаку на 51%, индивидууму или группе необходимо владеть большинством монет в сети.

Я считаю, что доказательство кола (PoS) лучше, чем доказательство работы (PoW), несколькими способами:

  • PoS энергоэффективен. По указанным выше причинам вам не нужно столько вычислительной мощности для создания новых блоков, поэтому PoS лучше для окружающей среды.
  • PoS считается дешевле, потому что он требует меньше вычислительной мощности или электричества.
  • PoS кажется более децентрализованным, потому что нет смысла в сговоре. Тем не менее, PoS поддерживает более крупных заинтересованных сторон.
  • PoS должен нейтрализовать риск атаки в 51%, создаваемый PoW. Если вы хотите 51% контроля, вам нужно купить много криптовалюты.

Тем не менее, PoS не идеален.

Proof-of-Formulator: предотвращает разветвление блоков

Пионер: Fleta

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

FLETA разработала PoF (Proof-of-Formulator), позволяющий быстро генерировать и распространять блоки, используя последовательность вознаграждений Formulator для обозначения цели добычи и сужения диапазона распространения. Кроме того, наличие узла-наблюдателя обеспечивает немедленную аутентификацию и предотвращает разветвление блоков. Любой может сделать Formulator, поэтому дверь открыта для всех. Низкое время блокировки может быть достигнуто, поскольку последовательность интеллектуального анализа рецептора фиксирована, что делает диапазон распространения новых блоков очень маленьким.

Два актора выходят на первый план, направляя этот консенсус:

  1. Формуляторы (Formulators)

Разработчики представляют очень важную часть достигнутого консенсуса. Кто будет выбран в качестве Формулятором, зависит от нескольких алгоритмов. RankTable рассчитывает балл по всем FormulationAccount и ранжирует баллы. Полномочия для генерации новых блоков предоставляются Формулятору с самым высоким рангом:

Счет: uint64 (Phase) << 32 +

uint64 (binary.LittenEndian.Uint32 (hash [: 4]))

«Хэш» служит значением хеш-функции предыдущего блока, а «Фаза» — это значение, связанное со временем, которое показывает, сколько раз RankTable «повернул» или прошел через все составители для генерации блока.

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

2. Наблюдатели (Observers)

Основная цель наблюдателей — помочь предотвратить DDoS-атаки на блокчейн. Таким образом, безопасность платформы обеспечивается и сертифицируется.

Чтобы поддерживать систематическую последовательность и процесс системы, каждый разработчик получит доступ к узлу-наблюдателю, чтобы скрыть и скрыть свои IP-адреса. Это предотвращает любую форму целенаправленных DDoS-атак на разработчиков. Кроме того, наличие узла наблюдателя позволяет немедленную аутентификацию и предотвращает разветвление блоков. Любой может сделать формулировщика, поэтому дверь открыта для всех.

Предотвращание развилки (fork) блоков

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

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

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

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

Отказ от дефектных блоков

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

Узел-наблюдатель подтвердит, что первоначальному генератору не удалось создать блок в течение 3 секунд, и, таким образом, приступает к процессу подписания блока из разработчика, занявшего второе место.

TLDR;

Определенной группой для проверки блока являются узлы наблюдателей. Если 3 из 5 узлов наблюдателей подтверждают блоки, блоки могут быть сгенерированы. В начале, Noserver Node контролируется FLETA, но мы передадим работу этих узлов сторонним разработчикам, таким как валидаторы Hyper Formulator.

Роль Observer Nodes состоит в том, чтобы просто удвоить расходы. Таким образом, в отличие от PoW или PoS, каждый, кто владеет действующими узлами майнинга, предлагает генерировать блоки, ранги назначаются им согласно алгоритму — например, продолжительность работы с формулой — они будут создавать блоки и получать награды за блок в зависимости от ранжированного порядка

Примечание. Кроме того, узлы-наблюдатели будут делегированы третьей стороне, называемой «Hyper Formulator Network».

ЗАКЛЮЧЕНИЕ

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

Но…

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

В отличие от консенсуса по PoW, PoF не требует чрезмерных вычислительных ресурсов и не зависит от суммы «ставки», которой обладает кто-либо. Из-за этого это уменьшает конкуренцию за то, кто добывает и создает блоки, когда каждый получает ход. PoF также имеет встроенные механизмы для предотвращения возможности вил любого типа. Вы можете узнать больше о PoF в белой книге и техническом документе FLETA, и отчете Alpha Testnet.

Ресурсы:

  1. https://www.coindesk.com/information/how-bitcoin-mining-works

2. https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/proof-of-work

3. https://medium.com/nakamo-to/what-is-proof-of-stake-pos-479a04581f3a

4. https://hackernoon.com/what-is-proof-of-stake-8e0433018256

5. https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/proof-of-stake

6. https://www.forbes.com/sites/forbestechcouncil/2019/01/28/proof-of-work-and-proof-of-stake-how-blockchain-reaches-consensus/#ba636af68c82

7. https://medium.com/fleta-first-chain/breaking-down-fletas-proof-of-formulation-2860c6cb7178

8. https://www.fleta.io/

9. https://fleta.io/download/190426_Buisness_Whitepaper_EN_web.pdf