PGP

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

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

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

Рис. 1. Так действует шифрование PGP

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

Рис. 2. Так действует дешифрование PGP

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

Обновлено: 11.03.2015