logo
Коды и шифры

После des-алгоритма

Правительство США официально одобрило использование стандартного DES-алгоритма примерно на 10 лет. После этого такое одобрение сохранилось у описанного выше тройного DES-алгоритма, но, кроме того, проводились поиски новых алгоритмов шифрования. В 1993 году был одобрен алгоритм под названием SKIPJACK, который был реализован на микросхеме CLIPPER. Сначала детали алгоритма шифрования SKIPJACK хранились втайне, но были рассекречены 24 июня 1998 года (см. [13.7]).

Одной из "неофициальных" систем шифрования (т.е. разработанных частными лицами), получившей распространение среди пользователей, является PGP (аббревиатура слов "Pretty Good Privacy" - "довольно хорошая конфиденциальность"). Алгоритм PGP разработан Филиппом Циммерманном и доступен любому желающему. Он состоит из следующих шагов:

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

  2. открытый текст сообщения подвергается сжатию; степень сжатия зависит от природы и длины текста; обычный английский текст можно сжать до 50% без внесения неоднозначностей, но для коротких текстов экономия во времени передачи сообщения может не стоить затраченных усилий;

  3. ключ, полученный на шаге (1), используется для зашифрования сжатого текста, построенного на шаге (2), с помощью алгоритма IDEA ("International Data Encryption Algorithm" - "Международный алгоритм шифрования данных"), предложенного Лаи и Мэсcи (Lai, Massey) из Федерального Технологического Института в Цюрихе (Швейцария) - см. [13.8].

  4. сеансовый ключ шифруется на открытом ключе получателя;

  5. шифрованный сеансовый ключ записывается впереди шифрованного текста; все вместе посылается получателю;

  6. получив шифрованный текст, получатель сначала на своем секретном ключе расшифровывает сеансовый ключ, стоящий в начале текста;

  7. имея расшифрованный ключ, он теперь может расшифровать текст сообщения и "разжать" его, если потребуется.

Как и в упомянутом выше случае применения DES-алгоритма после RSA, в случае PGP использование двух систем шифрования увеличивает не только стойкость системы: значительно возрастает скорость, поскольку в системе, где ключи зашифрования и расшифрования по существу одинаковы, на зашифрование и расшифрование будет затрачено гораздо меньше времени, чем в системе с открытым ключом (такой как RSA), в которой эти ключи абсолютно разные. В алгоритме PGP с помощью системы с открытым ключом шифруется только относительно короткий сеансовый ключ, а сам текст шифруется с помощью IDEA - системы без открытого ключа.

По поводу PGP и связанных с этим алгоритмом вопросов появились тысячи статей, которые можно найти в Интернете. Тех, кто интересуется деталями, отсылаем к [13.10],[13.11].

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