Safhaは安全? セキュリティとファイルの取り扱い
Safhaがファイルを守る仕組み:各ファイルの処理場所、削除のタイミング、閲覧できる人、準拠している基準、今後の取り組みを説明します。
ファイルには契約書、身分証、個人的な書類が含まれることがあると、私たちは理解しています。そのためSafhaは、できるだけ多くの作業がお使いの端末上で完結するように作られており、ファイルが端末の外に出る必要がある場合は、いつ、どこへ、なぜ送られるのかをお知らせします。このページの内容はすべて、サービスの実際の設定、コード、稼働中のサーバーの応答に基づいています。まだ実現していないことは「準備中」とはっきり表示しています。
最終更新日:
ひと目でわかる概要
- 0バイト端末上で動くツールでは、ファイルのデータは当社に一切届きません
- すぐに削除サーバーを使うツールのファイルは、結果の送信後ただちに削除されます
- TLS 1.3通信を暗号化し、HSTSを2年間設定しています
- bcryptパスワードをコスト12で保存しています
このページの内容
プライバシーの原則
Safhaのすべての機能の基礎となる3つの原則です。
データを販売しません
個人データを販売せず、ターゲティング広告を表示せず、広告用Cookieや第三者のトラッキングCookieも使用しません。サイトのコンテンツセキュリティポリシーにより、当社のページは当社のドメインにしか接続できません(
connect-src 'self')。必要なものだけを収集します
ツールの利用にアカウントは必要ありません。アクセス解析は自社独自のもので、IPアドレスそのものは保存せず、毎日変わる秘密の値を使ってハッシュ化したトークンに変換します。ツールのログにファイル名や内容が含まれることはなく、記録するのはツール、処理場所、成功したかどうか、かかった時間、おおよそのサイズの範囲だけです。
主導権はあなたにあります
ファイルを選ぶ前に、どこで処理されるかがわかります。署名依頼やワークフローはいつでも削除でき、アカウントは「マイアカウント」ページからご自身で削除できます。詳しくはプライバシーポリシーをご覧ください。
ファイルの処理場所
どのツールにも、ファイルを選ぶ前に処理場所がわかるバッジが付いています。次のいずれかです。
端末上で処理
ファイルはブラウザ内で読み込まれて処理され、結果はブラウザから直接ダウンロードします。ファイルはどのサーバーにも送信されません。 結合、分割、回転、自分のファイルへの署名、画像の圧縮など、ほとんどのPDF・画像ツールがこれに当たります。
当社のサーバーで処理
Officeファイルの変換やOCRなど、ブラウザではうまく動かないソフトが必要なツールがあります。この場合、ファイルは暗号化された通信で当社の変換サービスに送信されて処理され、結果の送信後ただちに削除されます。
AIサービス事業者を経由
「PDF要約」「PDF翻訳」「PDFに質問」は、ファイルからテキストを抽出し、ファイルではなくそのテキストを、暗号化された通信でAnthropicに送信します。詳しくはAIのセクションをご覧ください。機密性の高い書類には、これらのツールを使わないことをおすすめします。
署名依頼
ほかの人に書類への署名を依頼すると、全員が署名するまで、書類、署名者の名前とメールアドレス、すべての手順の監査証跡を保存します。この機能はアカウントをお持ちの方専用です。保存期間は保存と削除に記載しています。
ワークフロー
複数のツールをつなげてワークフローとして保存した場合、各ステップはそれぞれのツールのルールに従います。アカウントに保存するのはワークフローの設定で、ワークフローを通過するファイルは保存しません。
準拠している基準
現時点で、ISO/IEC 27001やSOC 2などの第三者によるセキュリティ認証は取得しておらず、そのロゴも表示していません。以下は、実際に適用している基準と、現在取り組んでいることです。
GDPRの原則
公式の「GDPR認証」というものは存在せず、当社も取得を主張していません。ただし、その原則は適用しています。収集するデータをできるだけ少なくし、保存するすべてのものに期限を設け、各ファイルの処理場所を説明しています。お客様には次の権利があります。
- 削除: 「マイアカウント」ページからご自身でアカウントを削除できます。
- 訂正: 名前と言語は「マイアカウント」ページで変更でき、それ以外はメールでご連絡ください。
- 開示とデータポータビリティ: アカウントのデータのコピーを[email protected]で請求できます。
OWASPのプラクティス
OWASPのWebアプリケーションセキュリティのガイダンスに基づくプラクティスを適用しています。たとえば次のとおりです。
- コンテンツセキュリティポリシー(CSP): スクリプトと接続は当社のドメインに限定され、サイトをほかのサイトに埋め込むことはできません。
- SSRF対策: 「HTMLをPDFに変換」と「HTMLを画像に変換」は公開されているhttpとhttpsのリンクのみを受け付け、すべての接続とリダイレクトでIPアドレスを確認するため、どのリクエストも当社の内部ネットワークには届きません。
- 隔離されたレンダリング: Webページを描画するブラウザは直接インターネットにアクセスできず、すべてのリクエストが同じ確認を通ります。アップロードされたHTMLファイルでは、スクリプトは初期設定で無効です。Officeファイルのマクロは決して実行されず、各変換は時間制限と書き込み量の上限付きで、それぞれ独立したプロセスで実行されます。
イラクの電子署名法
イラクには、2012年法律第78号「電子署名及び電子取引法」があります。Safhaの署名は単純な電子署名です。すべての手順の日時を記録した監査証跡と、元の書類と最終的な書類のSHA-256フィンガープリントを保存します。これらは認証機関によって認証された署名ではなく、その有効性について法的な助言は行いません。書類に特定の法的効力を持つ署名が必要な場合は、法律の専門家にご相談ください。
現在取り組んでいること
準備中- ISO/IEC 27001: 独立した審査に向けて、この規格に沿った情報セキュリティマネジメントシステムを構築しています。
- 外部企業による独立したペネトレーションテスト。
- 管理者アカウントの2要素認証。
- 署名依頼ファイルの保存時の暗号化。
製品のセキュリティ
ホスティング
Safhaは、Contabo GmbHから借りているサーバーで稼働しています。RIPE NCCの登録情報によると、そのアドレス範囲はドイツで登録されています。各サービスはCoolifyで管理されるそれぞれ独立したDockerコンテナで動いています。Webサイトのアプリ、変換サービス、PostgreSQLデータベースです。
ネットワークとDDoS対策
サイトの通信はCloudflareのネットワークを経由しており、そのサービスには分散型サービス妨害(DDoS)攻撃に対する自動保護が含まれています。サーバー内では、データベースはインターネットから切り離された内部ネットワーク上にあり、変換サービスは外部からの接続を一切受け付けません。変換サービスに接続できるのは、共有の秘密トークンを持つWebサイトのアプリだけです。
通信の暗号化
- サイト全体がHTTPSで動作し、HTTPのリクエストはHTTPSにリダイレクトされます。
- 接続はTLS 1.3に対応しています。
- 2年間のHSTSヘッダー(
max-age=63072000; includeSubDomains)を送信しているため、ブラウザは暗号化された接続でしかサイトを開きません。 - Cloudflareと当社のサーバーの間の接続も、有効なTLS証明書で暗号化されています。
保存
サーバーに保存するものはわずかです。データベースにはアカウント、ワークフロー、保存したCV、アクセス解析を、サーバーのディスクには署名依頼のファイルを保存しています。パスワードと署名用リンクのトークンは、ハッシュ(bcryptとSHA-256)としてのみ保存しています。はっきり申し上げると、現時点ではデータベースや署名依頼のファイルを独自の鍵で保存時に暗号化してはおらず、ネットワークの分離とサーバーの権限によって保護しています。
保存と削除
以下の数値は、サービスの実際の設定に基づいています。
| データ | 保存期間 |
|---|---|
| 端末上で動くツールのファイル | 当社に届くことはありません |
| サーバーを使うツールのファイルと結果 | 結果の送信後、または処理の失敗後ただちに削除 |
| 処理が止まったジョブのファイル(接続が切れた場合など) | 自動クリーナーが5分ごとに実行され、42分を超えたジョブのファイルを削除 |
| 一時ファイルの保存場所 | 永続的なディスクではなくメモリ上の一時ファイルシステム(tmpfs)で、サービスの再起動時にすべて消去 |
| AIツールのテキスト(当社側) | 処理後は保持しません |
| 「PDFに質問」のテキスト | サーバーのメモリに最大30分保持し、ディスクには書き込みません |
| Anthropic側のテキスト | 同社が公表しているポリシーに基づき、記載された例外を除いて30日以内に削除 |
| 署名者に送る署名用リンク | 送信から30日間有効 |
| 署名者のリンクからの署名済みコピーのダウンロード | 依頼の完了から30日間 |
| 署名依頼の書類と監査証跡 | お客様がご自身で依頼を削除するまで |
| ログインセッション | 30日間 |
| 詳細なアクセス解析の記録 | 400日間。その後は日ごとの合計のみが残ります |
| お客様のアカウント | 「マイアカウント」ページで削除するまで |
アカウントを削除すると、アカウント、ワークフロー、保存したCV、署名依頼とその監査証跡をデータベースから消去します。ツールの利用回数は、お客様と結び付かない形で残ります。署名依頼のファイルもサーバーのディスクから消去します。
アカウントとパスワード
- パスワードはコスト12のbcryptハッシュとして保存され、元のパスワードに戻すことはできません。8文字未満のパスワードは受け付けません。
- セッションは
HttpOnly、Secure、SameSite=Lax属性付きの署名付きCookieに保存され、30日で期限切れになります。重要なリクエストのたびに、データベースでアカウントの状態を再確認します。 - パスワードを変更すると、ほかのすべてのセッションはただちに終了します。
- ログインの試行回数は制限されています: 15分以内に、1アカウントにつき5回、1つのIPアドレスにつき20回まで誤りを認めます。
- 当社がパスワードを尋ねることは決してありません。 メールでもその他の方法でもです。
AI
「PDF要約」「PDF翻訳」「PDFに質問」はAnthropicのAPIを使用しており、当社がサーバーで有効にしている場合にのみ動作します。
- 送信するもの: ファイルそのものではなく、ファイルから抽出したテキストです。各リクエストにはサイズの上限があります。
- 当社が保持するもの: 処理後は何も保持しません。「PDFに質問」だけは、続けての質問に答えるため、テキストをサーバーのメモリに最大30分保持します。
- Anthropicの説明: 同社が公表しているプライバシーポリシー(最終更新:2026年7月1日)によると、同社はAPIの入力と出力を30日以内にシステムから削除します。ただし、利用ポリシーの執行や法令の遵守など、同社が挙げる場合を除きます。同社の商用利用規約では、サービスの顧客コンテンツでモデルを学習させてはならないと定めています。
- 当社からのアドバイス: 機密性の高い書類には、これらのツールを使わないでください。
支払い
現在のバージョンでは、Safhaのすべてのツールと機能が無料です。クレジットカードの登録は求めず、サイトに決済システムもありません。そのため、支払いに関するデータを収集・保存することはありません。
「マイ書類」保管庫
Safhaのスマホアプリに、身分証やパスポートなどの公的な書類を保管する保管庫を用意します。
- スマホの中だけに保存: 保管庫の中身がインターネット経由で送信されることは決してありません。
- AES-256-GCMで暗号化: すべての書類、そのプレビュー、保管庫の索引を暗号化します。
- 鍵はスマホのシステムで保護: Android KeystoreまたはiOSキーチェーンで保護し、生体認証や端末のパスコード、または保管庫用の6桁のPINで解除します。
- バックアップや別の端末への転送の対象外です。
社内のセキュリティ
アクセス管理
Safhaの役割は、メンバーと管理者の2つだけです。管理画面は管理者の役割を持つアカウントでしか開けず、その役割はサーバー側で2回確認します。管理画面にアクセスしたとき、そしてその中のすべてのページと操作のたびにです。アカウントの役割を変更したり停止したりすると、そのセッションはただちに終了します。
最小権限
- 変換サービスはroot以外のユーザーとして読み取り専用のファイルシステム上で動き、書き込めるのはメモリ上の一時フォルダだけです。
- 秘密情報は起動時に一度だけ読み込み、その後root権限を放棄します。それらの秘密情報が変換プロセスに渡ることはありません。
- Anthropicの鍵は変換サービスの中にだけあり、Webサイトのアプリやブラウザに渡ることはありません。
- データベースのパスワードとセッション署名用の鍵はデプロイ基盤が生成し、誰も手入力しません。
管理者の2要素認証
準備中現時点で管理者アカウントに2要素認証は提供しておらず、提供しているとも主張しません。導入するまでの間、最初の管理者パスワードはデプロイ基盤がランダムに生成し、ログインの試行回数はすべてのアカウントと同様に制限されています。
管理操作のログ
通知の送信やアプリのリリース公開など、利用者の端末に届く操作は、管理者の識別情報と日時とともに記録されます。
ファイルがアップロードされていないことを自分で確かめる
当社の言葉をうのみにする必要はありません。端末上で動くツールなら、パソコンで確認できます。
- Chrome、Edge、Firefoxでツールのページを開きます。
- F12キーを押して(または右クリックして「検証」を選んで)開発者ツールを開き、ネットワークタブを開きます。
- ファイルを選んでツールを実行します。
- 一覧を見てください。ファイルを含むリクエストや、ファイルのサイズに一致するリクエストは表示されません。
もっとかんたんな方法もあります。ツールのページを開いてからインターネットを切断しても、ツールは動き続けます。
セキュリティ上の脆弱性の報告
Safhaでセキュリティ上の脆弱性を見つけた場合は、[email protected]までメールでお知らせください。このアドレスは、RFC 9116に沿ってsecurity.txtファイルで公開しています。次の点にご協力ください。
- 問題の内容、 再現手順、影響を受けるページやツールを記載してください。
- ほかの人のデータにアクセスしたり、変更・削除したりしないでください。 また、テスト中にサービスを妨害しないでください。
- 詳細を公開する前に、 修正のための妥当な時間を当社にください。
すべての報告を読み、返信します。現時点で報奨金制度(バグバウンティ)は提供していませんが、利用者を守るためにご協力くださるすべての方に感謝しています。プライバシーやアカウントに関するその他のご質問は、[email protected]までどうぞ。
当社のお約束
インターネット上の保護に完璧なものはありません。当社がお約束するのは、ここに書かれていることです。できるだけ多くの作業がお使いの端末上で完結すること、そしてファイルが端末の外に出るときは、いつ、どこへ、なぜ送られるのかをはっきりお知らせすることです。ここに書かれた内容が変わった場合は、このページとその日付を更新します。