Eve podría firmar un certificado que indique "a.com" como nombre, con su clave privada, pero el navegador de Bob no lo aceptará. Cuando el navegador de Bob valida una cadena de certificados, verifica todas las firmas, pero no solo la firma. El algoritmo de validación completo es intrincado; Consulte el estándar . En este caso, el navegador de Bob levantará una ceja metafórica cuando aplique el cheque (k) de la sección 6.1.4: el certificado de Eve es un certificado de "versión 3", pero no contiene una extensión Basic Constraints
, o su extensión Basic Constraints
tiene el indicador cA
establecido en FALSE
.
En pocas palabras, aunque la certificación es un tipo de delegación de poder, el poder para emitir certificados se especifica para requerir una delegación explícita, y no se realiza de forma predeterminada. Como dice @Terry, la CA comercial puede otorgar certificados de sub-CA, con el indicador cA
establecido en TRUE
, pero cobrarán mucho por eso. De hecho, vincularán por contrato a la sub-CA para cumplir con la Declaración de Práctica de Certificación de la CA (consulte allí para el CPS de Verisign). Las obligaciones contractuales incluyen muchas conversaciones con grandes cantidades de dinero con seguros y cosas por el estilo, de modo que una víspera sub-CA que emitiría certificados falsos sería arrastrada al olvido por la represalia legal de Verisign. No hacen ningún prisionero.
Las cosas no funcionaban de esa manera en el pasado. La primera versión de X.509 no admitía extensiones, por lo que los clientes tenían que encontrar alguna otra forma de verificar si una entidad dada tenía el poder de CA o no. Esto fue un inconveniente, ya que los navegadores tenían que elegir entre incrustar una lista creciente de "sub-CA permitidos", o simplemente confiar en todos los certificados con poder de CA (permitiendo así su ataque). Tenga en cuenta que hasta el año 2003 más o menos, hubo un error en Internet Explorer: ¡IE no comprobó la extensión Basic Constraints
en absoluto! Cuando se descubrió esto, se reparó rápidamente, por supuesto ...