トピック

E2EEメッセージ拡大で揺れる、データ秘匿と悪用の微妙なバランス

メッセンジャーなどにおける通信を端末上で秘匿化するE2EE(End-to-End Encryption)が拡大している。政府による監視を逃れるためなど、その理由は様々だが、サービス提供者ですら内容を確認できないということから、犯罪にも悪用されており、懸念する声も大きい。

E2EEとはどのような技術で、どういったメリットがあるのか。デメリットとはどういったものなのか。

エンドツーエンド暗号化の対応サービス

E2EEは、エンドツーエンド、つまりメッセージを送信する側の端末で暗号化をして、受信する側の端末で復号する暗号化技術で、端末で暗号化と復号を行なうので途中経路で暗号が解除できないという点が特徴だ。つまり、復号できる受信者の端末でしかメッセージが読み取れないことになる。

メッセージングサービスにおけるE2EE登場の起源はPGP(Pretty Good Privacy)とも言われている。基本的にはメールの暗号化を行うためのツールだ。インスタントメッセージングの領域では、2004年のOTR(Off-the-Record Messaging)プロトコルが最初だろうとされている。インスタントメッセージングにおける会話を暗号化することが目的で、既存のメッセージングサービスのプラグインという形で利用できた。

この技術がTextSecureプロトコルに採用され、メッセージングアプリとしてTextSecureが2010年にリリースされた。音声の暗号化アプリとしてはRedPhoneも開発された。これが最初のE2EE対応メッセージングアプリのようだ。

この開発元がTwitterに買収されたのちにオープン化。RedPhoneとTextSecureが統合される形で、2015年にSignalアプリが登場した。TextSecureプロトコルはSignalプロトコルとしてアプリ内の会話を暗号化する。

Signal

このSignalは、米国政府による監視システムPRISMの存在を暴露したエドワード・スノーデン氏が使っていたと発言したこともあって話題になった。

2013年にはロシアでTelegramがリリースされた。プロトコルなどは異なるが、Signalと同様にE2EEに対応したメッセージングアプリとして人気が高い。ただ、デフォルトでは暗号化されないためSignalに比べて脆弱という評価もあるようだ。

Telegram

Signalプロトコルを使ったメッセージングアプリとしてはWhatsAppやFacebook Messengerなどもあり、それ以外にもAppleのiMessageなども独自にE2EEに対応しているし、LINEもLetter Sealingと呼ばれる独自技術でE2EEをサポートしている。

サービスによっては、「プライベート」などの特定のチャットのみがE2EEで暗号化される場合や、単一のデバイスでしか暗号化できないという場合もある。例えばSignalはデフォルトでE2EEがオンで、1対1のメッセージだけでなく、1対多のグループメッセージ、ビデオ通話、複数端末での暗号化対応など、幅広い機能をカバーしている。

その反面、TelegramではE2EEがデフォルトオフ、単一のデバイスでしか利用できないといった制限もある。代わりに、Telegramは20万人が参加できる(E2EEではない)チャットが可能なので、大規模なメッセージ送信ができる。

日本のLINEだと、送受信者双方が暗号化をオンにした1対1のトーク、全員がオンにした50人以下のグループトークにおけるテキストと位置情報がE2EE暗号化の対象となっている。スタンプや画像、動画、音声などは暗号化の非対象だ。

LINEのコンテンツごとのE2EE対応状況(LINE 暗号化状況レポート2022.1.19から)

メッセンジャーだけではなく、メールのPhotonMail、ファイル転送サービスのFilemail、オンラインストレージのpCloudなどもE2EEに対応する。Microsoft TeamsやZoomのオンライン会議サービスも、一部の機能でE2EEに対応している。

E2EEによるメッセージングがプライバシーにもたらす影響

一般的なメッセージングサービスの場合、メッセージは平文の形で送信され、通信経路はTLSのような暗号化手段で秘匿されるので、第三者が読み取ることは難しい。ただ、メッセージはサービス提供者のサーバーに保管されて受信者に送信されるため、サービス事業者側はメッセージの閲覧が可能になっている。

通常、そうしたデータを事業者が閲覧することはないはずだが、例えば機械処理によって広告配信に活用したり、一定期間サーバーに保管して法執行機関の要請があれば内容を開示したり、といった使われ方がしている。サービス内で送受信を禁止するようなやりとり(犯罪関連など)を防止するという用途もあるだろう。

こうしたサービス事業者の多くは、「透明性レポート」という形で政府機関などからの法的な要請で情報が公開されていることを報告している。

例えばGoogleはGmailのメールやYouTubeの非公開動画、Google Voiceの保存されているテキストメッセージなどを開示する可能性があるとしている。Appleもアカウントに保存された写真、Eメール、iOS端末のバックアップ、連絡先、カレンダーなどを開示する可能性があるとしている。

Appleの透明性レポート(2021年)における日本政府の要請では、端末のシリアル番号などの情報(Device)、クレジットカードなどの金融に関する顧客データ(Financial Identifier)、Apple IDやメールアドレスなどのアカウントに関するデータ(Account)、緊急の要請(Emergency)の提供が求められ、そのうち8~9割ほどが公開されている

こうしたデータはサービス提供者が内容を認識できて、開示することで犯罪捜査などに寄与できる情報ではある。これに対してE2EEで暗号化されたメッセージは、そもそもサーバーに保存されていたとしても復号をする必要があり、それができるのは受信者側の端末だけ。サービス提供社自身も内容を把握できないため、そもそも犯罪に使われているかどうかも確認できない。

一般的なメッセージングサービスだと、矢印の通信経路だけが暗号化され、メッセージはそのままサービス事業者のサーバーを経由する
E2EEの場合、端末上で暗号化されたメッセージが送信されるので、事業者も暗号化されたままの状態で受信者に送る。メッセージは受信者の端末で復号する

Signalは、「政府から要請があったが、情報がサーバーに存在しない」として要請された情報を公開していないと報告。メッセージの内容や連絡先など、サーバーに存在しないので公開できないと回答しているようだ。Signalが提供できるのはアカウントが作成されたタイムスタンプとそのアカウントが最後にSignalにアクセスした日時だけだという。

Signalが2016年に米国で政府要請に応じて公開したデータ。このデータしか保有していない、という

Signalのように、E2EEによるメッセージ内容の暗号化だけでなく送受信者双方の情報も秘匿してくれるのは、プライバシーの面では大きなメリットで、「誰にも邪魔されない、誰にも会話を聞かれない」という意味で、高いプライバシーを確保できる。

E2EEの暗号化の仕組み

こうしたE2EEの暗号化は、一般的には公開鍵暗号と対称鍵(共通鍵)暗号の組み合わせが使われているようだ。対称鍵暗号では、暗号化と復号で使われる鍵が同じものなので、より軽快に動作するなどのメリットがあるが、この鍵が安全に送信者と受信者の間でやりとりできる必要がある。

そこでE2EEでは、対称鍵を公開鍵暗号で暗号化して共有することで安全性を高める、という技術が活用されている。鍵を安全に交換し、実際のメッセンジャーでのやりとりは対称鍵で暗号化と復号をするという形になる。

基本的にE2EEは、鍵が保管された端末上で暗号化と復号が行なわれる。Telegramのように、1台の端末でしか利用できないサービスもある。複数の端末で、同じアカウントで利用するためには、複数端末で安全に暗号化と復号が行えるようにする必要がある。

Signalでは、「デバイスのリンク」機能を利用する。デバイス個別の鍵を生成して、QRコードで自分の端末に保管するための機能で、これによって複数の端末でもデータの復号ができるようになる。ただし、Signalも同時に複数端末で送受信ができるわけではないようだ。

Signalの場合、1つの電話番号に対して1つの端末で使えるため、スマホでは端末を変えると改めてログインし直しとなり、PCやiPadのみリンクによって複数台で利用できる。メッセージの履歴などは端末上にしか保管されないため、旧端末が手元にないと新しい端末へのメッセージの移行はできないなど、使い勝手よりも安全性を優先した設計になっている。

E2EEをどう考えるか

SignalなどのE2EE対応メッセージソフトは「秘匿性が高い」と言われるが、送受信に使われた端末と利用者を確保して暗号化を解除しなければならないという点で、犯罪捜査を難しくしている。

直近でも、マンガの主人公を名乗った犯罪者が使っていたことで話題になったが、Signalなどは一定時間でメッセージを自動削除する機能も備えているため、ますます証拠集めが難しい。

E2EEの適用範囲にもよるが、誰が、誰に宛てて送信したかも暗号化されていると、外部からは連絡先も把握できないという点は、個人としてはメリットだが、犯罪捜査にはデメリットとなる。

特にテロや児童虐待といった犯罪に悪用された場合の懸念は、世界各国で共通しているようだ。2018年には米国、英国、オーストラリア、ニュージーランド、カナダの5カ国(ファイブ・アイズ)、2020年には日本とインドを加えた7カ国(のちにシンガポール、ジョージア、エクアドル、ヨルダンが参加)が共同で、E2EEに関する声明を発表

米国では2020年に事業者に暗号化の解除を義務づける法案が提出されたが、現時点で廃案になっているようだ。EUも暗号化されたデータを法執行機関などが合法的にアクセスできるよう求める決議案を可決している。

現時点でも、英国では暗号化アプリ上のメッセージをスキャンして、子供の性的虐待、テロに関連する情報を検索するよう命じることができる法案の成立を目指している。仮に法案が成立した場合、Signalは英国から撤退すると報じられている(BBCによる報道)。

事業者や法執行機関を含む第三者が簡単に解除できる暗号は、そもそも暗号の体をなしていない。仕組み上、時間をかければ計算によって解読できる可能性はあるが、暗号を解除できる仕組みが用意されていると、事業者以外でも暗号解除ができてしまう危険性がある。

暗号解除以外の手法としては、暗号化前に端末上でスキャンするという方法が想定される。同様の仕組みは、Appleが児童虐待に対応するために画像のアップロード前(=暗号化前)に画像のハッシュ値を比較することによって児童虐待画像を検出しようという試みを過去に発表している。

この計画はプライバシーや誤検知などの問題に対する激しい批判によって撤回された(子供が送受信するメッセージにヌードを含む写真が存在するかどうか、端末上で解析して警告するペアレンタルコントロール機能は存在する)。

Appleがどうというよりも、暗号化前に送信されるデータを検証する仕組みは、権力などの悪用に対して脆弱になる危険性がある。E2EEのそもそもの理念から考えると、暗号化前のスキャン機能は根本的に相容れないだろう。

どのような法規制をするかはその国家(国民)の判断ではある。「テロ対策」という名目を言い出すと際限がなくなる懸念もあるし、国家間の諜報戦にもなりかねないが、それも各国の判断。社会はもう少し、この技術に関して議論をする必要があるのだろう。

小山安博