Opensslコマンド

久しく研究とかべんきょうとかから退避してきました。

0.今回は完全に外部のサーバーへアクセスする御用です。

すでにSSHについては何度かやっていますが、今回はVPNで接続します。

ん?ん?

SSHとVPNの明確な違いってなんじゃ?

アプリ層かネットワーク層かの違いだった気がします。ってかそうです。SSHはsshd走らせて、特に立てたりしなくてもいいですけど、VPNはVPNサーバーが必要ですね。ほら、VPNサーバーしんだりするじゃん。

1.今日はこれが本題ではありません

特にVPNについてはIPsec〜とかしか知らないのでもっと知る必要がありますね。とりあえず、セキュアな〜が必要なんです。

で、今回はパスワードを送ります。

もちろん、外部委託なのでバレてはいけません。そんな時、OpenSSLのワードのハッシュ化を施します。

OpenSSLといえば、脆弱性が一部で報告されていますが、それはさて置き、よくファイルの暗号化とかの暗号化通信をサポートする機能ですな

OpenSSLの結構よく使われる部分についても、今回触れていると時間がないので避けます。

2.そう、今回はハッシュ化について。

これについてやっていきましょう。このコマンドはパスワードハッシュを作ります。

ハッシュは不可逆で復号が不可能。暗号化は鍵で復号可能です。

暗号化方式としてDES,3DESとかいっぱいあります。これらの暗号化アルゴリズムの詳細は調べてくださいな。

結構、いろいろありますがごく稀に強度不足があるようです。とはいえ、人間にとっては高すぎるセキュリティパラメータですが、、、

なので、まぁそのあるごりを使うかは、、、、、はい。適当としておきます。適当じゃないけど、

で、

とかにしてみます。最初の-1はMD5での暗号化を意味します。デフォです。この部分を-shaとかにすると違う暗号化方式が選択できます。MD5はデフォですが、わりかしヤバくて使うのも拒む場合もあるそうです。他にコマンドとかあるのかな?そういえば

-saltは仮に被ハッシュ化ワードが同一だった場合に、saltが異なればちがうハッシュ値を得られるという感じです。んで最後の文字列はハッシュにしたい文字列です。

そこで得られた文字列がこちら

$を区切り文字に方式、salt、パスワードのハッシュ化を施したものが作られました。当然、暗号化ではないので復号不可能です。

よって、このパスワードのハッシュ値を登録しとけば、通信路さえ守られていれば安心して伝えられるよね・使えるよねって感じです。

ちなみに僕はバカなのでハッシュ値の最後までコピーしないで送ってロフインできない事件が起きました。はは(真顔)

3.時間があれば

OpenSSLは多分使わないので、散々捨ててきたVPNについて暇があればやります。