tengo una id_rsa (clave privada que utilizo para la autenticación y el cifrado junto con cert en yubikey piv smardcart provider en la ranura 9a) ahora deseo usar esta clave para crear un almacén de claves pkcs12 (clave privada + certificado autofirmado ) para firmar archivos jar (apk de Android) a través de otra ranura en yubikey piv
He creado pkcs almacenar de esta manera:
$ openssl req -new -key id_rsa -out server.csr
$ openssl x509 -req -days 3650 -in server.csr -signkey id_rsa -out server.crt
$ openssl pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in server.crt -inkey id_rsa -out server.crt.p12 -name "Singnin cert"
y cuando intento cargar esos pkcs12 (o como una clave / cert por separado) en la ranura 9c a través de:
Importe la clave y el certificado, realice una de las siguientes acciones:
-
Importe la clave y el certificado (formato PEM) en la ranura 9a:
$ yubico-piv-tool -s 9a -a import-key -i key.pem $ yubico-piv-tool -s 9a -a import-certificate -i cert.pem
-
Importe la clave y el certificado (formato PKCS12) en la ranura 9a:
$ yubico-piv-tool -s 9a -a import-key -a import-cert -i key.p12 -K PKCS12
me sale un error
Enter Password:
Invalid public exponent for import (only 0x10001 supported)
Unable to import private key
ps. Yo uso la clave de administración
He intentado convertir id_rsa a pkcs8 o eliminar frase de contraseña
¿alguien podría explicarme de qué se trata este error? Tengo google sobre esto pero sin suerte
mi idr_rsa
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,[some numbers I've cut]
Ranuras de certificado PIV YUBIKEY
Un YubiKey habilitado para PIV tiene 4 ranuras distintas para certificados, como se especifica en el documento de estándares PIV. Cada una de estas ranuras es capaz de contener un certificado X.509, junto con la clave privada que lo acompaña. Técnicamente, estas cuatro ranuras son muy similares, pero se utilizan para diferentes propósitos.
Ranura 9a: Autenticación PIV Este certificado y su clave privada asociada se utilizan para autenticar la tarjeta y el titular de la tarjeta. Esta ranura se utiliza para cosas como el inicio de sesión del sistema. Se requiere el PIN del usuario final para realizar cualquier operación de clave privada. Una vez que el PIN se ha proporcionado con éxito, se pueden realizar múltiples operaciones de clave privada sin el consentimiento adicional del titular de la tarjeta.
Slot 9c: Firma digital Este certificado y su clave privada asociada se utilizan para firmas digitales con el fin de firmar documentos, o firmar archivos y ejecutables. Se requiere el PIN del usuario final para realizar cualquier operación de clave privada. El PIN debe enviarse cada vez inmediatamente antes de una operación de firma, para garantizar la participación del titular de la tarjeta en cada firma digital generada.
Slot 9d: Gestión de claves Este certificado y su clave privada asociada se utilizan para el cifrado con fines de confidencialidad. Esta ranura se utiliza para cosas como cifrar correos electrónicos o archivos. Se requiere el PIN del usuario final para realizar cualquier operación de clave privada. Una vez que el PIN se ha proporcionado con éxito, se pueden realizar múltiples operaciones de clave privada sin el consentimiento adicional del titular de la tarjeta.
Slot 9e: Autenticación de la tarjeta Este certificado y su clave privada asociada se utilizan para admitir aplicaciones de acceso físico adicionales, como proporcionar acceso físico a edificios a través de cerraduras de puertas habilitadas para PIV. El PIN del usuario final NO es necesario para realizar operaciones de clave privada para esta ranura.
He leído:
ps. Tengo dump txt a través de
$ openssl rsa -text -in id_rsa
y hay
publicExponent: 37 (0x25)
¿hay una manera de cambiar el exponente público a 0x10001? o tengo generar una nueva clave; / y todos los certificados desde cero?
ps2.
He desenterrado un texto de este tipo sobre posibilidad, pero no tengo más explicaciones