You are on page 1of 12

Buenas Prácticas de Firma

Electrónica

Referencia: AST-EFIRMA-BuenasPracticasFirma.doc
Autor: Sergio Loras
Fecha de creación: 17/05/2007
Última actualización: 20/05/2008
Versión: v1.2

Clasificación: Público
Buenas Prácticas de Firma Electrónica

Clasificación: Público

Control del documento

Registro de cambios
Versión Fecha Autor Descripción
V1.0 17/05/07 Sergio Loras Creación del documento Inicial
V1.1 17/03/08 Sergio Loras Revisión de contenidos
V1.2 16/05/08 Sergio Loras Revisión de contenidos

Revisores
Nombre Área
Victoria Coronas Aragonesa de Servicios Telemáticos

Lista de distribución
Nombre Área
Documento Público

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 2 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

Contenido

1. INTRODUCCIÓN................................................................................................................................. 4

2. ACTORES ........................................................................................................................................... 5

3. FACTORES A TENER EN CUENTA DE UNA FIRMA ...................................................................... 6


3.1. PERIODO DE VALIDEZ DE UNA FIRMA..................................................................................... 6
3.2. OBJETIVOS DE UNA FIRMA ....................................................................................................... 6
3.3. FORMATOS DE FIRMA................................................................................................................ 6

4. FORMATOS Y USOS DE FIRMA ACONSEJADOS.......................................................................... 8


4.1. AUTENTICACIÓN EN UNA APLICACIÓN ................................................................................... 8
4.2. FIRMA DE DOCUMENTOS .......................................................................................................... 8
4.2.1. Firma de un documento XML.................................................................................................... 9
4.2.2. Firma de un formulario web ...................................................................................................... 9
4.2.3. Firma de un documento binario ................................................................................................ 9
4.2.4. Firma de un PDF..................................................................................................................... 10
4.3. VALIDACIÓN DE UN DOCUMENTO FIRMADO........................................................................ 10
4.3.1. Respuesta de la validación ..................................................................................................... 10
4.4. RESELLADO DE DOCUMENTOS.............................................................................................. 11
4.5. CERTIFICADOS.......................................................................................................................... 12

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 3 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

1. Introducción
El objetivo de este documento es sugerir una serie de recomendaciones para los
desarrolladores de aplicaciones de firma electrónica, basadas en la Directiva Europea
1999/93/ES, las normativas vigentes a nivel estatal y autonómico, y diferentes documentos del
European Telecommunications Standards Institute / Electronic Signatures and Infrastructures
(ETSI/ESI).

El objetivo básico de la firma electrónica es aportar al mundo de los documentos electrónicos la


misma funcionalidad que aporta la firma manuscrita a un documento impreso, es decir,
identificar al autor del mismo y, en el caso de documentos compartidos entre diferentes
entidades o personas, fijar el contenido del documento mediante el cruce de copias firmadas
por todas las partes implicadas.

Los retos que debe atender la firma electrónica son garantizar la identidad del firmante y
garantizar que el documento no ha sido modificado tras ser firmado.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 4 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

2. Actores
Los actores principales en los procesos de firma electrónica son tres:

El firmante, es la persona o entidad que realiza la firma.

El validador, es la persona o entidad que recibe y valida la firma.

Los prestadores de servicios de certificación (CSP), son las entidades que nos
ofrecen uno o más servicios que nos ayudan a crear relaciones de confianza entre
le firmante y el validador.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 5 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

3. Factores a tener en cuenta de una firma

3.1. Periodo de validez de una firma


Podemos distinguir dos casos:

Firmas de corta duración: firmas que no necesitan ser validadas después de que
expire la validez del certificado del firmante. Una vez que el certificado del firmante
esté caducado o revocado, esa firma perderá toda validez legal.

Firmas de larga duración: firmas que van a tener que ser verificadas posiblemente
después de que el certificado del firmante haya expirado, incluso después de que el
certificado del emisor del certificado haya expirado. Para ello se recurren a metodos
como los sellos de tiempo y a la preservación de los metodos de revocación para
prolongar la validez de la firma.

3.2. Objetivos de una firma


Podemos distinguir tres objetivos:

No repudio de un documento, cuando queremos que un documento firmado tenga


la misma validez juridica que un documento con firma manuscrita, ademas de las
restantes propiedades técnicas de la firma electrónica. Normalmente cuando
buscamos este objetivo tambien nos interesa que la firma sea de larga duración.
Para conseguir este objetivo es imprescindible que el certificado del firmante esté
habilitado para ello.

Integridad y autenticidad de un documento, simplemente queremos asegurar que


el documento no cambie y conocer la identidad del firmante, sin esperar que esa
firma tenga validez legal.

Autenticación ante una aplicación, en este caso, el mecanismo de firma solo


persigue el identificarse ante una aplicación para realizar un login u obtener
permisos.

3.3. Formatos de firma


Antes de elegir el formato en el que se debe realizar una firma o al que se debe actualizar la
misma, hay que tener en cuenta el periodo de validez de la firma y sus objetivos, ya que
conseguir ese periodo de validez y esos objetivos nos resultará mas o menos complicado
dependiendo del formato que elijamos (PKCS#7, CMS, CAdES/XAdES, XMLDSig, PDF…), por
ello partiremos siempre de base con formatos de firma avanzados CAdES/XAdES.

Para las firmas en XML tendremos el formato XAdES, y para las firmas en ASN.1 tendremos el
formato CAdES. Dentro de estos dos formatos podremos considerar varios niveles,
dependiendo de la información que esté contenida en la firma. Las firmas en sintaxis XML son
equivalentes a las firmas en sintaxis ANS.1 del mismo nivel.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 6 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

Para más información, en los documentos TS 101 733 y TS 101 903 del ETSI se describen a
más detalle los siguientes formatos de firma en sus variantes ASN.1 (CAdES) y XML (XAdES)
respectivamente.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 7 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

4. Formatos y usos de firma aconsejados


Desde el grupo de administración electrónica de Aragonesa de Servicios Telemáticos se
aconsejan estos usos y tipos de firma para los siguientes casos. En cualquier caso, habría que
valorar más a fondo los factores que puedan afectar a cada procedimiento para acabar
decantandose por un uso o tipo de firma.

Para todos los procedimientos expuestos a continuación, se debe contemplar que tienen que
permitir el uso de todos lo certificados emitidos por las autoridades de certificación con las que
el Gobierno de Aragón ha llegado a convenio para reconocerlas.

4.1. Autenticación en una aplicación


Para este objetivo se puede utilizar tanto el protocolo TLS o implementar un mecanismo de
firma, para asegurarnos de que el usuario es poseedor de la clave privada asociada al
certificado con el que se quiere autenticar.

En el caso de implementar un mecanismo de firma, y al ser ésta de corta duración y su único


objetivo el de autenticar al firmante ante la aplicación, bastaría con una firma CAdES-BES. Se
firmaria un token aleatorio que se validaria en el servidor, y si la firma fuese correcta se
procederia a acceder a los atributos del certificado que nos interesaran para evaluar si se debe
o no darle acceso a la aplicación.

En el caso de utilizar el protocolo TLS, bastaria con configurar el servidor para pedir una
autenticación TLS y asi despreocuparnos de implementar el mecanismo de firma. Pero
igualmente en este caso, tambien se deberia implementar el mecanismo para obtener los
atributos del certificado del usuario y tratarlo como en el caso anterior para poder llegar a darle
acceso a la aplicación.

4.2. Firma de documentos


A la hora de que una aplicación ofrezca al usuario la posibilidad de firmar un documento, hay
una serie de requisitos que se deben cumplir para considerar el proceso valido.

La comunicación debe estar securizada usando el protocolo https.

Los algoritmos usados para realizar la firma deben ser seguros y no mostrar
ninguna vulnerabildad, por lo que estos deben ser configurables dentro de la
aplicación, para posibles cambios en el futuro.

El firmante tiene que poder visualizar el documento a firmar.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 8 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

El certificado del firmante tiene que ser uno de los emitidos por las autoridades de
certificación reconocidas por el Gobierno de Aragón.

Opcionalmente se pueden solicitar algunos datos al firmante como:

Política de firma empleada.

Rol del firmante.

Localización de la firma.

Una vez conluido el proceso de firma, automaticamente se desencadenará el proceso de


validación de la misma para actualizar su nivel si es necesario.

4.2.1. Firma de un documento XML

En los casos que queramos firmar un documento XML, la firma que debé realizar el usuario
será inicialmente una XAdES-BES o XAdES-EPES attached enveloping o enveloped. En el
caso de que no firmemos todo el XML, sino unos nodos en concreto, el formato sera
enveloped obligatoriamente.

Una vez tengamos esa firma deberemos actualizara hasta un nivel que satisfazca las
necesidades de su tiempo de vida estimado. Como minimo la firma se actualizara hasta un
nivel XAdES-T, para permitirnos situar en el tiempo el momento de la firma.

En caso de que la firma no tenga que perdurar mas haya de la vida del certificado del firmante
o incluso hasta la validez del sello de tiempo que nos proporcionara el nivel XAdES-T, no sera
necesaría otra actualización. Esto se dará en los casos que solo nos interese la integridad del
documento y la identidad del firmante.

En caso de que la firma tenga que perdurar un mayor tiempo, la firma debería ser actualizada
hasta un nivel XAdES-X-Long para evitar problemas a la hora de la futura verificacion.

Si la firma tiene que perdurar indefinidamente por motivos de no repudio, el nivel de ésta sera
XAdES-A.

4.2.2. Firma de un formulario web


Para este caso, lo mas aconsejable es transformar el formulario web a un documento XML con
las herramientas oportunas y seguir las recomendaciones para la firma de un documento XML.

4.2.3. Firma de un documento binario


Al ser un documento binario y para no modificarlo, usaremos firmas CAdES detached,
respecto a su actualización respecto a su tiempo de vida estimado, es analogo al de la firma de
un documento XML.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 9 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

4.2.4. Firma de un PDF

Aunque existan firmas PDF, que pueden integrarse en el propio PDF y ser reconocidas por
Adobe Reader y verificadas por él, éstas, al no ser firmas avanzadas (son firmas CMS
detached incrustadas en el PDF) y por lo tanto, no aseguran su perdurabilidad a lo largo del
tiempo, no son recomendadas desde AST.

Es recomendado entonces seguir los mismos pasos de firma para un documento binario
cualquiera.

4.3. Validación de un documento firmado


En este proceso se determinará si la firma es valida o no, para ello serán obligatoriamente
necesarios los siguientes elementos:

El documento.

La firma electrónica.

Opcionalmente se requerirán estos elementos en caso de que sean necesarios:

La política de firma usada.

El tipo de datos firmados como se especifica en el TS 101 903 que identifica al


documento firmado y ayuda a presentarlo de forma correcta en la validación.

4.3.1. Respuesta de la validación

De la respuesta de una validación se obtienen principalmente dos elementos que la aplicación


deberá evaluar:

Estado de la validación.

Validación completada, donde todo el proceso de validación es


considerado completado y se puede asegurar un resultado.

Validación fallida, donde dependiendo de varios factores la validación no


puede ser considerada completa.

La propia firma, que ha podido ser actualizada en los siguientes casos:

En caso de que asi se haya establecido en la aplicación para obtener el


nivel de firma AdES necesario.

Si un sello de tiempo está a punto de caducarse, un sello de tiempo


adicional debe ser añadido para prolongar la vida de la firma si es
necesario.

Si la tecnología que se usó ahora es vulnerable, o lo será en breves,


información adicional debe ser añadida para asegurar la validez de la firma.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 10 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

La aplicación debé mostar al usuario la siguiente información en una validación de un


documento firmado:

El documento del firmante en el formato original en la que se firmo, si por alguna


razón, el contenido del documento no puede ser visualizado exactamente de la
forma en la que se firmo, se debe informar claramente.

El estado de la firma.

DN del certificado del firmante.

DN del certificado de la autoridad de certificación que ha emitido el certificado.

DN de las autoridades de certificación de la cadena de confianza hasta el nivel


marcado por la aplicación.

La fecha de la firma.

Usando el correspondiente interface, el usuario debe encontrar la siguiente información


adicional:

Otro contenido del certificado del firmante (Nombre, apellidos, NIF, correo…).

El formato del documento que fue firmado.

El lugar de la firma, si estuviese disponible.

La política de firma usada, si estuviese disponible.

Roles del certificado usados en al firma, si estuviesen disponibles.

4.4. Resellado de documentos


Cuando una firma es considerada de larga duración y se debe asegurar su validez a lo largo
del tiempo indefinidamente necesitaremos del resellado de tiempo.

Usando formatos avanzados de firma como lo son CAdES y XAdES, tenemos resuelto el
problema de asegurar la vida de una firma gracias a los resellados de tiempo que proporciona
el nivel mas alto de estos formatos: AdES-A (Archival Electronic Signature).

Este nivel está preparado para ir guardando sellos de tiempo sucesivos que nos aseguren la
validez de la firma hasta que creamos conveniente.

Una aplicación debe encargarse de resellar sus documentos firmados en estos casos:

Antes de que caduque el ultimo sello de tiempo, es decir antes de la fecha marcada
por el campo Valido hasta del certificado de la Autoridad del Sellado de Tiempo.
Este proceso puede ser automatico, ya que se sabe de antemano la fecha de
caducidad del certificado de la TSA.

Si un algoritmo criptográfico usado en las firmas o sellos es declarado vulnerable,


un nuevo sello con algoritmos que no sufran vulnerabiliad debe ser añadido. Este
proceso debe ser lanzado manualemente dado el caso.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 11 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es
Buenas Prácticas de Firma Electrónica

Clasificación: Público

4.5. Certificados
En todos estos procesos, los certificados son los encargados de autenticar al firmante,
mediante la relación que crea entre su identidad y las claves usadas en el proceso de firma.
Por ello es importante saber, que certificados se pueden usar en cada caso.

Autenticacion/Login, para este caso, el unico objetivo es asegurarnos de la


identidad del poseedor de las claves, por lo que podremos usar certificados
personales, de personas juridicas, de entidad, de componente… asi como cualquier
certificado que permita a la aplicación poder asignar un usuario con los datos que
en él se contengan. Es muy importante distinguir el proceso de autenticación con el
de firma de documentos, y que aunque pertenezcan a la misma persona, el
certificado usado para autenticarse puede ser perfectamente diferente al usado para
firmar un documento una vez dentro de la aplicación.

Firma de documentos, para este caso, como el objetivo será el no repudio de esos
documentos y que la firma tenga la misma validez legal que la manuscrita,
deberemos usar certificados reconocidos perparados para esto. Por ejemplo un
certificado de servidor (su único objetivo es autenticar el nombre de un sitio web)
nunca puede ser usado para la firma de documentos. Si el firmante es una persona
fisica, deberá usar un certificado personal o de persona juridica, si es un proceso o
una aplicación la que realiza la firma, se usará un certificado de entidad o de
componente.

Ademas del tipo de certificado, es importante establecer quien debe encargarse de custodiar
esos certificados y parejas de claves.

Autenticación de usuarios, logicamente para realizar este proceso de


autenticación , el certificado y pareja de claves debe estar en posesion del usuario,
lo mas aconsejado es que residan en una tarjeta o token criptográfico.

Firma de documentos por parte de usuarios, al igual que en el caso de


autenticación de usuarios, el certificado y pareja de claves deben estar en posesión
del firmante, y según la Ley 59/2003, para que la firma se considere reconocida,
esta se debe realizar desde un dispositivo seguro como son las tarjetas o tokens
criptográficos.

Firma de documentos por parte de aplicaciones/procesos, en este caso, existe


la opción de que los certificados y parejas de claves que identificarán a las
aplicaciones/procesos, sean custodiadas en un modulo hardware seguro (HSM), al
ser un dispositivo seguro como marca la Ley 59/2003, la firma realizada en estos
casos será reconocida al igual que la que pueda realiazar una persona desde su
tarjeta criptográfica.

Ref.: AST-EFIRMA-BuenasPracticasFirma.doc Entidad Pública Aragonesa de Servicios Telemáticos


Fecha: 20.05.2008 Pº María Agustín 25-27-29
Versión: v1.2 Pág. 12 de 12 50004 ZARAGOZA
Tel. 976 71 4495 – Fax. 976 71 4395
www.aragon.es

You might also like