Дата:
От кого: dutchman  
Заголовок: алгоритм аутентификации "Алисы" :)
Сайт: -


Итак, ниже алгоритм "аутентификации" ИХ :) с указанием возможных
методов "cheating" (жульничеств :) и путей уменьшения их влияния.

Несколько слов о PKI (public key infrastructure), для тех кто не в курсе.

Существует шифр, при котором сообщение, подлежащее сокрытию,
зашифровывается с помощью одного ключа, а расшифровывается
с помощью другого. Эти ключи связаны, но не существует простого способа
найти один ключ из другого. Существуют также различные алгоритмы,
реализующие такой метод. Один из них (RSA) основан на том, что нельзя
простым способом разложить большое число на простые множители. То
есть нельзя из одного ключа вычислить другой, не проведя такое разложение.
Алгоритм весьма криптостойкий и активно используется в современной
коммерции.
ПРИНЦИПИАЛЬНО возможно вычислить другой ключ (secret key) из открытого
(public key) путем разложения последнего на множители. Такое уже проводилось
(вроде даже у нас в институте) экспериментально для ключа длиной в 512 бит, но заняло долгое время на мощном кластере. Таким образом можно предположить,
что взлом ключа длиной скажем в 1024 бит будет практически невозможен (или
что то же самое страшно дорог) с современной вычислительной техникой,
но с этим вероятно легко справится "Поля" :)

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

КАК ПРОВОДИТЬ ТЕСТ
1. Итак, для начала каждый участник теста генерирует пару ключей и с помощью
pulic key шифрует сообщение. После этого ЗАШИФРОВАННЫЙ private key,
pulic key и сообщение публикуются где-нибудь в общедоступном месте. Для
того чтобы исключить влияние организаторов теста на владельцев ключей,
необходимо соблюдать анонимность участников. Public, private keys и сообщение - это файлы у которых есть имя. Поэтому имя должно быть выбрано
случайно, а public key не должен содержать никакой информации, по которой
можно было бы вычислить его владельца. Публикация файлов проводится
через анонимный почтовый сервер.

Что у нас есть:
МНОГО троек "зашифрованный private key, public key", сообщение. Эту
информацию может скачать себе на компьютер каждый участник теста.

2. Теперь необходимо выбрать какое сообщение передавать "ИМ" на анализ. Делать это необходимо жеребьевкой по правилам, понятным всем. Например,
на основе результатов лотерии СПОРТЛОТО, что покажут по телевизору,
результатов спортивного матча или что-то в этом роде.

ВНИМАНИЕ, ВОЗМОЖНОСТЬ CHEATING: В случае если организаторы теста
желают сфабриковать результаты, они могут создать множество фальшивых
сообщений доступ к закрытому ключу которых у них УЖЕ имеется. Но в любом
случае их вмешательство носит вероятностный характер и чем больше честных
участников теста тем меньше шансы у злоумышленников :) Хотя я считаю,
что можно ввести правила, ограничивающие возможность такого
вмешательства. Возможно, предварительная регистрация участников или такой
метод: в теле сообщения помимо всего прочего шифруется электронный адрес участника, который можно проверить. Не допускается повторения этого адреса
в других сообщениях, в противном случае результат теста аннулируется. Возможно также ограничение на количество участников с одного
доменного адреса.

3. Выбранная "тройка" передается "ИМ" на анализ. Потом публикуется результат.

4. ПОСЛЕ публикации результатов владелец выбранной "тройки" публикует пароль на свой зашифрованный private key, позволяя всем участникам теста
убедится в правильности "ИХ" анализа.

Замечание: даже при положительном результате теста в любом случае
можно говорить лишь о вероятности того, что "ОНИ" это "ОНИ", так как
есть шанс что в результате жеребьевки будет выбрана "тройка" самих
организаторов. Однако она
1. будет тем выше, чем больше незаинтересованных участников
2. однозначно выше, чем вывод об аутеничности "ИХ" на основе
писем "ОТТУДА" :)

Искренне ваш,
dutchman


Ваше имя:

E-mail:

Ваш сайт:

Тема:

Сообщение: