Estoy intentando usar el chip TPM 2.0 en mi computadora portátil para administrar un nuevo par de claves RSA y crear una CSR además de la nueva clave privada, pero cuando enumero los certificados administrados por mi TPM, solo obtuve claves etiquetadas como públicas y no Sé cómo obtener la URL de mi clave privada que quiero usar para la generación de CSR.
Utilicé el siguiente procedimiento:
#generate rsa key:
p11tool --login --so-login --generate-rsa --bits=2048 --label=dave4 "$token"```
#list my certificates:
p11tool --list-all ""
Pero todas las URL de los certificados que obtuve cuando intento enumerarlos están etiquetadas como públicas:
pkcs11:model=NPCT75x;manufacturer=Nuvoton;serial=0000000000000000;token=dave4;id=%34%39%30%66%65%35%65%34%30%30%34%64%65%33%65%30;object=myfirstkey;type=public
y la lista de claves privadas no devuelve ningún objeto:
p11tool --list-privkeys pkcs11:model=NPCT75x;manufacturer=Nuvoton;serial=0000000000000000;token=dave4
No matching objects found
¿Tiene alguna idea de cómo obtener una lista de URL de claves privadas u otra forma de generar un nuevo par de claves rsa para crear CSR posteriormente?
Gracias.
Respuesta1
Normalmente estos objetos se crean con el atributo CKA_PRIVATE, lo que indica que están ocultos de la lista normal; debes especificar--login
y proporcione el PIN del token para poder verlos.
p11tool --login --list-privkeys 'pkcs11:model=NPCT75x;manufacturer=Nuvoton;token=dave4'
Pero si el módulo PKCS#11 tiene una clave privada almacenada, entonces el URI para las mitades pública y privada casi siempre tiene exactamente el mismo id=
, por lo que puede editar el URI a mano. La clave privada puede tener una object=
etiqueta diferente (por lo tanto, elimine ese parámetro) y, por supuesto, tendrá type=private
.
Por ejemplo, esta debería ser una URL que funcione:
pkcs11:model=NPCT75x;manufacturer=Nuvoton;serial=0000000000000000;token=dave4;id=%34%39%30%66%65%35%65%34%30%30%34%64%65%33%65%30;object=myfirstkey;type=private
o incluso:
pkcs11:model=NPCT75x;token=dave4;id=%34%39%30%66%65%35%65%34%30%30%34%64%65%33%65%30;type=private
pkcs11:model=NPCT75x;token=dave4;object=myfirstkey;type=private
Tenga en cuenta quetpm-pkcs11todavía está lejos de estar completo. Recientemente se han corregido muchos errores relacionados con la API (algunos de ellos se fusionaron literalmente ayer).