Корисник:Milosnrt2321/песак

С Википедије, слободне енциклопедије
Matrix
Лого Matrix-а
Развијач(и)The Matrix.org Foundation CIC
Представљеносептембар 2014. год.; пре 9 година (2014-09)[1][није у датом извору]

Matrix (понекад стилизован као [matrix][оспорено ]) је отворени стандард и протокол за комуникацију који служи за реализовање комуникације у реалном времену. Његов циљ је да омогући комуникацију у реалном времену која беспрекорно ради између различитих провајдера сервиса, као што Simple Mail Transfer Protocol то омогућава за мејл сервисе, тако што корисницима са налогом код једног провајдера сервиса комуникације омогућава комуникацију са корисницима неког другог провајдера сервиса путем дописивања, интернет телефоније, и видео-конференција. Дакле, има сличну сврху попут протокола као што је XMPP, али није заснован ни на једном већ постојећем протоколу за комуникацију.

Из техничке перспективе, Matrix је протокол за комуникацију апликационог слоја и омогућава федеративну комуникацију у реалном времену. Пружа HTTP API-је и референтне имплементације отвореног кода за сигурну дистрибуцију и чување порука у JSON формату преко отворене федерације сервера.[2][3] Може да се интегрише са стандардним веб сервисима преко WebRTC-а, што омогућава креирање апликација које комуницирају путем веб-прегледача.

Историја[уреди | уреди извор]

Пројекат је започет у компанији Amdocs, кад су Метју Хоџсон и Амандин Пап почели да праве алатку за ћаскање под именом „Amdocs Unified Communications“.[4] Amdocs је затим финансирао већину даљег развоја од 2014. године до октобра 2017. године.[5] Matrix је освојио награду за иновацију на WebRTC 2014 Conference & Expo,[6] и награду за најбоље у изложби на WebRTC World 2015. године.[7] Након што је пуштен у рад 2014. године, протокол је добио похвале, као и нека упозорења. Критичари су нагласили да су остали покушаји у дефинисању отвореног протокола за мултимедијално сигнализирање или размену тренутних порука овог типа имали потешкоћа у томе да буду широко усвојени - на пример XMPP и IRCv3 су истакли који су изазови у томе, укључујући и технолошке и политичке.[8] Неки нису били сигурни да ли међу корисницима има довољно потражње за сервисе који омогућавају међуоперативност између провајдера.[9][10] 2015. године је основана подружница Amdocs-а која се називала „Vector Creations Limited“, у коју је прешло особље Matrix-а.[11]

Јула 2017. године је Amdocs умањио финансије пројекта и током наредних недеља је главни тим основао своју сопствену компанију засновану у Уједињеном Краљевству, „New Vector Limited“,[12] која је углавном створена како би подржала развој Matrix-а и Riot-а, који је касније преименован у Element.[13] Током овог временског периода било је више позива у помоћ који су били намењени заједници и компанијама које користе Matrix[14] да помогну у плаћању плата бар дела главног тима. Креирани су Patreon и Liberapay crowdfunding налози,[15] и главни тим је започео видео подкаст под именом Matrix „Live“ како би дародаваоце информисали о текућем развоју.[16] Ово је проширено путем недељног блог формата који се назива „This Week in Matrix“, где су заинтересовани чланови заједнице могли да читају или да објаве своје сопствене вести везане за Matrix.[17] Компанија је креирана са циљем пружања услуга консултације и плаћеног веб-хостинга Matrix сервера (као платформа названа modular.im, која је касније преименована у Element matrix services[18]) како би се остварили приходи.[19]

У првим недељама после оснивања компаније, Matrix тим и компанија Purism су објавили планове о сарадњи у процесу креирања Librem 5 мобилног телефона.[20] Телефон је по својој природи требао да се ослања на Matrix, тако што би уобичајене преинсталиране апликације за поруке и позиве користиле Matrix за размену порука, аудио и видео позива.[21]

Заједница KDE је 2017. године огласила да ради на додавању подршке овог протокола у свој IRC клијент Konversation.[22]

Компанија је крајем јануара 2018. године добила инвестицију од 5 милиона долара од стране Ethereum старт-апа Status.[23][24]

Француска влада је априла 2018. године објавила планове да креира свој сопствени алат за дописивање.[25] Рад на апликацији која је заснована на Riot-у и Matrix протоколу, која се називала Tchap по француском научнику Клоду Чапу, је започет почетком 2018. године[26] и програм је априла 2019. године пуштен на iOS и Андроид уређаје, и његов код је тада истовремено постао и јавно доступан.[27]

Октобра 2018. године је основана компанија под називом „The Matrix.org Foundation C.I.C.“,[28] чији је циљ да функционише као неутрални легални ентитет ради даљег развоја протокола.[29]

KDE заједница је фебурара 2019. године објавила планове да усвоји Matrix за потребе интерне комуникације, као децентрализовану алтернативу у односу на друге сервере за дописивање попут Telegram-а, Slack-а, и Discord-a, и користила би сопствену инстанцу сервера.[30]

Matrix.org продукциони сервери су компромизовани априла 2019. године,[31] међутим проблем није био везан за протокол и ово није директно утицало на остале кућне сервере.

Јуна 2019. године, Matrix протокол је изашао из бета верзије и Matrix фонданција је званично зачета.[32][33]

Октобра 2019. године, New Vector је прикупио још 8,5 милиона долара за развијање Matrix-а.[34]

Децембра 2019. године је немачко Министарство одбране објавило пробни пројекат звани BwMessenger, који представља алат за сигурно дописивање заснован на Matrix протоколу, Synapse серверу и Riot апликацији. Ово је било по угледу на француски Tchap пројекат. Владин дугорочни циљ је сигурна употреба сервиса за дописивање који покривају сва министарства и подређене званичнике.[35]

Децембра 2019. године је Mozilla објавила да ће Matrix почети да користи као замену за IRC. У обавештењу су рекли да ће замену да обаве крајем јануара 2020. године. Mozilla IRC сервер, irc.mozilla.org је угашен марта 2020. године и корисници су усмерени према chat.mozilla.org, њиховој Element инстанци.[36]

Маја 2020. године је Matrix омогућио end-to-end шифровање као подразумевано подешавање за приватне разговоре.[37]

Октобра 2020. године Element је стекао Gitter од GitLab-а.[38] Ово је значило да ће сви Gitter корисници прећи на Matrix.[39]

Марта 2021. године, matrix.org је објавио да постоји 28 милиона глобално видљивих налога.[40]

Протокол[уреди | уреди извор]

Matrix мрежа

Matrix-ови циљани случајеви употребе су интернет телефонија, Интернет ствари, и размена тренутних порука, укључујући групну комуникацију, као и дугорочни циљ да буде општи систем за разговоре и синхронизацију података на вебу. Протокол подржава сигурност и репликацију, одржавање потпуне историје разговора, без тачака контроле или квара. Постојећи сервиси за комуникацију могу да се интегришу са Matrix екосистемом.[2]

Доступан је клијентски софтвер за отворену федеративну размену тренутних порука, интернет телефонију, и комуникацију са Интернетом ствари.

Matrix стандард одређује RESTful HTTP API-је за сигурно преношење и репликацију JSON података између клијената, сервера и сервиса који поседују могућности употребе Matrix-а. Клијенти шаљу податке тако што их преко HTTP PUT методе шаљу у 'собу' на серверу, која затим копира те податке на све Matrix сервере који учествују у тој 'соби'. Ови подаци су потписани на начин који користи git како би се спречило фалсификовање, и федеративни саобраћај је шифрован са HTTPS и потписан са приватним кључем сваког сервера како би се спречило лажно представљање. Репликација прати семантику коначне конзистентности, што допушта серверима да функционишу чак иако су офлајн или након губитка података помоћу поновне синхронизације са осталим серверима који садрже изгубљену историју.

Olm библиотека пружа опционо end-to-end шифровање селективно по соби путем имплементације Double Ratchet алгоритма.[1] То осигурава да подаци разговора буду видљиви само учесницима собе. Кад је шифровање укључено, подаци који се шаљу преко Matrix-а су Matrix серверима видљиви само као ciphertext, и једино ауторизовани учесници собе могу да их дешифрују. Протокол за шифровање се зове Olm; Megolm је проширење Olm-а који је бољи за потребе великих соба. Постоје две главне имплементације:

  • vodozemac, тренутна референтна имплементација која је написана у програмском језику Rust. Имплементација је проверена 2022. године од стране Least Authority и њихови закључци су јавно доступни,[41] а Matrix тим је коментарисао на те закључке.[42] Провера је била делимично финансирана од стране немачке националне агенције за дигитализацију здравственог система (Gematik).
  • libolm, претходна референтна имплементација, је била проверена на пољу криптографије од стране NCC Group, чији су закључи јавно доступни,[43] и на које је Matrix тим дао одговор.[44] Провера је била спонзорисана од стране Open Technology Fund.

Премошћавање порука[уреди | уреди извор]

Matrix подржава премошћавање порука из других апликација у Matrix собе. Ови мостови су програми који се покрећу на серверу и комуницирају са серверима који не спадају у Matrix. Мостови могу да се понашају као заступници, и тада се поруке шаљу преко корисниковог индивидуалног налога, или као преносници, у ком случају бот шаље поруке.

Тренутно постоје званични мостови за:

Мостови значајних апликација које одржава заједница су:

Клијенти[уреди | уреди извор]

Element је референтна имплементација клијента. Такође постоје и следеће имплементације клијента, а потенцијално комплетнија листа се може пронаћи на сајту Matrix-а:

Имплементације клијента
Пројекат Програмски језик Коментар Платформе Статус Репозиторијум
Cinny Џаваскрипт Првенствено фокусиран на једноставан, елегантан, и сигуран интерфејс; написан у Reactjs помоћу matrix-js-sdk Веб и десктоп Стабилан GitHub: ajbura/cinny
Element Џаваскрипт Направљен од стране главног matrix.org тима Веб, десктоп, iOS, i Андроид Стабилан GitHub: vector-im/element-web
FluffyChat Дарт Написано у Flutter Веб, десктоп, iOS, i Андроид Стабилан GitLab: famedly/fluffychat
Fractal Rust Гном десктоп Стабилан GitLab: GNOME/fractal
NeoChat C++ Измењена верзија Spectral-а, употребом KDE развојних оквира, првествено Kirigami-ја, KConfig-а и KI18n-а. Десктоп, Plasma Mobile, i Андроид Стабилан Kde: network/neochat
Nheko C++ Направљен помоћу Кјут-а и C++17 Десктоп (Линукс, macOS, Виндоус и остали[56]) Стабилан GitHub: Nheko-Reborn/nheko
Quaternion C++ Вишеплатформски клијент заснован на Кјут5, референтна десктоп апликација која користи Quotient Десктоп (macOS, Виндоус, Линукси остали[57]) Стабилан GitHub: quotient-im/Quaternion

Сервери[уреди | уреди извор]

Synapse је референтна имплементација Matrix кућног сервера написана у Пајтону.[58] „Друга генерација Matrix кућног сервера“[59] звана Dendrite је у развоју од стране главног Matrix тима. Dendrite је у бета верзији.

Постоје следеће имплементације сервера, а потенцијално комплетнија листа се може пронаћи на сајту Matrix-а:

Имплементације сервера
Пројекат Програмски језик Коментар Статус Репозиторијум
Synapse[58] Пајтон Synapse је имплементација Matrix кућног сервера коју је развио главни matrix.org тим. Написана је у Пајтону 3/Twisted. Спремно за продукцију GitHub: matrix-org/synapse
Dendrite Гоу Dendrite је друга генерација Matrix кућног сервера написана у Гоу. Намерава да буде ефикасна, поуздана и скалабилнуа алтернатива Synapse-а. Бета верзија GitHub: matrix-org/dendrite
Construct[60] C++ Construct је кућни сервер оријентисан на перфомансе са минималним зависностима од других модула.

Он је први активни Matrix Матриx сервер самостално развијен од стране заједнице.

Бета верзија (од 2020-04-28)[61] GitHub: matrix-construct/construct
Conduit[62] Rust Ефикасни Matrix кућни сервер чији је циљ да буде лак за намештање и да ради без проблема.

Дизајниран је да се покреће на мини рачунарима којима је потребно мало снаге као што је Распбери пај.

Бета верзија (од 2021-09-01) GitLab: famedly/conduit
Mascarene[63] Скала Mascarene је имплементација кућног сервера отвореног кода за Matrix протокол. У развоју GitLab: mascarene/mascarene
Ligase Гоу Ligase представља Гоу имплементацију Matrix кућног сервера, која прати прописе дефинисане на matrix.org.

Користи је велики број финансијских институција за разне сценарије.

Спремно за продукцију GitHub: finogeeks/Ligase
Maelstrom Rust Matrix кућни сервер са високим перфомансама који је написан програмским језиком Rust. Дизајниран је да има складиште које може да се уштекава и да буде скалабилан и лак на ресурсима. Изгледа да је заустављен развој. Нема измена од 2020. године GitHub: maelstrom-rs/maelstrom

Усвајање[уреди | уреди извор]

Национални здраствени систем немачке за интерну комуникацију користи систем заснован на Matrix-у[64] (Ti-Messenger) за комуникацију у реалном времену између немачких здравствених организација и размену осетљивих података о пацијентима. Систем је развијен од стране немачке националне агенције за дигитализацију здравственог система (Gematik GmbH).[65]

Запослени Бундесвера (немачке оружане снаге) међусобно комуницирају и деле класификована документа преко приватне Matrix мреже користећи измењену верзију Matrix-ове Element апликације.[66]

Референце[уреди | уреди извор]

  1. ^ а б Ermoshina, Ksenia; Musiani, Francesca; Halpin, Harry (септембар 2016). „End-to-End Encrypted Messaging Protocols: An Overview”. Ур.: Bagnoli, Franco; et al. Internet Science. INSCI 2016. Lecture Notes in Computer Science. 9934. Florence, Italy: Springer. стр. 244—254. ISBN 978-3-319-45982-0. doi:10.1007/978-3-319-45982-0_22. 
  2. ^ а б Nathan Willis (2015-02-11). „Matrix: a new specification for federated realtime chat”. LWN.net. Приступљено 2015-06-28. 
  3. ^ Adrian Bridgwater (2014-09-09). „Matrix.org Reloads Inside "Illusion of Control" Vortex”. Dr. Dobb's Journal. Приступљено 2015-07-20. 
  4. ^ „Unified Communications”. amdocs. Архивирано из оригинала 2014-10-03. г. Приступљено 2018-11-04. 
  5. ^ „Who is Matrix.org?”. matrix.org. 2019-02-20. Архивирано из оригинала 2019-03-29. г. Приступљено 2018-10-20. 
  6. ^ „Award Winners of the WebRTC 2014 Conference & Expo”. Upperside Blog. 2014-12-23. Архивирано из оригинала 2015-03-15. г. Приступљено 2015-06-28. 
  7. ^ Phil Edholm (2015-05-18). „WebRTC World Miami Wrap Up and Review”. WebRTC. Приступљено 2015-06-28. 
  8. ^ Andrew Prokop (2015-02-23). „Solving the WebRTC Interoperability Problem - Post”. No Jitter. Приступљено 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. Приступљено 2015-06-22. 
  10. ^ Matt Weinberger (2014-09-16). „Matrix wants to smash the walled gardens of messaging”. ITworld. Приступљено 2015-07-20. 
  11. ^ „Linkedin entry for Vector Creations Limited”. Приступљено 2018-10-22. 
  12. ^ „Free company information from Companies House (UK Government)”. Companies House. Приступљено 2018-07-30. 
  13. ^ „New Vector - We believe the future will be open and decentralized”. New Vector. Приступљено 2018-10-20. 
  14. ^ „A Call to Arms: Supporting Matrix!”. matrix.org. 2017-07-07. Приступљено 2018-10-20. 
  15. ^ „Hello world! | Matrix.org on Patreon”. Patreon. Приступљено 2018-11-04. 
  16. ^ Matrixdotorg (2017-07-21), Matrix Live - Episode 1: July 14th 2017, Приступљено 2018-10-22 
  17. ^ „This Week in Matrix”. matrix.org. Приступљено 2018-10-22. 
  18. ^ „Element Secure instant messenger | Riot.im download | End-to-end messages encryption and open network”. Element. Приступљено 2020-11-01. 
  19. ^ „Awesome hosting for Matrix”. www.modular.im. Приступљено 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. Приступљено 2018-11-04. 
  21. ^ „Librem 5 – A Security and Privacy Focused Phone”. shop.puri.sm. Приступљено 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. Приступљено 2018-10-20. 
  24. ^ „Status Invests $5M In Riot.im”. Status Blog. 2018-01-29. Архивирано из оригинала 2018-01-30. г. Приступљено 2018-10-20. 
  25. ^ Rosemain, Mathieu. „France builds WhatsApp rival due to surveillance risk”. U.S. Приступљено 2018-11-04. 
  26. ^ Kaminsky, Jean (2018-04-22). „L'Etat lance un "Telegram" à la française cet été, ouvert à tous”. Solutions Numériques (на језику: француски). Приступљено 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 (на језику: енглески). Приступљено 2019-12-28. 
  28. ^ „THE MATRIX.ORG FOUNDATION – Overview (free company information from Companies House)”. Companies House. Приступљено 2018-11-04. 
  29. ^ „Introducing the Matrix.org Foundation (Part 1 of 2)”. matrix.org. 2018-10-29. Приступљено 2018-11-04. 
  30. ^ Michael Larabel (2019-02-20). „KDE To Support Matrix Decentralized Instant Messaging”. Phoronix. Приступљено 2019-02-20. 
  31. ^ „We have discovered and addressed a security breach”. Matrix.org. Приступљено 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 (на језику: енглески). 10. 10. 2019. Приступљено 2019-12-18. 
  35. ^ online, heise. „Open Source: Bundeswehr baut eigene verschlüsselte Messenger-App”. heise online (на језику: немачки). Приступљено 2019-12-28. 
  36. ^ „Moznet IRC is dead; long live Mozilla Matrix!”. Matrix blog (на језику: енглески). Приступљено 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. Приступљено 2020-11-01. 
  39. ^ „Welcoming Gitter to Matrix!”. Matrix blog (на језику: енглески). Приступљено 2020-11-01. 
  40. ^ „FOSDEM 2021: Building massive virtual communities in Matrix”. YouTube (на језику: енглески). Приступљено 31. 3. 2021. 
  41. ^ „Archived copy” (PDF). leastauthority.com. Архивирано из оригинала (PDF) 16. 5. 2022. г. Приступљено 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. Приступљено 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. Приступљено 2018-10-20. 
  45. ^ „matrix-org/matrix-appservice-gitter”. GitHub. 2018-09-27. Приступљено 2018-10-20. 
  46. ^ „matrix-org/matrix-appservice-irc”. GitHub. Приступљено 2018-10-20. 
  47. ^ „matrix-org/matrix-appservice-slack”. GitHub. Приступљено 2018-10-20. 
  48. ^ GitHub - matrix-org/matrix-appservice-purple: General purpose bridging using libpurple ., matrix.org, 2018-12-29, Приступљено 2018-12-31 
  49. ^ „Half-Shot/matrix-appservice-discord”. GitHub. Приступљено 2018-10-20. 
  50. ^ „tulir/mautrix-facebook”. GitHub. Приступљено 2020-04-27. 
  51. ^ A Matrix-Signal puppeting bridge, Tulir Asokan, 2021-02-06, Приступљено 2021-02-06 
  52. ^ skype-bridge, matrix.org, 2020-05-16, Приступљено 2020-05-16 
  53. ^ „tulir/mautrix-telegram”. GitHub. Приступљено 2018-10-20. 
  54. ^ „tulir/mautrix-whatsapp”. GitHub. Приступљено 2018-10-20. 
  55. ^ „beeper/linkedin”. GitLab. Приступљено 2022-07-03. 
  56. ^ „nheko-reborn.github.io”. nheko-reborn.github.io. Приступљено 2022-12-29. 
  57. ^ „GitHub: quotient-im/Quaternion”. GitHub. 
  58. ^ а б „matrix-org/synapse”. GitHub. Приступљено 2020-04-27. 
  59. ^ „matrix-org/dendrite”. GitHub. Приступљено 2020-04-27. 
  60. ^ „matrix-construct/construct”. GitHub. Приступљено 2020-04-27. 
  61. ^ „About the server · matrix-construct/construct Wiki” (на језику: енглески). Приступљено 2021-12-28. „Entered beta-testing stage around 2020-04-28. 
  62. ^ „Famedly / Conduit”. GitLab (на језику: енглески). Приступљено 2020-11-01. 
  63. ^ „mascarene/mascarene”. Gitlab. Приступљено 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”. 

Спољашње везе[уреди | уреди извор]