Jadi, skenarionya adalah: Mengingat saya Bob, saya ingin mengenkripsi beberapa pesan untuk Alice. Satu-satunya kunci publik yang saya miliki adalah ssh-rsa
id_rsa.pubnya seperti ini:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyb + qaZLwgC7KAQJzYikf3XtOWuhlMXVv2mbTKa5dp0sHPRd2RaYnH8ZRkt7V8bjqct1IHGCuxI8xyoEp4at3FHe6j9RfWiarc1ldLUCmTtryI0GGpRs6Zpvqdtpcq / 1NCIYtUQAvsImyEFCtqmB2suDo1ZSllZQ0x9TCKHdCANYIOeaniuFzR57POgE3vxk / r6PO24oy8BIWqxvi29r0n1LUigVBJ7CmMHuzb4 / + i1v6PxV1Lqnj6osPP9GpXpsh8kLUCby / KcmcryWNdSP0esyCdDxkA5hlIuk8qL1vzsyPluUQuc0BEHu6nuw8WQlCF1mFFxcpJL + MhWEr01WIIw == [email protected]
Jadi, apakah ada cara untuk mengenkripsi string menggunakan kunci publik ini sehingga dia dapat menggunakan kunci pribadinya dari id_rsa
(dihasilkan dari ssh-keygen
) untuk mendekripsi pesan?
(Saya tahu bahwa itu mungkin segera jika Anda menggunakan .pem
file pasangan kunci. Jika Anda dapat menunjukkan kepada saya cara mengonversikan ini ke format yang openssl
mendukung, itu juga bagus!)
Terima kasih!
sumber
ssh-rsa
kunci publik mereka , dan saya tidak ingin menambahkan lapisan kompleksitas lainnya (seperti, meminta penerima untuk menginstal gpg, dll.)Jawaban:
Dimungkinkan untuk mengonversi kunci publik ssh Anda ke format PEM (yang 'dapat dibaca rsautl' dapat membacanya):
Contoh:
Dengan asumsi 'myMessage.txt' adalah pesan Anda yang harus dienkripsi dengan kunci publik.
Kemudian, cukup enkripsi pesan Anda dengan openssl rsautl dan kunci publik PEM Anda yang dikonversi seperti biasa:
Hasilnya adalah pesan terenkripsi Anda di 'myEncryptedMessage.txt'
Untuk menguji pekerjaan Anda untuk mendekripsi dengan kunci pribadi Alice:
sumber
ssh-keygen
tidak punya-m
pilihan. (Saya tidak tahu bagaimana cara menanyakan ssh-keygen untuk versinya.) Mengganti-m
dengan-t
berfungsi, tetapi kemudianopenssl
memberi tahu saya "tidak dapat memuat Kunci Publik". Lihat stackoverflow.com/questions/18285294/… .Coba ssh-vault menggunakan ssh-rsa kunci publik untuk mengenkripsi "buat vault" dan kunci pribadi ssh-rsa untuk mendekripsi "lihat konten vault"
sumber
Mengapa tidak melakukan ini dengan cara yang sangat jelas yang tidak perlu menggulung crypto Anda sendiri.
Alice sftps ke [email protected] yang disetel hanya mengizinkan otentikasi kunci publik untuk alice akun. Properti ssh dengan baik memastikan bahwa hanya alice yang dapat melakukan authemticate. Bahkan seorang pria dalam serangan tengah gagal karena (dengan asumsi Anda menonaktifkan ssh1 dan bersikeras pada pengaturan yang tepat) komunikasi awal menggunakan DH menciptakan nilai yang dikenal baik oleh alice dan bob tetapi tidak untuk siapa pun di tengah dan ini dapat digunakan untuk mengotentikasi bahwa tidak ada balasan atau serangan MITM dapat melihat konten dari communicatino.
Jadi minta alice sftp ke dalam kotak Anda dan unduh file tersebut.
sumber