コマンドメモ

openssl コマンドを利用して
あるサーバ上で取得した情報を、公開鍵により暗号化し
別のサーバ上で暗号化された情報を、秘密鍵により復号化する方法のメモ。

秘密鍵の作成

2048 bit で RSA秘密鍵を生成し
秘密鍵そのものを共通鍵暗号の AES 256 bit で暗号化する。

openssl genrsa -aes256 2048 > ./private.pem

秘密鍵パスフレーズを空にする

おすすめしないが、一応、紹介。

openssl rsa -in private.pem -out private_nopass.pem
mv private_nopass.pem private.pem

秘密鍵から公開鍵を作成

openssl rsa -pubout -in ./private.pem -out ./public.pem

公開鍵を使って情報を暗号化

openssl rsautl -encrypt -pubin -inkey ./public.pem -out ./target.priv

標準入力から暗号化したい文字列を入力する。
"-in" オプションで暗号化したいファイルを指定する事も可能。

秘密鍵を使って復号化

openssl rsautl -decrypt -inkey ./private.pem -in ./target.priv

標準出力に復号化された文字列が出力される。