Publicado el
5 de junio de 2024
Exportar una clave privada RSA desde el Almacén de Certificados de Windows puede ser esencial para diversas tareas administrativas y de seguridad, especialmente en entornos donde OpenSSL no está disponible. Esta guía ofrece un proceso claro y paso a paso para exportar una clave privada RSA desde un equipo con Windows. Es importante tener en cuenta que, para que este procedimiento sea exitoso, el certificado en cuestión debe haberse importado al Almacén de Certificados de Windows con la opción "Marcar la clave privada como exportable" activada. Seguir esta guía le permitirá administrar sus claves criptográficas de forma segura y eficiente sin necesidad de software adicional.
Pero antes de sumergirse en el proceso, tenga en cuenta que esta guía requerirá que tenga derechos de administrador local en la máquina.
Luego de confirmar esto, siga los siguientes pasos:
Pasos para exportar una clave privada RSA desde el almacén de certificados de Windows
Paso 1: Abra un símbolo del sistema de PowerShell elevado
Paso 2: Recupere la huella digital del certificado que desea exportar con el siguiente comando. Ejemplo: si el certificado se encuentra en el almacén de certificados de su equipo personal:
directorio cert:\LocalMachine\Mi
Paso 3: Cree un objeto de certificado en el símbolo del sistema de PowerShell basado en la huella digital de su certificado con el siguiente comando:
¿Quieres implementar estas prácticas de PKI?
Obtenga orientación experta sobre la implementación de soluciones PKI seguras para su organización.
Obtenga ayuda de expertos$cert = Obtener-ElementoHijo Certificado:\MáquinaLocal\Mi | ? {$_.Thumbprint -eq '<THUMBPRINT_OF_CERTIFICATE_FROM_STEP_2> '}
Paso 4: Leer la clave privada RSA en un objeto RSA CNG:
$RSACng = [Sistema.Seguridad.Criptografía.Certificados X509.Extensiones de certificado RSAC]::GetRSAPrivateKey($cert)
Paso 5: Leer los bytes de la clave privada:
$KeyBytes = $RSACng.Key.Export([Sistema.Seguridad.Criptografía.CngKeyBlobFormat]::Pkcs8PrivateBlob)
Paso 6: Codifique los bytes de la clave en formato Base64:
$KeyBase64 = [Sistema.Convertir]::ToBase64String($KeyBytes, [Sistema.OpcionesDeFormatoBase64]::InsertarSaltosDeLínea)
Paso 7: Muestra la clave privada en formato PEM en el símbolo del sistema de PowerShell:
$KeyPem = @" -----INICIO CLAVE PRIVADA----- $KeyBase64 -----FIN CLAVE PRIVADA----- "@ $KeyPem
Conclusión
Exportar correctamente una clave privada RSA desde el almacén de certificados de Windows es una habilidad crucial para administradores de sistemas y profesionales de seguridad que necesitan gestionar claves criptográficas sin depender de herramientas externas como OpenSSL. Al asegurarse de que el certificado se importó inicialmente con la opción "Marcar clave privada como exportable" activada, puede seguir un proceso simplificado para recuperar la clave privada de forma segura. Esta función no solo aumenta su flexibilidad en la gestión de claves, sino que también refuerza la importancia de una gestión y configuración adecuadas de los certificados desde el principio. Con esta guía, ahora cuenta con los conocimientos necesarios para exportar claves privadas RSA con confianza cuando sea necesario, manteniendo la integridad y la seguridad de su infraestructura criptográfica.