Hace algún tiempo presentábamos nuestro servicio de Mail Sellado como herramienta para garantizar el envío de un correo electrónico, pudiendo garantizar fidedignamente cuando se ha escrito un correo, a quien se ha dirigido y que se ha escrito, todo ello únicamente añadiendo en copia (oculta o no) a mailsellado@securitybydefault.com.
En la presentación de la versión 1.0 un avispado lector nos dejaba un comentario indicando que faltaba algo, faltaba una firma digital que aun no estaba implementada.
Finalmente, presentamos la versión 2.0 que funciona de la siguiente forma:
- Envías un correo con copia a mailsellado@securitybydefault.com
- Al llegar ese correo electrónico, MailSellado lo firma digitalmente empleando una clave GPG cuya clave pública está disponible aquí
- Sobre esa firma digital se computa un sello de tiempo empleando la TSA de la Agencia de Tecnología y Certificación Electrónica
- Te enviamos de vuelta tu mail original + la firma GPG + el sello de tiempo, con este correo de vuelta tienes la prueba irrefutable de que enviaste ese correo
De esa forma podrás demostrar que enviaste un correo electrónico y su contenido.
Para verificar las firmas:
Primero descargamos la clave pública de Mail Sellado:
$ wget www.security-projects.com/mailsellado.key
Luego el certificado de la CA raiz de accv:
$ wget http://www.accv.es/fileadmin/Archivos/certificados/rootca.crt
Importamos la clave pública:
$ gpg –import mailsellado.key
Verificamos la firma digital sobre nuestro correo original:
$ gpg –verify 2390495814521.39.txt.asc 2390495814521.39.txt
Y finalmente verificamos el sello de tiempo:
$ openssl ts -verify -data 2390495814521.39.txt.asc -in 2390495814521.39.tsr -CAfile rootca.crt
(Para este último paso necesitamos una versión de OpenSSL reciente, mínimo 1.0.0c)
Fuente: SecurityByDefault