Довольно хорошая конфиденциальность

Довольно хорошая конфиденциальность
Основные данные

Сопровождающий Фил Циммерманн
разработчик Symantec
Год публикации 1991 г.
Текущая  версия 1.0
Операционная система Кроссплатформенность
язык программирования С.
категория Шифрование
Лицензия Запатентованное , ранее бесплатное ПО
www.pgp.com

Pretty Good Privacy ( PGP ; англ. «Довольно хорошая конфиденциальность») - это программа, разработанная Филом Циммерманном для шифрования и подписи данных.

характеристики

Как работает PGP (только шифрование, без подписи)

PGP использует так называемую процедуру открытого ключа , в которой есть четко назначенная пара ключей :

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

Первая версия была написана в 1991 году и использовала RSA - алгоритм для шифрования данных. В более поздних версиях использовался алгоритм Эльгамаля .

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

Этот симметричный ключ тогда z. Б. зашифровано криптосистемой RSA или Elgamal с открытым ключом получателя и добавлено к сообщению. Это позволяет зашифровать сообщение для нескольких получателей одновременно. Сообщение, зашифрованное для нескольких получателей, будет выглядеть так:

асимметрично зашифрованный ключ сообщения для получателя 1
асимметричный для получателя n зашифрованный ключ сообщения
симметрично зашифрованное сообщение

PGP основан на так называемой сети доверия , в которой нет центрального центра сертификации, но доверие администрируется самими пользователями.

Поскольку PGP предназначен для постоянного дешифрования сообщений, если злоумышленнику удается получить закрытый ключ, вся история связи этого ключа будет скомпрометирована . Для обмена мгновенными сообщениями , Off-the-Record Messaging (OTR) был разработан как альтернатива PGP ; даже если закрытый ключ позже будет скомпрометирован, зашифрованное сообщение останется нечитаемым для злоумышленника (но также и для законного владельца ключа).

сказка

Фил Циммерманн написал первую версию в 1991 году. Его цель заключалась в том, чтобы все граждане и особенно гражданские движения могли безопасно обмениваться зашифрованными сообщениями до того, как к ним будут иметь доступ секретные службы (надежное шифрование).

В первые годы своего существования PGP не разрешалось без лицензии экспортировать из США, потому что, как и оружие, он подпадал под действие экспортного законодательства США. В соответствии с этим, криптосистемы с ключами длиной более 40 бит для симметричного шифрования подпадали под действие специальных экспортных правил. Первые версии PGP использовали IDEA с длиной ключа 128 бит. В конце 1990-х годов США либерализовали эти законы.

Чтобы обойти ограничение на экспорт , полный исходный код был опубликован в 1995 году в книге Фила Циммерманна «Исходный код PGP и внутренние компоненты». Программное обеспечение можно было легально экспортировать из США в виде книги . Его напечатали вручную более 60 добровольцев. Затем из типизированного программного кода была скомпилирована международно доступная версия PGP (PGPi) .

Компания PGP Corporation возникла в результате слияния команды Фила Циммерманна и ViaCrypt, которой Фил Циммерманн продал некоторые коммерческие права и которой RSA предоставила прямую лицензию. До версии 8 это был независимый продукт для некоммерческих пользователей с PGP Freeware . Начиная с версии 9, доступна только пробная версия PGP Desktop Professional 9 . Его можно использовать без ограничений в течение 30 дней. По истечении этого периода объем функций и прав использования будет сокращен до объема, примерно соответствующего бывшему бесплатному программному обеспечению PGP . Шифрование и дешифрование электронных писем также возможно после завершения фазы тестирования, но только в некоммерческих целях.

PGP была куплена NAI (McAfee) в 1997 году и интегрирована в их собственную линейку продуктов. В связи с тем, что исходный код PGP временно не был раскрыт McAfee и были реализованы функции, которые позволяют автоматическое шифрование для другого получателя (дополнительный ключ дешифрования ADK), PGP в настоящее время подвергается серьезной критике. В 2002 году McAfee отказался от бренда PGP и продал его группе бывших сотрудников PGP вокруг Фила Циммерманна. Эта недавно созданная корпорация PGP выкупила все права на PGP у McAfee и с самого начала снова сделала все исходные тексты общедоступными.

Новая PGP теперь представлена ​​во многих странах, включая Германию, где PGP Corporation приняла немецкую Glück & Kanja Technology AG в 2005 году и, таким образом, основала PGP Deutschland AG, которая сейчас находится в Оффенбахе-на-Майне. Пять лет спустя PGP также купила немецкий TC Trustcenter в Гамбурге и, таким образом, представлена ​​на рынке как сертифицированный центр доверия для сертификатов в соответствии с Законом Германии о подписи (для квалифицированных подписей ).

Стандарт OpenPGP был разработан к 1998 году, не в последнюю очередь из-за непрозрачной ситуации в то время, когда PGP принадлежала McAfee . GnuPG программа , которая под GNU GPL , была первая реализация OpenPGP и была разработана в качестве бесплатной альтернативы PGP. В настоящее время существует множество расширений стандарта OpenPGP, которые выходят за рамки функций PGP, поэтому плавный обмен данными и ключами не всегда гарантируется.

PGP Corporation была приобретена Symantec за 300 миллионов долларов в июне 2010 года .

функциональность

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

Генерация цифровой подписи

Чтобы иметь возможность впоследствии гарантировать, что полученное сообщение не было изменено или заменено ( целостность ), а также исходило от предполагаемого отправителя ( подлинность ), отправитель должен создать цифровую подпись для сообщения (или его частей). К текстовому сообщению применяется криптологическая хеш-функция (ранее часто использовавшаяся SHA-1 , но теперь устаревшая и замененная, среди прочего, на SHA-256). Это создает дайджест сообщения (уникальный отпечаток) сообщения, который значительно короче самого сообщения, что упрощает создание цифровой подписи. Затем из дайджеста сообщения создается подпись с использованием закрытого ключа отправителя.

Шифрование

В качестве второго шага (или первого, если он не должен быть подписан) отправитель теперь может зашифровать сообщение. Здесь текстовое сообщение и цифровая подпись из первого шага объединяются в набор данных и сжимаются, чтобы уменьшить размер и затруднить криптоанализ . Эти сжатые данные теперь шифруется симметрично по отношению к шифротексту с помощью случайного образом сгенерированного сеансового ключа K M. Поскольку это одноразовый ключ, сгенерированный случайным образом, об этом необходимо сообщить получателю. Для этого ключ K M асимметрично зашифровывается с открытым ключом получателя и помещается перед зашифрованным сообщением. Таким образом, зашифрованное сообщение защищено настолько, насколько безопасен более слабый элемент асимметричного ключа, которым оно зашифровано, и сеансового ключа. Наконец, байты зашифрованного текста и зашифрованного ключа должны быть удобны для электронной почты. Для этого они (как и другие двоичные данные в сообщениях электронной почты) кодируются в конкретные печатаемые символы ASCII с использованием варианта Base64 (Radix-64) . Теперь сообщение PGP можно отправить получателю. Помимо использования для электронной почты, PGP также может использоваться для других каналов связи, подписывая и / или шифруя файлы или текст (существует отдельный процесс подписи из-за несовместимого кодирования конца строки между операционными системами).

Внешний вид зашифрованного сообщения

Если вы зашифруете текст

http://de.wikipedia.org/wiki/Pretty_Good_Privacy

тогда закодированное сообщение выглядит следующим образом (во встроенном формате PGP ; с электронной почтой PGP / MIME оно будет выглядеть немного иначе):

-----BEGIN PGP MESSAGE-----
Version: GnuPG v2.0.16 (GNU/Linux)

hQEMA1PUVhZb8UnsAQf+KS9PNvkWYFONnoStveMc4KwvGT7WlRFv/ZACvdyFsKDO
icurhL57uh56KCof1m5drfftwjDQWgNyMy0cixqV/2WzeQgjZILE0Z1FDg7cgAbs
UZvy2hmaJf0dhHEUziALotfUMhoSeHeObxmomzb7vovJv5tWDtQ9W+p2tbQ4tiin
LAsJtwQhEVPNltootBteC0dTgOdISe6kfqUSoN3A22SiSUihmjxMPiiO6iZB8gBS
hhfiSPa4khNwODncRe2BjqW+YQHf7L6CfLjx2S1BCSr+KWLmUnVdWSUonhHPF9mI
E/q7t2uoBWg0iQgCjQubgYeqSUYN/xWpqAUX9O71zdKUAbVjjLVT0qTjNLLvms2H
s4BDzHEqKeuGuMAWFzyfuW+VNofTxtcHhzrdjPuYi7sRL3YNUvqUpcGeKGyTApW2
k/fd7U32av7Pq63NoKK2g3RFcyBUiSdNlNhW8TYS1NdMSMXNw1R9dWVgFmsLj2vs
Rv89ufRiPbNLDXcx7CkRrTf13q0miy1850d6k5nt8qUFrnh4xQ==
=z6Xk
-----END PGP MESSAGE-----

Расшифровка

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

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

безопасность

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

Кроме того, критиковалось, что открытые ключи часто хранятся на серверах, к которым у каждого человека есть доступ для чтения и записи. Так случилось, что там хранились не те ключи. Один из подходов к предотвращению этого - спецификация DANE / OPENPGPKEY от инженерной группы Интернета .

Смотри тоже

веб ссылки

Commons : OpenPGP  - коллекция изображений, видео и аудио файлов

Индивидуальные доказательства

  1. а б в Саймон Сингх: Секретные сообщения . ISBN 3-423-33071-6 .
  2. ^ Даниэль Бахфельд: PGP покупает специалистов по шифрованию Glück & Kanja. В: Heise Security. Heise Zeitschriften Verlag, 7 марта 2005, доступ к 30 августа 2012 года .
  3. ^ Кристиан Кирш: PGP покупает немецкий центр доверия. В: heise online. Heise Zeitschriften Verlag, 2 февраля 2010, доступ к 30 августа 2012 года .
  4. RFC 2440 , исправленная версия с ноября 2007 г .: RFC 4880
  5. Питер-Майкл Зиглер: Symantec покупает специалистов по шифрованию PGP и GuardianEdge. В: heise online. Heise Zeitschriften Verlag, 29 апреля 2010, доступ к 30 августа 2012 года .
  6. О SYMANTEC. PGP. Корпорация Symantec, доступ к 30 августа 2012 года .
  7. ^ Дональд Т. Дэвис: Дефектный знак и шифрование в S / MIME, PKCS # 7, MOSS, PEM, PGP и XML . В: 2001 USENIX ежегодной технической конференции . 2001 ( std.com ).
  8. ^ Пол Воутерс, Red Hat : Использование DANE для связывания открытых ключей OpenPGP с адресами электронной почты. Сетевая рабочая группа, Internet Engineering Task Force , 19 октября 2015, доступ к 4 декабря 2015 .
  9. Душан Зивадинович: Шифрование почты: Mail.de предлагает автоматическое управление ключами PGP. В: heise online . Heise Medien GmbH & Co. KG , Ганновер, 10 марта 2015, доступ к 22 января 2017 года .