¿Puedo cifrar con GnuPG y descifrar con OpenSSL?

8

Me pregunto por qué esto no funciona en Linux?

gpg --cipher-algo AES256 -c -o test.zip.enc test.zip 
Enter passphrase:

openssl enc -AES-256-CBC -d -in test.zip.enc -out test.zip
enter aes-256-cbc decryption password:
bad magic number

Para dar un contexto, tengo una aplicación donde cifro un archivo en Linux con GnuPG y quiero que los usuarios de Mac puedan descifrarlo sin necesidad de instalar software adicional (OpenSSL viene preinstalado en OS X).

    
pregunta xtrb8433 29.11.2016 - 09:58
fuente

3 respuestas

5

OpenSSL implementa el estándar X.509, mientras que GnuPG implementa OpenPGP. Si bien ambos utilizan principalmente los mismos algoritmos criptográficos con mucha superposición, ambos protocolos tienen sus propios formatos de archivo y pequeñas diferencias, especialmente en el modo de operación para el cifrado simétrico.

Tanto OpenSSL como GnuPG están disponibles para casi todos los sistemas operativos, mientras que GnuPG solo se entrega de manera predeterminada con la mayoría de las distribuciones de Linux, pero OpenSSL está disponible para casi todos los sistemas operativos unixoid.

Si insiste en usar GnuPG, también eche un vistazo al componente gpgsm de GnuPG que es una implementación de X.509 compatible con OpenSSL (pero no puede usar las claves OpenPGP debido a los diferentes formatos, por lo tanto requiere una clave X.509 ).

    
respondido por el Jens Erat 30.11.2016 - 19:01
fuente
4

OpenPGP (GPG) y OpenSSL utilizan diferentes formatos de cifrado para (ligeramente) usos diferentes. Esos formatos no son intercambiables. En particular, OpenSSL no puede analizar los datos cifrados de OpenPGP.

Recomendaría utilizar el mismo software tanto en Linux como en OS X.

    
respondido por el A. Hersean 29.11.2016 - 10:41
fuente
-2

En las distribuciones de Linux más conocidas, openssl ya está cargado después de la instalación nueva.

Tengo el mismo problema al escribir libros porque utilizo principalmente Linux para componer los textos y MacOSX para la publicación de libros electrónicos. Debido a que Linux es mi sistema operativo habitual, tengo claves gpg solo en Linux, así que uso OpenSSL que encontré instalado en ambos sistemas operativos después de la instalación.

En mi script, utilizado por los dos sistemas operativos que utilizo:

para cifrar:

openssl des3 -salt -in MyBook.tar -out MyBook.tar.encrypt

para descifrar:

openssl des3 -d -salt -in MyBook.tar.encrypt -out MyBook.tar
    
respondido por el Giuseppe Curto 17.03.2018 - 11:41
fuente

Lea otras preguntas en las etiquetas