Como descriptografar uma mensagem usando a CLI do openssl?

8

Eu tenho uma mensagem, eu sei a senha e a cifra que foi usada para criptografá-la, mas não consigo descobrir como pedir ao openssl para descriptografá-la.

Eu vejo a cifra na saída do cipherscomando, e a página de manual lista um enccomando para Encoding with Ciphers, mas não consigo encontrar como faria o contrário, decodificar uma mensagem.

user50849
fonte
1
Qual programa é usado para criptografar o arquivo? É muito provável que o programa de criptografia adicione metadados ao conteúdo criptografado, como o vetor de inicialização, salt, versão do programa etc. Se você tratar o todo como bits criptografados, obterá o lixo.
Siyuan Ren 15/10
Tarde, mas: openssl cipherslista conjuntos de cifras para SSL / TLS, que na prática nunca é baseado em senha e não deixa mensagens em qualquer lugar que você possa decifrar posteriormente (ou seja, se você tiver um arquivo, não é SSL / TLS). openssl encé um esquema de criptografia baseado em senha comumente usado, mas existem PBMS CMS e (raramente) S / MIME e um PBE PGP comum, e também esquemas PBE para chaves que não são descritas com precisão como mensagens, assim como outros PBEs.
Dave_thompson_085 31/07

Respostas:

1

Eu acho que você está procurando algo como isto:

openssl yourcipher -d < yourfile

Por exemplo, se o arquivo foi criptografado usando des3cifra, e o arquivo é /path/to/file.des3:

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

Ele solicitará a senha.

Se o arquivo estiver codificado em base64, você poderá decodificar e descriptografar assim:

openssl enc -base64 -d < /path/to/file | openssl yourcipher -d
janos
fonte
Tentando isso, depois de digitar a senha, recebo "número mágico ruim". Não tenho certeza de como interpretar isso.
precisa saber é o seguinte
Esse erro é comum quando o arquivo não é realmente um arquivo criptografado ... Talvez você precise descompactá-lo primeiro?
janos 15/01
1
Se eu entendi minhas instruções corretamente, meu arquivo é codificado em base64 (parece também com base64, embora isso não seja garantia, é claro). Mas tentei repassá-lo base64 -d [input] > [output]e openssl [cipher] -d < [output]decifrar o arquivo como está, e recebo o mesmo "número mágico ruim" nos dois casos.
precisa saber é o seguinte
@ user50849 Atualizei minha resposta, parecendo que você já está fazendo isso ... Depois de decodificar da base64, o que o filecomando diz? O arquivo é binário?
janos 15/01
Eu tentei o seu comando base64 adicionado e, infelizmente, recebo o mesmo erro. O arquivo diz datasobre o arquivo decodificado. Presumo que sua resposta esteja correta e que algo esteja errado do meu lado. Possivelmente eu corrompi a entrada ou similar. Vou tentar resolver isso e voltar.
precisa saber é o seguinte