Bueno rapido que me tengo que ir para el trabajo. Busy week !
Primeramente hay que entender para que se usa un certificado.
Un certificado no es mas que un documento digital que sive para validar que un
dominio es realmente quien dice ser.
Por ejemplo, si usted se conecta a www.google.com, este le envia un certificado
digital, que (entre otras cosas) dice: Certifico que este es www.google.com
Ahora como usted sabe que ese certificado es valido, y no fue creado por el
propio google o lo que es peor, cualquiera que este en medio de la comunicacion
?
Bueno ese certificado debe ser "firmado" por una entidad certificadora
reconocida (como los rectores de las universidades que firman los diplomas para
autenticar su validez).
Y la forma de hacerlo incluyendo un hash SHA de la informacion, dentro del
propio certificado.
En fin JJ, ese hash despues se valida con otro certificado de la CA, que viene
incluido en el SO.
Ahora los certificados de las CA se guardan en bovedas acorazadas, mas seguras
que las bovedas de los bancos. Y estan totalmente offline, Asi evitan que sean
robadas.
Para hacer una analogia:
Usted se gradua de Ingeniero en Telecomunicaciones, la universidad le da un
diploma firmado y acuñado por el rector.
Cuando usted viene a buscar trabajo conmigo, me enseña su diploma y yo para
saber que es autentico, cojo esa firma y ese cuño y lo valido contra una base
de datos que yo tengo de los cuños y firmas de todos los rectores de cada
universidad. Si no coincide, entonces ya se que la informacion que usted me
esta presentando no es autentica.
De mas esta decir que el cuño y la firma del rector estan resguardadas en un
lugar bien seguro.
Ah y por cierto en el caso de los certificados digitales, es imposible (probado
matematicamente) falsificar un certificado de un CA (certification authority).