2013/05/11

サービスごとのパスワードを生成するヘルパーツール書いた

マスタパスワードからサービスごとに異なるパスワードを自動生成するのが簡単な対策ですよね。

これを読んで、確かに!と思ったので、そこそこ実用に耐えそうな程度にモジュール化してみました。

App::MyPasswd

https://github.com/bayashi/App-MyPasswd

mypasswd

上のモジュールに mypasswd というコマンドが付いてきます。以下のような感じで使用します。

$ mypasswd --salt example.com
Input master password:
Again, input same master password:
use this: SRGPNbcA

--salt でサービスのホストなんかを指定しておいて、master パスワードを別途入力して、その2つから生成した文字列を実際のパスワードとして利用する感じですね。

  • マスターパスワードは表示させません
  • デフォルトで SHA の b64digest で大文字小文字英数と記号のパスワードを生成
  • --only-number オプションで数字だけのパスワードが生成できます
  • --only-uc または --only-lc でアルファベットを大文字小文字だけにできます
  • --no-symbol で記号を使わないパスワードにできます

というように、サイトのパスワードの要件にあわせた生成オプションをつけてみました。

とはいえ実用的にはまだけっこう大変><

いろいろ複雑になってくると、生成コマンド自体を覚えておかないと再計算が難しいという問題がありまして、まあどうしよっかなーと思ったんですが、取り急ぎ自分は適当にディレクトリ/ファイルこさえてパスワード生成履歴を記録して git 管理する目論見。

サービスに登録したときにメモしておきたい内容もそこにぶっこんでしまう運用で良さそうな感じがしてる。

と、ここまで書いたところで、mypasswd --log path/to/file とかやれて生成オプション記録されてれば楽かなとか思った。

srd

mypasswd --log path/to/file これ実装しました。

サイト内検索