Kontent qismiga oʻtish

Matrix (protokol)

ZiyoSfera, erkin ensiklopediya
Matrix
upright={Andoza:Logo upright
Chiqarilgan sana2026-yil 25-mart
tashkil topdi:2014-yil sentyabr
So‘nggi versiyasi
Operatsion tizimKross-platformali
PlatformaMobil, ish stoli va veb mijozlar; federativ serverlar
StatusFaol
JanrMarkazlashmagan tezkor xabar almashish protokoli
LitsenziyaOchiq standart
Vebsayt:matrix.org
Standart(lar):Matrix Specification

Matrix — internet orqali markazlashmagan, federativ va o‘zaro mos aloqa tizimlarini yaratish uchun mo‘ljallangan ochiq tarmoq protokoli hamda standartlar majmuasi.

Matrix tezkor xabar almashish, guruhli suhbatlar, ovozli va videoaloqa signalizatsiyasi, fayl almashish, qurilmalar o‘rtasida ma’lumotlarni sinxronlashtirish va boshqa real vaqt xizmatlari uchun qo‘llanilishi mumkin.[1]

Matrix bitta alohida messenjer dasturi emas. U turli mijoz dasturlari, serverlar, botlar, ko‘priklar va boshqa xizmatlar tomonidan ishlatilishi mumkin bo‘lgan ochiq spetsifikatsiyadir.[2]

Matrix tarmog‘ida foydalanuvchilar o‘zlari tanlagan serverda hisob ochishi, boshqa serverlardagi foydalanuvchilar bilan bir xonada muloqot qilishi va zarur holatlarda tashkilotning o‘z infratuzilmasida server joylashtirishi mumkin.[3]

Tarixi

Matrix loyihasining dastlabki ochiq relizi 2014-yilda e’lon qilingan. Dastlabki ommaviy repository 2014-yil avgust oyida chiqarilgan, Matrix protokoli esa 2014-yil sentyabr oyida ommaga taqdim etilgan.[4]

Matrixni yaratishdan asosiy maqsad turli xizmatlar va qurilmalar orasida ishlay oladigan ochiq, federativ hamda uzoq muddatli tarixga ega aloqa qatlamini yaratishdan iborat edi.

2019-yilda Matrix 1.0 spetsifikatsiyasi e’lon qilingan. Keyingi yillarda protokolning xabarlar, federatsiya, xavfsizlik, media, foydalanuvchi boshqaruvi va moderatsiya bilan bog‘liq imkoniyatlari kengaytirib borilgan.

2026-yil 25-martda Matrix Specification 1.18 versiyasi chiqarilgan. Ushbu versiyada xavfsizlik, moderatsiya, takliflarni cheklash, hisoblarni vaqtincha bloklash va boshqaruv APIlari bilan bog‘liq yangilanishlar kiritilgan.[5]

Arxitekturasi

Matrix federativ tarmoq arxitekturasidan foydalanadi. Bu modelda yagona markaziy server barcha foydalanuvchilar va barcha xonalarni nazorat qilmaydi.

Tarmoqdagi asosiy elementlar quyidagilardan iborat:

  • foydalanuvchi mijoz dasturi;
  • homeserver, ya’ni foydalanuvchi hisobini joylashtiruvchi server;
  • xonalar;
  • hodisalar;
  • federatsiya interfeyslari;
  • ilova xizmatlari;
  • botlar va ko‘priklar.

Homeserver

Homeserver — Matrix foydalanuvchi hisoblari joylashtiriladigan server dasturidir.

Foydalanuvchi hisob ochganda u ma’lum bir homeserver bilan bog‘lanadi. Masalan, Matrix foydalanuvchi identifikatori quyidagi shaklda bo‘lishi mumkin:

@foydalanuvchi:example.org

Bu yerda example.org foydalanuvchi hisobini joylashtirgan server domenini bildiradi.

Homeserver foydalanuvchi profilini, qurilmalarini, xonalar tarixini, ruxsatlarini hamda unga tegishli boshqa ma’lumotlarni yuritishi mumkin. Foydalanuvchi o‘zining homeserverini mustaqil ravishda joylashtirishi yoki mavjud xizmat ko‘rsatuvchi provayderdan foydalanishi mumkin.[3]

Mijoz dasturlari

Matrix mijoz dasturi foydalanuvchining mobil qurilmasi, ish stoli kompyuteri yoki veb-brauzerida ishlaydi.

Mijoz dasturi quyidagi vazifalarni bajarishi mumkin:

  • hisobga kirish;
  • xonalarni ko‘rsatish;
  • xabar yuborish va qabul qilish;
  • suhbat tarixini sinxronlashtirish;
  • media fayllarni yuklash;
  • qurilmalarni boshqarish;
  • uchdan uchgacha shifrlash kalitlari bilan ishlash;
  • foydalanuvchi profilini sozlash.

Matrix Client-Server API mijoz dasturlariga xabar yuborish, xonalarni boshqarish va suhbat tarixini sinxronlashtirish imkonini beradi.[6]

Xonalar

Matrixdagi xona foydalanuvchilar o‘rtasidagi muloqot muhiti hisoblanadi.

Xona shaxsiy suhbat, guruhli chat, e’lonlar kanali, jamoa muhiti yoki boshqa hamkorlik maydoni sifatida ishlatilishi mumkin.

Xonada foydalanuvchilar quyidagi amallarni bajarishi mumkin:

  • xonaga qo‘shilish;
  • foydalanuvchilarni taklif qilish;
  • xonani tark etish;
  • foydalanuvchini chiqarish;
  • foydalanuvchini bloklash;
  • xona nomi va tavsifini belgilash;
  • ruxsat darajalarini boshqarish;
  • xabarlar yuborish;
  • media fayllarni almashish.

Matrix spetsifikatsiyasida xonalar federativ tarmoqdagi bir nechta server o‘rtasida sinxronlashtiriladigan tarqatilgan muloqot muhiti sifatida tavsiflanadi.[2]

Hodisalar

Matrixda xabarlar, foydalanuvchining xonaga qo‘shilishi, xonadan chiqishi, xonaning nomi o‘zgarishi yoki ruxsatlarning yangilanishi hodisa sifatida qayd etiladi.

Har bir xonadagi hodisalar yo‘naltirilgan asiklik graf, ya’ni DAG ko‘rinishida saqlanishi mumkin. Ushbu mexanizm bir nechta serverda yuzaga kelgan hodisalarni o‘zaro bog‘lash va xona tarixini sinxronlashtirishga xizmat qiladi.[2]

Xona holati nom, tavsif, a’zolik, taqiq, foydalanuvchi vakolatlari va boshqa doimiy ma’lumotlarni o‘z ichiga olishi mumkin.

Federatsiya

Federatsiya — turli Matrix homeserverlari o‘rtasida xabarlar, xona holati va xizmatga oid ma’lumotlarni uzatish mexanizmidir.

Bir serverdagi foydalanuvchi boshqa serverdagi foydalanuvchi bilan umumiy xonaga qo‘shilishi mumkin. Bunda xonadagi ma’lumotlar ushbu xonada ishtirok etayotgan serverlar o‘rtasida sinxronlashtiriladi.

Serverlar o‘rtasidagi aloqa Matrix Server-Server API orqali amalga oshiriladi.[7]

Federatsiya jarayonida homeserverlar quyidagi ma’lumotlarni almashishi mumkin:

  • xabarlar va boshqa doimiy hodisalar;
  • foydalanuvchi holati;
  • typing, ya’ni yozayotganlik belgisi;
  • o‘qilganlik belgilari;
  • profil ma’lumotlari;
  • xonaga takliflar;
  • xonaga qo‘shilish va chiqish haqidagi ma’lumotlar;
  • tarixiy xabarlar so‘rovlari.

Serverlar o‘rtasida uzatiladigan ma’lumotlar HTTPS orqali yuboriladi. Federatsiya so‘rovlari serverlarning ochiq kalitli imzolari orqali autentifikatsiya qilinadi.[7]

APIlar

Matrix spetsifikatsiyasi bir necha turdagi APIlarni belgilaydi.

Client-Server API

Client-Server API mijoz dasturi va homeserver o‘rtasida ishlaydi.

U quyidagi imkoniyatlarni ta’minlaydi:

  • foydalanuvchini ro‘yxatdan o‘tkazish;
  • tizimga kirish va chiqish;
  • xonalarni yaratish;
  • xabar yuborish;
  • xabar tarixini olish;
  • media fayllarni yuklash;
  • foydalanuvchi profilini boshqarish;
  • qurilmalarni boshqarish;
  • bildirishnomalarni qabul qilish;
  • shifrlangan xabarlar bilan ishlash.[6]

Server-Server API

Server-Server API turli homeserverlar o‘rtasidagi federativ aloqani ta’minlaydi.

U orqali serverlar bir xil xonadagi hodisalarni real vaqt rejimida uzatishi, tarixiy hodisalarni so‘rashi, foydalanuvchi profili va tarmoqdagi holati haqida ma’lumot olishi mumkin.[7]

Application Service API

Application Service API botlar, ko‘priklar, arxivlash tizimlari, monitoring vositalari va boshqa xizmatlarni Matrix tarmog‘iga ulash uchun ishlatiladi.

Bunday xizmat ma’lum bir xonadagi hodisalarni qabul qilishi, virtual foydalanuvchilar yaratishi, tashqi tarmoqlardan xabarlarni Matrix xonasiga uzatishi yoki boshqa avtomatlashtirilgan vazifalarni bajarishi mumkin.[8]

Uchdan uchgacha shifrlash

Matrix xonalarida uchdan uchgacha shifrlash, inglizcha End-to-End Encryption yoki E2EE, qo‘llanilishi mumkin.

Bunday rejimda xabar yuboruvchi qurilmasida shifrlanadi va faqat ruxsat etilgan qabul qiluvchi qurilmalarida ochilishi kerak. Shifrlangan xonadagi xabar mazmunini homeserver odatiy tarzda o‘qiy olmasligi lozim.[9]

Matrixda uchdan uchgacha shifrlash Olm va Megolm kriptografik ratchet mexanizmlariga asoslanadi.[9]

Qurilmalar va kalitlar

Matrixda foydalanuvchining har bir mijoz dasturi alohida qurilma sifatida ro‘yxatdan o‘tadi.

Masalan, bitta foydalanuvchi quyidagi qurilmalardan foydalanishi mumkin:

  • Android telefoni;
  • iPhone;
  • ish stoli dasturi;
  • veb-brauzer;
  • planshet.

Har bir qurilma o‘zining kriptografik kalitlari bilan ishlaydi. Qurilma kalitlari foydalanuvchining boshqa qurilmalaridan mustaqil bo‘lishi kerak.[9]

Foydalanuvchi kerak bo‘lmagan yoki yo‘qolgan qurilmani hisobdan chiqarishi mumkin. Bu kelajakdagi xabarlarga kirishni cheklash uchun muhim hisoblanadi.

Shifrlangan xonalar

Shifrlash rejimi xonaning turiga, mijoz dasturining imkoniyatlariga va administrator yoki foydalanuvchi sozlamalariga bog‘liq bo‘lishi mumkin.

Uchdan uchgacha shifrlash qo‘llanilganda quyidagilar hisobga olinadi:

  • barcha ishtirokchilar mos mijoz dasturidan foydalanishi kerak;
  • qurilmalarni tekshirish xavfsizlikni oshirishi mumkin;
  • kalitlar yo‘qolsa, eski xabarlarni ochish imkoni cheklanishi mumkin;
  • shifrlangan xabarlarni ko‘prik yoki tashqi xizmatga uzatish qo‘shimcha xavfsizlik masalalarini keltirib chiqarishi mumkin.

Ko‘priklar

Ko‘prik yoki bridge Matrix xonalarini boshqa aloqa tarmoqlari bilan bog‘lash uchun ishlatiladigan dasturiy vositadir.

Ko‘prik yordamida Matrix quyidagi turdagi xizmatlar bilan integratsiyalashishi mumkin:

  • IRC;
  • XMPP;
  • Discord;
  • Telegram;
  • WhatsApp;
  • Slack;
  • elektron pochta;
  • boshqa maxsus korporativ tizimlar.

Ko‘priklar ishlash usuliga qarab xabarlarni bot orqali uzatishi, virtual foydalanuvchilar yaratishi yoki foydalanuvchi nomidan tashqi xizmatga ulanib ishlashi mumkin.[10]

Ko‘prik orqali uzatilgan xabarlarning maxfiyligi, metadata bilan ishlash tartibi va uchdan uchgacha shifrlash holati foydalanilayotgan tashqi xizmat hamda ko‘prik texnologiyasiga bog‘liq bo‘ladi.

Serverlar va mustaqil joylashtirish

Matrix tarmog‘ida har qanday shaxs yoki tashkilot o‘z homeserverini joylashtirishi mumkin.

Mustaqil server joylashtirish quyidagi holatlar uchun foydali bo‘lishi mumkin:

  • foydalanuvchi ma’lumotlarini tashkilot infratuzilmasida saqlash;
  • ichki xavfsizlik siyosatlarini qo‘llash;
  • yopiq federatsiya tashkil qilish;
  • foydalanuvchilar va domenlar bo‘yicha cheklovlar o‘rnatish;
  • tashqi xizmatlar bilan maxsus integratsiya yaratish;
  • zaxira nusxalari va yangilanishlarni mustaqil boshqarish.

Matrix.org Foundation tashkilotlar uchun alohida homeserverdan foydalanishni yoki o‘z infratuzilmasida server joylashtirishni tavsiya qiladi.[11]

Matrix serveri ochiq federatsiyaga ulanishi, faqat tanlangan serverlar bilan ishlashi yoki butunlay ajratilgan tarmoqda joylashtirilishi mumkin.

Qo‘llanilishi

Matrix quyidagi yo‘nalishlarda qo‘llanilishi mumkin:

  • shaxsiy va guruhli xabar almashish;
  • korporativ messenjerlar;
  • davlat va jamoat tashkilotlari uchun aloqa tizimlari;
  • masofaviy ishchi jamoalar;
  • texnik yordam va hodisalarga javob berish;
  • ovozli va videoaloqa signalizatsiyasi;
  • IoT qurilmalari o‘rtasidagi ma’lumot almashinuvi;
  • botlar va avtomatlashtirilgan xabarlar;
  • turli aloqa tarmoqlarini ko‘priklar orqali bog‘lash;
  • hamjamiyatlar va ochiq manbali dasturiy loyihalar.

Matrix rasmiy hujjatlarida u tezkor xabar almashish, VoIP va IoT aloqasi uchun foydalanilishi mumkin bo‘lgan ochiq standart sifatida tavsiflanadi.[12]

Xavfsizlik masalalari

Matrixning federativ arxitekturasi ma’lumotlarni yagona markaziy serverga bog‘lab qo‘ymaslikka yordam beradi. Biroq bu barcha xabarlar avtomatik ravishda uchdan uchgacha shifrlanadi degani emas.

Xavfsizlik darajasi quyidagi omillarga bog‘liq:

  • xonada E2EE yoqilgan yoki yoqilmaganligi;
  • mijoz dasturining kriptografik imkoniyatlari;
  • foydalanuvchi qurilmalarining himoyalanganligi;
  • homeserver administratorining xavfsizlik sozlamalari;
  • zaxira nusxalarining himoyalanganligi;
  • ko‘priklar va tashqi integratsiyalarning mavjudligi;
  • foydalanuvchilarning qurilmalarni tekshirishi;
  • foydalanuvchilarning xonaga kimlarni qo‘shishi.

Shifrlanmagan xonalardagi xabarlar homeserverda qayta ishlanishi va saqlanishi mumkin. Shu sababli maxfiy yozishmalar uchun shifrlash holatini tekshirish hamda ishonchli mijoz dasturlaridan foydalanish muhim hisoblanadi.

Standartni rivojlantirish

Matrix spetsifikatsiyasi Matrix Spec Change, qisqartmasi MSC, takliflari orqali rivojlantiriladi.

Yangi funksiyalar, APIlar yoki mavjud mexanizmlarga o‘zgartirishlar avval MSC shaklida muhokama qilinadi. Keyinchalik ular texnik ko‘rib chiqishdan o‘tib, Matrix Specification tarkibiga kiritilishi mumkin.[13]

Bunday yondashuv spetsifikatsiyani turli ishlab chiquvchilar, server ma’murlari va mijoz dasturlari mualliflari ishtirokida rivojlantirishga xizmat qiladi.

Shuningdek qarang

Manbalar

  1. ↑ „Matrix.org“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  2. ↑ 2,0 2,1 2,2 „Matrix Specification“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  3. ↑ 3,0 3,1 „Elements of Matrix“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  4. ↑ „This Week in Matrix 2024-05-10“. Matrix.org Foundation (2024-yil 10-may). Qaraldi: 2026-yil 25-iyun.
  5. ↑ „Matrix Specification v1.18 Changelog“. Matrix.org Foundation (2026-yil 25-mart). Qaraldi: 2026-yil 25-iyun.
  6. ↑ 6,0 6,1 „Client-Server API“. Matrix Specification. Qaraldi: 2026-yil 25-iyun.
  7. ↑ 7,0 7,1 7,2 „Server-Server API“. Matrix Specification. Qaraldi: 2026-yil 25-iyun.
  8. ↑ „Application Services“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  9. ↑ 9,0 9,1 9,2 „End-to-End Encryption Implementation Guide“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  10. ↑ „Types of Bridging“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  11. ↑ „Switching Providers“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  12. ↑ „Matrix FAQ“. Matrix.org Foundation. Qaraldi: 2026-yil 25-iyun.
  13. ↑ „Matrix Spec Change Proposals“. Matrix Specification. Qaraldi: 2026-yil 25-iyun.

Tashqi havolalar