Autoridad de certificación
# Autoridad de certificación

En criptografía, las expresiones autoridad de certificación, o certificadora, o certificante, o las siglas AC o CA (por la denominación en idioma inglés Certification Authority), señalan a una entidad de confianza, responsable de emitir y revocar los certificados digitales, utilizando en ellos la firma electrónica, para lo cual se emplea la criptografía de clave pública. Jurídicamente, se trata de un caso particular de Prestador de Servicios de Certificación. Una autoridad de certificación expide los certificados digitales, que ya contienen las identificaciones numéricas y las contraseñas que se necesitan, poniendo a disposición el procedimiento de verificación para validar el certificado proporcionado.

Los servicios de una autoridad de certificación, son principalmente utilizados para garantizar la seguridad de las comunicaciones digitales vía el protocolo TLS (Transport Layer Security), utilizados en las comunicaciones web (HTTPS) o las comunicaciones de correos electrónicos (SMTP, POP3, IMAP), así como para resguardar documentos digitales (por ejemplo, utilizando firmas electrónicas avanzadas con el sistema PAdES para documentos PDF, o vía el protocolo S/MIME para los correos electrónicos).

## Concepto

La Autoridad de Certificación (CA) verifica la identidad del solicitante de un certificado antes de su expedición o, en caso de certificados expedidos con la condición de revocados, elimina la revocación de los certificados al comprobar dicha identidad. Los certificados son documentos que recogen ciertos datos de su titular y su clave pública y están firmados digitalmente por la CA, utilizando su clave privada. La CA presta sus Servicios de Certificación que garantiza ante los terceros que, confían en sus certificados y la relación entre la identidad de un usuario y su clave pública. La confianza de los usuarios en la CA es importante para el funcionamiento del servicio y justifica la filosofía de su empleo, pero no existe un procedimiento normalizado para demostrar que una CA merece dicha confianza.

Un certificado revocado es un certificado que no es válido aunque se emplee dentro de su período de vigencia. Un certificado revocado tiene la condición de suspendido si su vigencia puede restablecerse en determinadas condiciones.

## Modo de funcionamiento

### Solicitud de un certificado

El mecanismo habitual de solicitud de un certificado de servidor web a una CA consiste en que la entidad solicitante, utilizando ciertas funciones del software de servidor web, completa ciertos datos identificativos (entre los que se incluye el localizador URL del servidor) y genera una pareja de claves pública/privada. Con esa información el software de servidor crea un fichero que contiene una petición CSR (Certificate Signing Request) en formato PKCS#10 que contiene la clave pública y que se hace llegar a la CA elegida. Esta, tras verificar por sí o mediante los servicios de una Autoridad de Registro (Registration Authority, RA) la información de identificación aportada y la realización del pago, envía el certificado firmado al solicitante, que lo instala en el servidor web con la misma herramienta con la que generó la petición CSR.

En este contexto, PKCS corresponde a un conjunto de especificaciones que son estándares de facto denominadas Public-Key Cryptography Standards.

### La Jerarquía de Certificación

Las CA disponen de sus propios certificados públicos, cuyas claves privadas asociadas son empleadas por las CA para firmar los certificados que emiten. Un certificado de CA puede estar auto-firmado cuando no hay ninguna CA de rango superior que lo firme. Este es el caso de los certificados de CA raíz, el elemento inicial de cualquier jerarquía de certificación. Una jerarquía de certificación consiste en una estructura jerárquica de CAs en la que se parte de una CA auto-firmada, y en cada nivel, existe una o más CAs que pueden firmar certificados de 'entidad final' (titular de certificado: servidor web, persona, aplicación de software) o bien certificados de otras CA subordinadas plenamente identificadas y cuya Política de Certificación sea compatible con las CAs de rango superior.

### Confianza en la CA

Una de las formas por las que se establece la confianza en una CA para un usuario consiste en la "instalación" en el ordenador del usuario (tercero que confía) del certificado autofirmado de la CA raíz de la jerarquía en la que se desea confiar. El proceso de instalación puede hacerse, en sistemas operativos de tipo Windows, haciendo doble clic en el fichero que contiene el certificado (con la extensión crt) e iniciando así el "asistente para la importación de certificados". Por regla general el proceso hay que repetirlo por cada uno de los navegadores que existan en el sistema, tales como Opera, Firefox o Internet Explorer, y en cada caso con sus funciones específicas de importación de certificados.

Si está instalada una CA en el repositorio de CAs de confianza de cada navegador, cualquier certificado firmado por dicha CA se podrá validar, ya que se dispone de la clave pública con la que verificar la firma que lleva el certificado. Cuando el modelo de CA incluye una jerarquía, es preciso establecer explícitamente la confianza en los certificados de todas las cadenas de certificación en las que se confíe. Para ello, se puede localizar sus certificados mediante distintos medios de publicación en internet, pero también es posible que un certificado contenga toda la cadena de certificación necesaria para ser instalado con confianza.

## Normativa

### Normativa de la Unión Europea

La Directiva 93/1999 ha establecido un marco común aplicable a todos los países de la Unión Europea por el que el nivel de exigencia que supone la normativa sobre firma electrónica implica que los Prestadores de Servicios de Certificación que emiten certificados cualificados son merecedores de confianza por cualquier tercero que confía y sus certificados otorgan a la firma electrónica avanzada a la que acompañan el mismo valor que tiene la "firma manuscrita" o "firma ológrafa".

### Normativa española

La 'Ley 59/2003 de Firma Electrónica' ha derogado el Real Decreto Ley 14/1999, de 17 de septiembre, sobre firma electrónica, haciendo más efectiva la actividad de certificación en España.

## Misión de las CA

Finalmente, las CA también se encargan de la gestión de los certificados firmados. Esto incluye las tareas de revocación de certificados que puede instar el titular del certificado o cualquier tercero con interés legítimo ante la CA por correo electrónico, teléfono o intervención presencial. La lista, denominada lista de revocación de certificados (Certificate Revocation List, CRL) contiene los certificados que entran en esta categoría, por lo que es responsabilidad de la CA publicarla y actualizarla debidamente. Por otra parte, otra tarea que debe realizar una CA es la gestión asociada a la renovación de certificados por caducidad o revocación.

Si la CA emite muchos certificados, corre el riesgo de que sus CRL sean de gran tamaño, lo que hace poco práctica su descarga para los terceros que confían. Por ese motivo desarrollan mecanismos alternativos de consulta de validez de los certificados, como servidores basados en los protocolos OCSP y SCVP.

Debido al gran número de entidades certificadoras existentes, y a pesar de las medidas de seguridad que emplean para la correcta verificación de personas físicas y jurídicas, existe el riesgo de que una CA emita un certificado a un defraudador con una identidad falsa. Como no existe un registro de qué certificados han sido emitidos por cada CA, no es fácil detectar qué casos se han filtrado de manera fraudulenta o qué certificados refieren a un nombre igual o muy parecido al de otra entidad. Para evitar este tipo de problemas, Google ha lanzado la iniciativa Certificate Transparency, que registra todos los certificados emitidos por las CA a través de unos ficheros de auditoría criptográficamente infalsificables, lo que puede ayudar a combatir el phishing (en español: suplantación de identidad).

## CA de personas y de servidores

Los certificados de "entidad final" a veces designan personas (y entonces se habla de "certificados cualificados") y a veces identifican servidores web (y entonces los certificados se emplean dentro del protocolo TLS para que las comunicaciones con el servidor se protejan con un cifrado robusto de 128 bits).

## CAs públicas y privadas

Una CA puede ser o bien pública o bien privada. Los certificados de CA (certificados raíz) de las CAs públicas pueden o no estar instalados en los navegadores pero son reconocidos como entidades confiables, frecuentemente en función de la normativa del país en el que operan. Las CAs públicas emiten los certificados para la población en general (aunque a veces están focalizadas hacia algún colectivo en concreto) y además firman CAs de otras organizaciones.

### CAs en la Unión Europea

El Artículo 11 de la Directiva 1999/93CE de firma electrónica establece que los países miembros notificarán a la Comisión y a los otros Estados miembros lo siguiente:

* Información sobre esquemas voluntarios de acreditación nacionales, incluyendo eventuales requisitos adicionales según el artículo 3(7);
* Nombres y direcciones de los organismos nacionales responsables de la acreditación y supervisión, así como de los organismos a los que se refiere el artículo 3(4);
* Nombres y direcciones de todos los Prestadores de Servicios de Certificación nacionales acreditados.

Existe ya una página web con la información del artículo 11 de la Directiva 1999/93.

### Certificadoras gratuitas

* CAcert.org, Entidad Certificadora administrada por la comunidad

## Utilización en las comunicaciones web

Los navegadores web modernos integran de forma nativa (en forma estándar) una lista de certificados de diferentes autoridades de certificación que, según los casos, son elegidos automáticamente de acuerdo a los criterios internos definidos por los desarrolladores del navegador.

Entonces, cuando una persona física o jurídica desea configurar un servidor web mediante una comunicación segura HTTPS y securizada por TLS, se genera una clave pública y una clave privada, y luego envía a una de estas autoridades de certificación una solicitud de firma de certificado (en inglés: Certificate Signing Request, CSR) que contiene su clave pública así como datos sobre su identidad (datos postales, telefónicos, dirección de correo electrónico, etc.).

Después de la verificación de la identidad del solicitante del certificado por parte de una autoridad de registro (RA), la autoridad de certificación firma la CSR gracias a su propia clave privada (y por tanto no la clave privada del solicitante), que se convierte entonces en un certificado, que luego envía de vuelta al solicitante.

El certificado devuelto así en forma de archivo informático se integra en el servidor web del solicitante. Cuando un usuario se conecta a este servidor web, este a su vez le transmite el certificado previamente proporcionado por la autoridad de certificación.

El navegador web del cliente autentifica el certificado del servidor gracias al certificado (integrado de forma nativa en el navegador) previamente firmado por la autoridad de certificación. La identidad del servidor queda así confirmada al usuario por la autoridad de certificación.

Acto seguido, el navegador contacta con la autoridad de certificación correspondiente para confirmar, mediante una petición OCSP, que el certificado del servidor no ha sido revocado desde que fue emitido por la autoridad de certificación.

Anteriormente, ciertos navegadores descargaban regularmente listas de revocación de certificados (Certificate Revocation Lists, CRL) de parte de las autoridades de certificación en lugar de contactar directamente con ellas mediante peticiones OCSP. Esta práctica ha sido abandonada debido al uso excesivo e inútil de ancho de banda.

A nivel técnico, esta infraestructura de gestión de claves permite asegurar que:

* los datos transmitidos entre el servidor web y el cliente no han sido modificados durante la transferencia: integridad de los datos mediante hash;
* los datos provienen del servidor web conocido y no se trata de un servidor web de terceros que trata usurpar su identidad;
* los datos no pueden ser interceptados por un tercero por estar cifrados.
