Филипп Циммерманн - Введение в криптографию
- Название:Введение в криптографию
- Автор:
- Жанр:
- Издательство:PGP Corporation
- Год:2004
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Филипп Циммерманн - Введение в криптографию краткое содержание
Введение в криптографию - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Пятью финалистами стали Twofish, Serpent, Rijndael, RC6 и MARS. Все пять прошли через серьёзнейшее криптоаналитическое испытание лучшими криптографами мира, многие из которых представляли на AES собственные работы, соревновавшиеся с другими. NIST из этих пяти превосходных алгоритмов в качестве победителя избрал Rijndael ( "рэйн долл" ). Rijndael — это блочный шифр, разработанный Джоан Даймен и Винсентом Рижменом. Rijndael был включён в PGP, начиная с версии 7.1. За более подробной информацией об AES см. http://www.nist.gov/aes.
Открытые ключи, сгенерированные в PGP 5.0 и выше, несут в себе сведения о том, какие блочные шифры распознаются программой получателя с тем, чтобы программа отправителя знала, какие алгоритмы можно применять для зашифрования. Открытые ключи типа Diffie-Hellman/DSS поддерживают CAST, IDEA, AES (Rijndael), Triple-DES и Twofish в качестве блочных шифров с AES, установленным по умолчанию (в версиях 8.0 и выше). С целью обратной совместимости, ключи RSA не обладают такой возможностью. PGP ограничен алгоритмом IDEA для шифрования сообщений ключами RSA, поскольку старые версии PGP поддерживают только RSA и IDEA [10] Речь идёт о формате ключей RSA обратной совместимости, о так называемых RSA Legacy v3. Новый формат ключей RSA v4 в полной мере соответствует функциональности ключей DH/DSS v4.
.
О процедуре сжатия данных в PGP
PGP сжимает открытый текст перед его зашифрованием, поскольку зашифрованные данные сжимаются гораздо хуже. Сжатие данных сокращает время их модемной передачи и экономит дисковое пространство, а так же, что более важно, усиливает криптографическую стойкость. Большинство криптоаналитических техник основано на статистическом анализе шифртекста в поисках признаков избыточности открытого текста. Сжатие уменьшает избыточность информации, чем существенно усиливает сопротивляемость криптоанализу. Сжатие данных требует немного дополнительного времени, но с точки зрения безопасности оно того стоит.
Слишком короткие файлы и файлы, которые не сжимаются достаточно хорошо, не сжимаются вовсе. Кроме того, программа распознаёт файлы, созданные наиболее распространёнными архиваторами, такими как PKZIP, и не пытается сжать уже сжатый файл.
Для технически любознательных можно добавить, что программа использует алгоритмы сжатия ZIP, написанные Жаном Лу Галли, Марком Адлером и Ричардом Уэйлсом. Программа ZIP использует алгоритмы сжатия, функционально эквивалентные тем, что применяются в PKZIP 2.x от PKWare. Эта программа сжатия была избрана для PGP в первую очередь из-за своей неплохой степени сжатия и быстроты работы.
О случайных числах и сеансовых ключах
Для генерации одноразовых симметричных сеансовых ключей PGP использует криптографически стойкий генератор псевдослучайных чисел (ГПСЧ) [11] В PGP реализован генератор ПСЧ, соответствующий спецификациям ANSI X9.17 для генерации непредсказуемых сеансовых ключей. Более подробные сведения могут быть найдены в IETF RFC 1750 .
. Если файл ПСЧ отсутствует, он автоматически создаётся и заполняется абсолютно произвольными числами, полученными программой от показаний системного таймера, задержек нажатий клавиш и перемещений мыши.
Генератор "пересеивает" файл при каждом его использовании, частично смешивая старый материал с новым, полученным от конкретного времени суток и иных произвольных показателей. В качестве гамма-генератора применяется симметричный алгоритм шифрования. Файл содержит как случайные данные выхода генератора, так и случайные данные ключа, используемого для задания исходного внутреннего состояния генератора.
Файл ПСЧ должен быть защищён от компрометации, дабы снизить риск вычисления из него ваших предыдущих или будущих сеансовых ключей. Потенциальному взломщику придётся очень постараться, чтобы извлечь хоть что-то полезное из этого файла, поскольку он криптографически перемешивается до и после каждого применения. Тем не менее, не будет лишним защитить его от попадания в чужие руки. Если можете, сделайте файл доступным только для себя. Если такое невозможно, не позволяйте посторонним беспрепятственно копировать файлы с вашего компьютера.
О дайджестах сообщений
Дайджест сообщения — это компактная 160- или 128-битовая свёртка вашего сообщения-прообраза, или контрольная сумма файла. Вы можете представить его как отпечаток (fingerprint) сообщения или файла. Дайджест сообщения — это "отражение" прообраза: если исходные данные будут как-либо изменены, из них будет вычислен совершенно иной дайджест. Это позволяет обнаружить даже самые незначительные изменения, внесённые злоумышленником в сообщение. Дайджест генерируется посредством криптографически стойкой односторонней хэш-функции. В вычислительном плане невозможно создать такое подставное сообщение, которое бы производило дайджест, идентичный дайджесту оригинального сообщения [12] Если говорить точнее, в вычислительном плане практически невозможно создать такое подставное сообщение, которое производило бы дайджест, идентичный дайджесту заданного сообщения — для это потребуется перебрать 2 160 вариантов при использовании хэш-функции SHA-1. В то же время, исходя из парадокса дней рождений, можно создать два сообщения, производящих идентичный дайждест, за 2 80 вычислений, а если принять во внимание теорию вероятности, то с 50-процентным успехом искомая комбинация сообщений будет найдена уже после 2 79 вычислений.
. В этом отношении дайджест сообщения гораздо лучше контрольной суммы (CRC32 или CRC64), поскольку довольно просто создать два различных сообщения, производящих одинаковую контрольную сумму. Но, как и в случае с контрольной суммой, не существует никакого способа восстановить из дайджеста исходные данные прообраза.
Алгоритм стойкой односторонней хэш-функции, используемый в PGP 5.0 и выше, называется SHA-1 , что означает Secure Hash Algorithm; он был разработан в АНБ для Национального Института Стандартов и Технологий (NIST) США. SHA-1 — это 160-битовый хэш-алгоритм. Некоторые люди ко всем разработкам АНБ относятся с подозрением, поскольку именно АНБ "заведует" электронной и радиотехнической разведкой и взломом кодов. Но имейте в виду, что АНБ не заинтересовано в подделке подписей; правительство и его силовые структуры получат гораздо больше выгоды от хорошего стандарта неподделываемых ЭЦП, не позволяющих никому от них отрекаться. Кроме того, SHA-1 был опубликован в открытой литературе и, после тщательнейшего исследования лучшими криптографами мира, специализирующимися на хэш-функциях, получил единодушную высочайшую оценку своего крайне удачного дизайна. Он имеет некоторые архитектурные инновации, благодаря которым преодолевает все наблюдавшиеся прежде проблемы односторонних хэш-функций, когда-либо созданных гражданским криптографическим сообществом. Все последние версии PGP используют SHA-1 в качестве хэш-алгоритма для генерации подписей новыми ключами DSA, соответствующими Стандарту Цифровых Подписей (DSS) NIST [13] PGP 9.x и выше, как и текущие версии GnuPG, смещают акцент к применению хэш-функций семейства SHA-2, имеющих длину выхода до 512 бит. Предполагается, что это должно дать отсрочку на случай дальнейших криптоаналитических атак, ослабляющих коллизионную устойчивость классических алгоритмов хэширования.
. Для нужд обратной совместимости новые версии PGP всё ещё используют MD5 для подписания ключами RSA [Legacy v3], т. к. старые версии PGP используют для работы с ЭЦП только алгоритм MD5.
Интервал:
Закладка: