Korisnik:Milosnrt2321/pesak

S Vikipedije, slobodne enciklopedije
Matrix
Logo Matrix-a
Razvijač(i)The Matrix.org Foundation CIC
Predstavljenoseptembar 2014. god.; pre 9 godina (2014-09)[1][nije u datom izvoru]

Matrix (ponekad stilizovan kao [matrix][osporeno ]) je otvoreni standard i protokol za komunikaciju koji služi za realizovanje komunikacije u realnom vremenu. Njegov cilj je da omogući komunikaciju u realnom vremenu koja besprekorno radi između različitih provajdera servisa, kao što Simple Mail Transfer Protocol to omogućava za mejl servise, tako što korisnicima sa nalogom kod jednog provajdera servisa komunikacije omogućava komunikaciju sa korisnicima nekog drugog provajdera servisa putem dopisivanja, internet telefonije, i video-konferencija. Dakle, ima sličnu svrhu poput protokola kao što je XMPP, ali nije zasnovan ni na jednom već postojećem protokolu za komunikaciju.

Iz tehničke perspektive, Matrix je protokol za komunikaciju aplikacionog sloja i omogućava federativnu komunikaciju u realnom vremenu. Pruža HTTP API-je i referentne implementacije otvorenog koda za sigurnu distribuciju i čuvanje poruka u JSON formatu preko otvorene federacije servera.[2][3] Može da se integriše sa standardnim veb servisima preko WebRTC-a, što omogućava kreiranje aplikacija koje komuniciraju putem veb-pregledača.

Istorija[uredi | uredi izvor]

Projekat je započet u kompaniji Amdocs, kad su Metju Hodžson i Amandin Pap počeli da prave alatku za ćaskanje pod imenom „Amdocs Unified Communications“.[4] Amdocs je zatim finansirao većinu daljeg razvoja od 2014. godine do oktobra 2017. godine.[5] Matrix je osvojio nagradu za inovaciju na WebRTC 2014 Conference & Expo,[6] i nagradu za najbolje u izložbi na WebRTC World 2015. godine.[7] Nakon što je pušten u rad 2014. godine, protokol je dobio pohvale, kao i neka upozorenja. Kritičari su naglasili da su ostali pokušaji u definisanju otvorenog protokola za multimedijalno signaliziranje ili razmenu trenutnih poruka ovog tipa imali poteškoća u tome da budu široko usvojeni - na primer XMPP i IRCv3 su istakli koji su izazovi u tome, uključujući i tehnološke i političke.[8] Neki nisu bili sigurni da li među korisnicima ima dovoljno potražnje za servise koji omogućavaju međuoperativnost između provajdera.[9][10] 2015. godine je osnovana podružnica Amdocs-a koja se nazivala „Vector Creations Limited“, u koju je prešlo osoblje Matrix-a.[11]

Jula 2017. godine je Amdocs umanjio finansije projekta i tokom narednih nedelja je glavni tim osnovao svoju sopstvenu kompaniju zasnovanu u Ujedinjenom Kraljevstvu, „New Vector Limited“,[12] koja je uglavnom stvorena kako bi podržala razvoj Matrix-a i Riot-a, koji je kasnije preimenovan u Element.[13] Tokom ovog vremenskog perioda bilo je više poziva u pomoć koji su bili namenjeni zajednici i kompanijama koje koriste Matrix[14] da pomognu u plaćanju plata bar dela glavnog tima. Kreirani su Patreon i Liberapay crowdfunding nalozi,[15] i glavni tim je započeo video podkast pod imenom Matrix „Live“ kako bi darodavaoce informisali o tekućem razvoju.[16] Ovo je prošireno putem nedeljnog blog formata koji se naziva „This Week in Matrix“, gde su zainteresovani članovi zajednice mogli da čitaju ili da objave svoje sopstvene vesti vezane za Matrix.[17] Kompanija je kreirana sa ciljem pružanja usluga konsultacije i plaćenog veb-hostinga Matrix servera (kao platforma nazvana modular.im, koja je kasnije preimenovana u Element matrix services[18]) kako bi se ostvarili prihodi.[19]

U prvim nedeljama posle osnivanja kompanije, Matrix tim i kompanija Purism su objavili planove o saradnji u procesu kreiranja Librem 5 mobilnog telefona.[20] Telefon je po svojoj prirodi trebao da se oslanja na Matrix, tako što bi uobičajene preinstalirane aplikacije za poruke i pozive koristile Matrix za razmenu poruka, audio i video poziva.[21]

Zajednica KDE je 2017. godine oglasila da radi na dodavanju podrške ovog protokola u svoj IRC klijent Konversation.[22]

Kompanija je krajem januara 2018. godine dobila investiciju od 5 miliona dolara od strane Ethereum start-apa Status.[23][24]

Francuska vlada je aprila 2018. godine objavila planove da kreira svoj sopstveni alat za dopisivanje.[25] Rad na aplikaciji koja je zasnovana na Riot-u i Matrix protokolu, koja se nazivala Tchap po francuskom naučniku Klodu Čapu, je započet početkom 2018. godine[26] i program je aprila 2019. godine pušten na iOS i Android uređaje, i njegov kod je tada istovremeno postao i javno dostupan.[27]

Oktobra 2018. godine je osnovana kompanija pod nazivom „The Matrix.org Foundation C.I.C.“,[28] čiji je cilj da funkcioniše kao neutralni legalni entitet radi daljeg razvoja protokola.[29]

KDE zajednica je feburara 2019. godine objavila planove da usvoji Matrix za potrebe interne komunikacije, kao decentralizovanu alternativu u odnosu na druge servere za dopisivanje poput Telegram-a, Slack-a, i Discord-a, i koristila bi sopstvenu instancu servera.[30]

Matrix.org produkcioni serveri su kompromizovani aprila 2019. godine,[31] međutim problem nije bio vezan za protokol i ovo nije direktno uticalo na ostale kućne servere.

Juna 2019. godine, Matrix protokol je izašao iz beta verzije i Matrix fondancija je zvanično začeta.[32][33]

Oktobra 2019. godine, New Vector je prikupio još 8,5 miliona dolara za razvijanje Matrix-a.[34]

Decembra 2019. godine je nemačko Ministarstvo odbrane objavilo probni projekat zvani BwMessenger, koji predstavlja alat za sigurno dopisivanje zasnovan na Matrix protokolu, Synapse serveru i Riot aplikaciji. Ovo je bilo po ugledu na francuski Tchap projekat. Vladin dugoročni cilj je sigurna upotreba servisa za dopisivanje koji pokrivaju sva ministarstva i podređene zvaničnike.[35]

Decembra 2019. godine je Mozilla objavila da će Matrix početi da koristi kao zamenu za IRC. U obaveštenju su rekli da će zamenu da obave krajem januara 2020. godine. Mozilla IRC server, irc.mozilla.org je ugašen marta 2020. godine i korisnici su usmereni prema chat.mozilla.org, njihovoj Element instanci.[36]

Maja 2020. godine je Matrix omogućio end-to-end šifrovanje kao podrazumevano podešavanje za privatne razgovore.[37]

Oktobra 2020. godine Element je stekao Gitter od GitLab-a.[38] Ovo je značilo da će svi Gitter korisnici preći na Matrix.[39]

Marta 2021. godine, matrix.org je objavio da postoji 28 miliona globalno vidljivih naloga.[40]

Protokol[uredi | uredi izvor]

Matrix mreža

Matrix-ovi ciljani slučajevi upotrebe su internet telefonija, Internet stvari, i razmena trenutnih poruka, uključujući grupnu komunikaciju, kao i dugoročni cilj da bude opšti sistem za razgovore i sinhronizaciju podataka na vebu. Protokol podržava sigurnost i replikaciju, održavanje potpune istorije razgovora, bez tačaka kontrole ili kvara. Postojeći servisi za komunikaciju mogu da se integrišu sa Matrix ekosistemom.[2]

Dostupan je klijentski softver za otvorenu federativnu razmenu trenutnih poruka, internet telefoniju, i komunikaciju sa Internetom stvari.

Matrix standard određuje RESTful HTTP API-je za sigurno prenošenje i replikaciju JSON podataka između klijenata, servera i servisa koji poseduju mogućnosti upotrebe Matrix-a. Klijenti šalju podatke tako što ih preko HTTP PUT metode šalju u 'sobu' na serveru, koja zatim kopira te podatke na sve Matrix servere koji učestvuju u toj 'sobi'. Ovi podaci su potpisani na način koji koristi git kako bi se sprečilo falsifikovanje, i federativni saobraćaj je šifrovan sa HTTPS i potpisan sa privatnim ključem svakog servera kako bi se sprečilo lažno predstavljanje. Replikacija prati semantiku konačne konzistentnosti, što dopušta serverima da funkcionišu čak iako su oflajn ili nakon gubitka podataka pomoću ponovne sinhronizacije sa ostalim serverima koji sadrže izgubljenu istoriju.

Olm biblioteka pruža opciono end-to-end šifrovanje selektivno po sobi putem implementacije Double Ratchet algoritma.[1] To osigurava da podaci razgovora budu vidljivi samo učesnicima sobe. Kad je šifrovanje uključeno, podaci koji se šalju preko Matrix-a su Matrix serverima vidljivi samo kao ciphertext, i jedino autorizovani učesnici sobe mogu da ih dešifruju. Protokol za šifrovanje se zove Olm; Megolm je proširenje Olm-a koji je bolji za potrebe velikih soba. Postoje dve glavne implementacije:

  • vodozemac, trenutna referentna implementacija koja je napisana u programskom jeziku Rust. Implementacija je proverena 2022. godine od strane Least Authority i njihovi zaključci su javno dostupni,[41] a Matrix tim je komentarisao na te zaključke.[42] Provera je bila delimično finansirana od strane nemačke nacionalne agencije za digitalizaciju zdravstvenog sistema (Gematik).
  • libolm, prethodna referentna implementacija, je bila proverena na polju kriptografije od strane NCC Group, čiji su zaključi javno dostupni,[43] i na koje je Matrix tim dao odgovor.[44] Provera je bila sponzorisana od strane Open Technology Fund.

Premošćavanje poruka[uredi | uredi izvor]

Matrix podržava premošćavanje poruka iz drugih aplikacija u Matrix sobe. Ovi mostovi su programi koji se pokreću na serveru i komuniciraju sa serverima koji ne spadaju u Matrix. Mostovi mogu da se ponašaju kao zastupnici, i tada se poruke šalju preko korisnikovog individualnog naloga, ili kao prenosnici, u kom slučaju bot šalje poruke.

Trenutno postoje zvanični mostovi za:

Mostovi značajnih aplikacija koje održava zajednica su:

Klijenti[uredi | uredi izvor]

Element je referentna implementacija klijenta. Takođe postoje i sledeće implementacije klijenta, a potencijalno kompletnija lista se može pronaći na sajtu Matrix-a:

Implementacije klijenta
Projekat Programski jezik Komentar Platforme Status Repozitorijum
Cinny Džavaskript Prvenstveno fokusiran na jednostavan, elegantan, i siguran interfejs; napisan u Reactjs pomoću matrix-js-sdk Veb i desktop Stabilan GitHub: ajbura/cinny
Element Džavaskript Napravljen od strane glavnog matrix.org tima Veb, desktop, iOS, i Android Stabilan GitHub: vector-im/element-web
FluffyChat Dart Napisano u Flutter-u Veb, desktop, iOS, i Android Stabilan GitLab: famedly/fluffychat
Fractal Rust Gnom desktop Stabilan GitLab: GNOME/fractal
NeoChat C++ Izmenjena verzija Spectral-a, upotrebom KDE razvojnih okvira, prvestveno Kirigami-ja, KConfig-a i KI18n-a. Desktop, Plasma Mobile, i Android Stabilan Kde: network/neochat
Nheko C++ Napravljen pomoću Kjut-a i C++17 Desktop (Linuks, macOS, Vindous i ostali[56]) Stabilan GitHub: Nheko-Reborn/nheko
Quaternion C++ Višeplatformski klijent zasnovan na Kjut5, referentna desktop aplikacija koja koristi Quotient Desktop (macOS, Vindous, Linuksi ostali[57]) Stabilan GitHub: quotient-im/Quaternion

Serveri[uredi | uredi izvor]

Synapse je referentna implementacija Matrix kućnog servera napisana u Pajtonu.[58] „Druga generacija Matrix kućnog servera“[59] zvana Dendrite je u razvoju od strane glavnog Matrix tima. Dendrite je u beta verziji.

Postoje sledeće implementacije servera, a potencijalno kompletnija lista se može pronaći na sajtu Matrix-a:

Implementacije servera
Projekat Programski jezik Komentar Status Repozitorijum
Synapse[58] Pajton Synapse je implementacija Matrix kućnog servera koju je razvio glavni matrix.org tim. Napisana je u Pajtonu 3/Twisted. Spremno za produkciju GitHub: matrix-org/synapse
Dendrite Gou Dendrite je druga generacija Matrix kućnog servera napisana u Gou. Namerava da bude efikasna, pouzdana i skalabilnua alternativa Synapse-a. Beta verzija GitHub: matrix-org/dendrite
Construct[60] C++ Construct je kućni server orijentisan na perfomanse sa minimalnim zavisnostima od drugih modula.

On je prvi aktivni Matrix Matrix server samostalno razvijen od strane zajednice.

Beta verzija (od 2020-04-28)[61] GitHub: matrix-construct/construct
Conduit[62] Rust Efikasni Matrix kućni server čiji je cilj da bude lak za nameštanje i da radi bez problema.

Dizajniran je da se pokreće na mini računarima kojima je potrebno malo snage kao što je Raspberi paj.

Beta verzija (od 2021-09-01) GitLab: famedly/conduit
Mascarene[63] Skala Mascarene je implementacija kućnog servera otvorenog koda za Matrix protokol. U razvoju GitLab: mascarene/mascarene
Ligase Gou Ligase predstavlja Gou implementaciju Matrix kućnog servera, koja prati propise definisane na matrix.org.

Koristi je veliki broj finansijskih institucija za razne scenarije.

Spremno za produkciju GitHub: finogeeks/Ligase
Maelstrom Rust Matrix kućni server sa visokim perfomansama koji je napisan programskim jezikom Rust. Dizajniran je da ima skladište koje može da se uštekava i da bude skalabilan i lak na resursima. Izgleda da je zaustavljen razvoj. Nema izmena od 2020. godine GitHub: maelstrom-rs/maelstrom

Usvajanje[uredi | uredi izvor]

Nacionalni zdrastveni sistem nemačke za internu komunikaciju koristi sistem zasnovan na Matrix-u[64] (Ti-Messenger) za komunikaciju u realnom vremenu između nemačkih zdravstvenih organizacija i razmenu osetljivih podataka o pacijentima. Sistem je razvijen od strane nemačke nacionalne agencije za digitalizaciju zdravstvenog sistema (Gematik GmbH).[65]

Zaposleni Bundesvera (nemačke oružane snage) međusobno komuniciraju i dele klasifikovana dokumenta preko privatne Matrix mreže koristeći izmenjenu verziju Matrix-ove Element aplikacije.[66]

Reference[uredi | uredi izvor]

  1. ^ a b Ermoshina, Ksenia; Musiani, Francesca; Halpin, Harry (septembar 2016). „End-to-End Encrypted Messaging Protocols: An Overview”. Ur.: Bagnoli, Franco; et al. Internet Science. INSCI 2016. Lecture Notes in Computer Science. 9934. Florence, Italy: Springer. str. 244—254. ISBN 978-3-319-45982-0. doi:10.1007/978-3-319-45982-0_22. 
  2. ^ a b Nathan Willis (2015-02-11). „Matrix: a new specification for federated realtime chat”. LWN.net. Pristupljeno 2015-06-28. 
  3. ^ Adrian Bridgwater (2014-09-09). „Matrix.org Reloads Inside "Illusion of Control" Vortex”. Dr. Dobb's Journal. Pristupljeno 2015-07-20. 
  4. ^ „Unified Communications”. amdocs. Arhivirano iz originala 2014-10-03. g. Pristupljeno 2018-11-04. 
  5. ^ „Who is Matrix.org?”. matrix.org. 2019-02-20. Arhivirano iz originala 2019-03-29. g. Pristupljeno 2018-10-20. 
  6. ^ „Award Winners of the WebRTC 2014 Conference & Expo”. Upperside Blog. 2014-12-23. Arhivirano iz originala 2015-03-15. g. Pristupljeno 2015-06-28. 
  7. ^ Phil Edholm (2015-05-18). „WebRTC World Miami Wrap Up and Review”. WebRTC. Pristupljeno 2015-06-28. 
  8. ^ Andrew Prokop (2015-02-23). „Solving the WebRTC Interoperability Problem - Post”. No Jitter. Pristupljeno 2015-06-28. 
  9. ^ Ian Scales (2015-05-11). „To interop or not to interop? Is Matrix.org the answer for silo'd comms services?”. TelecomTV. Pristupljeno 2015-06-22. 
  10. ^ Matt Weinberger (2014-09-16). „Matrix wants to smash the walled gardens of messaging”. ITworld. Pristupljeno 2015-07-20. 
  11. ^ „Linkedin entry for Vector Creations Limited”. Pristupljeno 2018-10-22. 
  12. ^ „Free company information from Companies House (UK Government)”. Companies House. Pristupljeno 2018-07-30. 
  13. ^ „New Vector - We believe the future will be open and decentralized”. New Vector. Pristupljeno 2018-10-20. 
  14. ^ „A Call to Arms: Supporting Matrix!”. matrix.org. 2017-07-07. Pristupljeno 2018-10-20. 
  15. ^ „Hello world! | Matrix.org on Patreon”. Patreon. Pristupljeno 2018-11-04. 
  16. ^ Matrixdotorg (2017-07-21), Matrix Live - Episode 1: July 14th 2017, Pristupljeno 2018-10-22 
  17. ^ „This Week in Matrix”. matrix.org. Pristupljeno 2018-10-22. 
  18. ^ „Element Secure instant messenger | Riot.im download | End-to-end messages encryption and open network”. Element. Pristupljeno 2020-11-01. 
  19. ^ „Awesome hosting for Matrix”. www.modular.im. Pristupljeno 2018-10-20. 
  20. ^ Armasu, Lucian (2018-06-06). „Purism's Privacy-Focused Librem 5 Smartphone's On Track For A Jan '19 Release”. Tom's Hardware. Pristupljeno 2018-11-04. 
  21. ^ „Librem 5 – A Security and Privacy Focused Phone”. shop.puri.sm. Pristupljeno 2018-11-04. 
  22. ^ https://blogs.kde.org/2017/09/05/konversation-2x-2018-new-user-interface-matrix-support-mobile-version
  23. ^ Rogers, Stewart (2018-01-29). „Status invests $5 million in Matrix to create a blockchain messaging superpower”. VentureBeat. Pristupljeno 2018-10-20. 
  24. ^ „Status Invests $5M In Riot.im”. Status Blog. 2018-01-29. Arhivirano iz originala 2018-01-30. g. Pristupljeno 2018-10-20. 
  25. ^ Rosemain, Mathieu. „France builds WhatsApp rival due to surveillance risk”. U.S. Pristupljeno 2018-11-04. 
  26. ^ Kaminsky, Jean (2018-04-22). „L'Etat lance un "Telegram" à la française cet été, ouvert à tous”. Solutions Numériques (na jeziku: francuski). Pristupljeno 2019-12-28. „Après 3 mois de développement pour un coût très limité [...] 
  27. ^ Cimpanu, Catalin. „French government releases in-house IM app to replace WhatsApp and Telegram use”. ZDNet (na jeziku: engleski). Pristupljeno 2019-12-28. 
  28. ^ „THE MATRIX.ORG FOUNDATION – Overview (free company information from Companies House)”. Companies House. Pristupljeno 2018-11-04. 
  29. ^ „Introducing the Matrix.org Foundation (Part 1 of 2)”. matrix.org. 2018-10-29. Pristupljeno 2018-11-04. 
  30. ^ Michael Larabel (2019-02-20). „KDE To Support Matrix Decentralized Instant Messaging”. Phoronix. Pristupljeno 2019-02-20. 
  31. ^ „We have discovered and addressed a security breach”. Matrix.org. Pristupljeno 2019-04-12. 
  32. ^ „Introducing Matrix 1.0 and the Matrix.org Foundation”. Matrix blog. 
  33. ^ „Synapse 1.0.0 released”. Matrix blog. 
  34. ^ „New Vector scores $8.5M to plug more users into its open, decentralized messaging Matrix”. TechCrunch (na jeziku: engleski). 10. 10. 2019. Pristupljeno 2019-12-18. 
  35. ^ online, heise. „Open Source: Bundeswehr baut eigene verschlüsselte Messenger-App”. heise online (na jeziku: nemački). Pristupljeno 2019-12-28. 
  36. ^ „Moznet IRC is dead; long live Mozilla Matrix!”. Matrix blog (na jeziku: engleski). Pristupljeno 2020-10-31. 
  37. ^ „Cross-signing and End-to-end Encryption by Default is HERE!!!”. Matrix blog. 
  38. ^ „Gitter is joining Element”. Element Blog. 2020-09-30. Pristupljeno 2020-11-01. 
  39. ^ „Welcoming Gitter to Matrix!”. Matrix blog (na jeziku: engleski). Pristupljeno 2020-11-01. 
  40. ^ „FOSDEM 2021: Building massive virtual communities in Matrix”. YouTube (na jeziku: engleski). Pristupljeno 31. 3. 2021. 
  41. ^ „Archived copy” (PDF). leastauthority.com. Arhivirano iz originala (PDF) 16. 5. 2022. g. Pristupljeno 22. 5. 2022. 
  42. ^ „Independent public audit of Vodozemac, a native Rust reference implementation of Matrix end-to-end encryption”. Matrix blog. 
  43. ^ Alex Balducci; Jake Meredith (18. 11. 2016). „Matrix Olm Cryptographic Review”. www.nccgroup.trust. Pristupljeno 2018-10-20. 
  44. ^ „Matrix's 'Olm' End-to-end Encryption security assessment released – and implemented cross-platform on Riot at last!”. matrix.org. 2016-11-21. Pristupljeno 2018-10-20. 
  45. ^ „matrix-org/matrix-appservice-gitter”. GitHub. 2018-09-27. Pristupljeno 2018-10-20. 
  46. ^ „matrix-org/matrix-appservice-irc”. GitHub. Pristupljeno 2018-10-20. 
  47. ^ „matrix-org/matrix-appservice-slack”. GitHub. Pristupljeno 2018-10-20. 
  48. ^ GitHub - matrix-org/matrix-appservice-purple: General purpose bridging using libpurple ., matrix.org, 2018-12-29, Pristupljeno 2018-12-31 
  49. ^ „Half-Shot/matrix-appservice-discord”. GitHub. Pristupljeno 2018-10-20. 
  50. ^ „tulir/mautrix-facebook”. GitHub. Pristupljeno 2020-04-27. 
  51. ^ A Matrix-Signal puppeting bridge, Tulir Asokan, 2021-02-06, Pristupljeno 2021-02-06 
  52. ^ skype-bridge, matrix.org, 2020-05-16, Pristupljeno 2020-05-16 
  53. ^ „tulir/mautrix-telegram”. GitHub. Pristupljeno 2018-10-20. 
  54. ^ „tulir/mautrix-whatsapp”. GitHub. Pristupljeno 2018-10-20. 
  55. ^ „beeper/linkedin”. GitLab. Pristupljeno 2022-07-03. 
  56. ^ „nheko-reborn.github.io”. nheko-reborn.github.io. Pristupljeno 2022-12-29. 
  57. ^ „GitHub: quotient-im/Quaternion”. GitHub. 
  58. ^ a b „matrix-org/synapse”. GitHub. Pristupljeno 2020-04-27. 
  59. ^ „matrix-org/dendrite”. GitHub. Pristupljeno 2020-04-27. 
  60. ^ „matrix-construct/construct”. GitHub. Pristupljeno 2020-04-27. 
  61. ^ „About the server · matrix-construct/construct Wiki” (na jeziku: engleski). Pristupljeno 2021-12-28. „Entered beta-testing stage around 2020-04-28. 
  62. ^ „Famedly / Conduit”. GitLab (na jeziku: engleski). Pristupljeno 2020-11-01. 
  63. ^ „mascarene/mascarene”. Gitlab. Pristupljeno 2020-04-27. 
  64. ^ „TI-Messenger | gematik”. www.gematik.de. 
  65. ^ „Germany's national healthcare system adopts Matrix!”. Matrix blog. 
  66. ^ „Bundeswehr | BwMessenger | Matrix | Defence case study”. 

Spoljašnje veze[uredi | uredi izvor]