ViewBurn

ViewBurn 開発ログ

すべての改善は同じ一点を中心にしています:機密性の高い内容が受け渡されたあと、本当に消えるようにすること。

345tool エンジニアリングチーム • 2026年6月更新

プロジェクト概要

ViewBurn の目的ははっきりしています:機密情報を安心して受け渡せる経路を提供することです。オンラインストレージを目指しているわけでも、チャットツールになろうとしているわけでもありません。一つのことだけに集中しています —— 内容が一度読まれたら、できるだけ早く、不可逆に消えることです。

ツール全体は三つの制約を軸に設計されています:平文がユーザーの端末から出ない、アクセス条件は送信側が完全に掌握する、消去のプロセスは受信側の協力に依存しない。

以下、バージョンごとに各機能とその背後にある判断を記録します。

v2.0 — 暗号化とアクセス制御

AES-256-CBC ペイロード暗号化

v2.0 の中核となる変更です。以前は転送層では保護されていましたが、保存側から見ればまだ読める形で存在していました。現在はテキストと画像がブラウザを離れる前に AES-256-CBC で暗号化され、暗号文だけが送信されます。

復号鍵はリンクのフラグメント部分(# の後ろ)に含まれます。URL のフラグメントはブラウザからサーバーへ送信されないため、サーバーはライフサイクル全体を通じて暗号文しか持ちません —— これがこの設計の成立する鍵となる前提です。

独自パスワード保護(二重暗号化)

経路の暗号化に加えて、送信側はさらにアクセス用のパスワードを設定でき、「鍵 + パスワード」の二要素構成になります。鍵はリンク自体から得られ、パスワードは別の経路で相手に伝えます —— どちらが欠けても開けません。

パスワードは PBKDF2 で派生させ、複数回の反復を経てから暗号化に使うことで、短いパスワードに対する総当たり攻撃に耐えます。パスワード自体は保存されず、復元もできませんので、必ず別途保管してください。

閲覧回数制限と期限付き自動消去

送信側は最大閲覧回数(1〜9999 回)と有効期間(最大 1440 分)を設定できます。復号が成功するたびにカウンターが減り、ゼロになった時点で無効になります。カウントダウンが終われば、誰もアクセスしなくても削除が実行されます。

さらに「今すぐ消去」ボタンもあります:条件の成立を待たず、送信側がいつでもリンクを無効化できます。

v1.0 — 閲覧後消去エンジンの核

二重コンテナ分離アーキテクチャ

テキストと画像は保存層で完全に分離され、それぞれ独立して処理・消去されます。こうした理由は、両者の機密性とサイズが大きく異なるためです:画像は数百 KB になることもありますが、テキストは数行だけです。分離することで、画像のクリーンアップがテキストに影響せず、その逆も同様になり、種類ごとに異なる制限を課すのも容易になります。

閲覧モード/共有モードの権限システム

ツールは「書く」と「読む」を二つの明確なモードで区別します。共有モードは送信側向けで、暗号化とリンク生成を担当します。閲覧モードは受信側向けで、復号と表示を担当します。閲覧モードではテキストにコピー防止がかかり、画像はダウンロード可能な画像要素ではなく Canvas 上に描画されるため、無コストの転送が起こる可能性を根本から下げています。

自己消去と Cron による定期クリーンアップ

閲覧を待つ受け身の消去だけでなく、システムは定期的にスキャンして期限切れや上限到達の内容を消去します。この保険的な仕組みにより、受信側が一度もリンクを開かなくても内容が無期限に残ることはありません —— これが私たちがこれを「保存ツール」ではなく「受け渡しツール」として設計した理由です。

今後のロードマップ

  • より大きな添付ファイルへの対応(現在は最大 5 ファイル、各 5MB)。
  • 受信側に向けて、残りの閲覧回数とカウントダウンをより明確に表示。
  • ゼロ知識アーキテクチャの検討:サーバーがどの時点でも復号能力に触れられない構成。
  • アクセシビリティの向上:キーボード操作やスクリーンリーダーの利用者も快適に使えるように。

エンジニアリングチームへのお問い合わせ

— 345tool チーム

— メール:[email protected]

— 公開日:2026年6月

私たちは 345tool チームです

345tool は、純粋にクライアント側で動作し、プライバシーを最優先する高品質な Web ツールを作る独立開発チームです。重くて使いにくいオンラインツールに代わるものを目指しています。ViewBurn もその一つで、同じ原則に従っています:データを収集せず、不要な登録も求めません。

私たちのチームについて詳しく見る