プライバシーポリシー
Android版26.8.5はFirebase Analyticsによる利用分析の収集を無効にしており、アプリ内広告・購入機能を提供しません。障害診断、アプリ設定、整合性確認、任意のログイン・同期ではデータを引き続き処理します。以下の利用分析・購入項目は、該当機能を提供した以前のバージョンに適用されます。
Crashlyticsと関連するFirebase Installations・Sessionsは、クラッシュ・安定性指標のためインストール識別子、端末・アプリ情報、セッション時刻を処理します。Android版26.8.5にはこの収集を無効にするアプリ内設定はありません。Remote Configは機能設定の取得にインストール識別子、国・言語コード、タイムゾーン、アプリ・OSバージョンを使用します。任意のログインでプロフィール名が提供される場合があり、Firebase Authenticationは不正利用防止のためIPアドレスも処理します。
パスワードマネージャー(以下「本アプリ」)は、アカウント名、パスワード、TOTPシークレットを初期設定で端末内に暗号化してローカル保存します。同期を有効にした場合のみ、Google/Appleログインで暗号文の所有者を確認し、Firebase Firestoreに端末で暗号化したアカウントデータ、nonce/ciphertext/MAC形式でラップした同期キー、および同期に必要なレコードID、更新時刻、リビジョン、削除状態、同期キーエンベロープのリビジョンとランダム変更ID、KDF saltを含む暗号メタデータを保存します。アカウント名、パスワード、TOTPシークレットは暗号文の中にのみ含まれます。障害解析、利用状況の分析、決済、任意の同期のため、限定的なデータが第三者SDKによって処理される場合があります。
1. 平文で収集・送信しない情報
- アカウント名、パスワード、TOTPシークレット:端末内の暗号化データベース(SQLCipher)に保存します。同期時も内容をアプリ内で先に暗号化し、暗号文としてのみ送信します。後述の同期メタデータは別フィールドで送信されます。
- 自動入力識別子:Webドメイン、Androidパッケージ名、iOS service identifierはログイン画面の照合用メタデータです。同期時も暗号化アカウントレコード内にのみ含まれ、分析、障害報告、広告、決済SDKへ平文で送信しません。
- マスターパスワード、DB暗号化キー、ローカルバックアップ:Firebase Auth、Firestore、Analytics、Crashlytics、決済SDKへ送信しません。
- アプリロックを有効にした場合、PIN・生体認証の状態は端末のセキュアストレージに保存します。
- 同期を使用しない場合、アカウントデータはローカル専用です。
Chrome拡張機能によるローカル処理
Passwordmanager Chrome Extensionは、別途インストールされたmacOSデスクトップアプリと連携し、現在のHTTPSログインページへの入力、または明示的な承認後に対応する登録・アカウント変更ページの認証情報を保存・更新します。
- 拡張機能のポップアップで検索を実行した場合のみ、現在の最上位ページの正確なHTTPS originを固定のローカルNative Messagingホストへ送ります。originは完全一致するアカウントの検索にのみ使用し、拡張機能や開発者サーバーには保存・送信しません。
- 自動入力時、ページ検出は対応するユーザー名・パスワード欄の有無だけを報告し、入力値を読み取りません。保存・更新時は、拡張機能の保存UIを開いて検出された操作を確認した後に限り、対応するユーザー名・パスワード欄を読み取ります。selector、DOMテキスト、HTML、無関係な欄、一般的なフォーム内容は収集しません。
- 保存・更新値は固定のローカルアプリにだけ渡されます。アプリは作成、パスワード更新、ユーザー名更新の提案を表示し、アプリ内確認とOS認証を求めます。その後、拡張機能は同じ最上位HTTPS文書と欄に承認済みの値が残っていることを確認して一度だけ確定します。遷移、値の変更、取消、期限切れ、再利用、iframe、アプリロック、通信失敗時は変更しません。
- アカウントを選ぶと、ユーザー名とパスワードが実行中のローカルアプリから拡張機能を経由し、選択中ページの取得済みフィールドへ一時的に渡されます。入力先サイトは値を処理できるため、信頼できるサイトでのみ使用してください。
- 拡張機能はVault、マスターパスワード、キー、アカウント、パスワード、origin、閲覧履歴をブラウザストレージに保持せず、Firebase、開発者サーバー、分析、広告、障害報告、人による確認へ送信したり関連payloadを記録したりしません。
- 自動入力候補はservice workerメモリに最大30秒、保存承認待ちは最大60秒だけ保持されます。アプリロック、画面遷移、origin・文書の不一致、iframe、期限切れ、再利用、通信失敗時は認証情報を渡したり保存したりしません。
拡張機能が扱う情報は公開された単一目的の提供にのみ使用し、Chrome Web Store User Data PolicyのLimited Use要件に従います。広告、パーソナライズ、販売、信用評価、その他無関係な目的には使用・移転しません。拡張機能を削除するとブラウザ側の構成要素が削除され、別のローカルアプリデータには本アプリの保存・削除方針が適用されます。
2. 収集・送信する情報
本アプリは、以下の第三者SDKを通じて記載のデータを処理します。ただし、世代・lifecycle方式のリモート削除・再有効化機能と関連Firebase Functionsは、まだ本番環境で有効ではありません。以下のkey epoch、generation ID、lifecycle状態、一時操作メタデータ、lifecycle専用の限定利用App Checkトークン・再利用防止処理は、機能が本番で有効になり、ユーザーが該当操作を行った場合にのみ適用されます。App Checkを含むアプリ版では、Firebase App CheckがAndroidのGoogle Play IntegrityまたはiOSのApple App Attest/DeviceCheckを利用し、保存済みアカウント内容を含まないアプリ・端末整合性シグナルを初期化・トークン発行時に処理する場合があります。
| データ種別 | 項目 | 目的 | 処理者 |
|---|---|---|---|
| アプリ活動・識別子 | アプリインスタンスID、利用イベント | 利用分析・改善 | Firebase Analytics |
| 診断・障害 | クラッシュログ、端末・OS情報 | 安定性向上 | Firebase Crashlytics |
| アプリ・端末整合性 | アプリ証明トークンと整合性シグナル(保存済みアカウント内容を含まない) | App Checkの初期化・発行、リモート同期削除・再有効化要求の偽造・再利用防止 | Firebase App Check、Google Play Integrity、Apple App Attest/DeviceCheck |
| ログイン識別子 | Firebase uid、プロバイダー情報、プロバイダーが提供するメール等 | 任意同期の暗号文所有者確認 | Firebase Auth、Google/Apple Sign-In |
| 同期データ | レコードID、更新時刻、revision、削除状態、コンテンツ・暗号・KDF識別子、nonce/ciphertext/MAC。同期キーエンベロープのrevision、ランダム変更ID、key epoch・ランダムgeneration ID、lifecycle状態・時刻、Argon2id KDF salt、nonce/ciphertext/MAC形式のwrappedKey。削除・再有効化中は不透明なrequest ID、対象世代、状態、ページカーソルを一時保存します。ランダムIDはユーザーデータやキーから生成しません。アカウント暗号文にはアカウント名、パスワード、TOTPシークレット、自動入力識別子が含まれる場合があります。 | ユーザーが有効にした端末間同期と安全な削除・再有効化 | Firebase Firestore/Functions |
| 購入履歴 | アプリ内購入取引情報 | 支援処理 | Apple App Store / Google Play |
3. 第三者への共有
上記データは関連機能の提供に必要な範囲で次の事業者に共有されます。本アプリはデータを販売しません。
- Google(Firebase):分析、診断、ログイン識別子処理、同期データ保存、App Check/Play Integrity検証
- Apple:App AttestまたはDeviceCheckによるAppleプラットフォームの整合性検証
- Apple / Google:ログインとアプリ内購入の処理
各社の処理については、GoogleプライバシーポリシーおよびAppleプライバシーポリシーをご覧ください。
4. データセキュリティ
- アカウント、パスワード、TOTPシークレットはSQLCipherで暗号化し、初期設定では端末に保存します。
- 同期時のFirestoreには端末で暗号化したデータ、ラップした同期キー、エンベロープrevision、ランダム変更ID、KDF salt等の必要な平文同期・暗号メタデータを保存します。アカウント名、パスワード、TOTPシークレットを平文保存しません。
- マスターパスワードは端末上で同期キーをラップ・解除するためだけに使用し、サーバーへ送信しません。紛失した場合、暗号化同期データは復元できません。
- アプリロック(PIN・生体認証)を有効にすると、不正なアプリ起動を防ぎます。
- コピーしたパスワードは一定時間後にクリップボードから自動消去します。
- ネットワーク送信はHTTPSで暗号化します。
5. 保存と削除
- ローカルデータはアプリ内で項目を削除するか、アプリをアンインストールすると削除されます。
- 同期時は項目の削除状態がFirestoreの平文メタデータとして同期されます。
- 現在のリモート同期削除は、暗号化レコードとラップ済みキーをその時点で削除する処理です。他の端末で同期が有効なままだと再アップロードされる可能性があるため、リモートデータ削除時はその端末でも同期を無効にしてください。世代・lifecycle機能の本番有効化後は、直近の再認証とApp Checkを要求し、廃止世代からの再アップロード防止のため、payloadを含まないepoch、ランダムgeneration ID、削除状態、サーバー時刻のみのlifecycle tombstoneを保持します。
- Firebase Auth/Firestore、分析・診断データの削除依頼は下記へお問い合わせください。
6. 子どものプライバシー
本アプリは子どもを対象としておらず、子どもの個人データを意図的に収集しません。
7. ポリシーの変更
法令やサービスの変更に応じて本ポリシーを更新する場合があります。更新時は施行日とともに本ページへ掲載します。
8. お問い合わせ
プライバシーに関するお問い合わせ:me@nine20.net