マトリックスは、分散型通信を整理するためのプラットフォームです。 それはプロジェクトとして開発されています オープンスタンダードを使用し、ユーザーのセキュリティとプライバシーの確保に細心の注意を払っています。
マトリックス エンドツーエンドの暗号化を提供します ダブルラチェットアルゴリズム(信号プロトコルの一部)の使用を含む、独自のプロトコルに基づいています。 最終的な暗号化は、ダイレクトメッセージングとチャットルームの両方で使用されます(Megolmメカニズムを使用)。
暗号化方式の実装は、NCCグループ組織によって監査されました。 トランスポートはHTTPS + JSONを使用し、WebSocketプロトコルを使用するか、COAPに基づいているためです。
マトリックスについて
システム これは、相互に対話し、共通の分散型ネットワークにまとめることができるサーバーのコミュニティとして形成されます。
メッセージは、メッセージング参加者が接続されているすべてのサーバーに複製されます。 メッセージは、Gitリポジトリ間で配信されるのと同じ方法でサーバー間で配信されます。
サーバーが一時的にシャットダウンした場合、メッセージは失われませんが、サーバーが動作を再開した後にユーザーに送信されます。 電子メール、電話番号、Facebookアカウントなど、さまざまなユーザーIDオプションがサポートされています。
ネットワーク上に単一障害点やメッセージ制御はありません。 説明の対象となるすべてのサーバーは同じです。
すべてのユーザーが独自のサーバーを起動して、パブリックネットワークに接続できます。 Matrixが他のプロトコルに基づいてシステムと対話するためのゲートウェイを作成できます■たとえば、サービスは、IRC、Facebook、Telegram、Skype、ハングアウト、電子メール、WhatsApp、およびSlackでのメッセージの双方向送信用に準備されています。
インスタントメッセージングとチャットに加えて、システムを使用して、ファイルの転送、通知の送信、電話会議の整理、音声通話とビデオ通話を行うことができます。 Matrixを使用すると、通信履歴の無制限の検索と表示を使用できます。
また、書き込み通知、オンラインユーザープレゼンス評価、開封確認、プッシュ通知、サーバー側検索、履歴同期、クライアントステータスなどの高度な機能もサポートしています。
Matrix.org財団
プロジェクトの開発を調整するために、 最近作成された 非営利団体 Matrix.org Foundation、 プロジェクトの独立性を保証します、 マトリックス関連の標準を開発し、共同意思決定のための中立的なプラットフォームとして機能します。
Matrix.org Foundationは、コミュニティで尊敬され、プロジェクトの使命を支持するよう求められているXNUMX人の非営利エコシステムディレクターの理事会によって率いられています。
ディレクターには、John Crowcroft(Jon Crowcroft、分散型通信のパイオニアのXNUMX人)、Matthew Hodgson(Matthew Hodgson、Matrixの共同創設者)、Amandine Le Pape(Amandine Le Pape、Matrixの共同創設者)、Ross Schulman(Ross Schulman、Openインターネットと分散システムを専門とするTechnologyInstituteの弁護士)、Yuta Steiner(Jutta Steiner、ブロックチェーンベースの会社Parity Technologiesの共同創設者)。
また最近 プロトコルの最初の安定バージョンがリリースされました マトリックス1.0 および関連するライブラリと仕様。
この新しいバージョンのマトリックスは完全に安定化されています クライアント、サーバー、ボット、ゲートウェイの独立した実装を開発するための基礎として適切な状態に達しました。 プロジェクトの開発は、Apache2.0ライセンスの下で配布されます。
デフォルトでは、ルームプロトコル4が新しいチャットの作成に使用されます。 以前のバージョンから移行する場合、共通の分散型ネットワークに接続するには、有効なTLS証明書を取得する必要があることに注意してください。
クライアントとして、Riot(Linux、Windows、macOS、Web、Android、iOSで利用可能)、Weechat(LuaのCLI)、nheko(C ++ / Qt)、Quaternion(C ++ / Qt)、およびフラクタル(Rust / Gtk)。
サーバー実装に関する次の作業は、パフォーマンスを最適化し、メモリ消費を削減するために計画されています。 Pythonの参照サーバーに加えて、Ruma(Rust)とDendrite(Go)の実験的な実装も開発されています。