$ ssh-keygen -t rsa -b 4096 -C "masatomix@ki-no.org" -f sshkeygen Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in sshkeygen. Your public key has been saved in sshkeygen.pub. The key fingerprint is: 08:14:ad:fc:50:e5:d4:b3:ee:d3:9d:fa:10:2f:81:ab masatomix@ki-no.org
$ ls -lrt -rw-r--r-- 1 ec2-user ec2-user 745 9月 5 07:40 sshkeygen.pub ← 公開鍵 -rw------- 1 ec2-user ec2-user 3247 9月 5 07:40 sshkeygen ← 秘密鍵 $
キーペアが作成できました。
秘密鍵で暗号化・復号化してみます。
$ echo 'hoge' | openssl rsautl -encrypt -inkey sshkeygen > encrypted.out $ openssl rsautl -decrypt -inkey sshkeygen -in encrypted.out hoge
本来秘密鍵で暗号化した情報は公開鍵で復号するのですが*1。
公開鍵で復号してみます。
$ echo 'hoge' | openssl rsautl -encrypt -pubin -inkey sshkeygen.pub > encrypted.out unable to load Public Key $
失敗しました。公開鍵で暗号化するときは -pubinオプションをつけるのですが、それをつけてもエラーになるようです。
$ ssh-keygen -e -m PKCS8 -f sshkeygen.pub > sshkeygen.pub.pem $ echo 'hoge' | openssl rsautl -encrypt -pubin -inkey sshkeygen.pub.pem > encrypted.out
今度は公開鍵で暗号化出来ました。
$ openssl rsautl -decrypt -inkey sshkeygen -in encrypted.out hoge
秘密鍵で復号も出来ました。うまくいきましたね。