プライバシーポリシー
最終更新日: 2026年10月
正式版:本プライバシーポリシーの拘束力を持つ正式版は英語版です。英語版プライバシーポリシーをご参照ください。以下の要約は参考用です。
データ管理者
Creatiwi AI
ポーランド共和国
連絡先:[email protected]
ローカル処理
Maskenoはローカル処理を最優先します。個人情報(PII)の検出および墨消し(リダクション)は、Microsoft Presidio 由来のパターン認識、nym(多言語)分類器、人名・住所用の OPF モデル、ポーランド語専用の GLiNER2 モデルを使用して、お客様のデバイス上で実行されます。2つのモデルは ONNX Runtime 上で動作し、検出にクラウド推論は使われません。検出のためにお客様のドキュメントがサーバーに送信されることはありません。スキャンしたページや画像のテキスト認識(OCR)もローカルでのみ実行され、アプリに内蔵されたTesseract(既定)か、このマシン上のOllamaを使用します。クラウドOCRはなく、元のドキュメントがデバイスの外に出ることはありません。ただし、アプリは「ゼロネットワーク」ではなく、下記の通信を行います。また、検出は漏れることがあり、墨消し済みテキストは匿名化されたものではないため、どこかに送信する前に必ず墨消し済みテキストをご確認ください。
デバイスから送信されるもの
アプリの動作にはいくつかのネットワーク通信が伴います。「データが一切デバイスを離れない」と主張する代わりに、当社はこれらを明示します:
- トライアル:登録時にマシンID、OSプラットフォーム、アプリバージョンが、状態確認にはマシンIDが、使用状況レポートにはマシンIDとプロジェクト数・ページ数が、当社のトライアルサーバー(Cloudflare Worker)に送信されます。これは分析への同意を条件とせず、ライセンスがあっても停止しません。有効なライセンスはトライアルの制限を解除しますが、アプリはトライアル状態の確認と使用状況の報告を続けます。
- ライセンス:ライセンスキーを入力すると、キーとマシンIDがPolar.shに送信され、有効化と定期的な再検証(約7日ごと)に使われます。
- 検出モデルのダウンロード:必要なモデルがまだデバイスにない場合、ダウンロードされます。secure、legal、medical プリセットは nym モデル(約376 MB)を必要とします。legal と medical はさらに OPF(約917 MB)を必要とし、secure もポーランド語以外のテキストでは OPF を必要とします。ポーランド語のテキストでは、legal と medical はポーランド語の GLiNER2 モデル(約395 MB)も必要とします。3つとも当社自身の Cloudflare R2 ストレージである models.audior.app から取得されます。nym と OPF は、このホストに接続できない場合、エラーが返された場合、または異なるバイト列が配信された場合に Hugging Face にフォールバックします。GLiNER2 にはフォールバックがありません。各ファイルはダウンロード時に、固定されたサイズと SHA-256 ハッシュに照らして検証されます。ドキュメントのデータは送信されませんが、環境変数
HF_TOKENが設定されている場合は、フォールバックのダウンロード時に bearer トークンとして Hugging Face に送られます。developer プリセットはダウンロードを行いません。 - OCR言語データ:言語ファイルがアプリの言語データキャッシュにない言語でOCRを実行すると(初回、およびキャッシュを空にした後)、アプリはその言語のTesseract言語ファイル(例:ポーランド語と英語)をtesseract.jsの言語データCDN(jsDelivr)からダウンロードします。キャッシュはOSの一時フォルダーに保存され、システムやクリーンアップツールが空にすることがあります。これは単純なダウンロード要求で、ドキュメントの内容、マシンID、ライセンスキーは含まれません。OCRを完全にオフラインで使うには、アプリを起動する環境で環境変数
TESSDATA_PATHに、gzip圧縮された言語ファイル(<lang>.traineddata.gzという名前。ポーランド語のドキュメントならpol.traineddata.gzとeng.traineddata.gz)を置いたフォルダーを指定してください。圧縮されていない.traineddataファイルも、アプリが必要とするすべての言語がそのフォルダーに圧縮なしのファイルとして揃っていて、.gzファイルが1つもない場合は読み込まれます。2つの形式を同じフォルダーに混在させないでください。ファイルがない言語でも、アプリがダウンロードにフォールバックすることはありません。 - Ask AIのモデル一覧とAPIキーの確認:Ask AIのモデル選択画面にキャッシュされた一覧がない場合(一覧は1時間キャッシュされます)または一覧を更新したときに、アプリはOpenRouterからモデル一覧を取得します。OpenRouterのAPIキーを保存している場合は、そのキーが使われます。設定でOpenRouterのキーをテストすると、そのキーがOpenRouterに送信されます。ドキュメントのデータは送信されません。OpenRouterを設定しなければ、これらの通信は発生しません。
- Ollama:アプリが通信するのはこのマシン上のOllamaだけです。OCRは墨消し前の元のドキュメントを扱うため、Ollamaについてはループバックアドレス(localhost、127.x.x.x、::1)のみを受け付け、それ以外のアドレスは拒否します。アドレスは保存時に確認され、保存済みのループバック以外のアドレスは起動のたびに削除され、OCRの実行前にも再度確認されます。通信内容は、状態・バージョン・モデル一覧の確認、モデルのダウンロードと削除、OllamaでOCRを実行する際のページ画像、OllamaでAsk AIを実行する際のプロンプトと墨消し済みテキストです。設定画面またはAsk AIパネルを開くたびに、Ollamaを使わなくても状態確認が自動的に行われ、これを無効にする設定はありません。これらの通信はすべてそのループバックアドレスに送られます。
- OCR:デバイスの外には何も送信されません。OCRはローカル専用で、アプリに内蔵されたTesseract(既定)か、このマシン上のOllamaを使用します。クラウドOCRはなく、ページ画像がクラウドプロバイダーに送信されることはありません。
- Ask AIとプロンプトパック(任意):選択したプロンプトと、墨消し済みのプロジェクトテキストが、お客様自身のAPIキーを使ってOpenRouterへ、またはこのマシン上のOllamaへ、テキストを含むリンク経由でchatgpt.comへ、あるいはコピーしたプロンプトの貼り付け先に送られます。内容については次のセクションをご覧ください。
- クラッシュレポートと使用分析(オプトイン):デフォルトでは無効です。同意ダイアログまたは設定で同意した後にのみ、Sentryがクラッシュレポート(エラーメッセージとスタックトレース、起動をまたいで変わらないランダムなインストールID付き)を、Aptabaseが使用イベントを受け取ります。ドキュメントの内容は意図的に添付されません。メインプロセスでは、エラーのテキスト(メッセージ、スタック、パンくず、タグ)は厳格なスクラバーを通り、パス、メールアドレス、IBAN、長い数字、引用符内のテキスト、およびアプリ自身のメッセージ語ではない単語がすべてアンダースコアに置き換えられます。アプリウィンドウ内のクラッシュレポートはファイルパスのみを置き換えるため、そこではその他のテキストがそのまま送信されることがあります。スクラバーは安全網であり、保証ではありません。使用イベントの名前とテキスト値は、送信前に検証され短縮されます。同意を撤回すると、新しい使用イベントとメインプロセスの新しいクラッシュレポートは送信されなくなりますが、すでにキューにあるレポートは送信されることがあり、アプリウィンドウ内のクラッシュレポートは再起動するまで有効なままです。
- フィードバック(任意):フィードバックフォームを送信すると、フォームへの入力と選択内容(一部のテキスト欄は短縮され、機密と認識された文字列は置換されます)、送信時刻、アプリバージョン、OSプラットフォームとバージョン、設定済みのOCRプロバイダー名、ライセンスファイルの有無がSlack Webhook経由で当社チームに送信されます。不具合報告では「ログを含める」がデフォルトでオンになっています。フォームは送信前にログ行を表示し、表示されたテキストがそのまま送信されます。対象は、ログ内容を消去するビルドが書いた警告とエラーのエントリのみで、最大20件、2,900文字までです。各行は厳格なスクラバーを通り、パス、メールアドレス、IBAN、長い数字、引用符内のテキスト、およびアプリ自身のメッセージ語ではない単語が置き換えられます。アプリは、ログのエントリを自由なテキストではなく、数値とコードを含む固定メッセージとして書きます。これは保護策であり保証ではありません。アプリ自身の単語でもあるドキュメント内の語は通過することがあります。フォームに入力したテキストも同様に処理されます。ログを送りたくない場合はチェックを外してください。アプリにWebhookのアドレスが設定されていない場合、何も送信されません。
- アップデート:アプリは起動の約10秒後と「アップデートを確認」の操作時にGitHub Releasesを確認し、アップデートを自動的にダウンロードします。リクエストにはプラットフォームと、アップデートライブラリが一度だけ作成してユーザーデータフォルダーに保存するランダムなIDが含まれ、アップデートのダウンロード時にお使いのバージョンが分かることがあります。ポータブル版を含むすべてのリリースビルドが対象で、これを無効にする設定はありません。パッケージ化された開発ビルドでは公開が無効化されています。
これらのリクエストはいずれも、受信側のサーバーに、お客様(またはVPNやプロキシ)のIPアドレスを知らせます。
マシンIDは仮名のハードウェアフィンガープリントであり、お客様の氏名やメールアドレスではありません。トライアル制限の適用とライセンスの端末への紐付けに使われます。
Ask AIでAIプロバイダーが受け取るもの
Ask AIは、プリセットの指示と、レビュー中のプロジェクトの墨消し済みテキスト(画面に開いているもの以外のドキュメントを含む)からプロンプトを作成します。
- 却下していないスパンはすべて墨消しされます。
- 却下したスパンは、却下していない別のスパンに覆われない限り、そのまま表示されます。
- 検出器が見つけなかったPIIは、墨消しが覆っていなければ、そのまま送信されます。送信前にレビュー画面でご自身で墨消しを追加できます。
<PRIVATE_PERSON_1>のようなプレースホルダーは仮名化であり、匿名化ではありません。同じカテゴリーで正規化後のテキストが一致する検出は同じプレースホルダーを共有し、一部の活用・屈折形は元の形のプレースホルダーを共有します。結合されたスパンの断片や手動で追加したスパンには別の番号が付きます。したがって、このまとまり方は確実な個人の特定や正確な件数を示すものではありませんが、繰り返し現れるプレースホルダーから、プロバイダーは言及のまとまり方や、おおよその人数・電話番号・口座の数を推測できます。プレースホルダーの周囲の文章(役職、日付、場所、出来事、PIIとして検出されなかった情報)は書かれたまま送信されます。
評価されたリスクが高い場合、OpenRouterへの送信、プロンプトのコピー、ChatGPTリンクを開く操作では、先に確認が求められます(このマシン上のOllamaで実行する場合は確認されません)。検出が不完全または利用不能と表示されている間は、Ask AIは利用できません。送信前に墨消し済みテキストをお読みください。ChatGPTボタンは、プロンプト全体をブラウザで開くリンクに含めるため、リンクはブラウザの履歴に残ることがあります。
内蔵OCRは、読み取ったスキャンページごとに評価を付けます。ページが「不良」または「判読不能」と評価された場合、Ask AIと墨消しテキストのエクスポートは、そのページを確認したことの承認を求め、承認するまでメインプロセスはエクスポートを拒否します。承認はそのページのテキストに対するもので、ページが再度読み取られると無効になります。この評価は限界のある安全網です。Ollamaで読み取ったページ(信頼度スコアがありません)、OCRが不要だったドキュメント、古いプロジェクトは対象外であり、評価が良好でもページ上のすべてが読み取られた証拠にはなりません。ページ解析が捨てたテキストは数えられないためです。
データの保存
プロジェクトのデータベースは、SQLite3 Multiple Ciphers(ChaCha20-Poly1305、SQLCipher形式ではありません)で暗号化されています。鍵は db.key に保存され、Electron の safeStorage で保護されます(Windowsでは DPAPI で、同じWindowsアカウントで動作する任意のプログラムが復号できます。macOSではキーチェーン、Linuxではシークレットサービス)。safeStorage が利用できない場合、鍵は平文で書き込まれ、警告がログに記録されるだけです。APIキーとライセンスキーにも同じ safeStorage が使われます。利用できない場合、APIキーは平文で保存され(設定画面に警告が表示されます)、ライセンスキーは base64 でエンコードされるだけで、暗号化ではありません。通常のリクエストでは、保存されたキーは当社のサーバーを経由せず、選択したプロバイダーに直接送られます。フィードバックやエラーレポートのサニタイズは、自由記述に含まれるすべての認証情報が削除されることを保証するものではありません。OpenRouterへのAsk AIのリクエストも、当社のサーバーを経由せず、デバイスから直接送られます。墨消し前の元のドキュメントがクラウドプロバイダーに送られることはなく、クラウドプロバイダーに届きうるのは、お客様がAsk AIで送信を選んだ墨消し済みテキストだけです。
ダウンロードしたモデルファイルとOCR言語データは公開されたダウンロードであり、ドキュメントの内容を含みません。アプリはこれらを暗号化せず、「すべてのデータをリセット」でも削除されません。検出モデルは、transformers.jsライブラリの既定のキャッシュフォルダー、つまりアプリのファイルの中にあるライブラリのパッケージフォルダー内の .cache フォルダーに保存されます。アプリは別の場所を指定しません。OCR言語ファイル(pol.traineddata、eng.traineddata など)は、OSの一時フォルダー内の maskeno-tessdata というフォルダーに保存されます。システムやクリーンアップツールがこれを空にすることがあり、その場合、TESSDATA_PATH が設定されていなければ、アプリは次に必要になったときに再度ダウンロードします。TESSDATA_PATH が設定されている場合、アプリはそのフォルダーから読み込んだファイルのコピーも、maskeno-tessdata 内の src- で始まり16進数12文字が続く名前のサブフォルダーに保存します。
APIキー、読み取り品質、ログ:設定が保存するAPIキーはOpenRouterのキーだけです。以前のバージョンがアプリがもう使わないプロバイダー(ElevenLabs、Resemble、Gemini、OpenAI、Anthropic)向けに保存したキーは、このバージョンの初回起動時に設定ファイルから一度だけ削除され、削除に失敗した場合は次回起動時にやり直します。内蔵OCRが読み取ったスキャンページごとに、データベースは読み取り品質の要約(評価、平均信頼度、単語数、疑わしい単語の文字範囲。テキストは含みません)と、確認した時刻も保存します。アプリログは固定のイベント一覧から書かれます(数値、参照、コードを含む固定メッセージ)。アプリは、ファイル名、パス、ドキュメントのテキスト、およびドキュメントを扱いうる処理のエラーメッセージを書かないように作られており、制御できないテキストは先にスクラバーを通ります。これはテストで裏付けた設計上の規則であり、保証ではありません。以前のバージョンが書いた項目にはより多くが含まれることがあります。ホームフォルダーのクラッシュログには、エラーについてクラス、コード、アプリ内の位置が記録され、メッセージは記録されず、インストールIDも書かれます。
暗号化されないもの:ページ画像、取り込まれたソースファイルのコピー、アプリログ、設定ファイル(中の個々のキーは暗号化されますが、ファイル自体は暗号化されません)、ライセンスファイルのメタデータ、マシンIDとアップデートIDのファイル、トライアル状態ファイル(読み取り可能で、改ざんから保護されていますが、暗号化はされていません)、SQLiteの共有メモリファイル、ホームフォルダー内のクラッシュログと起動ログ、および起動デバッグを有効にしたときのデバッグログ。
ウェブサイトの分析
本ウェブサイトはPlausible Analyticsのスクリプトを読み込みます。収集内容についてはPlausibleのデータポリシーをご覧ください。
データの保持と消去
プロジェクトを削除しても、古いコピーは新しいバックアップに置き換えられるまで暗号化バックアップに残ります。設定の「すべてのデータをリセット」は、データベース(WALファイルと共有メモリファイルを含む)、バックアップ、設定ファイル、音声サンプル、ライセンスファイルを削除しますが、ページ画像、取り込みファイル、ログ、db.key、マシンIDとアップデートIDのファイル、Maskeno.db.corrupted-* の復旧用コピー(プロジェクトデータを含む可能性があります)、ダウンロードしたモデルファイルとOCR言語データ、ホームフォルダー内のログ、トライアル状態ファイルは残します。トライアル状態ファイルは、再インストールでトライアルがリセットされないよう、ユーザーデータフォルダーの外に保存されます。不要な場合はご自身で削除してください。
当社のトライアルサーバーは、マシンID、使用回数、OSプラットフォーム、アプリバージョンを保存します。アプリはマシンIDを画面に表示しません。この記録の消去を請求するには、[email protected]までメールしてください。ライセンスデータはPolar.shがそのプライバシーポリシーに基づいて管理します。
GDPRに基づく権利
欧州連合のデータ主体として、アクセス、訂正、消去、データポータビリティ、異議、および同意撤回の権利があります。上記のデータの流れには、トライアル記録、短期間のIPアドレスのレート制限エントリ、フィードバックフォームで送られた内容、オプトインしたクラッシュレポートと使用分析、ウェブサイトの分析、Polar.shが保持するライセンスデータが含まれます。[email protected]までご連絡ください。
お問い合わせ
- メール:[email protected]
- GitHub:Issueを開く