Matrix (protokol)

Z Wikipedie, otevřené encyklopedie
Skočit na navigaci Skočit na vyhledávání

Matrix je otevřený protokol pro komunikaci v reálném čase. Je navržen tak, aby umožňoval uživatelům s účty u jednoho poskytovatele komunikačních služeb komunikovat s uživateli jiného poskytovatele prostřednictvím chatu, VoIP a videotelefonie. Cílem je, aby komunikace bezproblémově probíhala v reálném čase mezi poskytovateli služeb obdobně jako u standardního poštovní protokolu SMTP, který se nyní používá pro e-mailové služby.

Z technického hlediska je to komunikační protokol aplikační vrstvy pro federalizovanou komunikaci v reálném čase. Poskytuje API HTTP rozhraní a open source referenční implementaci bezpečného předávání a uchovávání zpráv ve formátu JSON v rámci otevřené federace serverů.[1] [2] Umožňuje integraci se standardními webovými službami prostřednictvím služby WebRTC, což usnadňuje tvorbu aplikací typu prohlížeč-prohlížeč.

Jiné pokusy o definování otevřeného protokolu okamžitého zasílání zpráv nebo multimediálního signálního protokolu tohoto typu měly problémy, zda se stanou široce přijímanými – např. XMPP a IRCv3 – a zdůraznily výzvy, a to jak technologické, tak i politické.[3] Není zřejmé, zda je mezi uživateli dostatek poptávky po službách, které mezi poskytovateli spolupracují.[4] [5]

Historie[editovat | editovat zdroj]

Původní projekt vytvořili Matthew Hodgson a Amandine Le Pape ve společnosti Amdocs a zároveň byl vytvořen chatovací nástroj nazvaný "Amdocs Unified Communications".[6] Amdocs pak financoval většinu vývojových prací od roku 2014 do října 2017.[7] V roce 2015 vznikla její dceřiná společnost "Vector Creations Limited" do níž přešli vývojáři Matrixu.[8]

Matrix získal ocenění za inovaci na konferenci WebRTC 2014 Conference & Expo[9] a ocenění "Best in Show" na WebRTC World v roce 2015. [10]

Krize financování[editovat | editovat zdroj]

V červenci 2017 firma Amdocs oznámila ukončení financování a v následujících týdnech týmové jádro založilo ve Velké Británii firmu "New Vector" [11] a to především za účelem podpory vývoje Matrixu a Riotu.[12] Během tohoto časového období byly společnosti a komunity, které na platformě Matrix staví,[13] opakovaně vyzvány, aby pomohly uhradit alespoň část mzdy základního týmu. Vznikly crowdfunding účty Patreon a Liberapay[14] a hlavní tým zprovoznil video podcast , nazvaný Matrix "Live", aby udrželi přispěvatele a rychlost dalšího vývoje.[15] To bylo doplněno blogem v týdenním formátu s názvem "This Week in Matrix", kde se zainteresovaní členové komunity mohli přečíst nebo zveřejnit své vlastní zprávy týkající se Matrixu.[16]

New Vector[editovat | editovat zdroj]

Společnost byla založena s cílem nabízet poradenské služby pro Matrix a placené hostování serverů Matrix (jako platformu pod názvem modular.im) na komerční bázi.[17] [18]

Několik týdnů po vzniku vzniku společnost Matrix a společnost Purism zveřejnily plány na spolupráci při vytváření telefonu Librem 5.[19] Librem 5 byl zamýšlen jako na Matrixu založený telefon, jehož výchozí aplikace pro hovory a zasílání zpráv by používala Matrix pro audio a video hovory i okamžité zprávy. [20]

Koncem ledna 2018 společnost získala investici ve výši 5 milionů dolarů od "stavus" [21] [22] - na Ethereu založené startupu.

V dubnu 2018 francouzská vláda oznámila plány na vytvoření vlastního nástroje pro zasílání okamžitých zpráv,[23] který, jak později potvrdil tým Matrixu, by byl založen na Riotu a Matrixu. [24] New Vector prohlásil, že tomuto vládnímu úsilí poskytne podporu .

Nadace Matrix.org[editovat | editovat zdroj]

V říjnu 2018 vznikla soukromá společnost s ručením omezeným pod názvem "the Matrix.org foundation"[25] , která slouží jako neutrální právní subjekt pro další rozvoj tohoto standardu.[26]

Protokol[editovat | editovat zdroj]

Matrix cílí na případy jako VoIP, IoT a IM, včetně skupinové komunikace, spolu s dlouhodobým cílem stát se obecným systémem pro zasílání zpráv a synchronizaci dat pro web. Protokol podporuje zabezpečení a replikaci, uchování úplné historie konverzace bez centrálního kontrolního bodu a tím i zranitelnosti. Stávající komunikační služby se do ekosystému Matrix mohou integrovat.[1]

Klientský software je k dispozici jako otevřená federace pro IM, VoIP a IoT.

Standard Matrix specifikuje RESTful HTTP API rozhraní pro bezpečný přenos a replikaci JSON dat mezi klienty, servery a službami kompatibilními s Matrix. Klienti odesílají data do "místnosti" na serveru, který následně replikuje data na všechny Matrix servery připojené k této "místnosti". Vlastní data jsou podepsána obdobně jako v gitu, což je chrání před manipulací a federalizovaný provoz je zašifrován protokolem HTTPS a podepisován soukromým klíčem každého serveru, aby se zabránilo podvržení. Replikace sleduje principy sémantické obsahové shody, což umožňuje serverům fungovat i offline nebo po ztrátě dat tím, že znovu synchronizují chybějící historii z jiných zúčastněných serverů.

Knihovna Olm poskytuje volitelné end-to-end šifrování po jednotlivých místnostech pomocí implementace Double Ratchet Algorithm.[27] Tím je zajištěno, že pouze členové místnosti mohou číst uchovaná data. Při této konfiguraci jsou data přenášená v Matrixu dostupná serverům pouze jako zašifrovaný text na a mohou být dešifrovány výhradně autorizovanými členy místnosti. Olm a Megolm (rozšíření olom lépe vyhovující potřebám větších místností) knihovny byly podrobeny kryptografické revizi NCC Group s veřejně dostupnými výsledky[28] adresovánými týmu Matrix. [29] Přezkum sponzoroval Open Technoogy Fund.

Přemostění[editovat | editovat zdroj]

Matrix podporuje překlad zpráv z jiných chatovacích aplikací do místností Matrixu. Tato přemostění jsou programy, které běží na serveru a komunikují se servery mimo Matrix. Přemostění mohou pracovat v režimu loutky nebo relé, přičemž v prvním případě se osobní uživatelský účet jeví jako odesilatel zpráv, v tom druhém pak zprávy za regulérní účty posílá bot.

V současné době existují přemostění pro:

Klienti[editovat | editovat zdroj]

Riot je referenční implementace klienta. Existuje také mnoho dalších klientů, botů, přemostění, serverů a jiných implementací protokolu Matrix.[37]

Reference[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku Matrix (protocol) na anglické Wikipedii.

  1. a b lwn.net. Dostupné online. 
  2. Archivovaná kopie. www.drdobbs.com. Dostupné v archivu pořízeném dne 2019-03-29. 
  3. www.nojitter.com. Dostupné online. 
  4. www.telecomtv.com. Dostupné online. 
  5. www.itworld.com. Dostupné online. 
  6. Archivovaná kopie [online]. [cit. 2019-06-22]. Dostupné v archivu pořízeném dne 2017-01-20. 
  7. Archivovaná kopie [online]. [cit. 2019-02-02]. Dostupné v archivu pořízeném dne 2019-03-29. 
  8. Dostupné online. 
  9. Archivovaná kopie. blog.uppersideconferences.com. Dostupné v archivu pořízeném dne 2015-03-15. 
  10. www.webrtcworld.com. Dostupné online. 
  11. beta.companieshouse.gov.uk. Dostupné online. 
  12. Dostupné online. 
  13. Dostupné online. 
  14. www.patreon.com. Dostupné online. 
  15. [s.l.]: [s.n.] (anglicky) 
  16. Dostupné online. 
  17. Dostupné online. 
  18. Dostupné online. 
  19. www.tomshardware.com. Dostupné online. 
  20. Dostupné online. 
  21. venturebeat.com. Dostupné online. 
  22. Archivovaná kopie. blog.status.im. Dostupné v archivu pořízeném dne 2018-01-30. 
  23. www.reuters.com. Dostupné online. 
  24. Dostupné online. 
  25. Dostupné online. 
  26. Dostupné online. 
  27. In: [s.l.]: [s.n.] ISBN 978-3-319-45982-0. DOI:10.1007/978-3-319-45982-0_22.
  28. Dostupné online. 
  29. Dostupné online. 
  30. Dostupné online. 
  31. Dostupné online. 
  32. Dostupné online. 
  33. Dostupné online. 
  34. Dostupné online. 
  35. Dostupné online. 
  36. General purpose bridging using libpurple . Contribute to matrix-org/matrix-appservice-purple development by creating an account on GitHub. [s.l.]: [s.n.] Dostupné online. (anglicky) 
  37. Dostupné online. 

Související články[editovat | editovat zdroj]

Externí odkazy[editovat | editovat zdroj]