miércoles, 10 de mayo de 2017

4.1.5 MIME Seguro

Introducción a S/MIME

El S/MIME (Secure MIME o Secure Multipurpose Mail Extension) es un proceso de seguridad utilizado para el intercambio de correo electrónico que hace posible garantizar la confidencialidad y el reconocimiento de autoría de los mensajes electrónicos.

El S-MIME está basado en el estándar MIME, cuyo objetivo es permitir a los usuarios adjuntar a sus mensajes electrónicos archivos diferentes a los archivos de texto ASCII (American National Standard Code for Information Interchange). Por lo tanto, el estándar MIME hace posible que podamos adjuntar todo tipo de archivos a nuestros correos electrónicos.



S-MIME fue desarrollado originalmente por la compañía RSA Data Security. Ratificado en julio de 1999 por el IETF (Internet Engineering Task Force), S-MIME se convirtió en un estándar cuyas especificaciones se incluyen en las RFC (Request for Comments, Solicitudes de Comentarios), desde la 2630 a la 2633.

Cómo funciona S-MIME

El estándar S-MIME se basa en el principio de cifrado de clave pública. Por lo tanto, S-MIME permite cifrar el contenido de un mensaje, pero no cifra la comunicación. Cada una de las diversas secciones de un mensaje electrónico, codificado de acuerdo al estándar MIME, se cifra utilizando una clave de sesión.

La clave de sesión se inserta en cada encabezado de la sección y se cifra utilizando la clave pública del destinatario. Solamente el destinatario puede abrir el contenido del mensaje, utilizando su clave privada, y esto garantiza la fiabilidad y la integridad del mensaje recibido.

Además, la firma del mensaje se cifra con la clave privada del remitente. Cualquiera que intercepte la comunicación, puede leer el contenido de la firma de dicho mensaje, pero esto garantiza al destinatario la identidad del remitente ya que sólo el remitente es capaz de cifrar un mensaje (con su clave privada) que puede ser descifrado con la clave pública.

S/MIME

Es una especificación para mensajeria electrónica segura que se empezó a definir con la finalidad de dotar de seguridad a mensajes de correo electrónico con formato MIME. SMIME ofrece confidencialidad, integridad, no repudio del origen y autenticación mediante la combinación de los algorítmos criptográficos seguros con los estándares de correo más difundidos , obteniendo así una gran interoperatividad.


S/MIME puede ser utilizado por los agentes de correo tradicionales para añadir seguridad pero también puede ser usado en cualquier protocolo de transporte de datos con formato MIME, como puede ser el HTTP. La estructura de un mail S/MIME amplia la del MIME con la aparición de ciertos tipos. Su estructura es básicamente la siguiente:

Una cabecera: 

  1. ·         From: direccion@de.correo de quien lo envía.
  2. ·         Subject: asunto de mail.
  3. ·         To: direccion@de.correo a quien va dirigido.
  4. ·         MIME-Version: 1.0.
  5. ·         Content-Type: {text/plain} (tipo y subtipo de lo que se envia).
  6. ·         Content-Transfer-Encoding: {quoted-printable} (como ha sido codificada la información).

El cuerpo del mensaje: 

  1. formado básicamente por lo que se desea transferir.

La opción multipart que suele ir a continuación de Content-Type nos da las siguientes opciones:
multipart/mixed: indicamos que el mail se compone de una serie de entradas MIME y cada una de ellas tendrá una estructura MIME con todos los campos necesarios. Para delimatar las partes se ha de añadir boundary={puede ser lo que quieras}. Cada una de las partes contenidas puede a su vez utilizar multipart/mixed y contener a varias partes más.

multipart/signed: indicamos que el mail es un mail firmado. Se le añade protocol= "application/x-pkcs7-signature" para indicar el protocolo utilizado en la firma y boundary= para delimitar campos. Para indicar que un tipo no está reconocido se indica mediante esta expresión x-{tipo}.

Para obtener un mail cifrado sólo hay que indicar Content-Type: application/x-pkcs7-mime. Al tratarlo, el mailer, descodifica el cuerpo, elimina la linea en blanco que hay entre la cabecera y el cuerpo, elimina los campos Content- y lo pega todo a la parte de arriba obteniendo así un mail normal.

El objeto PKCS7 contiene la firma electrónica del mail pero además puede contener:

data: 

  1. datos
  2. ·         signed data: datos firmados {{+ certificado}+ todo firmado}
  3. ·         enveloped data: datos cifrados
  4. ·         signed and enveloped data: no recomendable


S/MIME puede garantizar la confidencialidad del tráfico de datos utilizando direcciones de correo anónimas, que deshacen la dirección original. Para evitar que una tercera persona pueda identificar la identidad del emisor mediante la firma digital, calcula primeramente dicha firma, la añade al mensaje original y lo cifra todo en bloque. Los certificados utilizados por S/MIME se basan en la norma X.509.

No hay comentarios.:

Publicar un comentario

PORTADA