Почта с повышенной секретностью
Почта с повышенной секретностью (Privacy-Enhanced Mail, PEM) является стандартом Интернета для гарантирования безопасности электронной почты в Интернете. Этот стандарт одобрен советом по архитектуре Интернета (Internet Architecture Board, IAB). Впервые был разработан под руководством Группы приватности и безопасности Internet Resources Task Force (IRTF) в 1993 году, далее разработка была передана в PEM Working Group (IETF). Фактически, протоколы PEM созданы для шифрования, проверки подлинности, проверки целостности и администрирования ключей. В конечном итоге протоколы описываются в RFC 7468 Архивная копия от 12 декабря 2018 на Wayback Machine.
PEM поддерживает стандартный набор алгоритмов шифрования, однако допустимо добавление более поздних версий. Сообщения шифруются с помощью DES в режиме CBC. Проверка подлинности сообщения (MIC) использует MD2 или MD5 хеширование. Симметричное управление ключами применяет либо DES в режиме ECB, либо Triple-DES. Для управления ключами поддерживаются сертификаты открытых ключей с использованием RSA (с длиной ключа до 1024 битов) и следуя стандарту X.509 для самой структуры сертификатов.
В то же время, почтовая система не облагается никакими специальными требованиями. PEM может быть встроен выборочно: в определённые узлы или у определённых пользователей, не затрагивая остальную сеть.
Сертификаты
[править | править код]PEM является расширением X.509, определяющим процедуры и соглашения для системы управления ключами, которая используется с PEM. Существует три типа удостоверяющих центров для PEM.
- Центр регистрационной политики (Internet Policy Registration Authority, IPRA). Находится на 1 уровне иерархии сертификации. Он выдает сертификаты только для следующего уровня сертификации, Центров сертификационной политики (Policy Certification Authorities, PCA). Все цепочки сертификатов начинаются с IPRA.
- Центры сертификационной политики (Policy Certification Authorities, PCA). Находятся на 2 уровне иерархии, каждый PCA сертифицирован IPRA. PCA должны устанавливать и публиковать свои политики в отношении сертифицируемых пользователей или подчиненных сертификационных органов.
- Центры сертификации (CA). Находятся на 3 уровне иерархии сертификации. CA сертифицицируются PCA. CA сертифицируют конкретные организации, их департаменты, офисы и т. п. Первоначально предполагалось, что большинство пользователей будет регистрироваться в качестве членов организаций.
Предположительно, несколько PCA будут выделены для обеспечения сертификации пользователей, которые не входят ни в одну организацию и хотят воспользоваться достоинствами PEM с сохранением своей анонимности. Стратегия этих PCA позволит регистрироваться пользователям, скрывающими свои личности.
Сообщения PEM
[править | править код]Отличительной особенностью PEM является формат сообщений.
Сообщения, посылаемые с помощью системы РЕМ, сначала преобразуются в каноническую форму, удовлетворяющую особому набору правил, касающихся использования пробелов, табуляторов, символов возврата каретки и перевода строки. Затем с помощью алгоритма MD2 или MD5 вычисляется хеш-код сообщения. Потом конкатенация хеш-кода и сообщения шифруются при помощи алгоритма DES. Затем зашифрованное сообщение преобразуется в кодировку base64 и передается получателю.
Пример встроенного сообщения (случай симметричного управления ключами):
-----BEGINPRIVACY-ENHANCEDMESSAGE----- Proc-Type:4,ENCRYPTED Content-Domain:RFC822 DEK-Info:DES-CBC,F8143EDE5960C597 Originator-ID-Symmetric:schneler@counterpane.com,, Recipient-ID-Symmetric:schneler@chinet.com,ptf-kmc,3 Key-Info DES-ECB,RSA-MD2,9FD3AAD2F2691B9A,B70665BB9BF7CBCDA60195DB94F727D3 Recipient-lD-Symmetric:penl-dev@tis.com,ptf-kmc,4 Key-Info : DES-ECB,RSA-MD2,161A3F75DC82EF26,E2EF532C65CBCFF79F83A2658132DB47 LLrHBOeJzyhP+/fSStdH8okeEnv47jxe7SJ/iN72ohNcUk2jHEUSoHlnvNSIHE9M 8tEjmF/zxB+bATMtPjCUHbz8Er9wloxIkjHUlBEpvXROUrUzYbkNpkOagV2IzUpk J6UiRRGcDSvzrsoK+oNvqu6z7Xs5Xfz5rDqUcMlKlZ6720dcBHGGsDLpTpSCnpot dXd/H5LMDHnonNvPCmQUHt== -----ENDPRIVACY-ENHANCEDMESSAGE-----
Пример встроенного шифрованного сообщения (асимметричный случай):
-----BEGINPRIVACY-ENHANCEDMESSAGE----- Proc-Type:4,ENCRYPTED ContentDomain: RFC822 DEK-Info:DESCBC,BFF968AA74691AC1 0riginator - Certificate : MIIBlTCCAScCAWuwDQYJKoZIhvcNAQECBQAwUTELMAkGAlUEBhMCVVMxIDAeBgNV BAoTFIJTQSBEYXRhIFNIY3VyaXR5LCBJbmMuMQ8wDQYDVQQLEmZCZXRhIDExDzAN gNVBAsTBk5PVEESWTAeFw05MTA5MDQxODM4MTdaFmO5MzA5MDMxODM4MTZaMEUx CzAJBgNVBAYTAlVTMSAmHgYDVQQKExdSUOEgRGFOYSBTZWNlcmlOeSwgSW5jLjEU MBIGAIUEAxMLVGVzdCBVc2VyIDEmHTAKBgRVCAEBAglCAANLADBIAkEAwHZHI7i+ yJcqDtjJComzTdBJrdAiLAnSC+CnnjOJEEyuQiBgkGrgIh3j8/xOfM+YrsyFlu3F LZPVtzlrldhYFJQI DAQABMAOGCSqGSIb3DQEBAgUAAIkACKrOPqphJYwlj+YPtc iWlFPuN5jJ79Khfg7ASFxskYkEMjRNZV/HZDZQEhtVaU7Jxfzs2mfX5byMp2X3U/ XIJXGx7qlJsDgHQGs7Jk9H8CHlfuSHUgN4w== Key-Info:RSA, I3rRIGXUGWAF8js5wCzRTkdh034PTHdRZY9Tuvm03M+NM7fx6qc5uIxps2LrlgO+ wGrtiUm/ovtKdlnzeZQ/aQ== Issuer-Certificate: MIIB3DCCAUgCAQowDQYJKoZIhvcNAQECBQAwTzELMAkGAIUEBhMCVVMxIDAeBgNV BAoTFIJTQSBEYXRhIFNIY3VyaXR5LCBJbmMuMQ8mDQYDVQQEEwZCZXRhIDExDTAE BgNVBAsTBFRMQOEwHhcNOTEmOTAxMDgwMDAwWhcNOTlwOTAxMDclOTU5HjBRMQsw CQYDVQQGEwJVUzEgMB4GAIUEChMXUINBIERhdGEgU2VjdXJpdHksIEIuYy4xDzAN BgNVBAsTBkJIdGEgMTEPMAOGAIUECxMGTk9UQVJZMHAmCgYEVQgBAQICArmDYgAm XwJYCsnp61QCxYykNIODwutF7jMJ3kE+3PjYyHOwk+79rLg6X65B/ED4bJHt05XH cqAz/7R7XhjYCmOPcqbdzoACZtIIETrKrcJiDYoP+DkZ8klgCk7hQHpbImIDAQAB MAOGCSqGSIb3DQEBAgUAA38AAICPv4f9Gx/tY4+p+4DB7MV+tKZnvBoy8zgoMGOx dD2jMZ/3HsyWKHgSFOeH7AJB3qr9zosG47pyMnTf3aSy2nBO7CMxpUHRBcXUpE+x EREZd9++32ofGBIXaIaInOgVUnOOzSYgugiQO77nJLDUjOhQehCizEs5wUJ35a5h MIC-Info:RSA-MD5,RSA, UdFJR8u/TIGhfH651eeme210H4tooa3vZCvVNGBZirf/7nrgzHDABz8m9NsXSexv AjRFbHoNPzBuxwnlOAFeAOHJszE4yBvhG Recipient-ID-Asymmetric : MFExCzAJBgNVBAYTAIVTMSAmHgYDVQQKExdSUOEgRGFOYSBTZHNlcmIOeSwgSH5j LjEPMAOGAIUECxMGQftiVOYSAxMQ81tfDQYDVQQLEwZOTIRBUIk=, 66 Key-Info:RSA, 06BSIww9CTyHPtS3bMLD+EOhejdvX6QvlHK2ds2sQPEaXhX8EhvVphHYTjmekdHv 7xOZ3Jx2vTAhOYHMcqqCjA== qeWlj/YJ2Uf5ng9yznPbtDOmYloSwIuV9FRYx+gzY+81Xd/NQrXHfi6/MhPfPF3d jIqCJAxvld2xgqQimUzoSla4r7kQQ5c/Iua4LqKeq3clFzEv7MbZhA== -----END PRIVACY ENHANCED MESSAGE-----
Поля сообщений
[править | править код]- Proc-Type — тип обработки сообщения. Есть три типа обработки:
- ENCRYPTED — сообщение является зашифрованным и подписанным.
- MIC-ONLY — сообщение подписано, не зашифровано. Может быть прочитано только с помощью специального ПО PEM.
- MIC-CLEAR — сообщение подписано, не зашифровано. Кодировка отсутствует. Может быть прочитано с помощью другого (отличного от PEM) ПО.
Подпись сообщений присутствует всегда, шифрование необязательное.
- Content-Domain — идентификатор почтового сообщения.
- DEK-Info сообщает о ключе обмена данными (Data Exchange Key, DEK), алгоритме, который используется для шифрования текста, а также о параметрах алгоритма. В настоящее время доступен единственный алгоритм — DES-CBC. В будущем возможно появление новых алгоритмов.
Далее, в случае в случае симметричного управления ключами:
- Originator-ID-Symmetric содержит три подполя. Первое определяет отправителя сообщения по уникальному адресу электронной почты. Второе поле является опциональным и определяет орган (Issuing Authority, IA), который выдал заменяемый ключ (IK). Общий ключ отправителя и получателя называется заменяемым ключом (Interchange Key, IK). Третьим является также опциональное подполе, содержащее информацию о версии и окончании срока.
- Recepient-ID-Symmetric содержит три подполя. Определяет получателя аналогично предыдущему полю.
- Key-Info определяет параметры управления ключами. Состоит из четырёх подполей. Первое определяет алгоритм, использованный для шифрования DEK. Общий ключ отправителя и получателя (IK) используется для шифрования DEK. DEK может быть зашифрован либо способом DES-ECB, либо тройным DES(Triple-DES). Второе подполе определяет алгоритм MIC: MD2 либо MD5. Третье подполе, DEK, и четвёртое подполе, MIC, шифруются с помощью IK.
Иначе, в случае асимметричного управления ключами:
- Originator-Certificate — сертификат отправителя, форма которого соответствует стандарту X.509
- Key-Info содержит 2 подполя. В первом подполе описывается алгоритм с открытым ключом, которым шифруется DEK (пока только RSA). Следующее подполе — DEK, зашифрованный открытым ключом отправителя. Поле является опциональным, позволяет отправителю дешифровать своё сообщение.
- Issuer-Certificate — сертификат организации, которая подписала сертификат отправителя.
- MIC-Info содержит 3 подполя. Первое определяет алгоритмы вычисления MIC, второе — алгоритм подписи MIC. Третье поле — MIC, который подписан закрытым ключом отправителя.
- Recipient-ID-Asymmetric содержит 2 подполя. Первое подполе задаёт орган, выдавший открытий ключ получателя. Второе поле опциональное, содержащее информацию о Версии/Окончании срока.
- Key-Info задаёт параметры управления ключами. Первое подполе задаёт алгоритм, который был использован для шифрования сообщения. Следующее подполе — DEK, зашифрованный открытым ключом получателя.
Безопасность PEM
[править | править код]Ключи RSA, которые используются в PEM, могут иметь длину от 508 до 1024 битов, что обеспечивает любую стойкость к перебору. Таким образом, более вероятно, что вскрытие будет направлено на протоколы управления ключами. MITM может украсть закрытый ключ или попытаться подложить фальшивый открытый ключ. Процедуры сертификации ключей в PEM делают это невозможным. Однако, это выполняется только в результате строгого выполнения мер предосторожности, что не всегда возможно.
Также возможна скрытая модификация реализации PEM, работающей в недоверенной среде. Изменённая версия может скомпрометировать все сообщения, а также закрытый ключ. PEM не проверяет подлинность собственного ПО. Таким образом, пользователь не может доверять программному обеспечению, пока не может считать свою аппаратуру доверенной.
Литература
[править | править код]- Брюс Ш. Прикладная криптография //М.: Триумф. — 2003.
- Linn, John. Privacy enhancement for internet electronic mail: Part I: Message encryption and authentication procedures. No. RFC 1421. 1993.
- Kent, Steve. Privacy enhancement for Internet electronic mail: part II: certificate-based key management. No. RFC 1422. 1993.
- Balenson, David. Privacy enhancement for internet electronic mail: Part III: algorithms, modes, and identifiers. No. RFC 1423. 1993.
- Kaliski, Burt. Privacy enhancement for internet electronic mail: Part IV: key certification and related services. No. RFC 1424. 1993.
- Leonard, Sean, and Simon Josefsson. Textual Encodings of PKIX, PKCS, and CMS Structures. No. RFC 7468. 2015.
- Э. ТАНЕНБАУМ. Компьютерные сети. 4-е издание. 2003