エンドツーエンド暗号化の解説
E2E暗号化の仕組みを視覚的・インタラクティブに解説 — なぜ重要か、HTTPSとの違い、今すぐ試せるライブデモ。
エンドツーエンド暗号化とは?
手紙を鍵のかかった箱に入れるところを想像してほしい。鍵を持っているのはあなたと受信者だけだ。郵便局は箱を運ぶが、開けることはできない。中身を知らないし、覗くこともできない。届けるだけだ。
それがエンドツーエンド暗号化だ。データはどこかに送られる前にあなたのデバイス上で暗号化される。インターネットを経由している間も、サーバーに保存されている間も、意図した受信者がデバイス上で復号するまで、ずっと暗号化されたままだ。途中の誰も読むことができない。
暗号化なし vs. HTTPS vs. エンドツーエンド
送信されるメッセージ: 3時にカフェで会おう
データはあなたのデバイスで暗号化されます。受信者だけが復号できます。
エンドツーエンド暗号化の仕組み
1.鍵が生成される
デバイスが固有の暗号鍵を生成する。この鍵はあなたのデバイス上にのみ存在し、サーバーに送られることはない。
2.データが暗号化される
鍵と強力なアルゴリズム(AES-256-GCMなど)を使って、平文が暗号文に変換される — ランダムな文字列のようなスクランブルされた文字列だ。
3.暗号文がインターネットを経由する
暗号化されたデータがネットワーク、ルーター、サーバーを通じて送信される。傍受しても見えるのは無意味な暗号文だけだ。
4.サーバーが暗号文を保存する
サーバーは暗号化されたblobを保存する。鍵がなく、復号する手段もない。サーバーが完全に侵害されても、有用な情報は何も漏れない。
5.受信者が復号する
受信者は鍵(セキュアなリンク、共有シークレット、または鍵交換プロトコル経由)を受け取り、それを使って暗号文を元のメッセージに復号する。
自分で試してみよう
このデモはブラウザ上の本物のWeb Crypto APIを使っている — Vaultedを支えているのと同じ技術だ。メッセージを入力し、AES-256-GCMで暗号化して、暗号文を確認しよう。その後、復号してみよう。
すべてはブラウザ上で行われる。サーバーにデータは送信されない。
エンドツーエンド暗号化を使っているのは?
メッセージング
Signal, WhatsApp, iMessage
メッセージは送信者のスマートフォンで暗号化され、受信者のデバイスでのみ復号される。
メール
ProtonMail, Tutanota
メールはデバイスから送信される前に暗号化される。メールプロバイダーは内容を読めない。
シークレット共有
Vaulted, 1Password sharing
パスワードやAPIキーはブラウザ上で暗号化される。サーバーが保存するのは暗号文だけだ。
クラウドストレージ
Tresorit, SpiderOak
ファイルはアップロード前にローカルで暗号化される。クラウドプロバイダーはファイルの内容にアクセスできない。
暗号化だけでは不十分
WhatsApp、Telegram、Signalのようなアプリはエンドツーエンド暗号化を使っている — しかし、永遠に残り続ける暗号化メッセージは依然としてリスクだ。6ヶ月前に送ったあのパスワード?まだチャット履歴の中に、会話に参加していたすべてのデバイス上に、検索・コピー可能な状態で残っている。
Vaultedは、E2E暗号化と自己消滅リンクを組み合わせている。受信者がシークレットを閲覧して閲覧回数の上限に達すると、暗号文はサーバーから永久に削除される。リンクは無効になる。チャット履歴もメッセージアーカイブも、サーバーやデバイスに残るコピーも一切ない。
完全なVaulted vs. Signal 比較を読んで、認証情報の共有に特化したツールがメッセージングアプリより優れている理由を確認しよう。
よくある誤解
誤解: “HTTPSはデータがエンドツーエンドで暗号化されていることを意味する”
現実: HTTPSはブラウザとサーバー間のデータを暗号化する。しかしサーバーはそれを復号して読むことができる。E2E暗号化とはサーバーが平文を見ないことを意味する。
誤解: “E2E暗号化で完全に匿名になれる”
現実: E2E暗号化はデータの内容を保護するが、あなたの身元は保護しない。誰が、いつ、どこから通信したかというメタデータは依然として見える場合がある。
誤解: “エンドツーエンド暗号化が必要なのは犯罪者だけだ”
現実: プライバシーは基本的な権利だ。E2E暗号化は医療記録、財務データ、企業秘密、個人の会話、ジャーナリストの情報源を守る。
誤解: “政府は常に暗号化を解読できる”
現実: AES-256のような現代の暗号化は数学的に安全だ。現在の技術では、256ビット鍵をブルートフォース攻撃で解読するには宇宙の年齢より長い時間がかかる。
VaultedがエンドツーエンドE2E暗号化を使う方法
VaultedはWeb Crypto API経由のAES-256-GCMを使ってブラウザ上でシークレットを暗号化する。暗号化鍵はURLフラグメント(リンクの#の部分)に埋め込まれており、サーバーには送信されない。私たちのサーバーは暗号化された暗号文のみを保存する — 物理的にあなたのデータを読むことはできない。
よくある質問
シークレットをセキュアに共有する準備はできた?
シークレットを共有する →