世界を動かす技術を、日本語で。

政府のITにおけるマトリックスメッセージングの普及

概要

  • Matrix はデジタル主権やクラウド脱却の流れで注目拡大
  • Matrix.org (非営利)と Element (商用)が存在
  • EUや国際機関、各国政府での 導入実績 増加
  • プロトコル2.0 や新クライアント Element X の採用進行中
  • 他ツールへの組み込みで 日常的な利用 も拡大

Matrixプロジェクトの概要と構成

  • Matrix はオープンな通信プロトコル、2014年に Amdocs から独立
  • Matrix.org はプロトコルを管理する非営利団体
  • Element は公式クライアントアプリ名、運営会社も同名(旧New Vector Ltd.)
    • Element.io がクライアントとサーバソフトを開発・提供
    • 無料のFOSS版と有償版(Element Pro、Element Server Suite Pro)を展開
  • プロトコルが オープン なため、他社製アプリやサービスでも利用可能
    • 例: Thunderbird (2022年以降、Matrix標準対応)

デジタル主権と公共分野での導入拡大

  • EU のデジタル主権志向を背景に、Matrixへの関心が高騰
  • 約35カ国 がFOSSコミュニケーション基盤として導入検討
    • 国連 :自前のエアギャップ通信ツールにMatrix採用
    • ICC(国際刑事裁判所) :Microsoft OfficeからOpenDesk+Elementへ移行
      • ドイツの ZenDiS が提供、 Bundeswehr(ドイツ軍)BWI GmbH でも採用
    • スイス郵便オーストリア医療システム でも導入
  • フランス政府 :La Suite(デジタルワークスペース)でMatrixベースのTchap(チャット)、Visio(会議)を活用
  • ウクライナ政府機関オランダのP2Pネットワーク でも利用事例

Matrixプロトコル2.0とクライアントの進化

  • Matrixプロトコル2.0 :2024年後半に正式リリース
    • 同期・起動速度の向上マルチユーザーのビデオ/VoIPチャット (Element Call)対応
  • 公式Rust製クライアント Element X はデフォルトで2.0プロトコルを利用
  • 最終仕様は未公開だが、既に 実運用 が進行

Matrixの普及と存在感

  • Zulip など特定用途のFOSSチャットと異なり、Matrixは 汎用通信基盤
  • 他ツールやサービスに組み込まれ、ユーザーが意識せず日常利用するケースも増加
  • 広告予算の大きな大企業に比べると ニッチ だが、 着実な成長と重要性 を持つ存在
  • 今後も 国際的な公共分野での採用拡大 が期待される

Hackerたちの意見

なんで今の時点でMatrixがもっと広まってないのか不思議だな。オープンだし、エンドツーエンド暗号化もあるし、ちゃんと動くし、どんなツールとも統合できるクライアントライブラリもあるのに…なんで人気が出ないんだろう?連合型のアプローチが原因なのかな?それとも、クライアントアプリがあんまり見た目が良くないから?

私がMatrixを本格的に使えなかった理由は、大手クライアントが複数のサーバーをサポートしてないからなんだ。エンタープライズユーザーじゃないから、これが何度も真剣に導入するのを妨げてきた。

検索機能がほぼ壊れてて、全然役に立たない。もし間違ってたら、誰かがどうやって使えるようにするか教えてくれるといいんだけど。今のところ、メッセージを検索する唯一の方法は、エクスポートしてテキストファイル内を検索することだけ。

私は毎日使ってるし、家族や友達ともMatrixでチャットしてるよ。私の見解では、摩擦が二つの層あると思う。a) チャットの暗号化を気にする人たちは、TelegramやSignalに移行しちゃった。友達の一人は「また別のチャットアプリをインストールするつもりはない」って言ってた。b) 誰も自分でサーバーをホストしたくないし、誰かにホストしてもらうのも嫌がる。私と友達の一人がいなかったら、毎日チャットしてる人たちは誰もMatrixにはいなかっただろうね。確かにmatrix.orgのサーバーはあるけど、私が頻繁にチャットする約13人の中で、1人だけがmatrix.orgにいる。「中央集権的なサーバーを使うなら、アプリを変える意味があるの?」っていうのも、よく聞く答えだよ。この状況の解決策は、私たちパワーユーザーが設定して、周りの人たちのためにお金を払うこと以外にないのかもしれない。

数年前にサーバーを運営してたことがあって、その時はクライアントデバイスが定期的に切断されて、毎回最初から再設定や再認証しなきゃいけなかったんだよね。チャット履歴も消えちゃうし、ほんと面倒だった。そんなことが頻繁に起こったから、もううんざりしちゃった。アイデア自体はすごく好きなんだけど、その時の実装にはイライラさせられた。今はまた挑戦する時間もモチベーションもないし。結局、家族とのコミュニケーションはDiscordに落ち着いたけど、これが結構うまくいってる。Discordは「悪者」の中では下の方に位置するのは知ってるけど、Matrixを再設定しない理由と同じで、Discordからは移動しないかな。少なくともWhatsAppじゃないし… Signalに移行させようとしたけど、その頃はSignalがグループチャットに対応してなかったと思うから、2020年以前の話だね。

友達や知り合いと一緒に、約1年前にSlackから移行した時、Matrixを調べたんだ。主な条件の一つは、技術に詳しくない友達でも使えることだった。ちょうどその時、Matrix/ElementがMatrix 2.0の取り組みを始めたばかりで、非生産用のオールインワンシェルスクリプトを使わずに全体のスタックを設定しようとしたんだ。4つの異なるサーバー(Synapse、Matrix Auth Service (MAS)、Callなど)をホスティングするのは気にしなかったけど、統合や設定作業はちょっと面倒だったな。最大の障害は、新しいMatrix Auth Serverに招待システムがなかったことだね。それに、Element Xアプリが新しいLivekitベースの通話サーバーを使っているのに対して、他のクライアントやアプリが別のアプローチを取っているのも良くない点だ。結局、Mattermostに決めたよ。Dockerで簡単にホスティングできるサービスだし、アプリも一つで招待も簡単。フェデレーションがあれば面白いと思うけど、今はMattermostの方が立ち上げやすかった。Elementは自己ホスティングよりも企業や政府契約に焦点を当てているみたい。これは仕方ないと思うけど、自己ホスティング用のMatrix 2.0は今のところもう少し良いストーリーが必要かもね。

Telegramと比べると、まるで遅いMSN Messengerを使っているみたい。クライアントもサーバーも、全体的にあまり洗練されてない感じがする。大きな問題があるわけじゃなくて、ちょっとずつ不満が積もっていく感じ。Matrixは拡張性が高いから期待してたけど、結局重要なのはデフォルトのクライアント体験だけだって気づいた。みんなが使うのはそれだからね。でも、まだそこに達してない。結局、参加してたグループチャットは全部DiscordかTelegramに移行しちゃったから、もう使う理由がなくなったよ…。

なんでもっと人気じゃないの?フェデレーションアプローチのせい?クライアントアプリがあまり見栄えが良くないから?UIが見栄え良くないわけじゃないけど、Matrixを使う全体的な体験にはまだ追いつくべきことがたくさんある。HNの他の人たちと同じように、最初はすごく期待してたけど、ちょっとした問題や、誰も説明できないランダムな再認証の問題、欠けている機能に疲れ果てて、他に連絡手段がない時以外は使わないようになっちゃった。小さなグループが成功裏に使っている話は見つかるけど、そういう話の根底には必ず、全てを運営して他の人に修正手順を教える非常に献身的なIT担当者がいる。機能やデザインに関してはたくさんの変更があったけど、それがさらに疲労感を増している。もうMatrixについて話すのも難しいよ。ネガティブな体験は、古いアプリやバージョンの問題だって説明されて、Element XやMatrix 2.0、最新のリリースを試せばいいって言われるけど、そう感じているのはもう何年も続いてる。1年後にまた見直すけど、今はプロジェクトを動かすためにかける時間には限界が来てる。

なんで普及してないのかを理解する一番の方法は、実際に知ってる人とチャットするために10分使ってみることだよ。どんな問題にぶつかるかわからないけど、信じられないくらいバカげた問題に遭遇することはほぼ確実だよ。

数年前はMatrixにすごく期待してたんだけど、実際の体験はあまり良くなくて、興味を失っちゃった。体験以外にも、Matrixの構造には根本的な問題があると思う。Matrixサーバーはかなりのメタデータにアクセスできるんだよね(少なくとも前回チェックしたときはそうだったけど、プロトコルの基本的な部分に関わる気がする)。

人気は関係ないと思う。これは汎用のFOSSツールだから。Elementやmatrix.orgは無視して、オープンプロトコルが重要なんだ。この機能は、Matrixがネットワーク効果を得られなくても役立つよ:1. 自主的なコミュニケーションが必要な特定の小規模グループでの会話(例えば、会社を作る時や親しい友人グループで) 2. データ制限はハードドライブのサイズだけ 3. 他の人気プロトコルへのブリッジ 4. 制限なしの個人ボットや自動化 5. 制限なしの無限でカスタマイズ可能なクライアント 6. 1-5の組み合わせ。自己ホストしない人やチャットに真剣でない人のことは言えないけど、サーバーを設定してブリッジやボットを使えるチャット愛好者にとって、Matrixは非常に役立つよ。

私は、政府や医療向けに使われるべき製品の一部をMatrixに移行することを評価するチームにいたんだけど、いくつかの欠点があってこのルートには行かなかった。 - Olm/Megolmはグループメッセージングのためのフォワードシークレットを提供しない - Olm/Megolmはメッセージデータのエンドツーエンド暗号化を保証するけど、メタデータには適用されない - 連合型のアプローチはGDPRに準拠するのが難しい - Synapseはすごく重いし、他の実装はあまり実用的じゃない - 良くも悪くも、Matrixファウンデーションはイギリスの管轄下にある。細かいニュアンスを忘れてるかもしれないけど、これが主なポイントだった。ただ、ドイツ、フランス、ポーランドなどには、制限を受け入れて自分たちでMatrixサーバーをホストしている政府機関もあるよ。2025年の高リスクの脆弱性については触れないけど、これは誰にでも影響があるかもしれないから。

情報ありがとう、デルタチャットについてどう思う?

Olm/Megolmはグループメッセージングのためのフォワードシークレットを提供しない。 Megolmはフォワードシークレットを提供するけど、メッセージのブロック単位でね。もしメッセージキーが盗まれたら、攻撃者はそのデバイスから送信された後のメッセージを復号できる。次のセッションが始まるまで、デフォルトでは100メッセージ送信後、1週間経過後、またはルームメンバーが変わった時にこれが起こる。ほとんどの人はこれが十分な完全な秘密性だと考えてる。Matrixファウンデーションがイギリスに法人登記されていることについては…それなら、IETFがアメリカに法人登記されてるからインターネットを使わない方がいいってことかな? :)

みんなは結局どのツールを使ったの?

  • フェデレーションはGDPRに準拠するのが難しい 具体的に教えてくれない?私の知る限り、すべてが暗号化されていればGDPR準拠は簡単だと思うんだけど。

Element Androidの通知でひどいスパムを受け取った後、Matrixアカウントを削除したよ。Matrixの直接のせいではないと思うけど、いくつかのMatrixチャットグループを使ってて、メンバーリストが公開されてたから…でも、あんなに気持ち悪いスパムを受け取った時は本当に驚いて怒った。

Matrix(プロトコル)って聞いたことなかったけど、XMPPに対しての利点は何なの?

https://xkcd.com/927/

思いつくのは、今のところもっと人気があって、モバイルクライアントが洗練されていることかな。それ以外は、遅いし、リソースも多く使う。

https://news.ycombinator.com/item?id=10040302 ここでたくさん議論されてるよ。概念的な原則の違いは、XMPPは元々メッセージを送ることに関するもので、Matrixは概念的に「状態を同期する」ことに関するもの(ミニグラフデータベースみたいな感じ)。

重いし、メタデータが漏れるよ。

関連情報、3日前: 欧州委員会がTeamsの代わりにMatrixを試験中 https://news.ycombinator.com/item?id=46901452

友達から聞いた話で、Elementクライアントを使ってMatrixが嫌な理由の一つは、WhatsAppやiMessage、他のメッセージアプリのように「ステッカー」が使えないことらしい。どうやら、これが彼らにとってプラットフォームへの興味を失うほど重要だったみたい。最近の消費者向けメッセンジャーにはかなり高いハードルがあるのかな?

楽しめるメッセージアプリがあるのは大事だよね。良いUIと楽しい機能があれば使う価値があるし、だからTelegramは今でも一番使ってるメッセンジャーなんだ。

確かにちょっとイライラしたこともあった。Matrixプロトコルには技術的にはステッカーがあるんだけど、そのPRを最初から追ってたからね。でも、数年前に実際に使ったときは、UXがイマイチだった。ステッカーの追加や投稿は簡単じゃなくて、新しいステッカーを追加するのも何か制限があった気がする。今はどうなってるか分からないけど、分散型プロトコルだとこうなるのは仕方ないのかも。

アニメーションやループするGIFやwebpもちゃんと扱えないし、ループしないんだよね。Matrixの大きな問題をまとめると、全然楽しくない。全く楽しくない。

それがどうして機能じゃないの?社会生活と仕事用でデザインが違うアプリっていいアイデアだよね!必要な機能だけに特化したアプリがあれば、意味のある調整ができると思う。重要な仕事のアップデートが反応やキラキラ、軽いおしゃべりに埋もれちゃうのは精神的に辛いよね。ミームや家族のアップデートを専用の「レジャー」アプリに移すことで、高信号の環境が作れる。仕事が進むだけじゃなくて、すぐに反応するのが面倒なアプリが理想だな。

うちの職場のインスタンスが変な設定なのか、エレメンツクライアントのせいなのか、何が原因か分からないけど(多分クライアントだと思う、ウェブUI版では問題がほとんど消えるから)、同期の問題が多すぎる。スレッドの会話が表示されなかったり、突然消えたり、クライアントがメッセージ取得のループにはまったり、実際には何も取得できなかったり、新しいメッセージの通知が表示されなかったり、読んでも消えなかったり、さらにカスタムステッカーや絵文字、GIFもないし…でもその同期の問題が…チームにタイムリーに何かを伝えたいときは、結局メールに戻っちゃうよ。

逆に、Matrixクライアントは独自のキャラクターがないんだよね。オリジナルじゃなくて、機能を追いかけるゲームをしてる感じ。

ステッカーの主な使い方ではないけど、相手の言語がわからない時や、どの言語もわからない人と話す時はどうするの?ステッカーは、楽しいコミュニケーションの手段以上の役割を果たしてるんだよね。ステッカーや絵文字の反応、ボイスノートなど、ここでは軽視されがちだけど、2016年のメッセージアプリには欠かせない機能なんだよ。

ちなみに、Discordが最近ユーザーのID認証を発表したんだよね。だから、Discordを使わずに「サークル」の友達とつながりたい人にはMatrixが良い選択肢になるかも。

Signalじゃダメなの?MatrixとDiscordは、実際には知らない「友達」のサークル用だと思うんだよね。

エレメント(以前はベクター、後にライオット)はクライアントアプリの名前だよ。エレメントという会社は、もともとNew Vector Ltdという名前で、2017年にAmdocsからスピンオフしたんだ。営利企業で、2020年にエレメントにブランド変更した。Element.ioはMatrixプロトコルを動かすクライアントアプリとサーバーソフトウェアの両方を提供してる。無料のFOSS版もあるけど、有料の商用ツールもある:エレメントプロクライアントとエレメントサーバースイートプロ。これがMatrixだよ。営利目的の閉鎖、合併、ブランド変更、買収の連続でシナジーを高めて株主価値を引き出そうとしてる。私はこれから離れてるよ。このサービスの周りに政府のITが集まってるってことは、この営利マシンの営業活動を物語ってるね。

製品のユーザーが「これが欲しい」と言う現象があるけど、実際に欲しいものは全然違ったりするんだよね。人は自分にとって本当に大事なことをうまく伝えられないから、これがMatrixの普及の大きな障害だと思う。Matrixは他の製品を真似しようとしてるけど、結局は色んなものになろうとしてうまくいってない感じがする。しかも「混乱する」セキュリティや暗号の側面もあるし、クライアント間の不一致の問題もある。ちゃんと取り組まないといけないし、Matrixは他のもっと洗練されたアプリのバックエンドにならないといけない(例えば、ウェブサイトのチャットセクションとか、Disqusみたいに)。私の意見では、Matrixの普及を望むなら、Matrixの普及について話すのはやめた方がいい。HTTPの普及について話してるみたいだし。人々にクライアントを使わせたいなら、クライアントについて話そうよ。「Element」の普及について話しましょう。(余談:名前をもっと検索しやすくしてほしい。ああ、一般的で混乱する「Element」って名前を使いたいんだね。せめて「Elemnt」みたいに変なスペルにして、検索しやすくしてくれない?)人は新しい複雑なシステムを学ぶのが好きじゃないんだよね。それは面倒くさい。私は「Elementを使おう」と言って、なぜ使うべきかを説明できるようになりたい。もし他の製品にはない独自の機能があって、それが本当にうまくできていれば助かるんだけど。Elementを使ってからもう1年以上経つけど、UIが全然好きじゃなかった。Teamsみたいだけど、もっともっさりしてる感じ?モバイルアプリは良いかもしれないけど、試したことないし。とはいえ、私はこれが素晴らしいシステムだと思うし、政府のシステムにもぴったりだと思う。彼らは通常、見た目が良いことや装飾的な機能にこだわらないからね。個人的にはTeamsやSlackよりも使いたいな。会議のスケジュール管理や会議室の予約管理がうまくできる限りは。

IRCの何が悪いの?

何もないけど、最近の人はチャットにもっと期待してるよね。