Creo que estás usando el programa incorrecto; pgpsm
se utiliza para firmar, verificar, cifrar o descifrar utilizando el protocolo S / MIME .
No tengo pgp4win
a la mano, pero de acuerdo con la página del manual , esto debería exportar su clave pública y secreta:
gpg -o XXXXXXX_private.p12 --export [key id] --export-format pkcs12 --cert
La información sobre pkcs12
es la siguiente,
pkcs12
Solo se generan bloques binarios; la extensión de archivo predeterminada es .p12; una clave firmada debe estar emparejada; y la entrada debe coincidir exactamente con una clave. En este caso, se requiere --cert.
así que incluí la --cert
opción, sin reflexionar sobre esa opción:
--cert
Esta opción es el nombre largo del emisor X.509 o la ID de clave de 32 bits o 64 bits, si la clave de firma está disponible.
Hice algunas pruebas más (ahora con gpg4win), y en parte tengo que contradecirme. La gpgsm
herramienta en gpg4win se describe a sí misma como
gpgsm es una herramienta similar a gpg para proporcionar cifrado digital y servicios de firma en certificados X.509 y el protocolo CMS. Se utiliza principalmente como backend para el procesamiento de correo S / MIME.
lo que de hecho suena correcto.
Entonces, su comando publicado en la pregunta parece totalmente sensato, solo tengo dos pistas más:
- Puede intentar usar una salida blindada ASCII a través de la
-a
opción
- Y hay una opción con respecto al conjunto de caracteres de la clave exportada, que a menudo es un problema con los programas de Windows (especialmente los más antiguos):
--p12-charset name
gpgsm usa la codificación UTF-8 cuando codifica frases de contraseña para archivos PKCS # 12. Esta opción se puede usar para forzar que la frase de contraseña se codifique en el nombre de codificación especificado. Esto es útil si la aplicación utilizada para importar la clave usa una codificación diferente y, por lo tanto, no podrá importar un archivo generado por gpgsm.
Los valores utilizados comúnmente para nombre son Latin1 y CP850 . Tenga en cuenta que el propio gpgsm importa automáticamente cualquier archivo con una frase de contraseña codificada a las codificaciones más utilizadas.