Получить шифр, который нельзя взломать, можно!

Андрей Николаевич Фионов, доктор технических наук, доцент кафедры компьютерных систем факультета информационных технологий НГУ, проводит на базе ИВТ (Институт вычислительных технологий СО РАН) научный семинар для бакалавров и магистрантов «Актуальные проблемы криптологии».

Криптология – это наука о защите информации. Она включает в себя четыре основных дисциплины: криптография (шифрование) и криптоанализ (дешифрование, поиск эффективных алгоритмов взлома системы), а также стеганография и стегоанализ (внедрение скрытой информации и её обнаружение).

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

Андрей Николаевич Фионов как эксперт в области теории информации, криптографии и стеганографии рассказал о совершенных и идеальных шифрах, омофонном кодировании и защите авторских прав.

– Для каких целей в информационных технологиях применяется криптография?

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

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

Ещё одно направление, популярное сегодня, – это квантовые компьютеры. На данный момент они больше существуют в теории и практически ещё не очень реализованы. Многие люди верят в то, что квантовые компьютеры всё-таки появятся, но некоторые скептики утверждают, что этого никогда не произойдёт.

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

– Зачем нужна математическая доказанность?

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

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

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

Шифр Цезаря, шифр Вернама и идеальный шифр

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

Шифр Цезаря придумал и впоследствии использовал римский император Гай Юлий Цезарь, в честь которого он и назван. Для того чтобы зашифровать сообщение, Цезарь смещал каждую букву алфавита на три позиции. Допустим, у нас в этом шифре вместо буквы А писалась бы буква Г. Так, из осмысленного текста получался совершенно непонятный, и человек, который не знал, как устроен этот шифр, не мог прочитать послание.

– Что представляют собой совершенные и идеальные шифры?

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

Если говорить о примерах, то совершенным считается шифр Вернама.

– Что он представляет собой?

– Первым предложил и описал этот шифр американский инженер Гилберт Вернам. Шифр этот очень известен, и для него доказано, что он не вскрываемый, то есть его нельзя взломать, но у него есть недостатки, которые препятствуют его широкому использованию на практике.

– О каких недостатках Вы говорите?

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

– Для идеального шифра, наверное, проблемы с ключом нет?

– Да, идеальный шифр, как и совершенный, тоже нельзя взломать, но ключ к нему короткий и многоразовый, то есть его можно использовать всю жизнь (он не устаревает).

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

– Идеальные шифры используются для источников с известной и неизвестной статистикой. Что имеется в виду?

– Если вы видите начало фразы или слова, вы часто можете предугадать, что будет потом, это понятно из контекста. Если вам изначально известны все законы и вероятности, по которым получается текст, это случай с известной статистикой. В противоположной ситуации, когда вам дают какое-то сообщение, с которым нужно что-то делать, речь идёт о случае с неизвестной статистикой. Последний вариант более интересен для практики.

Важное событие в 18 часов вечера

– С какими проблемами сталкиваются криптологи?

– Одна из самых больших проблем – это построение адекватных моделей, которые бы позволяли расшифровать те данные, которые нужно шифровать пользователям. Например, если вы шифруете какие-то сообщения на русском языке, то актуальна проблема построения адекватной модели, которая описывает формирование текста на русском языке.

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

Это очень легко представить на простых примерах. Ваша задача – зашифровать, например, время наступления какого-нибудь важного события. Допустим, оно произойдёт в 18 часов вечера. Вы посылаете об этом сообщение и шифруете его идеальным шифром. Если кто-то потом попытается вскрыть ваше послание путём перебора ключей, то он получит кучу вариантов расшифровки, где будут все возможные часы, в том числе и 18 часов. Так как у «взломщика» другой информации не будет, он не сможет понять, какое конкретно время было зашифровано.

Как «пират» метку не может найти

– Что представляет собой стеганография?

– Это наука о том, как скрыть факт передачи сообщения.

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

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

– А для чего стеганография применяется в информационных технологиях?

– Одно из позитивных применений – защита авторских прав, защита от несанкционированного копирования. В цифровые файлы внедряются скрытые метки, которые позволяют однозначно «привязывать» программу к тому, кто её легально купил. Если потом программный пакет начинает распространяться в виде пиратской копии где-то в сети, то автор метки, который знает, как её обнаружить, может отследить, кто именно продаёт нелегальную копию. А «пират», в свою очередь, так как метка скрыта, не может её найти, чтобы её как-то уничтожить или изменить.

Беседовала Анастасия Грасмик



Последняя редакция: 22.10.2014 12:27




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