Federation (Matrix)¶
Federation — механізм, що дозволяє різним Matrix homeserver-ам обмінюватись повідомленнями та подіями в реальному часі, утворюючи децентралізовану мережу.
Опис¶
Federation є одним із ключових принципів архітектури Matrix. На відміну від централізованих месенджерів (Telegram, Signal), де всі повідомлення проходять через єдиний сервер компанії, Matrix дозволяє будь-якій організації розгорнути власний homeserver і при цьому залишатись в контакті з користувачами на інших серверах.
Коли користувач на сервері matrix.example.ua надсилає повідомлення в кімнату, де є учасники з matrix.org, обидва сервери синхронізують стан кімнати через Federation API (також відомий як Server-Server API). Кожен сервер зберігає власну копію всіх подій кімнати — це забезпечує відмовостійкість: якщо один сервер недоступний, повідомлення не губляться.
Технічно Federation працює через HTTPS із взаємною перевіркою серверних ключів. Кожен homeserver має пару ключів підпису (ed25519), і всі федеративні запити підписуються цим ключем. Це унеможливлює підробку повідомлень від імені іншого сервера.
Federation можна обмежити або повністю вимкнути. Для закритої корпоративної або військової мережі рекомендується вимкнути публічну федерацію та дозволити лише певні довірені сервери через allowlist.
В контексті UMTC¶
У UMTC Federation вимкнена для зовнішніх серверів — homeserver matrix.eliah.one працює як ізольований вузол без з'єднання з публічними Matrix серверами (matrix.org тощо). Це відповідає вимогам безпеки: жодні метадані або повідомлення не виходять за межі захищеної інфраструктури.
Якщо в майбутньому знадобиться з'єднати кілька ізольованих UMTC homeserver-ів (наприклад, для різних підрозділів), Federation можна увімкнути між ними через закриту WireGuard мережу, зберігаючи ізоляцію від зовнішнього інтернету.
Пов'язані терміни¶
- matrix — базовий протокол, частиною якого є Federation
- synapse — reference homeserver із підтримкою Federation
- wireguard — VPN-тунель для безпечного Federation між приватними вузлами
- mtls — взаємна TLS-автентифікація, що використовується у Federation API
Посилання¶
Шлях: glossary/federation.md