Cloudflare のビデオ通話アプリ Orange Meets:MLS による End-to-End 暗号化を OSS として公開

Cloudflare open-sources Orange Meets with End-to-End encryption

2025/06/29 BleepingComputer — Cloudflare が公表した内容は、ビデオ通話アプリ Orange Meets に E2EE (end-to-end encryption) を実装し、透明性を確保するためにオープンソース化するというものだ。このアプリケーションは、昨年に Cloudflare Calls (現Realtime) のデモとしてリリースされたものであり、現在も利用できる状態にある。E2EE の導入と、信頼性および検証の問題が解決されたことで、強力な暗号化保証に関心のあるユーザーは、リサーチ/プロトタイプ環境におけるセキュアなビデオ通話の基盤として、Orange Meets の採用を検討できる。

E2EE 暗号化設計

IETF が標準化するグループ鍵交換プロトコル Messaging Layer Security (MLS) を用いて、Orange Meets は End-to-End 暗号化を実装している。

Orange Meets における Rust ベースの MLS 実装は、グループ鍵に対する継続的な合意を可能にし、安全なグループ鍵交換/前方秘匿性/侵害後のセキュリティ/スケーラビリティをサポートするものだ。

この暗号化は、WebRTC を用いてクライアント側で完全に処理されるため、Cloudflare または Selective Forwarding Unit (SFU) は、機密性の高い通信データにアクセスできない、転送仲介者として機能することになる。

Orange Meet topology
Orange Meet topology
Source: Cloudflare

Cloudflare が導入したものには、ビデオ通話へのユーザーの参加/退出という、動的なグループ・メンバーシップの変更を安全に処理するための、”Designated Committer Algorithm” もある。

このシステムは、MLS 更新を管理する当事者として、実質的に特定のメンバーを指定し、グループの状態をベースにしながら、新しい指定コミッターを自動的に選択する。

Designated committer handling a new user join action
Designated committer handling a new user join action
Source: Cloudflare

最終的には、それぞれのビデオ会議セッションに、グループの暗号化状態を表す “safety number” が表示される。参加者に対して推奨されるのは、このプラットフォームの外側で “safety number” を確認することだ。それにより、悪意のサーバが鍵素材をすり替える、中間者攻撃 (MitM) を防止できる。

このプロトコルが、あらゆる条件下で正しく動作することを、Cloudflare は数学的に検証している。そのために、微細なエッジケースのバグの検出で使用される、仕様言語 TLA+ 用いて、正式に Designated Committer Algorithm をモデル化している。

とは言え、Orange Meets は洗練されたコンシューマ向け製品というよりも、技術的なショーケースであり、OSS のプロトタイプであることを理解すべきだ。

Zoom/Google Meet/Signal/Microsoft Teams ほど、機能が豊富であることもなく、ユーザー・フレンドリーでもない。さらに、徹底的な監査や実戦テストは、これからというレベルである。

この Cloudflare のツールは、MLS 統合と暗号化に関心のある開発者や、プライバシーに関心のある研究者、そしてOSS の E2EE ビデオ通話を試したい、好奇心が旺盛なユーザーを対象としている。また、MLS 実装を評価する、研究者やエンジニアにも適している。

Orange Meets のライブ・デモがオンラインで利用できるため、テストや使用においてインストールは不要である。その一方で、興味のあるユーザーは、GitHub リポジトリからソース・コードを取得して、独自のインスタンスを設定することも可能である。