Firmas Digitales y Electrónicas
Firma digital: Hace referencia, en la transmisión de mensajes telemáticos y en la gestión de documentos electrónicos, a un método criptográfico que asocia la identidad de una persona o de un equipo informático al mensaje o documento. En función del tipo de firma, puede, además, asegurar la integridad del documento o mensaje.
“Firma digital: Se entenderá como un valor numérico que se adhiere a un mensaje de datos, utilizando un procedimiento matemático conocido, vinculado a la clave del iniciador…”
Firma Electrónica: como la firma ológrafa (autógrafa, manuscrita), puede vincularse a un documento para identificar al autor, para señalar conformidad (o disconformidad) con el contenido, indicar que se ha leído y en su defecto mostrar el tipo de firma y garantizar que no se pueda modificar el contenido.
La Firma Electrónica contempla fundamentalmente dos clases de firma electrónica llevadas a cabo con certificado electrónico según el nivel de seguridad que ofrece el certificado y el dispositivo utilizado:
La firma electrónica avanzada: que es la firma electrónica que permite identificar al firmante y detectar cualquier cambio ulterior de los datos firmados, que está vinculada al firmante de manera única y a los datos a que se refiere y que ha sido creada por medios que el firmante puede mantener bajo su exclusivo control.
La firma electrónica reconocida: que es la firma electrónica avanzada basada en un certificado electrónico reconocido y generada mediante un dispositivo seguro de creación de firma. La firma electrónica reconocida tendrá respecto de los datos consignados en forma electrónica el mismo valor que la firma manuscrita en relación con los consignados en papel.
Atributos de la firma digital
- Es única
- Es verificable
- Está bajo control exclusivo del iniciador
- Está ligada a la información del mensaje
- Está de acuerdo con la reglamentación
La función hash es un algoritmo matemático que permite calcular un valor resumen de los datos a ser firmados digitalmente. Funciona en una sola dirección, es decir, no es posible, a partir del valor resumen, calcular los datos originales. Cuando la entrada es un documento, el resultado de la función es un número que identifica inequívocamente al texto. Si se adjunta este número al texto, el destinatario puede aplicar de nuevo la función y comprobar su resultado con el que ha recibido. Ello no obstante, este tipo de operaciones no están pensadas para que las lleve a cabo el usuario, sino que se utiliza software que automatiza tanto la función de calcular el valor hash como su verificación posterior.
El documento de identidad electrónico (DI-e) también conocido como DNI electrónico o Cédula de identidad electrónica es un documento emitido por una autoridad oficial para permitir la identificación de la población de forma personal o virtual. Tiene el tamaño de una tarjeta de crédito y dispone de un chip que permitirá a las personas naturales firmar digitalmente documentos electrónicos con la validez legal que una firma manuscrita.
¿QUÉ ES LA FIRMA ELECTRÓNICA?
Después de haber considerado los principales conceptos sobre criptografía asimétrica, autenticación y generación de “huellas digitales” de mensajes, se introduce el concepto de firma electrónica o digital de un mensaje, fundamental para posibilitar el desarrollo del comercio electrónico y los servicios digitales de forma segura a través de Internet.
En primer lugar, se presenta la definición de firma electrónica propuesta por el organismo internacional ISO (del idioma inglés, International Organization for Standardization) en el documento ISO 7498-2, donde especifica que la firma electrónica son los datos añadidos a un conjunto de datos que permiten al receptor probar el origen y la integridad de los datos, así como protegerlos contra falsificaciones.
Por lo tanto, la firma electrónica de un mensaje o transacción permite garantizar la integridad, la autenticación y la no repudiación de un sistema de información basado en TICs. Para su obtención se sigue un esquema bastante sencillo: el creador de un mensaje debe encriptar la “huella digital” del mensaje con su clave privada y enviarla al destinatario acompañando al mensaje encriptado. La encriptación asimétrica se aplica a la “huella digital” del mensaje y no sobre el propio mensaje, debido al elevado costo computacional que supone la encriptación de todo el mensaje, alternativa que resulta mucho más lenta y compleja.
Ejemplo de Obtención de la firma electrónica o digital de un mensaje.
Ejemplo de Utilización de la firma electrónica o digital.
Aquí muestra el procedimiento seguido por el Usuario A para enviar un mensaje encriptado a otro usuario B acompañado de la correspondiente firma electrónica.
Una vez recibido el mensaje encriptado por A, el usuario B realiza los siguientes pasos para comprobar la autenticidad y la integridad del mensaje:
1. Recupera el mensaje original desencriptando el texto cifrado con su clave privada. Como sólo él conoce esta clave, se garantiza la confidencialidad en la red.
2. Aplica el algoritmo de compendio (algoritmo hash) para generar la “huella digital” del mensaje que acaba de recibir.
3. Utiliza la clave pública de A para desencriptar la “huella digital” del mensaje original.
Conviene recordar que esta “huella digital” había sido encriptada por el usuario A con su clave privada (constituía la firma electrónica de A sobre el mensaje original).
4. Compara la “huella digital” desencriptada con la que acaba de generar a partir del mensaje recibido y, si ambas coinciden, podrá estar seguro que el mensaje es auténtico y se ha respectado su integridad.
En definitiva, con el esquema propuesto basado en un sistema criptográfico y la firma electrónica se consigue garantizar la confidencialidad, la integridad y la autenticación de los mensajes transmitidos.
En 1991 se estableció el primer estándar para la firma electrónica, el ISO/IEC 9796, que utiliza el algoritmo de clave pública RSA (denominación derivada de sus creadores, Rivest, Shamir y Adleman). También se ha propuesto otro estándar conocido como DSS (del idioma inglés, Digital Signature Standard) basado en el algoritmo ElGamal.
CARACTERÍSTICAS DE LA FIRMA ELECTRÓNICA
Seguidamente, se presentan las principales características de la firma electrónica:
- Es personal, ya que sólo el legítimo propietario la puede generar; la firma electrónica asocia al firmante con un determinado archivo y prueba su participación en el acto de la firma.
- Puede considerarse que es prácticamente infalsificable; el intento de un usuario ilegal de falsificar tal firma resulta prácticamente imposible con los recursos computacionales disponibles en la actualidad.
- Es fácil de autenticar.
- Es fácil de generar.
- Además de depender del autor, garantizando de este modo la autenticidad, también depende del mensaje que se firma, garantizando así también su integridad, es decir, la validez del contenido firmado.
AUTORIDADES DE CERTIFICACIÓN
Los sistemas criptográficos de clave pública plantean dos importantes problemas para su implementación práctica:
- ¿Cómo puede un usuario estar seguro de que la clave pública enviada por un determinado sujeto se corresponde con dicho sujeto?
- ¿Cada usuario debe almacenar las claves públicas de todos los sujetos con los que puede comunicarse?
Por otra parte, el firmante debe garantizar la seguridad de su clave privada, ya que en caso contrario alguien puede firmar en su nombre. Además, el acto de firma debe ser consciente: dado que se ha asumido desde siempre que la firma manuscrita representa una manifestación física del consentimiento de un individuo, este mismo principio se aplica ahora a la firma electrónica.
Para resolver estos problemas y proporcionar garantías en los sistemas que emplean firmas electrónicas, surgen las Autoridades de Certificación, que actúan como Terceras Partes de Confianza. El papel de estas autoridades consiste en garantizar la identidad de todos los usuarios registrados mediante la emisión de Certificados Digitales, los cuales constituyen, además, un método seguro para distribuir las claves públicas de los usuarios.
Para poder cumplir con su misión, las Autoridades de Certificación también cuentan con la colaboración de las Agencias de Registro Locales, que se encargan de la comprobación de la identidad del usuario antes de la expedición del certificado, así como de las Autoridades de Validación, que pueden comprobar la validez de un Certificado Digital ante la petición de un interesado.
Gracias al papel desempeñado por las Autoridades de Certificación, cada usuario del sistema criptográfico no necesita almacenar las firmas digitales de todos los demás usuarios. En cada transmisión de un mensaje encriptado el emisor procederá al envío de un certificado digital que lo identifique con el “sello de validez” de una Autoridad de Certificación (es decir, estar firmado electrónicamente por ésta). Para obtener dicho certificado, el usuario debe aportar una serie de credenciales que la correspondiente Autoridad de Certificación se encargará de verificar.
Tras haber verificado todos los datos que van a incluirse como identificador en el certificado, la Autoridad de Certificación genera dicho certificado y el usuario puede obtenerlo de múltiples formas: obteniendo en el certificado digital en algún medio de soporte, descargándolo de un servidor Web previa identificación mediante un número de petición y una contraseña, etc.
El certificado en sí es público, por lo que el poseer los certificados de otras personas no permite suplantar su identidad.
Cada certificado digital contiene el nombre del usuario y su clave pública, así como su período de validez y, para dotarlo de mayor seguridad (garantizar la autenticidad y la integridad), está firmado con la clave privada de la Autoridad de Certificación.
FUNCIONES DE UNA AUTORIDAD DE CERTIFICACIÓN
Seguidamente, se enumeran las principales funciones desempeñadas por una Autoridad de Certificación:
- Generación y actualización de las claves de los usuarios y emisión de los certificados digitales.
- Gestión del directorio y distribución de las claves.
- Revocación de las claves y certificados digitales.
- Renovación de certificados una vez alcanzado su fecha de expiración.
- Declaración de la Política de Certificados.
Es posible distinguir dos tipos de solicitudes de emisión de certificados digitales:
- Solicitud de firma de certificado: el solicitante crea con un software la pareja de claves privada-pública y, junto con sus datos identificatorios, entrega su clave pública a la Autoridad de Certificación para que sea firmada por ésta.
- Solicitud de certificado completo: el solicitante sólo entrega sus datos identificatorios y recibe el certificado digital y su clave privada asociada, de modo que en este caso la pareja de claves la genera directamente la Autoridad de Certificación. En cuanto a la gestión del directorio de claves, en la práctica suele utilizarse el estándar LDAP (del idioma inglés, Lightweight Directory Access Protocol) para acceder a dicha información.
En relación a la revocación de claves y certificados, conviene tener en cuenta que un Certificado Revocado es aquél que ha perdido su validez antes de su fecha de expiración, debido a diversas circunstancias:
- La clave privada del usuario ha sido comprometida
- La persona ha dejado de pertenecer a una organización y no puede firmar en su representación.
- Etc.
Para informar a los usuarios del sistema de este tipo de incidentes, las Autoridades de Certificación se encargan de generar y distribuir una Lista de Certificados Revocados -CRL- (del idioma inglés, Certificate Revocation List), que todos los usuarios deberán consultar antes de dar por válido un determinado certificado. Se cuenta con el protocolo OCSP (del idioma inglés, Online Certificate Status Protocol) definido en la RFC 2560, que devuelve respuestas firmadas ante preguntas de si un determinado certificado todavía sigue siendo válido.
La Autoridad de Certificación también debe encargarse del mantenimiento de los Registros de Verificación de Confianza, registros que permiten probar cuándo y cómo se ha verificado la autenticidad de una firma electrónica, como respuesta, por ejemplo, a una petición OCSP. Por otra parte, la Declaración de la Política de Certificación consiste en una declaración de las prácticas empleadas por una Autoridad de Certificación para emitir y gestionar los certificados, que debe incluir diversos aspectos tales cómo se comprueba la identidad del usuario antes de emitir el certificado, qué datos y qué atributos se incluyen en cada certificado, política de confidencialidad sobre todos los datos manejados, definición de las obligaciones de los usuarios, etc.
Cabe destacar la importancia de garantizar la seguridad física y lógica de la Autoridad de Certificación, ya que si su seguridad se ve comprometida, también estarán en peligro todos los usuarios y aplicaciones que dependan de ella.
Los usuarios también tienen que ser conscientes de cuáles son sus responsabilidades, entre las que deben destacarse la obligación de proporcionar información correcta y completa para incluir en su certificado digital, así como su deber de proteger su clave privada e informar a la Autoridad de Certificación ante un posible compromiso o pérdida.
INFRAESTRUCTURA DE CLAVE PÚBLICA
Se conoce como Infraestructura de Clave Pública –PKI– (del idioma inglés, Public Key Infraestructure) a la infraestructura constituida por las Autoridades de Certificación, las Autoridades de Registro y la tecnología de certificados digitales. PKI proporciona un mecanismo para la generación y distribución de claves y gestión de certificados digitales, garantizando su integridad, autenticidad y validez. En este contexto, un Dominio de Certificación está constituido por un conjunto de Autoridades de Certificación que se rigen por una misma Política de Certificación.
Una infraestructura de Clave Pública puede seguir un modelo jerárquico o un modelo de certificación cruzada.
En el modelo jerárquico, existen Autoridades de Certificación Raíz, que generan sus propios certificados, así como Autoridades de Certificación Subordinadas, que obtienen sus certificados de las anteriores. En este caso, se define además una Ruta de Certificación como una secuencia de Autoridades de Certificación que intervienen en la comprobación de la validez de un certificado.
Por otra parte, en el modelo de certificación cruzada, las Autoridades de Certificación se certifican unas a otras de forma bilateral.
REDES O ANILLOS DE CONFIANZA
En aquellas situaciones en las que no se dispone de Autoridades de Certificación ni de Registro, puede construirse una red de usuarios basada en la confianza entre todos los que la integran.
El caso más conocido es el del sistema de correo PGP, que emplea “Anillos de Confianza”. En estos sistemas, para aceptar la identificación de un nuevo usuario a través de su clave pública se considerará suficiente con que ésta venga firmada por un determinado número de claves válidas (claves privadas) de otros usuarios que forman parte de la red y que se consideran de confianza.