id: Гость   вход   регистрация
текущее время 13:48 18/04/2024
Автор темы: Гость, тема открыта 27/04/2006 15:18 Печать
создать
просмотр
ссылки

расшифровка


может быть этот вопрос достаточно простой, но все равно его задам :)


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


 
Комментарии
— yGREK (27/04/2006 16:16)   профиль/связь   <#>
комментариев: 98   документов: 8   редакций: 10
Если сообщение написано естественным языком – частотный анализ. так ведь?
— unknown (27/04/2006 16:52)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Статистические характеристики исходного текста будут отличатся от случайного (если вы не шифруете шум).
Конечно будет проблема со сжатыми файлами (архивами, mp3 и т.д.), но мы считаем, что противник знает все детали системы кроме ключа (а если не знает, то легко догадается).

Кстати, в пакет unix-bin-utils входит strings:

!!(green)

For each file given, GNU strings prints the printable character sequences that are at least 4 characters long (or the number given with the options below) and are followed by an unprintable character. By default, it only prints the strings from the initialized and loaded sections of object files; for other types of files, it prints the strings from the whole file.


strings is mainly useful for determining the contents of non-text files

!!

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

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

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

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

Но они как правило ресурсоёмки и на практике не применяются, т.к. всё строится на стойкости базового шифра и других атомарных примитивов и как можно более простых и рациональных использующихся протоколов.
— SATtva (27/04/2006 21:43)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
А каковы в данном аспекте современные возможности вероятностного шифрования с открытым ключом?
— unknown (28/04/2006 09:16)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

А каковы в данном аспекте современные возможности вероятностного шифрования с открытым ключом?


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

Хотя было бы интересно представить гибридные системы где и ассиметричная и симметричная часть недетрминированы.


Пока это направление так и считается "перспективным" как 'дцать лет тому назад. То есть на практике не применяется. Если будут какие-то проблемы с RSA и др., тогда возможно будут разрабатывать альтернативные алгоритмы.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3