S/MIME: firma y encripta tus correos electrónicos

Cuando enviamos un correo electrónico esperamos que el destinatario lo reciba de forma segura y sin modificaciones y que al mismo tiempo sea la primera persona que lo lea. A la inversa, cuando somos los receptores de un mensaje, confiamos en que ningún tercero haya podido acceder al contenido o lo haya manipulado. Asimismo, también esperamos que el autor del mensaje haya sido realmente el remitente y no otra persona que oculte su identidad tras este. Si realmente queremos estar seguros de que se cumplen todas estas condiciones deberemos recurrir sin alternativa a dos servicios de seguridad, la encriptación y la firma electrónica, pues sin ellos facilitamos enormemente la tarea de delinquir a los hackers, a pesar de que el sistema tenga protección antispam y un software antivirus. S/MIME, definido en 1999, es uno de los métodos estándar, con cuya ayuda es posible usar las prestaciones de seguridad antes descritas.

¿Qué es S/MIME?

En la publicación RFC 1847 de 1995 se detallan dos extensiones de seguridad para el estándar de correo electrónico MIME, siglas de Multipurpose Internet Mail Extension (en español, Extensiones Multipropósito de Correo de Internet): por un lado, el formato multipart/signed para firmar mensajes y, por el otro, el formato multipart/encrypted para codificarlos. Solo 4 años más tarde el IETF (Internet Engineering Tasking Force) publicó con la extensión para MIME denominada S/MIME (RFC 2633) un estándar compatible con el formato de firma antes citado.

Para la codificación, en cambio, recurre a la solución propia application/pkcs7-mime. Puedes elegir si quieres que S/MIME solo codifique o solo firme el correo o, si por el contrario, deseas aplicar ambas operaciones, disponibles para los clientes de correo electrónico más conocidos, como Microsoft Outlook, Thunderbird o Apple Mail. Una de las alternativas más conocidas que soporta multipart/signed y multipart/encrypted es OpenPGP, definida en 2007.

¿Cómo funciona la codificación y la firma con S/MIME?

S/MIME se basa en la encriptación asimétrica y recurre para ello a un par de claves, estas son, una clave privada (private key) y una pública (public key). Mientras que la pública se comparte con todos los contactos de la cuenta de correo, la privada se reserva solo para el usuario y será necesaria, por un lado, para decodificar los mensajes recibidos y, por otro, junto con la clave pública del destinatario, para poder enviar emails encriptados. Con un certificado S/MIME, ofertado por diferentes proveedores, el cliente de correo electrónico puede crear e intercambiar claves.

Para que funcione el cifrado de correos electrónicos, a cada mensaje S/MIME se antepone la información del encabezado, que envía al cliente receptor las indicaciones necesarias para registrar y tratar el contenido, entre las que se incluyen el tipo de contenido (en los archivos encriptados, por ejemplo, “enveloped-data”), el nombre de archivo correspondiente (como smime.p7m para datos firmados o protegidos) o la forma del código. Un encabezado factible para un correo encriptado puede ser, por ejemplo:

Content-Type: application/pkcs7-mime; smime-type=enveloped-data; name=smime.p7m
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=smime.p7m

La firma S/MIME puede adjuntarse al correo electrónico automáticamente cuando se está redactando, y se considera de gran utilidad por diversos motivos. En primer lugar, permite comunicar al destinatario la clave pública que asegura el proceso de comunicación entre ambos, de modo que este puede también enviar mensajes con información encriptada. Además, la firma también demuestra al destinatario que has enviado el mensaje y, al contrario que en PGP, al introducir una firma no aparecen caracteres encriptados. En caso de que el cliente de correo destinatario encuentre incongruencias al verificar la firma recibida, la legitimidad del mensaje no puede ser confirmada, lo que puede denotar una manipulación de los datos.

Nota

Incluso si no utilizas la firma digital, continúa siendo posible dar a conocer la clave pública a través de otros métodos: publícala en un servidor de claves, en tu propia web o guárdala como archivo en un dispositivo externo de almacenamiento.

¿Cómo adquirir un certificado S/MIME para enviar tus propios correos?

Como ya se ha dicho, para usar S/MIME se requiere un certificado (X.509). En principio podemos crearlo nosotros mismos, no obstante, para ello vamos a necesitar primero un certificado raíz, que en este caso debe generarse también. Además, antes de que se produzca un intercambio de información encriptada, todos los interlocutores deberán haber importado este certificado raíz. Por ello, se recomienda optar por una opción más fácil y rápida, consistente en la adquisición de un certificado en un organismo oficial de certificación, donde puede haber soluciones tanto gratuitas como de pago. Una clasificación típica divide a los certificados en tres tipos:

  • Clase 1: el certificado expedido por el organismo de certificación garantiza la veracidad de la dirección de correo dada.
  • Clase 2: el certificado garantiza la veracidad de la dirección de correo dada así como la del nombre que se le asigna. Además, siempre que tenga importancia, se confirmará también la empresa. La verificación de los datos se produce mediante bases de datos de terceros o copias de carnets de identidad.
  • Clase 3: este tipo de certificados se diferencia del de la clase 2 en que el solicitante tiene que identificarse en persona.

Si deseas encriptar tus mensajes con S/MIME y estás buscando un certificado, es importante que no pierdas de vista su función principal, esta es, proteger la comunicación vía correo electrónico y evitar que el contenido de los mensajes sea interceptado y manipulado por terceros, motivo por el cual es esencial tener en cuenta la seriedad y el grado de confianza del proveedor que se vaya a elegir.

Uno de los servicios que ofrece un mayor grado de confianza es Comodo en cuyos certificados confía, según los propios datos de esta empresa, el 99 por ciento de clientes de correo electrónico. Este organismo de certificación, conocido principalmente por certificados SSL de gran calidad, ofreció con “Free Secure Email Certificate” un certificado gratuito de uso particular y con “Secure Email Certificates” una solución de pago muy asequible, a partir de 12 euros al año, para empresas con la que es posible el cifrado de correos electrónicos de extremo a extremo con S/MIME.

Instalación de S/MIME en tu programa de correo electrónico

Para poder integrar estos procedimientos de seguridad en el cliente de correo utilizado, lo primero que se necesita, como es lógico, es un certificado S/MIME, por lo que la búsqueda del proveedor se convierte en el primer paso para conseguir que tus correos sean seguros y estén protegidos. A continuación se procede a generar e instalar un certificado personificado, proceso que en la mayoría de los casos varía mínimamente de un proveedor a otro. Tras la instalación es importante configurar el programa de correo correspondiente para que haga uso de S/MIME y recurra al certificado insertado. Por norma general el proceso de instalación finaliza al reiniciar al cliente, tras lo cual se activan funciones específicas para la encriptación o firma automática o manual de los mensajes.

En los siguientes apartados te ofrecemos instrucciones detalladas para instalar S/MIME en el sistema de escritorio de Windows y macOS, así como en los sistemas móviles iOS y Android. El servicio Comodo antes nombrado se usa de ejemplo como organismo de certificación.

Instalación de S/MIME en Windows

Quien quiera usar la tecnología S/MIME en un ordenador con Windows pero no quiera pagar por utilizar Outlook o Microsoft Office, puede recurrir a la alternativa gratuita Thunderbird, producto de la casa Mozilla, al igual que el navegador Firefox. Si aún no lo has hecho, es necesario que instales el cliente y crees una cuenta, tras lo cual deberás guiarte por los siguientes pasos para activar la encriptación y la firma S/MIME:

  1. Accede a la web de Comodo y haz clic en el botón “Sign Up Now”.

  2. En el formulario de entrada inserta los datos de contacto que debe incluir el certificado (nombre, dirección de correo y país), decide el grado de encriptación de la clave de seguridad privada y añade también una “revocation password”, o sea, una contraseña por si hay que invalidar un certificado en caso de emergencia. Antes de crear el certificado al clicar sobre “Next”, acepta las condiciones de uso.
  1. Comodo envía un Email a la dirección de correo indicada que contiene, entre otros elementos, un botón para descargar el certificado (“Click & Install Comodo Email Certificate”). Al clicar sobre él, se abre automáticamente una página y una ventana de descarga para el certificado S/MIME. Si usas Chrome o Firefox este se descargará directamente y se instalará en el navegador.

  2. Para poder usarlo en Thunderbird primero debes exportar al navegador el certificado guardado (en este caso se usa Chrome como ejemplo). Para ello abre la configuración avanzada y haz clic en el botón “Manage Certificates” que se encuentra en la pestaña “Privacy and security”.

  3. Puedes encontrar el certificado Comodo bien bajo la pestaña “Personal”, bien en la sección “Other People” de la ventana emergente. Elige la entrada correspondiente y clica sobre “Export”. El asistente de exportación que se abre a continuación te guiará por los procesos que siguen, aunque es importante que indiques que también quieres exportar la clave privada.
  1. A continuación inicia Thunderbird y abre los ajustes de la cuenta. En la opción de menú “Security” encontrarás el botón “Manage Certificates”, que permite acceder al menú correspondiente.
  1. Selecciona la pestaña “Tour Certificates” e importa el certificado que anteriormente ha sido guardado, para lo que es necesario clicar sobre “Import” y seleccionar el certificado. Para finalizar el proceso inserta tu contraseña.

  2. En el menú Security puedes seleccionar el certificado S/MIME para la encriptación y firma. Además, puedes decidir si la firma digital se establece de forma estándar y se procede a la encriptación obligatoriamente en todos los casos, para lo cual elige la opción “Required”. Al escribir un correo puedes marcar o desmarcar la selección de estos métodos individualmente en el botón S/MIME en la barra de herramientas.

Instalación de S/MIME en macOS e iOS

Los dispositivos de Apple, al contrario que los programas estándar de Microsoft, disponen ya, con el cliente “Mail” de la casa, de una solución instalada que desde un principio da la posibilidad de encriptar y firmar correos con S/MIME. Si además posees una cuenta de correo, puedes crear directamente un certificado con Comodo sin necesidad de instalar un programa adicional. El procedimiento no se diferencia mucho de Windows: accedes a la página web de Comodo, haces clic en el botón “Sign Up Now” y creas un certificado que se base en tus datos personales. Finalmente procede como se indica para instalar el certificado y configurar la encriptación S/MIME:

  1. Tras abrir el correo enviado por Comodo, descarga el certificado en una de las carpetas con el botón “Click & Install Comodo Email Certificate”. Al hacer doble clic, los archivos descargados pueden abrirse en macOS directamente y añadirse al administrador de contraseñas con llaveros. Si además quieres usar S/MIME eniPhone o iPad primero debes convertir el certificado al formato .p12 a través del administrador de contraseñas con llaveros, para después enviarlo por Email al dispositivo móvil


  1. Una vez se ha llevado a cabo la instalación hay que iniciar o reiniciar Apple Mail para poder integrar los procedimientos de encriptación y firma.

  2. Ahora es el momento de comprobar si funciona el certificado S/MIME, enviándote a ti mismo un correo electrónico firmado y encriptado. Para ello encontrarás dos botones específicos, un candado para la encriptación y una rueda dentada para la firma en la ventana del correo. Ambos símbolos se encuentran también en una barra adicional bajo el asunto del mensaje de prueba solo si la encriptación o firma funcionan adecuadamente.

Cómo configurar S/MIME en los dispositivos Android

Al igual que Windows, Android carece de un cliente para integrar S/MIME. No obstante, existen diferentes aplicaciones que ayudan en el proceso y que se pueden descargar en la Google Play Store. Entre las soluciones gratuitas cabe destacar la desarrollada por Flipdog Solutions y conocida como MailDroid, aunque sí se exige una contraprestación si se opta por la opción sin publicidad. Como en el caso de macOS, en la instalación de la firma y encriptación con S/MIME, en primer lugar necesitas generar un certificado válido y seguir los pasos que se describen a continuación:

  1. MailDroid integra por defecto botones para la encriptación y firma de tus Emails. Para que puedas usar estas funciones, necesitas descargar en primer lugar el plugin gratuito FlipdogSolutions Crypto.
  1. Con la ayuda del plugin puedes importar el certificado recién creado. Para ello abre la opción de menú “Import Certificate” y selecciona los archivos correspondientes.
  1. Cambia al menú de MailDroid y abre los ajustes. Bajo la opción de menú “Encription Plugin” puedes indicar el certificado y establecer la configuración de S/MIME según se desee. Teniendo en cuenta los posibles ataques informáticos deberás elegir, por ejemplo, si la encriptación y la firma deben llevarse a cabo por defecto o si, por el contrario, solo se debe recurrir a esta cuando el destinatario posea la clave adecuada.
  1. A partir de ahora y si así lo has decidido en el paso anterior, se añaden automáticamente la firma y la encriptación a los mensajes que redactes, aunque también puedes recurrir a los botones ya citados en el final de la ventana de mensajes para activar estos mecanismos de protección. MailDroid indica claramente si la codificación o la clave no funcionan debido a la expiración o invalidez del certificado: