Bagaimana cara mendekripsi pesan menggunakan CLI openssl?

8

Saya punya pesan, saya tahu kata sandi dan sandi yang digunakan untuk mengenkripsi, tapi saya tidak tahu bagaimana cara meminta openssl untuk mendekripsi.

Saya melihat cipher di output dari ciphersperintah, dan halaman manual mencantumkan encperintah untuk Encoding with Ciphers, tetapi saya tidak dapat menemukan bagaimana saya akan melakukan yang sebaliknya, memecahkan kode pesan.

pengguna50849
sumber
1
Program apa yang digunakan untuk mengenkripsi file? Sangat mungkin bahwa program enkripsi menambahkan metadata ke konten terenkripsi, seperti vektor inisialisasi, garam, versi program dll. Jika Anda memperlakukan keseluruhan sebagai bit yang dienkripsi, Anda akan mendapatkan sampah.
Siyuan Ren
Terlambat tetapi: openssl ciphersmencantumkan suite sandi untuk SSL / TLS, yang dalam praktiknya tidak pernah berdasarkan kata sandi, dan tidak meninggalkan pesan di mana pun nanti Anda dapat mendekripsi (yaitu jika Anda memiliki file, itu bukan SSL / TLS). openssl encadalah salah satu skema enkripsi berbasis kata sandi yang umum digunakan, tetapi ada CMS dan (jarang) PBE S / MIME dan PGP PBE yang umum, dan juga skema PBE untuk kunci yang tidak secara akurat dijelaskan sebagai pesan, serta PBE lainnya.
dave_thompson_085

Jawaban:

1

Saya pikir Anda sedang mencari sesuatu seperti ini:

openssl yourcipher -d < yourfile

Misalnya jika file itu dienkripsi menggunakan des3cipher, dan file tersebut /path/to/file.des3kemudian:

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

Itu akan meminta Anda untuk frasa sandi.

Jika file tersebut di-encode base64, maka Anda harus bisa mendekode dan mendekripsi seperti ini:

openssl enc -base64 -d < /path/to/file | openssl yourcipher -d
janos
sumber
Mencoba itu, setelah memasukkan frasa sandi, saya mendapatkan "angka ajaib buruk". Tidak yakin bagaimana menafsirkannya.
user50849
Kesalahan itu biasa terjadi ketika file tersebut bukan file yang dienkripsi ... Mungkin Anda perlu meng-unzip dulu?
janos
1
Jika saya memahami instruksi saya dengan benar, file saya di-encode base64 (Sepertinya base64 juga, meskipun itu bukan jaminan tentunya). Tapi saya sudah mencoba melewati itu base64 -d [input] > [output]dan kemudian openssl [cipher] -d < [output]juga menguraikan file apa adanya, dan saya mendapatkan "angka ajaib buruk" yang sama dalam kedua kasus.
user50849
@ user50849 Saya memperbarui jawaban saya berpikir sepertinya Anda sudah melakukan itu ... Setelah Anda memecahkan kode dari base64, apa yang filediperintahkan perintah kepada Anda? Apakah file biner?
janos
Saya mencoba perintah base64 yang ditambahkan, dan sayangnya saya mendapatkan kesalahan yang sama. file mengatakan datatentang file yang diterjemahkan. Saya berasumsi bahwa jawaban Anda benar dan ada sesuatu yang salah pada saya. Mungkin saya sudah merusak input atau sejenisnya. Saya akan mencoba menyelesaikannya dan kembali.
user50849