<<
>>

Основы криптографии

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

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

Модель процесса шифрования—дешифрации показана на рис. 8.1.

(Hl

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

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

Искусство взлома шифров называется криптоанализом. Искусства изобретать шифры (криптография) и взламывать их (криптоанализ) называются вместе криптологией.

Обычно для обозначения открытого текста, зашифрованного текста и ключей полезно использовать специальную нотацию. Мы будем использовать формулу С = ЕК(Р), обозначающую, что при зашифровке открытого текста Р с помощью ключа К получается зашифрованный текст С. Аналогично формула Р = DK(C) означает расшифровку зашифрованного текста С для восстановления открытого текста. Из этих двух формул следует, что

DK(EK(P)) = Р.

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

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

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

Его в 1883 году впервые высказал фламандский военный шифровальщик Аугуст Керкгоф (Auguste Kerck- hoff, 1883). Таким образом, принцип Керкгофа гласит:

Алгоритмы шифрования общедоступны; секретны только ключи.

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

Поскольку реально в тайне хранится только ключ, основной вопрос заключается в его длине. Рассмотрим простой кодовый замок. Его основной принцип состоит в том, что вы последовательно вводите десятичные цифры. Все это знают, но ключ хранится в секрете. Ключ длиной в две цифры образует 100 вариантов. Ключ длиной в три цифры означает 1000 вариантов, а при длине ключа в шесть цифр число комбинаций достигает миллиона. Чем длиннее ключ, тем выше показатель трудозатрат взломщика кода. При увеличении длины ключа показатель трудозатрат для взлома системы путем простого перебора значений ключа растет экспоненциально. Секретность передаваемого сообщения обеспечивается мощным (но все же открытым) алгоритмом и длинным ключом. Чтобы не дать прочитать свою электронную почту младшему брату, достаточно 64-разрядного ключа. В коммерческих системах имеет смысл использовать 128-битный код. Чтобы защитить ваши тексты от правительств развитых государств, потребуются ключи длиной по меньшей мере в 256 бит.

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

Во-вторых, у криптоаналитика может оказаться некоторое количество зашифрованного текста и соответствующего ему открытого текста. В этом случае мы имеем дело с проблемой известного открытого текста. Наконец, когда у криптоаналитика есть возможность зашифровать любой кусок открытого текста по своему выбору, мы получаем третий вариант проблемы дешифрации, то есть проблему произвольного открытого текста. Если бы криптоаналитикам было позволено задавать вопросы типа: «Как будет выглядеть зашифрованное ABCDEFGHJKL?», задачки из газет решались бы очень легко.

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

Исторически методы шифрования разделились на две категории: метод подстановки и метод перестановки. Мы кратко рассмотрим их в качестве введения в современную криптографию.

<< | >>
Источник: Э. ТАНЕНБАУМ. КОМПЬЮТЕРНЫЕ СЕТИ 4-Е ИЗДАНИЕ. 2003

Еще по теме Основы криптографии:

  1. 4.1. Основы психологииличности юриста
  2. Глава 4. ОСНОВЫ АСТРОЛОГИИ
  3. Раздел I. ОСНОВЫ ПСИХОЛОГИИ
  4. Раздел II. ОСНОВЫ ПЕДАГОГИКИ
  5. ДЕЙСТВИЕ: ОСНОВА ОРИЕНТИРОВОЧНАЯ
  6. Конституционные основы
  7. Основы
  8. ОСНОВА
  9. Раздел 3. Основы конституционного права
  10. Глава 13. Основы гражданского права
  11. Глава 14. Основы трудового права
  12. Глава 15. Основы семейного права
  13. Глава 16. Основы жилищного права
  14. Глава 17. Основы административного права
  15. Глава 18. Основы финансового права
  16. Глава 19. Основы муниципального права
  17. Глава 20. Основы уголовного права