Византийская отказоустойчивость в блокчейне: более пристальный взгляд


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

Довольно часто встречается термин «механизм консенсуса BFT». BFT расшифровывается как Byzantine Fault Tolerance и представляет собой теоретическую проблему в компьютерных системах, существовавших задолго до Биткойна.

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

Объяснение византийской общей проблемы

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

Впервые эта проблема была обнаружена в статье 1982 года под названием Византийская общая проблема Лесли Лэмпорт, Роберт Шостак и Маршалл Пиз. В газете написано:

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

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

bft_img2
Источник: Википедия

Следовательно, генералы должны найти способ гарантировать, что:

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

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

По сути, византийская отказоустойчивость — это условие, которое не позволяет системе страдать от ненадежных (нелояльных) участников.

Решение проблемы византийского генерала

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

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

Большинство блокчейнов Proof-of-Stake могут допустить неисправность до одной трети своих узлов, что оставляет место для 3ф+1 правило, где F — количество нелояльных узлов, а формула дает количество лояльных узлов, которое должно быть в системе.

Например, в системе с 4 узлами только один из них может быть неисправным, чтобы соответствовать критериям (3f+1).

В феврале 1999 года Мигель Кастро и Барбара Лисков из Лаборатории компьютерных наук Массачусетского технологического института (MIT) опубликовали статью, в которой представили решение проблемы с помощью так называемого Практичная византийская отказоустойчивость.

Как блокчейн решает общую византийскую проблему?

Технология на основе блокчейна предлагает несколько решений общей византийской проблемы. Различия связаны с назначенным алгоритмом консенсуса и их подходом к BFT, но и Proof-of-Work, и Proof-of-Stake обеспечивают жизнеспособные решения.

bft_img1

Как Биткойн решает общую византийскую проблему?

Интересно, что в оригинальном официальном документе Сатоши Накамото не упомянул Византийскую общую проблему, но с введением сети Биткойн создатель под псевдонимом фактически решил ее с помощью алгоритма консенсуса Proof-of-Work (PoW).

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

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

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

Все правила ясны и объективны, а это значит, что информация не может быть подделана.

Как Proof-of-Stake решает общую византийскую проблему?

Сети, управляемые алгоритмом консенсуса proof-of-stake, полагаются не на майнинг, а на доли. Чтобы стать валидатором сети, пользователь должен сначала внести деньги в систему. Те, кто владеет более крупной долей, также могут проверять больше блоков и получать более крупные вознаграждения. Те, кто пытается подделать информацию, рискуют потерять свою долю.

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

Существуют разные попытки решить проблему, основанные на необходимости системы и подходе команды. Например, с делегированным доказательством доли (dPoS) достижение консенсуса происходит значительно быстрее. С другой стороны, некоторые системы реализуют практическую византийскую отказоустойчивость.

СПЕЦИАЛЬНОЕ ПРЕДЛОЖЕНИЕ (при поддержке)

Binance Free $100 (эксклюзивно): используйте эту ссылку, чтобы зарегистрироваться и получить $100 бесплатно и скидку 10% на Binance Futures в первый месяц. (условия).

Специальное предложение PrimeXBT: используйте эту ссылку, чтобы зарегистрироваться и ввести код POTATO50, чтобы получить до 7000 долларов США на свои депозиты.


Купить крипту на BINANCE и получить ваучер на 100USDT! Успей сейчас, предложение ограничено!


Оставьте ваш отзыв!

Leave a reply

Майнинг, блокчейн, криптовалюты, цены, купить-продать, графики, прогнозы
Logo
Enable registration in settings - general