SSブログ

サーバ証明書を作るときのパスフレーズの長さと文字種 [Linux]

WebサーバをTLSにすべく、サーバ証明書を入れる時にキーファイルにパスフレーズを付けると思います。パスフレーズを付けないものにするとしても、後で取り去るような感じになっているのかな?

具体的にはopenssl genrsaする時とかですが、何文字でどんな文字を使えるか気になった人いません? 自分は適当に他のサーバと似たようなパスフレーズを使っておけばいいだろうと思って適当にしていたんですが、何か気になってしまい改めて調べようとしました。

しかし、ネットでの情報がない…。特に日本語のものがない。英語の情報にも手を出したけど、そのものずばり出てこない。一般的なパスフレーズの話とかになってしまったりして、こっちはopensslで使えるpassphraseをさがしているんだよって思っていました。

実際にopensslでkeyファイルを作るときに、一文字だけ入れてみたらパスフレーズが短すぎると怒られました。そんでもってエラーでパスフレーズの長さがきちんと出てきました。

UI routines:UI_set_result_ex:result too small:crypto/ui/ui_lib.c:905:You must type in 4 to 1023 characters

4文字から1023文字まで、という事らしいです。使える文字種についてはコマンドラインでは分からないっぽい。なのでopensslの本家のサイトを集中的に見てみました。

https://www.openssl.org/docs/manmaster/man7/passphrase-encoding.html

特段、文字種のルールを設けてはいないんだけど、 ISO-8859-1の範囲内でないといけないみたい。まぁ日本語とかはダメだよね。

https://ja.wikipedia.org/wiki/ISO/IEC_8859-1#%E7%AC%A6%E5%8F%B7%E8%A1%A8

大体の記号は使えそうだけども、コマンドラインとかで特別な意味があるものとかは使いたくない感じ。エスケープとか考えると面倒くさくなる。openssl rand -base64 とかで作る方法があるけど、それだと記号がかなり限られてくるので、捨てパスワードとして手軽に作る程度がいいのではないかと思ったりもする。どうせコピペで一回だけ設定とかになるから、面倒でも長くて複雑なものにしましょう(と自分に言い聞かせる…)。

コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0