Open7
パスワード管理を KeePassXC に移行した
今まで自作のパスワード管理ツールを使っていたんだけど、スマホにおける利便性が悪すぎたのでちゃんとしたツールに移行することにした。世の中にはパスワードマネージャーが山のようにあるが、以下の理由から KeePassXC を選んだ。
- ブラウザ拡張を備えていること
- Android から利用可能であること (KeePassDX というアプリを利用)
- OSS であること (GPLv3 の元で配布されている)
データベースファイルの暗号化は以下のようにした。
- 暗号化アルゴリズム: ChaCha20
- 鍵導出関数: Argon2id
- 変換ラウンド: 2
- メモリ使用量: 1024 MiB
- 並列処理: 8
Argon2id のパラメータは手持ちのスマートフォンにおいて1~2秒程度で解錠できるように調整したが、いまいちこれが正しいのかはよくわかっていない。
RFC 9106 では変換ラウンド1、メモリ使用量 2GiB が推奨されているっぽい。
The Argon2id variant with t=1 and 2 GiB memory is the FIRST RECOMMENDED option and is suggested as a default setting for all environments. This setting is secure against side-channel attacks and maximizes adversarial costs on dedicated brute-force hardware.
Argon2id を選んだのは OWASP でおすすめされていたから。
設定
以下の設定をデフォルトから変更した。
- 全般
- 起動
- 「システム起動時に KeePassXC を自動的に起動する」を on
- 「ウィンドウを最小化して起動する」を on
- ユーザーインターフェイス
- 「終了せずに最小化する」を on
- 「システムトレイアイコンを表示する」を on
- 「最小化した際はシステムトレイに格納する」を on
- 起動
- セキュリティ
- タイムアウト
- 「未操作の時間が続いたらデータベースをロックする」を 300 秒に
- タイムアウト
データベースの暗号化のパラメータを変更する方法
- データベース(D) → データベースの設定(D)...
- [セキュリティ] → [暗号化の設定] タブ
- ダイアログ左下の "詳細設定" にチェックをつける (わかりにくい!!!)
- パラメータを調整し、[OK] を押す