Блокчейн. Часть 5. Алгоритм Консенсуса в Blockchain. Разновидности алгоритмов.

Блокчейн. Часть 5. Алгоритм Консенсуса в Blockchain. Разновидности алгоритмов.

Спартак Македонский

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


Серия из 18 статей о блокчейне.

СОДЕРЖАНИЕ:

1) Алгоритм консенсуса в Blockchain.

2) Алгоритм консенсуса vs Протокол.

3) Другие типы алгоритмов консенсуса.

1) Proof of Work (PoW).

2) Proof of Stake (PoS).

3) Leased Proof of Stake (LPoS).

4) Delegated Proof of Stake (DPoS).

5) Proof-of-Devotion (PoD).

6) Proof-of-Importance (PoI).

7) Proof-of-Activity.

8) Proof-of-Burn.

9) Proof-of-Capacity.

10) Proof-of-Signature (PoSign).

11) Proof-of-Authority (PoA).

12) Proof-of-Brain.

13) Proof of Credit Share (PoCS).

4) Важность алгоритмы консенсуса для криптовалют.



1) Алгоритм консенсуса в Blockchain.

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

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

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

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

1) Частоту генерации новых блоков — это помогает исключить ситуации, когда каждый узел генерирует свой блок и записывает его в блокчейн. Например, в блокчейне биткоина блок генерируется каждые 10 минут (итого 6 блоков в час). Иногда возникают ситуации, когда несколько узлов практически одновременно (с разницей в несколько долей секунды) генерируют блок, тогда возникает конфликт, который решается в пользу узла, который раньше всех создал блок. Транзакции, которые входили в «отвергнутый» блок/блоки, помещаются в список неподтвержденных транзакций и обрабатываются уже в следующем блоке.

2) Размер вознаграждения за сгенерированный блок. Размер зависит от сложности: чем выше сложность, тем ниже сумма вознаграждения.

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

4) Избежание повторной траты средств. Например, в блокчейне биткоина при отправке транзакции в блокчейн отправляются все средства, после чего указанная сумма уходит получателю, а остаток возвращается обратно на счет отправителя.


Алгоритмы консенсуса в блокчейне базируются на криптологической задаче византийских генералов. Однако для применения в криптовалютах ее принципы были немного изменены и адаптированы под работу в P2P-сети:

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

2) Объективность — в блокчейне всегда хранится актуальная версия журнала транзакций и поэтому эта информация не нуждается в подтверждении авторитетными источниками.

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


2) Алгоритм консенсуса vs Протокол.

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

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

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

Чтобы дополнительно это проиллюстрировать, рассмотрим, что Bitcoin протокол определяет: как должны взаимодействовать узлы, как данные должны передаваться между ними, и каковы требования к успешной проверке (валидации) блока. С другой стороны, алгоритм консенсуса отвечает за проверку балансов и подписей, подтверждение транзакций и фактическое выполнение проверки блоков, и все это зависит от консенсуса сети.



3) Другие типы алгоритмов консенсуса.

Существует множество типов алгоритмов консенсуса. Наиболее распространенными являются PoW и PoS. У каждого есть свои преимущества и недостатки, при попытке сбалансирования безопасности, с функциональностью и масштабируемостью.


1) Proof of Work (PoW).

PoW первый алгоритмом консенсуса, который был создан. Proof of Work переводится как «доказательство работы». Впервые, в 1993 году его принцип был описан в работе американской ученый в области информатики Синтии Дворк и израильского криптографа Мони Наора. Они создали теоретическую базу PoW, предлагая создать алгоритм, который бы предоставлял доступ к определенным данным только тем пользователям, которые правильно решили определенную задачу. Следующий шаг в развитии алгоритма «доказательства работы» был Hashcash Адама Бэка, созданный в 1996 году — этот инструмент помогал предупредить DoS-атаки и рассылки спама.

Официально термин Proof-of-Work был предложен Маркусом Якобсеном и Ари Джуэлсом в 1999 году. В 2008 году все эти наработки были соединены в разработке Сатоши Накамото, которую мы сегодня знаем как Bitcoin. Он используется Bitcoin и многими другими криптовалютами. Алгоритм Proof of Work является неотъемлемой частью майнинг процесса.

Майнинг PoW включает в себя многочисленные попытки хеширования, поэтому чем больше вычислительная мощность, тем больше попыток в секунду. Другими словами, майнер с высоким хешрейтом имеет больше шансов найти правильное решение для следующего блока (aka. хеш блока). Алгоритм консенсуса PoW гарантирует, что майнеры смогут только подтверждать новый блок транзакций и добавлять его в блокчейн, если распределенные узлы сети достигают консенсуса и соглашаются с тем, что хеш блока, предоставленный майнером, является подтвержденным proof of work (валидированным доказательством работы).

Более подробно читайте в этой статье: Что такое блокчейн. Часть 6. Proof of Work.


2) Proof of Stake (PoS).

Proof of Stake переводится как «доказательство доли владения»(от англ. proof of stake, дословно: «подтверждение доли») — метод защиты в криптовалютах, при котором вероятность формирования участником очередного блока в блокчейне пропорциональна доле, которую составляют принадлежащие этому участнику расчётные единицы данной криптовалюты от их общего количества. 

Этот алгоритм впервые предложен пользователем QuantumMechanic на сайте bitcointalk.org в 2011 году как альтернатива используемого в биткоине Proof-of-Work. PoS еще называют форджингом. Первая монета, которая частично была реализована на алгоритме доказательства доли владения — Peercoin. А если быть точнее, то в PPC использовался гибридный вариант: изначально использовался принцип майнинга по алгоритму Proof-of-Work, а после того как все монеты были добыты произошел переход к Proof-of-Stake. Первыми «чистыми» монетами, которые с самого начала работали на PoS, были Nxt и Blackcoin.

Хотя PoS и PoW имеют похожие цели, но представляют некоторые фундаментальные различия и особенности. Особенно во время валидации новых блоков.

В нескольких словах, алгоритм консенсуса Proof of Stake заменяет технологию майнинга PoW механизмом, в котором блоки проверяются в соответствии с долей участников. Валидатор каждого блока (также называемый форжер или минтер) определяется вложенной криптовалютой, а не количеством выделенной вычислительной мощности. Каждая система PoS может реализовать алгоритм по-разному, но в целом блокчейн обеспечивается псевдослучайным процессом выборов, который учитывает богатство узла и возраст монеты (как долго монеты заблокированы или находятся в доле), наряду с фактор рандомизации.

Блокчейн Ethereum в настоящее время основан на алгоритме PoW, но в конечном итоге протокол Casper будет выпущен для переключения сети с PoW на PoS в попытке увеличить масштабируемость сети.

Более подробно читайте в этой статье: Что такое блокчейн. Часть 7. Proof of Stake.


3) Leased Proof of Stake (LPoS).

Leased Proof of Stake переводится как «арендованное доказательство доли владения». Это гибридный вид алгоритма PoS. Его суть заключается в том, что более мелкие участники форджинга (или те, которые не могут участвовать в нем ввиду недостаточного количества монет на счету) как бы сдают в аренду свои монеты полноценным нодам, повышая этим шанс последних сгенерировать блок. Взамен «арендодатели» получают свою долю в общем вознаграждении. Это имеет схожесть с майнинг-пулами, которые на данный момент в своем большинстве обслуживают сеть биткоина. В системе LPoS участник имеет полное право сделать со своими монетами что угодно в любой момент: потратить их, обменять на другие монеты и т.д. При этом «договор аренды» автоматически разрывается и с этого момента «арендодатель» уже не может рассчитывать на долю.

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

Пример монеты, которая работает по алгоритму LPoS — Waves.

Более подробно читайте в этой статье: Что такое блокчейн. Часть 9. Leased Proof of Stake.



4) Delegated Proof of Stake (DPoS).

Delegated Proof of Stake — делегированное доказательство доли владения. Как и LPoS DPoS — это подвид алгоритма Proof-of-Stake. Часто DPoS называют технологической демократии. Работу этого алгоритма можно сравнить с компанией, в которой каждый сотрудник имеет своим голосом повлиять на выбор начальника или его увольнение, если последний не справляется со своими обязанностями. Суть DPoS состоит в том, что ноды сети методом голосования выбирают узел, который будет генерировать блоки.

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

Первая монета, в которой был применен алгоритм DPoS — Bitshares. Также он применяется в следующих монетах: EOSLisk, ArkSteem.


Более подробно читайте в этой статье: Что такое блокчейн. Часть 8. Delegated Proof of Stake.



5) Proof-of-Devotion (PoD).

Proof of Devotion — доказательство преданности. Алгоритм разработанный командой Nebulas (NAS) учитывает ранги пользователей на основе данных NR (Nebulas Rank). Участники с рейтингом свыше определенного уровня смогут становиться своеобразными «бухгалтерами» платформы. Они смогут участвовать в генерации новых блоков, и получать за это бонусы. Кроме того, им будет начисляться премия за проведение транзакций.

Пример монеты, которая работает по алгоритму Proof of Devotion - Nebulas.



6) Proof-of-Importance (PoI).

Proof of Importance — доказательство важности. Этот алгоритм похож на Proof-of-Stake, однако в нем учитывается не только количество монет на счету, но и другие факторы, такие как репутация ноды (определяется через специальный сервис), количество входящих и исходящих транзакций. Т.е. этот алгоритм дает право генерировать блоки только «полезным» членам сети.

На PoI разработана популярная криптовалюта  NEM (XEM).



7) Proof-of-Activity.

Proof of Activity — доказательство активности. Это гибридный вариант, который создан на основе алгоритмов PoW и PoS. В этом алгоритме блоки PoS параллельно ищутся с блоками PoW, т.е. блокчейн Proof-of-Activity состоит из блоков обоих типов.

Если возникает конфликт в системе, то вес блоков PoW больше, чем блоков PoS, так как в Proof-of-Work практически невозможно осуществить атаку «double-spend», которую теоретически возможно реализовать в Proof-of-Stake. В этом случае форджеры «принимаются за работу» только после того, как произведена работа майнерами. Это создает меры безопасности, которые не позволяют монополистам-холдерам каждый раз получать вознаграждение за генерацию нового блока или совершить атаку 51%. Это помогает сделать работу сети более безопасной и защищенной.


8) Proof-of-Burn.

Proof of Burn — это доказательство сжигания. Майнеру нужно «сжечь» монеты, чтобы иметь право заниматься майнингом. Под «сжечь» подразумевается отправка монет на адрес, к которому ни у кого нет доступа. Таким образом нода получает пожизненное право участвовать в майнинге и получать вознаграждение за генерацию блоков. Причем, чем больше монет «сжег» майнер, тем больше у него шансов найти блок. По данному алгоритму работает Slimcoin.

Более подробно об этом алгоритме читайте в этой статье: Что такое блокчейн. Часть 10. Proof of Burn. Алгоритм доказательство сжигания.



9) Proof-of-Capacity.

Proof of Capacity — доказательство емкости. Если в Proof-of-Work определяющим фактором является хешрейт, то в Proof-of-Capacity главную роль играет место на жестком диске. Для майнинга можно использовать даже самый обычный ПК, главное, чтобы на жестком диске были тысячи (а лучше сотни тысяч) терабайт свободного места, которое будет «забиваться» случайными хешами в надежде на то, что один из них поможет сгенерировать блок.

Данный алгоритм применен в монете Burst.


10) Proof-of-Signature (PoSign).

Proof of Signature — доказательство подписи. Это новый алгоритм, который появился достаточно недавно (в ноябре 2017 года) и еще даже не разработан до конца. Суть его состоит в том, блоки подписываются каждым узлом сети, за что последние получают вознаграждение. Если один из узлов попытается совершить атаку, то он будет исключен из сети без дальнейшего права участвовать в майнинге.

На данный момент эта технология применяется в монете XTRABYTES — это первый и пока единственный проект, который работает на основе алгоритма PoSign.


11) Proof-of-Authority (PoA).


Proof of Authority — доказательство полномочий. Этот алгоритм позволяет только избранным (изначально определенным нодам) генерировать блоки и устанавливать свои правила в сети. Подходит для создания частных сетей или государственных криптовалют. В качестве примера можно назвать сеть Kovan.

Более подробно об этом алгоритме читайте в этой статье: Что такое блокчейн. Часть 11. Алгоритм Proof of Authority.



12) Proof-of-Brain.

Proof of Brain — доказательство «мозговой деятельности». Майнинг происходит путем создания качественного контента, который поддерживается другими участниками сети через голосование (лайки и комментарии). Чем больше лайков и комментариев получит узел, создавший контент, тем больше монет он сможет «намайнить». На данной технологии работает сеть Steemit и ее форк Golos.


13) Proof of Credit Share (PoCS).

Proof of Credit Share – доказательство доли кредита. Созданный разработчиками GXChain алгоритм консенсуса, задача которого заключается в устранении дисбаланса при обмене информацией между крупными и небольшими компаниями. Расчет баллов PoCS осуществляется после завершения членами альянса процессов обмена данными. Оценивается PoCS в зависимости от частоты транзакций. Эти параметры учитываются для проведения оплаты. Те из членов альянса, которые имеют меньший счет, будут вынуждены оплачивать более высокие комиссии. В то же время для участников с высокими счетами транзакционная комиссия будет снижаться.



4) Важность алгоритма консенсуса для криптовалют.


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

Алгоритмы консенсуса играют самую важную роль в «жизни» монеты, поскольку определяют ее функционал, эмиссию и общие правила сети. В данный момент на первом месте по популярности находится Proof-of-Work за ним идет PoS, все чаще встречаются и гибридные алгоритмы. Каждый из алгоритмов имеет свои достоинства и недостатки, но в общем идеальный алгоритм консенсуса должен выполнять две важных задачи:

1) Атаки на сеть должны быть максимально затратными и иметь плохие последствия для самого атакующего

2) Защита сети должна хорошо вознаграждаться.


Алгоритм консенсуса Proof of Work считается одним из лучших решений Проблем Византийских Генералов, что позволило создать Биткойн как систему их решения. Это означает, что биткойн блокчейн обладает высокой устойчивостью к атакам, таким как атака 51% (или атака большинства). Не только потому что сеть децентрализована, но и из-за алгоритма PoW. Высокие затраты, связанные с процессом майнинга, делают его очень трудным и маловероятным, чтобы майнеры вкладывали свои ресурсы в разрушение сети.


Продолжения данной серии статей по теме блокчейн: Что такое блокчейн. Часть 6. Proof of Work.


Совпадения — это спланированные действия замаскированные под случайности. Чтоб где-то прибавилось, нужно чтоб где-то убавилось.

📢Telegram. Трейдинг. Публичные.

🌐 SpartaBTC. Основной. Финансы. Криптовалюты. Социология. Психология.

🌐 SpartaBTC. Трейдинг. ТА криптовалют. Tradingview.

🌐 SpartaBTC. Трейдинг. Образование. Публичный.

🌐 SpartaBTC. Мои статьи. Социология. Психология.

🌐 SpartaBTC. Опросы.

🌐 SpartaBTC. Мои цитаты.


🔒Telegram. Трейдинг. Закрытые.

🌐 SpartaBTC. Трейдинг. Закрытый канал (только публичный набор).

🌐 SpartaBTC. Трейдинг. Скриншоты с закрытого канала.

🌐 SpartaBTC. Трейдинг. Закрытый канал. Отзывы.

📖 Объяснение, как выглядят моя работа в закрытом канале.


📈 Tradingview.

✅ Tradingview (рус).

✅ Tradingview (анг).

Мои идеи обучения / работа на "живом графике".


📊 Трейдинг. Полезные ресурсы.

Полезные ресурсы для трейдеров #1

Полезные ресурсы для трейдеров #2


👤 Моя социальная активность.

✅ Youtube.

✅ Instagram.

✅ Twitter.

Teletype (мой блог статей).

✍️ Написать мне @SpartakMakedonskiu


🧠 Социология.

Часть 1. Мои статьи. Психология и социология. Финансы и крипта. 2020.

Часть 2. Мои статьи. Психология и социология. Финансы и крипта. 2021.

Часть 3. Мои статьи. Психология и социология. Финансы и крипта. 2022.

Часть 4. Мои статьи. Психология и социология. Финансы и крипта. 2023.


Report Page