Aclaración sobre certificados digitales

3

Utilicé la herramienta makecert para crear:

  1. certificado autofirmado
  2. certificado de cliente

Estos son los comandos que utilicé:

makecert -n "CN=MatthewCA" -r -sv MatthewCA.pvk MatthewCA.cer **for self signed certificate**

makecert -sk localhost -iv MatthewCA.pvk -n "CN=localhost" -ic MatthewCA.cer localhost.cer -sr localmachine -ss my -sky exchange -pe -b 01/01/2013 -e 01/01/2020 **for client certificate**

Los dos comandos generaron los siguientes archivos:

  1. MatthewCA.cer
  2. MatthewCA.pvk
  3. localhost.cer

Luego instalé MatthewCA.cer en la sección Trusted Root Authorities en mmc .

El localhost.cer se instaló en la sección Personal en mmc .

Cuando veo el certificado de localhost.cer de mmc , dice:

  

Tiene una clave privada que corresponde a este certificado.

¿Esto significa que el certificado contiene la clave privada? Si envío el localhost.cer a otra persona, ¿pueden extraer la clave privada? En caso afirmativo, ¿cómo puedo separar la clave privada del certificado?

    
pregunta Matthew 27.04.2013 - 16:56
fuente

1 respuesta

5

Cuando la máquina dice que " usted tiene la clave privada correspondiente a este certificado", esto significa que tiene la clave privada que corresponde al certificado, no que el propio certificado contiene la clave privada.

Las claves asimétricas vienen en pares: la clave pública y la clave privada. Están vinculados matemáticamente entre sí, pero la reconstrucción de la clave privada a partir de la clave pública se considera inviable (demasiado costoso con la tecnología existente). Esta es la razón por la que la clave pública se puede hacer pública : esto no revela la clave privada (que se mantiene privada).

El certificado contiene solo la clave pública. El certificado es inherentemente público y se puede mostrar a todo el mundo. Cuando el certificado se utiliza en SSL, de hecho, se envía, como parte del protocolo, al interlocutor. La clave privada, por supuesto, sigue siendo privada. En su caso, la clave privada se generó dentro de las entrañas de Windows y permanece allí . El archivo localhost.cer solo contiene el certificado.

(Desafortunadamente, algunas documentaciones designan por "certificado" la unión del propio certificado y la clave privada; este abuso de terminología es una gran fuente de confusión. En el mundo de Windows, cuando un certificado y una clave privada viaja junta como un archivo, el archivo sigue el formato PKCS # 12 , también conocido como "PFX".)

    
respondido por el Thomas Pornin 27.04.2013 - 18:20
fuente

Lea otras preguntas en las etiquetas