Статьи

Все о византийской отказоустойчивости в блокчейне

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

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

Подробнее об основных проблемах византийской отказоустойчивости

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

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

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

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



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

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

Те. речь идет о системе, способной решить описанную выше проблему и именуемой решением Byzantine Fault Tolerance (BFS). Отсюда и появился алгоритм консенсуса ВОУ.

В целом решение византийской отказоустойчивости предотвращает отказ системы в результате действий ненадежных (неправильных) участников.

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

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

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

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

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

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

Как блокчейн может решить проблему византийских генералов

У технологии на основе блокчейна будет несколько способов решить проблему византийских генералов. Разница только в требуемом алгоритме консенсуса и способе применения RVCA. Различные решения можно найти как на «prof-of-work», так и на «proof-of-steak».

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

Интересно, что Сатоши Накамото не упомянул «проблему византийских генералов» в оригинальном техническом описании биткойнов. Но после запуска сети Биткойн неизвестный создатель первой криптовалюты предложил решение этой проблемы с помощью аглоритма консенсуса Proof-of-Work.

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

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

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

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

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

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

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

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


Подборка статей по криптовалютам и технологии блокчейн. Подпишитесь на нас в социальных сетях.

Информация для Вас была полезна?
0
0
0
0
0
0
0

Похожие статьи

Кнопка «Наверх»