つまり、シナリオは次のとおりです。私がボブだとすると、アリスのメッセージを暗号化したいと思います。私が持っている唯一の公開鍵は、次のような彼女のssh-rsa
id_rsa.pubです。
sSH-RSA AAAAB3NzaC1yc2EAAAABIwAAAQEAyb + qaZLwgC7KAQJzYikf3XtOWuhlMXVv2mbTKa5dp0sHPRd2RaYnH8ZRkt7V8bjqct1IHGCuxI8xyoEp4at3FHe6j9RfWiarc1ldLUCmTtryI0GGpRs6Zpvqdtpcq/1NCIYtUQAvsImyEFCtqmB2Sudo1ZSllZQ0x9TCKHdCANYIOeaniuFzR57POgE3vxk/r6PO24oy8BIWqxvi29r0n1LUigVBJ7CmMHuzb4/+ i1v6PxV1Lqnj6osPP9GpXpsh8kLUCby/KcmcryWNdSP0esyCdDxkA5hlIuk8qL1vzsyPluUQuc0BEHu6nuw8WQlCF1mFFxcpJL + MhWEr01WIIw == [email protected]
では、この公開鍵を使用して文字列を暗号化し、id_rsa
(ssh-keygen
から生成)の秘密鍵を使用してメッセージを復号化できる方法はありますか?
(.pem
鍵ペアファイルを使用している場合は、すぐに可能であることがわかっています。これをopenssl
がサポートする形式に変換する方法を教えていただければ、それも素晴らしいことです。 !)
ありがとう!
Ssh公開鍵をPEM形式に変換することができます( 'openssl rsautl'はそれを読み取ることができます):
例:
ssh-keygen -f ~/.ssh/id_rsa.pub -e -m PKCS8 > id_rsa.pem.pub
「myMessage.txt」が公開鍵で暗号化されたメッセージであると仮定します。
次に、通常どおり、openssl rsautlと変換されたPEM公開鍵を使用してメッセージを暗号化します。
openssl rsautl -encrypt -pubin -inkey id_rsa.pem.pub -ssl -in myMessage.txt -out myEncryptedMessage.txt
結果は「myEncryptedMessage.txt」内の暗号化されたメッセージです
Aliceの秘密鍵を使用してを解読する作業をテストするには:
openssl rsautl -decrypt -inkey ~/.ssh/id_rsa -in myEncryptedMessage.txt -out myDecryptedMessage.txt
試してみてください ssh-vault ssh-rsa公開鍵を使用して「ボールトを作成」を暗号化し、ssh-rsa秘密鍵を使用して「ボールトのコンテンツを表示」を復号化します