Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Конфиденциальность. Другим основным сервисом, предлагаемым PGP, является конфиденциальность, обеспечиваемая шифрованием сообщений
Другим основным сервисом, предлагаемым PGP, является конфиденциальность, обеспечиваемая шифрованием сообщений, предназначенных для передачи или хранения в виде файлов. В обоих случаях можно использовать традиционное шифрование с помощью алгоритма CAST-128. Альтернативой является применение алгоритмов IDEA или 3DES. Может использоваться и режим обратной связи шифрованных 64-битовых блоков (режим CFB). Как всегда, необходимо решать проблему распределения ключей. В PGP каждый ключ схемы традиционного шифрования применяется только один раз. Это значит, что для каждого сообщения генерируется новый ключ в виде случайного 128-битового числа. Таким образом, хотя в документации такой ключ называется сеансовым, на самом деле он является одноразовым. Ввиду того, что ключ задействуется только один раз, такой сеансовый ключ присоединяется к сообщению и передается вместе с сообщением. Чтобы защитить ключ, он шифруется с использованием открытого ключа получателя. На рис. 10.1(б) показана соответствующая схема, которая может быть описана следующим образом. 1. Отправитель генерирует сообщение и случайное 128-битовое число, которое выступает в качестве сеансового ключа только для этого сообщения. 2. Сообщение шифруется с помощью алгоритма CAST-128 (или IDEA, или 3DES) и данного сеансового ключа. 3. Сеансовый ключ шифруется с помощью алгоритма RSA и открытого ключа получателя и присоединяется к началу сообщения. 4. Получатель использует RSA с личным ключом, чтобы дешифровать и тем самым восстановить сеансовый ключ. 5. Сеансовый ключ применяется для дешифрования сообщения. Чтобы обеспечить альтернативу использованию RSA для шифрования ключа, в PGP предлагается параметр Diffie-Hellman (алгоритм Диффи-Хеллмана). Как уже отмечалось в главе 6, алгоритм Диффи-Хеллмана является алгоритмом обмена ключами. На самом деле в PGP используется вариант этого алгоритма с возможностями шифрования/дешифрования, известный как алгоритм Эль-Гамаля (ElGamal). В связи с этим можно сделать несколько замечаний. Во-первых, чтобы уменьшить время шифрования, преимущество отдается использованию комбинации традиционного шифрования и шифрования с открытым ключом, а не простому использованию RSA или алгоритма Эль-Гамаля, когда сообщение шифруется непосредственно: CAST-128 и другие алгоритмы традиционной схемы шиф-рования значительно быстрее, чем RSA или алгоритм Эль-Гамаля. Во-вторых, использование алгоритмов схемы шифрования с открытым ключом решает про-блему распределения сеансовых ключей, так как только для получателя оказы-вается возможным восстановить сеансовый ключ, присоединенный к сообщению. Обратите внимание на то, что в таком случае не требуется использовать протокол обмена сеансовыми ключами типа описанного в главе 6, поскольку здесь не требуется начинать сеанс обмена данными. В этой ситуации, скорее, каждое сообщение является одиночным независимым событием со своим собственным ключом. К тому же вследствие самой природы электронной почты, являющейся системой с промежуточным хранением данных, использование процедуры подтверждения связи для того, чтобы убедиться в идентичности сеансового ключа обеих сторон, не является практически удобным решением. Наконец, использование одноразовых ключей в традиционной схеме шифрования еще более усиливает и без того достаточно надежный алгоритм традиционного шифрования. Только небольшой объем открытого текста шифруется с использованием одного ключа, и между ключами нет никакой связи. Таким образом, вся схема оказывается защищенной в той мере, в какой защищен алгоритм схемы шифрования с открытым ключом. Поэтому PGP предлагает пользователю выбор для длины ключа от 768 до 3072 битов (длина ключа DSS для подписей ограничивается величиной в 1024 бита). Как показано на рис. 4.1(в), для одного сообщения можно использовать обе службы. Сначала для сообщения в виде открытого текста генерируется подпись, которая добавляется в начало сообщения. Затем открытый текст сообщения и подпись шифруются с помощью алгоритма CAST-128 (или IDEA, или 3DES), а сеансовый ключ шифруется с помощью RSA (или алгоритма Эль-Гамаля). Такая схема предпочтительнее обратной, т.е. схеме, когда сначала шифруется сообщение, а затем генерируется подпись для шифрованного сообщения. В общем случае оказывается более удобным хранить подпись с открытым текстом сообщения. К тому же с точки зрения возможностей трехсторонней верификации, если сначала генерируется подпись, третьей стороне не нужно заботиться о ключе традиционного шифрования, чтобы проверить подпись. Короче говоря, при использовании обеих служб отправитель сначала подписывает сообщение с помощью собственного личного ключа, потом шифрует сообщение с помощью сеансового ключа и наконец, шифрует сеансовый ключ с помощью открытого ключа получателя. Сжатие По умолчанию PGP сжимает сообщение после создания подписи, но перед шифрованием. Это имеет смысл с точки зрения уменьшения объема данных, как при передаче электронной почты, так и при хранении в виде файлов. Очень важным оказывается выбор места применения алгоритма сжатия, обозначенного на рис. 1 как Z при сжатии и как Z-1 при распаковке данных. 1. Подпись генерируется до сжатия по следующим причинам. • Предпочтительнее подписывать несжатое сообщение, чтобы в будущем иметь возможность хранить сообщение в несжатом виде вместе с подписью. Если подписать сжатый документ, то для верификации необходимо будет либо хранить сжатую версию сообщения, либо сжимать сообщение всякий раз, когда требуется верификация. • Даже при наличии возможности динамически повторно сжимать сообщение для верификации такой подход несет в себе дополнительные трудности из-за самого алгоритма сжатия PGP: алгоритм не является детерминированным и различные реализации алгоритма выбирают разные варианты выполнения для оптимизации соотношения скорости выполнения и сжатия, а в
результате получаются сжатые файлы разной формы. Такие разные алгоритмы сжатия являются переносимыми из-за того, что любая версия алгоритма может правильно восстановить данные, полученные с помощью любой другой версии. Применение функции хэширования и создания подписи после сжатия заставило бы во всех реализациях PGP применять один и тот же алгоритм сжатия. 2. Шифрование сообщения применяется после сжатия для того, чтобы усилить криптографическую защиту сообщения. Ввиду того, что сжатое сообщение имеет меньшую избыточность по сравнению с оригинальным открытым текстом, криптоанализ оказывается более трудным делом. В качестве алгоритма сжатия применяется ZIP. Date: 2015-06-06; view: 587; Нарушение авторских прав |