SECURITY

セキュリティと監査の手順

サイト方針の「ブラウザ内で完結する」を、運営者の宣言ではなく利用者側から検証できる状態に保つための、依存選定・監査手順・運用方針です。

DevTools での実行時監査

気になるツールのページで Chrome / Firefox / Safari の DevTools を開き、Network タブを「Preserve log」を有効にして記録状態にしておきます。その状態でファイル選択 → 実行 → 結果ダウンロードを通常通り行うと、表示されるリクエストは (a) ページの HTML / JS / CSS の初回ロード、(b) ライブラリの WASM ファイル (ffmpeg.wasm / kuromoji 辞書など) の初回ロード、(c) 広告 (AdSense) と一部解析 (Cloudflare Web Analytics) — の 3 種類だけです。

ユーザーが入力したファイル本体やテキスト本文がリクエストボディに乗ったリクエストは現れません。もし現れたら、その時点でサイトの主張は崩れます。この検証は専用のセキュリティツールを必要とせず、ブラウザだけで完結します。

ソースコード公開と依存監査

サイト本体のソースコードは GitHub (otomomik/nosend-tools) で公開しています。各ツールの実装は `src/tools/<category>/<slug>/` 配下にあり、ユーザー入力を扱う関数がどこにも `fetch` でユーザー内容を投げ出していないことが、コードレベルで確認できます。

使用しているオープンソースライブラリは /libraries ページに全件一覧化されており、ライセンス・バージョン・リポジトリ URL が確認できます。リスト生成は `pnpm licenses:gen` で `node_modules` をスキャンする実装で、サイトのビルド時に自動更新されます。

依存ライブラリの選定基準

新しい npm 依存を追加するとき、ライセンスは AGPL / SSPL / Commons Clause を避けます。これらは「ネットワーク経由でサービスを提供する」場合にもライセンス義務を波及させるため、サイト全体のライセンス義務に伝染するリスクがあります。GPL / LGPL はソース公開で義務を満たせるので採用可、MIT / Apache-2.0 / BSD は推奨、です。

もう 1 つの基準は、メンテナンス状況と監査可能性です。直近 1 年以内のコミットがあり、開発者数が複数いて、GitHub Issues で脆弱性報告が公開・追跡されているライブラリを優先します。`pnpm audit` も CI のチェック対象に入れ、Known CVE が出たら速やかに更新します。

サイト運営側のデータ取扱い

ツール本体は入力データを送信しませんが、サイト運営として最小限の収集はあります。Cloudflare Web Analytics はサイト全体のアクセス状況の把握に使っており、Cookie もフィンガープリンティングも使いません。Report ダイアログから送信される不具合・要望は Cloudflare D1 に保存し、改善対応に使います。これは唯一の意図的な送信経路です (詳細はプライバシーポリシー)。

Google AdSense は広告配信のために外部 SDK を読み込みます。ユーザーの興味に応じた広告のために Cookie が使われる可能性がありますが、ツール本体の入力データそのものが広告事業者に送信される経路はサイトのコード上に存在しません。広告ブロッカーを使う方針の方は、サイトの動作には影響しません。