Лучшее казино в мире

Коммутативное шифрование

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

Чтобы понять, как это работает на вычислительном уровне, давайте рассмотрим пример. Для простоты мы собираемся использовать битовую операцию XOR в качестве алгоритма шифрования для 8-битных слов фиксированной ширины. Это подходит для объяснения основной идеи, но на самом деле это не сработает с практической точки зрения, не говоря уже о том, чтобы обеспечить достаточно сильную криптографию. Однако механизм остался прежним.

Допустим, есть два участника, Алиса и Боб. Сначала Алиса шифрует простое сообщение своим секретным ключом и отправляет результат Бобу.

Теперь Боб шифрует результат, полученный от Алисы, своим секретным ключом. Однако Боб не может прочитать исходное сообщение, потому что он не знает ключа Алисы.

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

Ментальный покер

Теперь, когда мы узнали о коммутативном шифровании, мы можем взглянуть на протокол Mental Poker . Алиса и Боб снова будут служить образцом для объяснения, но вы можете добавить в игру произвольное количество игроков, если хотите.

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

1. Перетасовка колоды:

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

2. Сделать карты «вытягиваемыми»:

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

3. Сдача карт:

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

Практические соображения

Использование только чего-то вроде XOR - далеко не лучший выбор в качестве схемы шифрования для Mental Poker . Наиболее очевидная уязвимость называется «атакой с использованием известного открытого текста»: поскольку и Алиса, и Боб знают исходные идентификаторы карт, они могут получить секретный ключ злоумышленника из зашифрованных текстов с минимальными накладными расходами и раскрыть реальные карты. Использование надежных и безопасных алгоритмов 3 решает эту (и другие) проблемы, но в то же время может вносить заметные задержки из-за общего количества необходимых криптографических операций.

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

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

Вы можете прочитать исходную статью в том виде, в котором она была опубликована в Mathematical Gardener ↩︎

Дружеское напоминание: обратная операция XOR снова является XOR (поэтому она называется «инволютивной») ↩︎

Для подробного обсуждения возможных алгоритмов вы найдете дополнительную информацию, например, в этой статье ↩︎

Granblue Fantasy Casino - Как вывести выигрыш в онлайн-казино

Вам никогда не придется беспокоиться о превышении вашего кредитного лимита при внесении депозита для онлайн-покера с EntroPay, по мнению де Халлама.

Как взломать игровые автоматы в казино Morongo в Кабазоне, Калифорния - Казино: обналичивание в первые семь месяцев 2020 года

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

Слот-игра с Pooper In It

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

Как выиграть слушание по делу о нарушениях социального обеспечения

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

Выявление признаков бесплодия: симптомы, причины и первые шаги

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

Больше новостей
1-44

Сделать ставку Strange Tactics - Property

2-29

Ставки на матч UnderRateds - S-Delay

4-2

Ставка на игру Licht eSports - k1ck eSports.es

4-42

Ставка на игру Team Skyfire - uFrag.eu

4-39

Ставки на игру Team Dire - Copium

7-50

Ставка на игру MIBR - Khan

Больше ставок