Glosario / Referencia para desarrolladores
Certificado raíz
- ¿Qué es un certificado raíz?
- Un certificado raíz es el ancla de confianza autofirmada que encabeza una cadena de certificados, y solo se confía en él porque el proveedor de su sistema operativo o navegador lo puso ahí.
Toda comprobación de certificados termina en un certificado raíz. Un certificado raíz se firma a sí mismo y solo se confía en él porque venía incluido en el almacén de certificados raíz de su dispositivo; DST Root CA X3, el ejemplo más conocido, se emitió el 30 de septiembre de 2000 y caducó exactamente 21 años después. Si usted juzga un exchange solo por su candado, está confiando en esa lista de certificados raíz y no en nada propio del exchange.
Cómo funciona
Un certificado raíz nombra a la misma organización en su campo de emisor y en su campo de sujeto, y la clave que lo firmó es la clave que certifica. Esa circularidad es justamente la idea. Nada por encima de un certificado raíz lo avala, así que un verificador no puede comprobarlo contra nada más alto; solo puede buscar el certificado en una lista local y tratar esa lista como fuente de autoridad.
Esas listas las elabora un puñado de empresas. Apple, Microsoft, Mozilla y Google gestionan cada una un programa raíz con criterios de inclusión, requisitos de auditoría y procedimientos de eliminación publicados, y el almacén de certificados de su computadora portátil o de su teléfono es el que su proveedor incluyó con el software. La inclusión dura muchísimo tiempo, porque retirar un certificado raíz supone enviar una actualización a cada dispositivo que lo contiene. ISRG Root X1, el ancla de confianza de Let's Encrypt, se emitió el 4 de junio de 2015 y no caduca hasta el 4 de junio de 2035.
La debilidad estructural es que cualquier certificado raíz del almacén puede avalar cualquier nombre. Ninguna regla ata una autoridad de certificación neerlandesa a los dominios neerlandeses, así que una sola autoridad comprometida socava todos los sitios a la vez. DigiNotar lo demostró en 2011: un atacante emitió un certificado fraudulento para google.com el 10 de julio de ese año y lo usó para interceptar el tráfico de usuarios iraníes. Mozilla, Google y Microsoft retiraron los certificados raíz de DigiNotar en los primeros días de septiembre de 2011, y la empresa había quebrado antes de que terminara el mes.
Dónde aparece
Los certificados raíz entraron en bitcoin a través de BIP70, que pedía a las billeteras verificar la cadena de certificados de un comerciante hasta un certificado raíz de confianza antes de mostrar el nombre de una empresa en la pantalla de pago. El software de escritorio tomó prestado para ello el almacén de certificados del sistema operativo, el software móvil a menudo lo hizo mal, y Bitcoin Core eliminó la funcionalidad por completo en la versión 0.20.0. La referencia para desarrolladores de bitcoin.org todavía incluye el término, y esa es la razón principal por la que alguien lo busca hoy.
La comparación más útil es con el ancla propia de bitcoin. Un nodo completo parte de un bloque génesis fechado el 3 de enero de 2009, escrito en el código del software, y a partir de ahí verifica cada regla por sí mismo. Nadie añade un elemento a esa ancla enviando una actualización a su teléfono, y ninguna autoridad puede ser comprometida ni presionada para avalar un bloque que incumpla las reglas. Los almacenes de certificados raíz funcionan en sentido contrario: la confianza fluye hacia abajo desde una lista que usted no escribió y no puede auditar.
Certificado raíz frente a certificado de hoja
Un certificado raíz identifica a una autoridad de certificación; un certificado de hoja identifica a un servidor. El certificado raíz es autofirmado, tiene una vida de dos décadas y guarda su clave privada en un módulo de hardware sin conexión que se saca unas pocas veces al año ante testigos. El certificado de hoja indica el nombre de host al que usted realmente se conectó, tiene una vida de meses, y su clave privada está en un servidor web en funcionamiento expuesto a internet. La gente dice "el certificado es válido" cuando quiere decir que el certificado de hoja se pudo analizar y que las fechas cuadran, pero la pregunta que decide si la conexión es de confianza es en qué certificado raíz termina la cadena de certificados.