Задача Византийских Генералов Решение • Уточнённое определение

1 шаг. Каждый генерал посылает всем остальным сообщение, в котором указывает численность своей армии. Лояльные генералы указывают истинное количество, а предатели могут указывать различные числа в разных сообщениях. Генерал-1 указал 1 (одна тысяча воинов), генерал-2 указал 2, генерал-3 указал трем остальным генералам соответственно x, y, z, а генерал-4 указал 4.

Задача византийских генералов: definition of Задача византийских генералов and synonyms of Задача византийских генералов (Russian)

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

Эта задача™, впервые опубликованная в 1975 году и получившая свое название в 1978 году, описывает сценарий, когда два генерала атакуют общего™ врага. Первый™ генерал считается лидером, а второй™ – последователем. Армии каждого генерала по отдельности недостаточно, чтобы победить вражескую армию, поэтому им нужно сотрудничать и атаковать одновременно. Этот сценарий выглядит просто™, но есть один нюанс:

Черноволов Петр Васильевич, старший консультант банка
Мнение эксперта
Черноволов Петр Васильевич, старший консультант банка
Если у вас есть вопросы, задавайте их мне.
Задать вопрос эксперту
Задача об m мафиози — Уходящий Кот — LiveJournal • Соответствующий рекурсивный алгоритм был предложен в 1982 г. Так вот, как ни странно, при таких уточнениях решение существует. Пишите, если возникли вопросы, мы во всем разберемся!

Задача византийских генералов — Вики

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

Что такое BFT? Задача византийских генералов. Примеры 2019

Разбираемся в основах Blockchain: Задача™ Византийских Генералов. Часть 1 / Хабр
Эксклюзивный блокчейн – это такой, где для участия в сети требуется разрешение, тогда как к сети инклюзивного блокчейна может присоединиться любой. Также участники эксклюзивного блокчейна могут пользоваться полными или выборочными привилегиями. Командир посылает L1, L2, L3 значения x, y, z соответственно;.
4-ый шаг. Каждый генерал проверяет каждый элемент во всех полученных векторах. Если какое-то значение совпадает по меньшей мере в двух векторах, то оно помещается в результирующий вектор, иначе соответствующий элемент результирующего вектора помечается неизвестен.

Задача византийских генералов (Оскар Хуторянский) /

  1. Если все верные генералы атакуют — Византия уничтожит противника (благоприятный исход).
  2. Если все верные генералы отступят — Византия сохранит свою армию (промежуточный исход).
  3. Если некоторые верные генералы атакуют, а некоторые отступят — противник со временем по частям уничтожит всю армию Византии (неблагоприятный исход).

Эта задача™, впервые опубликованная в 1975 году и получившая свое название в 1978 году, описывает сценарий, когда два генерала атакуют общего™ врага. Первый™ генерал считается лидером, а второй™ – последователем. Армии каждого генерала по отдельности недостаточно, чтобы победить вражескую армию, поэтому им нужно сотрудничать и атаковать одновременно. Этот сценарий выглядит просто™, но есть один нюанс:

Задача Византийских Генералов Решение

Задача византийских генералов — в криптологии задача взаимодействия нескольких удалённых абонентов, которые получили приказы из одного центра. Часть абонентов, включая центр, может быть злоумышленниками (или злоумышленники подменили сообщения при передаче). Нужно выработать единую стратегию действий, которая будет выигрышной для абонентов.
Соответствующий рекурсивный алгоритм был предложен в 1982 г. Последовательность действий для каждого i-го конфликта.

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

Частные и публичные блокчейны

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

Черноволов Петр Васильевич, старший консультант банка
Мнение эксперта
Черноволов Петр Васильевич, старший консультант банка
Если у вас есть вопросы, задавайте их мне.
Задать вопрос эксперту
Что такого особенного в этой системе? • Примеры блокчейн-консорциумов , Hyperledger от Linux Foundation и Quorum от JP Morgan. Следует отметить, что вопрос об управлении криптовалютами требует дальнейшего исследования. Пишите, если возникли вопросы, мы во всем разберемся!

Задача о византийских генералах

Блокчейн – это децентрализованные леджеры, которые по определению не контролируются центральным органом. Из-за значений, хранящихся в них, злоумышленники имеют хороший экономический стимул™, чтобы попытаться инициировать ошибку™. Тем не менее, Византийская отказоустойчивость и, следовательно, решение проблемы византийских генералов для блокчейна просто™ необходимы.
Даже SpaceX рассматривает ее как потенциальное требование к своим системам. Публичный блокчейн полностью открыт, и любой может присоединиться к сети и сделать свой вклад.

Проблема двойных трат

Инклюзивные и эксклюзивные блокчейны
Задача византийских генералов — в вычислительной технике мысленный эксперимент, призванный проиллюстрировать проблему синхронизации состояния систем в случае, когда коммуникации считаются надёжными, а процессоры — нет. Идея та, что посылают Все генералы всем письмо В котором честно сообщают Своё количество полков.
Парадигма лидера™-последователя, описанная в задаче™ двух генералов, трансформируется в установку командир-подчиненный. Для достижения консенсуса здесь командир и каждый™ подчиненный должны™ договориться об одном и том же решении (об атаке или отступлении).

Содержание

P.S. А причем здесь византийские генералы? При том, что та задача, имеющая строгое математическое решение, в жизни не встречается, поскольку у тех самых генералов не стоит задачи вычислить шифрующихся предателей, а обычно бывает наоборот. Так что, хотя в математике задача двух генералов неразрешима, а византийских — имеет решение, в жизни все обстоит несколько иначе.

Частный случай

Даже если первое™ послание будет доставлено, второй™ генерал должен™ подтвердить (ACK (acknowledge), обратите внимание на сходство с трехсторонним рукопожатием в TCP), что он получил сообщение, поэтому он отправляет гонца обратно, тем самым воспроизводя предыдущий сценарий, где посланник может быть захвачен. Это перетекает в бесконечные ACK, и из-за этого генералы не могут достичь согласия.
Это перетекает в бесконечные ACK, и из-за этого генералы не могут достичь согласия. Византийская армия состоит из N легионов, каждым из которых командует свой генерал.

N «синих» генералов возглавляют армии в горах и готовятся атаковать «зеленых» в долине. Для связи атакующие используют надёжную связь (например, телефон). Однако, из n генералов m являются предателями и активно пытаются воспрепятствовать согласию лояльных генералов.Согласие состоит в том, чтобы все лояльные генералы узнали о численности всех лояльных армий.

Алгоритмическое управление

  1. Командир отправляет с свое значение каждому из подчиненных.
  2. Для каждого i, пусть vi будет значением, которое i-й подчиненный получает от командира, либо же будет использовано значение ОТСТУПИТЬ, если подчиненный не получает никакого значения. i-й подчиненный выступает в качестве командира в Алгоритме ОМ(m-1) и отправляет значение каждому из n-2 оставшихся подчиненных.
  3. Для каждого i, при условии, что ji, пусть vj будет значением, которое i-й подчиненный получил от j-ого подчиненного на шаге (2) (используя Алгоритм ОМ(m-1)), или использует значение ОТСТУПИТЬ, если не получает никакого значения. i-й подчиненный использует значение большинства (v1, …, vn-1).

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

Доказательство устойчивости криптовалютных систем

Результат выглядит следующим образом: ( 1,2,f (x,y,z), 4 ), где f (x,y,z) – значение, встречающееся как минимум дважды среди чисел x,y,z или «неизвестное» в случае, если все 3 числа различны. Поскольку x,y,z и функция f (x,y,z) у всех верных генералов совпали, следовательно, согласие достигнуто и враг будет разбит.
Для связи атакующие используют надёжную связь например, телефон. Суть в том, что некоторые генералы нелояльны и попытаются сбить с толку других генералов.

❗Голосуйте в нашем опросе:

Понравилось? Поделись с друзьями:
Оставить отзыв

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