はじめに

みなさんパスワード管理どうしてますか?
Webサービスのアカウントならブラウザや LastPass のようなサービスが利用できるけど、まだまだパスワードでログインしなければいけないサーバがあったり psqlmysql コマンドでパスワード入力したりしなければならなかったりしませんか?

全部が秘密鍵で済むような環境になればいいけど、少なくとも自分を取り巻く環境はそうなっていません。 意味のある文字列ならまだしも、ランダムな英数字とか覚えておくにも限界があるし、いざ入力するときも手間がかかる。

まだまだ僕たちはパスワード管理から自由になれないようです。ならせめてセキュアにパスワード管理できて、入力補助的なことができるととうれしい。

というわけで

pinzolo/spwd: Secret file based password management tool というものを作ってみた。

こんな感じで利用します。

何やってるのか?

spwd new で対話形式でパスワードをデータファイルに保存します。このとき、特定のファイル(以下キーファイル)のハッシュをキーにしてで暗号化しています。
キーファイルはデフォルトでは ~/.ssh/id_rsa を使用しますが、これは このツールを使うような人はたいてい持っていて かつ 本人しか知り得ないはずのもの だから都合がよかったからで、 SSHの秘密鍵を利用されるのは気持ち悪いという人は ~/.config/spwd/config.yml に設定を書けば別のファイルをキーにすることができます。ついでにデータファイルの場所も変更できます。(デフォルトは ~/.local/share/spwd/data.dat
ファイルのハッシュを利用しているのでキーファイルの中身は別にRSA形式じゃなくてもOKです。ぶっちゃけなんでもOKです。

そのほかつらつらと

そんなわけで、興味があれば慎重に使ってみてください。