DPG - Deterministic Password Generator

https://okuranagaimo.blogspot.com/2021/01/blog-post_27.html
パスワード・マネージャの代替えになると主張される、パスワードジェネレータ。
要するにマスターパスワードとパスワード利用先サービス名からパスワードを生成するというアプリである。
バックアップ、同期化、パスワードの適切な暗号化の必要性を排除すると主張している。



しかしバックアップ、同期化は必要だと思う。なぜならば利用する各サービスについて「パスワード利用先サービス名」を1文字の間違いもなく正確に記憶しておくことは不可能なので「パスワード利用先サービス名の一覧」ファイルが必要になり、そのファイルのバックアップ、同期化は必要だからである。
様々なサービスについて、例えば「Facebook」「facebook」「FB」「facebook.com」「facebook.com/login」のどれを使ってパスワード生成したのか覚えておけるだろうか?完全に不可能だと思う。
また「パスワード・マネージャの設計上の欠陥」として、
・暗号化ロジックが検証できず脆弱性が入る危険がある
・デバイス容量を使用する
・リモートシステムへの依存する場合、リモートシステムが信頼できるとは限らない
Webブラウザと連携する場合、Webブラウザが信頼できるとは限らない
などが上げられているが、これはパスワード・マネージャという概念が構造的に持っている問題ではなく実装上の問題だ。
暗号化ロジックが検証できないのは個別のソフトの問題でしかなく、必要になる利用容量は誤差でしかない。そしてDPGでもそれをリモートシステムやWebブラウザと連携して使うなら同じ問題が発生する。

結局DPGのメリットは、通信経路上にマスターパスワードを乗せる必要が無いことだけだと思う。それもローカルで実行するパスワードマネージャであれば同じメリットを持っている。
それに対してデメリットは、パスワードに利用する文字種類・文字数などを自由に設定できないので対象サービスが特定文字数のパスワードを要求してきたりすると管理が破綻する危険性や、脆弱性が発見されてパスワード生成ロジックに変更が必要になった場合にすべてのパスワードが変わってしまうという危険性などだ。
個人的にはメリットがデメリットを上回ることはないように思える。

同様の反論(英語サイト)。
https://tonyarcieri.com/4-fatal-flaws-in-deterministic-password-managers