Obtención de la firma de un certificado (.cer)
Intento crear una afirmación de cliente según se describe en aquí.
En la tercera parte de este documento (Firma), no sé cómo obtener la firma del certificado como se solicita en el documento. Mi certificado es un archivo .cer en mi computadora que creé así:
$cert = New-SelfSignedCertificate -Subject "CN=Certiftest" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature -KeyLength 2048 -KeyAlgorithm RSA -HashAlgorithm SHA256
Export-Certificate -cert $cert -FilePath "path\Certiftest.cer"
Para obtener la firma, intenté:
openssl x509 -inform der -in "path\Certiftest.cer" -text -noout -certopt ca_default -certopt no_validity -certopt no_serial -certopt no_subject -certopt no_extensions -certopt no_signame
Pero la firma no tiene el mismo formato que en el documento.
Lo que obtuve:
Signature Algorithm: sha256WithRSAEncryption
58:4c:52:d1:43:d4:5s:c1:56:bf:be:08:1b:29:ab:68:19:43:
41:b6:91:0e:fe:46:39:35:46:e6:3b:6a:e7:80:7f:6a:7d:b5:
9f:ce:0d:ff:17:26:e9:9f:a3:48:91:15:19:96:eb:c2:e3:36:
64:3f:19:7c:cd:c4:e9:9f:a3:48:91:15:19:96:eb:c2:e3:36:
cb:ce:f3:8f:fa:75:f5:d8:33:1f:e5:a6:e0:ff:22:b8:da:e0:
*****************************************************
53:85:74:35:e1:e6:bf:3e:e4:58:44:29:05:86:3b:6b:58:b9:
1e:1f:0e:bc:35:4b:7d:ee:1f:ff:34:bc:5e:e5:3b:6b:58:b9:
d2:b5:d4:a3
Lo que obtienen en el documento:
"Gh95kHCOEGq5E_ArMBbDXhwKR577scxYaoJ1P{muchos caracteres aquí}KKJDEg"
Gracias,
davy.ai
Para obtener la firma de certificado en el formato requerido, puede utilizar el siguiente comando de PowerShell:
Esto recuperará el archivo de certificado, obtendrá la firma del hash del certificado y lo convertirá al formato base64. La variable resultante
$base64Signature
se puede utilizar para crear la aserción del cliente tal como se describe en el documento mencionado.