データプライバシーとセキュリティ
プライバシーは DevLingo の核心的な価値です。データがどのように流れ、どこに保存され、誰がアクセスできるかを詳しく説明します。
データフローの透明性
Section titled “データフローの透明性”シナリオ 1:単発クエリ(クラウド同期なし)
Section titled “シナリオ 1:単発クエリ(クラウド同期なし)”Step 1: Slack で "idempotent" を選択 ↓Step 2: ⌘⇧D を押す ↓Step 3: Mac アプリがローカルライブラリとキャッシュをチェック ↓Step 4: ヒットしなかった場合、Cloudflare Workers にクエリを送信(HTTPS 暗号化) リクエストに含まれるもの: • 選択テキスト:"idempotent" • コンテキスト(前後のテキスト) • アプリ識別子(Slack) • モード:Word ↓Step 5: Workers が Claude API を呼び出す ↓Step 6: Claude が構造化 JSON 結果を返す ↓Step 7: Mac アプリが結果を受信 ↓Step 8: ユーザーが「保存」をクリックしない限り、結果は保存されない (フローティングウィンドウを閉じるとデータは消える)シナリオ 2:単語帳に保存
Section titled “シナリオ 2:単語帳に保存”Step 1-7: 上記と同じ ↓Step 8: ユーザーが "Save to Word Book" をクリック ↓Step 9: データがローカルの SwiftData に保存される (完全にデバイス内、クラウドにアップロードされない) ↓Step 10: 単語帳同期スイッチがオフ → 完了(ローカルのみ) 単語帳同期スイッチがオン → Step 11 ↓Step 11: ユーザーのデバイスが Cloudflare D1 に同期 (ユーザー専用データベース、認証付き)テキストはモデルのトレーニングに使用されません
Section titled “テキストはモデルのトレーニングに使用されません”重要:DevLingo が Claude API を通じて送信するテキストは、Claude やその他のモデルのトレーニングには使用されません。Anthropic のデフォルトポリシーに従っています。
✓ テキストは一回限りの使用✓ Claude が処理後すぐに破棄(保存されない)✓ いかなる形式のデータマイニングにも使用されない:::note 検証方法
Anthropic Claude API のすべてのリクエストは “user=
ローカルストレージはデフォルトでクラウド同期オフ
Section titled “ローカルストレージはデフォルトでクラウド同期オフ”単語帳(Word Book)はデフォルトで Mac にのみ保存され、SwiftData を使用します:
~/Library/Containers/com.devglish.com/Data/└── default.store/ └── word_entries.db (ローカル SQLite)このデータベースはデバイス専用で、DevLingo アプリのみがアクセスできます。
クラウド同期はオプション
Section titled “クラウド同期はオプション”複数の Mac で単語帳を同期したい場合は、クラウド同期を明示的に有効にできます:
Settings → iCloud Sync → Toggle ON有効にすると、単語帳は暗号化されて Cloudflare D1 にアップロードされます:
暗号化:クライアント側暗号化(Curve25519)→ サーバーに保存認証:ユーザーの JWT token(セキュリティトークン)アクセス制御:各ユーザーは自分のデータのみアクセス可能分離:データベースの行レベル分離、クロスユーザーアクセスを防止:::caution データ移行 クラウド同期を有効にした後、サブスクリプションをキャンセルまたはアカウントを削除すると、クラウドデータは 30 日後に自動的に削除されます。ローカルの SwiftData は影響を受けず、デバイスに残ります。 :::
収集しないデータ
Section titled “収集しないデータ”DevLingo は「最小限の収集」原則を厳守しています:
収集しないデータ
Section titled “収集しないデータ”✗ コード内容(Xcode で使用している場合でも)✗ 完全な閲覧履歴やアプリ使用履歴✗ チャットログやメール内容✗ Git 履歴✗ デバイス上の他のプライベートファイル収集する必要最小限のデータ
Section titled “収集する必要最小限のデータ”✓ クエリのために選択したテキスト自体✓ 前後 50 文字のコンテキスト(AI の理解のためのみ)✓ 現在のアプリの Bundle Identifier(AI のスタイル調整を支援)✓ 母語の設定(L1 干渉ヒント用)✓ 単語帳の内容(クラウド同期を明示的に有効にした場合のみ)API キーのセキュリティ
Section titled “API キーのセキュリティ”Claude API キー
Section titled “Claude API キー”DevLingo のバックエンド(Cloudflare Workers)が Claude API キーを保持します。Mac アプリはキーを直接公開する必要がなく、Workers を通じてすべての API リクエストをプロキシします。
Mac App Workers (edge) ↓ (HTTPS) ↓ │── Bearer: user_jwt ────────→ │ │ │ │ (有効期間 1 時間) │ (Claude API Key) │ │ │← Structured Response ←────── Claude APIメリット:
- キーがローカルに保存されない(漏洩しない)
- すべての API コールが信頼された Cloudflare エッジで処理される
- Mac が攻撃されてもキーは安全
ユーザー JWT トークン
Section titled “ユーザー JWT トークン”ユーザーがログインすると短期 JWT トークン(1 時間の有効期間)を取得します:
アルゴリズム:HS256(HMAC SHA-256)署名キー:Cloudflare Secret(ローカルに保存されない)保存場所:macOS Keychain(システム暗号化)更新:トークンの期限切れが近づくと自動更新Keychain のセキュリティレベル:
🔒 Mac の iCloud ロック解除キーにバインド🔒 アクセスのたびにシステムがユーザーの確認を求める🔒 ハードドライブを盗まれてもデータは読めないネットワーク転送のセキュリティ
Section titled “ネットワーク転送のセキュリティ”Mac から Cloudflare Workers へのすべての通信は HTTPS で暗号化されます:
TLS 1.3(最新プロトコル)証明書:LetsEncrypt(自動更新)完全前方秘匿性(Perfect Forward Secrecy)オフライン機能
Section titled “オフライン機能”DevLingo の階層化クエリシステムにより、オフラインでも使用可能です:
機内モードで "idempotent" を選択 ↓ローカル技術語彙ライブラリをクエリ(85 以上の単語)→ 成功! ↓結果がすぐに表示、ネットワーク不要以下の場合のみネットワークが必要です:
✓ ローカルライブラリにない新しい語彙のクエリ✓ 単語帳のクラウド同期✓ 最新の TTS 音声キャッシュの取得その他 95% のクエリは完全にオフラインで完了できます。
アカウント削除とデータ消去
Section titled “アカウント削除とデータ消去”DevLingo アカウントを削除する場合:
Step 1: 設定 → アカウント → Delete Account ↓Step 2: システムが再確認を求める ↓Step 3: Cloudflare が削除: • ユーザーアカウント • クラウド上の単語帳 • ログイン履歴 • API 使用ログ (30 日後に完全削除) ↓Step 4: ローカルデータは影響を受けない (Mac に残る。ユーザー自身で削除可能):::caution データの永続性 アカウントを削除すると、クラウドデータは復元できません。ただし、ローカルの単語帳を CSV にエクスポートして永久に保存できます。 :::
コンプライアンス
Section titled “コンプライアンス”DevLingo は以下の規制に準拠しています:
| 地域 | 規制 | ステータス |
|---|---|---|
| EU | GDPR(一般データ保護規則) | ✓ 準拠 |
| 米国 | CCPA / CPRA | ✓ 準拠 |
| 日本 | 個人情報保護法 | ✓ 準拠 |
:::note データ保護担当者 プライバシーに関するご質問は、[email protected] までご連絡ください。24 時間以内に対応いたします。 :::
定期的なセキュリティ監査
Section titled “定期的なセキュリティ監査”DevLingo のエンジニアリングチームは定期的に以下を実施しています:
• コードセキュリティ監査(OWASP Top 10)• 依存関係スキャン(npm audit, Xcode security)• 侵入テスト(第三者)• データベースアクセス監査(誰が何にアクセスしたか)監査レポートは四半期ごとにユーザーに対して透明に公開されます。
まとめ:DevLingo のプライバシー設計は「ゼロトラスト」原則に従っています — ネットワークが監視されていると仮定し、デバイスが攻撃されていると仮定しますが、暗号化、認証、最小限の収集によって、データが常にあなたのコントロール下にあることを保証します。