Материал из РУВИКИ — свободной энциклопедии

S/MIME

S/MIME (сокр. от англ. Secure / Multipurpose Internet Mail Extensions) — стандарт для шифрования и подписи в электронной почте с помощью открытого ключа.

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

Реализация[править | править код]

Сертификаты S/MIME[править | править код]

Первая версия S/MIME была разработана в 1995 году рядом антивирусных компаний. Это была одна из нескольких спецификаций для обеспечения безопасности сообщений. Pretty Good Privacy (PGP) является примером другой спецификации для обеспечения безопасности сообщений. Первая версия S/MIME не была признана как единый стандарт для защиты сообщений. В 1998 году ситуация начала меняться.

В отличие от первой версии, S/MIME второй версии был представлен в Internet Engineering Task Force (IETF) для рассмотрения в качестве стандарта. Благодаря этому шагу, S/MIME выделился среди остальных стандартов защиты сообщений. S/MIME версии 3.0, добился широкого признания в качестве стандарта для защиты сообщений. S/MIME версии 3.0 поддерживают продукты Microsoft.

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

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

Multipart/Signed[править | править код]

Цифровые подписи являются наиболее часто используемые службой S/MIME. Как следует из названия, цифровые подписи это цифровой аналог традиционных, правовых подписей на бумажном документе. Как и юридические подписи, цифровые подписи обеспечивают следующие функции безопасности:

Неподдельность (уникальность) подписи. Концепция неподдельности является наиболее знакомой в контексте бумажных контрактов: подписанный договор является юридическим документом. Цифровые подписи обеспечивают те же функции, и все чаще в некоторых областях, признаются юридически обязательными. Потому что в SMTP не предусмотрено средств аутентификации, он не может обеспечить строгое выполнение обязательств.

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

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

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

Multipart/Encrypted[править | править код]

Сообщение электронной почты стандарта SMTP может быть прочитано всеми. Эти проблемы решаются в S/MIME с помощью шифрования.

Шифрование представляет собой способ изменения информации так, что она не может быть прочитана, пока не будет расшифрована. Шифрование сообщения обеспечивает:

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

Целостность данных как и цифровой подписи. Шифрования сообщений предоставляет возможность целостности данных, неизменность на всем пути следования.

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

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

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

Когда получатель открывает зашифрованное сообщения, выполняется расшифровка сообщения. Восстанавливается зашифрованное сообщение и уникальная информация об получателе. Получив уникальную информацию, выполняется расшифровка сообщения . Эта операция возвращает незашифрованное сообщение, которое затем будет показано получателю.

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

Принцип совместной работы Multipart/Encrypted и Multipart/Signed[править | править код]

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

Используемые алгоритмы[править | править код]

  • Для шифрования сообщений согласно последней версии стандарта RFC 5751 v3.2 все клиенты должны поддерживать: AES-128 CBC, а AES-192 CBC и AES-256 CBC являются рекомендованными, DES EDE3 CBC поддерживается для совместимости со старыми клиентами и для работы с отправленными ранее письмами.
  • Для подписи сообщений все клиенты должны поддерживать: RSA с SHA-256 (приём и отправка), а DSA с SHA-256 и RSASSA-PSS с SHA-256 (приём отправка) являются рекомендованными, RSA с SHA-1, DSA с SHA-1, RSA с MD5 поддерживаются для совместимости со старыми клиентами и для работы с отправленными ранее письмами.

Практические аспекты применения S/MIME[править | править код]

Корректное использование стандарта S/MIME накладывает некоторые ограничения на применение традиционных приложений электронной почты и рабочей среды, в которой они используются:

  • Отправителю и получателю необходимо согласовать применение клиентских приложений электронной почты, которые поддерживают данный стандарт. В противном случае, почтовый клиент получателя отображает в письмах файлы-вложения «smime.p7s», которые получатель обычно не может корректно интерпретировать.
  • Эффективное применение S/MIME требует комплексного подхода к обеспечению безопасности. Это означает, что необходимо обеспечивать защиту сообщений не только по пути следования от отправителя к получателю, но и в рабочей среде отправителя и получателя. В частности, несоблюдение этого требования может привести к утечке конфиденциальной информации либо несанкционированной модификации сообщений, равно как и компрометации секретных ключей непосредственно на компьютерах пользователей.
  • S/MIME принципиально несовместим с веб-почтой. Это обусловлено тем, что криптография открытых ключей, лежащая в основе стандарта S/MIME, обеспечивает защиту конфиденциальности и целостности сообщений на пути от отправителя до получателя. В то же время конфиденциальность и целостность сообщений недостижимы при традиционном использовании веб-почты, так как провайдер сервиса веб-почты имеет возможность как читать сообщения, так и модифицировать их. В то же время попытки использования подписи или шифрования сообщений на стороне сервера являются компрометацией секретных ключей пользователей. Кроме того, основное преимущество веб-почты — её доступность с любого компьютера, где есть веб-обозреватель — противоречит требованию контроля защищенности рабочей среды при использовании S/MIME.

Российские стандарты[править | править код]

В России действуют свои криптографические стандарты. Использование их совместно с S/MIME (PKCS#7, Cryptographic Message Syntax) описано в RFC4490: Using GOST with CMS.

Примечания[править | править код]

Ссылки[править | править код]