Come decrittografare un messaggio usando l'interfaccia della riga di comando di openssl?


8

Ho un messaggio, conosco la password e il codice utilizzato per crittografarlo, ma non riesco a capire come chiedere a openssl di decrittografarlo.

Vedo la cifra nell'output del cipherscomando e la pagina man elenca un enccomando per Encoding with Ciphers, ma non riesco a trovare il modo in cui farei il contrario, decodificare un messaggio.


1
Quale programma viene utilizzato per crittografare il file? È molto probabile che il programma di crittografia aggiunga metadati al contenuto crittografato, come il vettore di inizializzazione, il salt, la versione del programma ecc. Se trattate il tutto come bit crittografati, otterrete immondizia.
Siyuan Ren,

In ritardo, ma: openssl cipherselenca le suite di crittografia per SSL / TLS, che in pratica non è mai basato su password e non lascia messaggi ovunque tu possa successivamente decifrare (cioè se hai un file, non è SSL / TLS). openssl encè uno schema di crittografia basato su password comunemente usato, ma ci sono PBE CMS e (raramente) S / MIME e un PBE PGP comune, nonché schemi PBE per chiavi che non sono accuratamente descritte come messaggi, così come altri PBE.
dave_thompson_085

Risposte:


1

Penso che tu stia cercando qualcosa del genere:

openssl yourcipher -d < yourfile

Ad esempio, se il file è stato crittografato utilizzando la des3crittografia e il file è /path/to/file.des3quindi:

openssl des3 -d < /path/to/file.des3

Ti chiederà la passphrase.

Se il file è codificato in base64, dovresti essere in grado di decodificare e decodificare in questo modo:

openssl enc -base64 -d < /path/to/file | openssl yourcipher -d

Provando che, dopo aver inserito la passphrase, ottengo un "numero magico negativo". Non sono sicuro di come interpretarlo.
user50849

Questo errore è comune quando il file non è in realtà un file crittografato ... Forse devi prima decomprimerlo?
Janos,

1
Se ho capito correttamente le mie istruzioni, il mio file è codificato in base64 (sembra anche base64, anche se ovviamente non è garantito). Ma ho provato a passarlo base64 -d [input] > [output]e quindi openssl [cipher] -d < [output]a decifrare il file così com'è, e ottengo lo stesso "numero magico negativo" in entrambi i casi.
user50849

@ user50849 Ho aggiornato la mia risposta pensando che sembra che tu lo stia già facendo ... Dopo aver decodificato da base64, cosa ti dice il filecomando? Il file è binario?
Janos,

Ho provato il tuo comando base64 aggiunto e sfortunatamente ricevo lo stesso errore. il file dice datadel file decodificato. Presumo che la tua risposta sia corretta e che qualcosa non vada dalla mia parte. Forse ho corrotto l'input o simili. Proverò a risolverlo e a tornare.
user50849
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.