2010/04/13

便利なPerlのパスワード生成ワンライナー

Perlの便利なコマンドを見つけました。英数字からパスワードを自動生成してくれます。プロンプトでいきなり実行できるワンライナー形式のコマンドなのが便利。

perl -le 'print map { ("a".."z", 0..9)[rand 36] } 1..8'


Perlがインストールされていれば、8文字の英数字のパスワードを生成してくれます。map関数を使うところがうまいですね。

一応ランダム関数で作成されているので、安全性の高いパスワードができると思います。でも、ツールに作らせると、そのツールの特性を熟知してる人とかにパスワードを解読されてしまいそうで怖い。ランダムと言っても、規則性の無いところにクセがあったりするので、安心はできませんね。

意味のある単語を含まない、ランダムな英数字のパスワードを定期的に変更するのが一番セキュリティ面では安心ができますが、新しいパスワードを覚えるのが大変だし、全部変更するのも一仕事ですからねぇ。あんまり定期的には変えられないってのが実情なのかもしれない。5個くらいを使い回すってのでもだいぶ安心できるかな。とりあえず、上のコマンドを使えば「パスワードを作る」という点のストレスからは解放されますね。

<関連記事>
どうやってアメリカへ行くか考える
今年は技術士の資格に挑戦
テレビはこんな感じでいいんじゃないかという提案

<追伸>
Perlはいろんな意味で便利ですが、ワンライナーは特にいいですね。わざわざソースコードを作らなくても、シンプルな処理なら一行で実行できる。でも、このパスワード生成コマンドは意外に便利なので、エイリアスを作っておいても損はないかもしれない。

クリックで救える命がある。