Door Tijs Hofmans

Nieuwscoördinator

Matrix: decentraal chatprotocol

Onverwacht populair bij bedrijven

03-10-2022 • 06:00

75

Matrix

Afspreken met Matrix-oprichter Matthew Hodgson is een stuk makkelijker dan je zou denken. Een link naar een meeting op element.io, de zelfgebouwde chatapp, leidt meteen naar een videomeeting zoals we die sinds de coronacrisis al honderden keren hebben bijgewoond. De lay-out is direct herkenbaar: een groot picture-in-picturescherm met onderin bedieningsknoppen voor webcam en microfoon, en aan de zijkant een chatfunctie. Het grote verschil is dat dit interview via een gedecentraliseerd, versleuteld netwerk wordt opgezet. Een ander verschil is dat Hodgson, in tegenstelling tot Zoom, Microsoft of Google, heel andere idealen heeft dan het binnenhalen van Silicon Valley-kapitaal en hij niet voor maximale groei en winst wil gaan. De oprichter van het decentrale chatprotocol Matrix wil het internet terugbrengen naar hoe het vroeger was, niet met een individuele app of dienst, maar met een protocol dat zich kan meten met http of smtp.

Wat is Matrix?

Matrix is een chatprotocol, vergelijkbaar met xmpp, maar met het grote verschil dat het versleuteld is en decentraal werkt. De Matrix-standaard beschrijft de werking van een serie JSON-api's waarmee zowel IM- als voip-communicatie kan plaatsvinden. Matrix kan zelfs gebruikt worden voor het opzetten van iot-communicatie, maar dat gebeurt in de praktijk weinig. Een Matrix-gebruiker meldt zich aan in een room op een server. Dat kan zowel de server van een derde partij zijn als een zelfgehoste server. Het Matrix-protocol is federated, wat betekent dat het kan werken tussen verschillende servers. Zo kunnen twee zelfhostende gebruikers toch met elkaar praten in dezelfde room. Het protocol voorziet in verschillende standaardfuncties die chatprotocollen moeten ondersteunen, zoals gebruikersmanagement voor rooms, profielbeheer voor het gebruik van avatars en nicknames, en het beheren van accounts. Weinig spannends, maar de software doet daarmee precies wat je verwacht en hoopt van een dergelijk programma.

Matrix Element

De belangrijkste ondersteuning van het protocol is die van end-to-endencryptie. Matrix heeft zelf twee encryptiestandaarden gemaakt: Olm, voor het versleutelen van een-op-eengesprekken en Megolm, voor groepsgesprekken. Die versleuteling is wat Matrix het meest onderscheidt van andere openbare chatprotocollen, met name xmpp, dat berichten alleen in plaintext verstuurt.

Het derde onderdeel, waarmee het plaatje compleet is, is de bridgemodus. Bridges zijn bedoeld om Matrix-chats te integreren in andere chatdiensten, zoals Slack en Signal. Zo'n bridge kan in veel gevallen overweg met de functies die in de originele client worden aangeboden, zoals leesbevestigingen in Slack en groepsgesprekken in Instagram, hoewel sommige functionaliteit ontbreekt. Ook een belangrijke kanttekening: bridges maken end-to-endencryptie stuk. Berichten worden dan versleuteld tussen de client en de bridge, maar wat er tussen de bridge en de externe app gebeurt, hangt af van de ontwikkelaar.

Groeiend aantal gebruikers

matrix Megolm
Matrix heeft eigen encryptiestandaarden: Olm en Megolm.

Ontwikkelaars kunnen al die documentatie en broncode gebruiken om hun eigen apps te maken, die via de bridges ook onderling kunnen samenwerken. Daarmee is Matrix anders dan de tientallen privacyvriendelijke chatapps die er inmiddels zijn. In tegenstelling tot bij Signal, Wickr, Wire, Threema en WhatsApp hoeven gebruikers niet al hun vrienden mee te nemen naar een alternatief. In theorie moet dat de adoptie ten goede komen, al zul je waarschijnlijk vooralsnog weinig Matrix-gebruikers in je contactenlijst hebben staan. Onlangs behaalde Matrix de mijlpaal van zestig miljoen gebruikers wereldwijd. Die zijn verspreid over tientallen apps waarvan iedereen, van hobbyist tot Silicon Valley-start-up, iets kan maken. Het leeuwendeel van Matrix wordt nu gebruikt door een handjevol instellingen, zoals de Duitse gezondheidssector en de Franse overheid. Dat is niet helemaal hoe Hodgson het aanvankelijk voor zich zag.

WhatsApp-klonen

Hodgson is niet nieuw in de wereld van chatprotocollen en soortgelijke tools. Voordat hij met Matrix aan de gang ging, werkte hij voor telecomproviders waar hij 'klonen van WhatsApp maakte'. "We maakten proprietary software die ook nog eens niet versleuteld was en in een eigen silo zat, allemaal terwijl WhatsApp de wereld aan het veroveren was", vertelt hij aan Tweakers. Daar had hij weinig zin meer in. Hodgson zag meer heil in een eigen app met de idealen die je vroeger op internet zag. "Het web is fantastisch, maar iedereen doet hetzelfde." Apps werken onderling niet samen, iedereen maakt zijn eigen silo, bedoelt hij. Hij wilde iets anders doen.

Dat 'iets anders' vergelijkt hij met protocollen als DNS, XMPP en http. "Instant messaging en voip kwamen net te laat uit. Als het eerder was uitgekomen, had het zich op dezelfde manier kunnen ontwikkelen als die andere protocollen. In plaats daarvan gingen bedrijven er meteen mee aan de slag en werd het allemaal proprietary." Hodgson is een idealist. Hij vindt dat ook IM en voip meer open zouden moeten zijn, omdat dat zou leiden tot een decentraal netwerk, zoals het web en het domain name system dat nu zijn.

Spraakassistent voor WhatsApp

Concreet moet dat ertoe leiden dat ontwikkelaars makkelijker open software, maar ook tools kunnen bouwen. Niet alleen een chatapp die voor iedereen beschikbaar is, maar ook tools voor boven op die apps. Door alles rondom Matrix en Element open source aan te bieden, kan dat makkelijk. Dat zoveel software vandaag de dag proprietary is, 'smoort de ontwikkeling', denkt Hodgson. Als voorbeeld noemt hij een stemassistent. Die zou hij zelf graag bouwen. "Een soort Siri-achtige tool, maar de meeste chatgebruikers zitten op WhatsApp. Daar kan ik geen spraakassistent voor bouwen of ik kan er in ieder geval geen goed bedrijf omheen bouwen."

Dat is het doel van Matrix én van het achterliggende bedrijf, Element. Je hebt inmiddels een uitgebreid schema nodig om de ingewikkelde naamgeving van alle apps rondom het protocol in de gaten te houden. Hodgson begon zijn werk aan Matrix in 2014. De eerste bèta kwam in 2017 uit. Daarna richtten Hodgson en zijn collega's een bedrijfje op, genaamd Element. Dat bouwt een gelijknamige chatclient. Vroeger noemde Element de app nog Riot en heette het bedrijf New Vector. Dat is nu allemaal Element geworden, zowel de app als het bedrijf. Matrix zelf is bovendien niet alleen een protocol, maar ook de naam van de gelijknamige stichting, de Matrix Foundation. Die onderhoudt het protocol, maar biedt ook weer de onderliggende infrastructuur aan waarop gebruikers zelf Matrix-servers kunnen hosten.

Vlaggenschip-apps

Element is het commerciële bedrijf dat de Element-app maakt op basis van het Matrix-protocolVolgens Hodgson is het allemaal niet zo moeilijk. "Element is een for profit-organisatie die vooral bedoeld is om bij ons de lichten te laten branden", zegt hij. "Die maakt mooie vlaggenschip-apps. Daarnaast schrijven we referenties, zoals gidsen en documentatie." Ondertussen is Element zowel voor het web als voor mobiele apparaten gratis te gebruiken door eindgebruikers. Sterker nog, de broncode staat overal op GitHub en het hele ideaal achter Matrix is een opensourcesoftwarepakket aan te bieden.

Hodgson vergelijkt het werk van Matrix met dat van Red Hat. "Het is hetzelfde verdienmodel. We maken software, maar pakken die ook in met een mooie strik eromheen en verdienen daar ons geld mee." Het is een ambitieus project, geeft hij zelf toe. Hij noemt Matrix 'een moonshot', een stip op een verre horizon met open en gratis software die desondanks veilig is. "We bouwen niet alleen een app, maar een hele industrie. Het goede nieuws is dat die moonshot succesvol lijkt te zijn. Element is succesvol, maar er zijn start-ups in Duitsland die hun eigen succesvolle verdienmodellen opzetten op basis van het protocol." Hij noemt diensten als Beeper, een chatapp die verschillende chatdiensten bij elkaar voegt en gebruikers daarvoor laat betalen.

Geeky web voor early adopters

In de praktijk levert dat, in ieder geval voor eindgebruikers, een wirwar van apps op, met weinigzeggende namen als quadrix, Nio, Nheko, gotktrix en kavz. Natuurlijk hebben die allemaal hun eigen voor- en nadelen. Sommige zijn geschikt voor offline gebruik, andere hebben weer extra ondersteuning voor shortcuts. De ene is in Rust en de andere in Go geschreven, maar wat je daar als eindgebruiker nou mee moet, is vaag. Het anarchistische gevoel van het vroege internet herken je er meteen in terug, maar voor nieuwkomers van de app kan dat nogal overweldigend en intimiderend overkomen. Waar begin je in hemelsnaam?

Matrix clients
Een greep uit de tientallen verschillende Matrix-clients

Hodgson erkent dat. "Het idee was aanvankelijk om het echte geeky web uit te bouwen tot een dienst die normale mensen zouden willen gebruiken. De apps die er nu zijn, zijn nog steeds zo geeky; we zijn daar nog lang niet. Voorlopig zien we dat het vooral geeks zijn die het als early adopters gebruiken." Hodgson zegt dat een groot deel van de ontwikkeltijd en -moeite gaat naar het oppoetsen van de Element-app.

Grote bedrijven en zakelijke gebruikers

Als je Hodgson hoort over Matrix en Element, lijkt hij de dienst vooral te zien als een concurrent voor WhatsApp en populaire alternatieven. Hij ziet een digitale utopie voor zich, waarbij miljarden aardbewoners niet communiceren met de gesloten software van Mark Zuckerberg, maar met een decentraal opensourcealternatief. Hij is verre van de enige met die droom. Signal wil WhatsApp zijn zonder metadataverzameling, Threema wil WhatsApp zijn met een duidelijker verdienmodel, Wire wil WhatsApp zijn met betere beveiliging en nu wil Matrix WhatsApp zijn met meer decentralisering. Toch denkt Hodgson daar iets anders over. "Je kunt Element in ieder geval niet zomaar vergelijken met die andere apps", zegt hij. "Threema is bijvoorbeeld ook proprietary, de api is betaald. Wire beweegt zich wel richting decentralisatie, maar is daar nog lang niet." Bovenal, zegt hij, maakt het hem niet uit hoeveel eindgebruikers zijn chat-app Element heeft. "Element wil niet meer Element-gebruikers, we willen meer Matrix-gebruikers." Welke app ze daarvoor gebruiken, is Hodgson om het even.

De gebruikers die Matrix nu aan zich weet te binden, zijn vooral zakelijke gebruikers. Het Duitse gezondheidsconsortium gematik besloot bijvoorbeeld in 2021 volledig over te stappen op een nieuwe chatapp op basis van Matrix. Dat leverde in één klap 150.000 nieuwe gebruikers op. In 2018 ging de Franse overheid over; zij gebruikte een fork van Element, dat toen nog Riot heette, als vervanger van WhatsApp of Telegram.

Franse overheid

Hodgson zag dat niet aankomen. Hij en zijn collega's waren volledig ingericht op ontwikkelingen voor consumenten. "Ik was een idioot. Ik had nooit gedacht dat uitgerekend overheden de eersten zouden worden die Matrix gingen gebruiken. Toen kwam het Franse ministerie van Digitale Zaken naar ons toe, omdat het problemen had met zijn communicatiestructuur. President Macron gebruikte Telegram om te communiceren, ook over staatsgeheimen. Dat verschuift de machtsbalans in zo'n land en dus ging de overheid op zoek naar oplossingen."

Dat betekent wel dat het Matrix-team plotseling een heel andere kant op moest. Hodgson zegt dat de ontwikkeling is vertraagd. "Het betekende dat we ons minder kunnen richten op mainstreamgebruikers-apps." Het team werkt nu bijvoorbeeld meer aan functies, zoals antivirus, want dat is waar zakelijke gebruikers meer behoefte aan hebben. "Dat is altijd lastig te ontwikkelen voor software met end-to-endencryptie."

Pandemieboost

Zoals veel andere chatapps kreeg Matrix een boost tijdens de coronacrisisZoals veel andere communicatiesoftware zag ook Matrix zijn populariteit stijgen tijdens de coronacrisis. Bij veel bedrijven moesten de medewerkers halsoverkop thuis gaan werken. Ze kregen niet alleen te maken met praktische obstakels, zoals welke tool het best werkt of hoe je je afstandswerk indeelt, veel sectoren zagen ook juridische problemen. De gezondheidssector of financiële bedrijven moeten bijvoorbeeld voldoen aan wettelijke eisen rondom hun communicatie. Die kunnen niet zomaar overstappen op Google Meet of Microsoft Teams. Hodgson zegt dat ruim een derde van alle bedrijven niet zomaar van die apps gebruik kon maken. "Die zijn namelijk niet versleuteld, maar dat hadden ze wel nodig." Om die reden klopte de Duitse gezondheidsdienst dan ook bij Matrix aan. "De pandemie dwong bedrijven naar een decentrale optie. Je kunt Teams uit het oogpunt van compliance niet zomaar gebruiken."

De trend naar dergelijke software gaat volgens Hodgson wel al langer terug. Dat is al zo sinds Git, zegt hij. "Dergelijke decentrale diensten werkten altijd al goed." Ook schandalen die privacyvoorvechters vaker aanhalen als keerpunten, waren voor Matrix belangrijk. Het Cambridge Analytica-schandaal bij Facebook bijvoorbeeld: "Daardoor realiseerden mensen zich dat een groot advertentiebedrijf als monoliet nadelig is."

Europese marktwaakhonden

Hodgson ziet het denken bij beleidsmakers veranderen in het voordeel van decentralisatie. Hij verwijst naar zijn eerdere voorbeeld, over een spraakassistent voor WhatsApp. "Zowel de Europese Unie als het Verenigd Koninkrijk ziet steeds meer in dat dat anticompetitief gedrag is. Ze treden daar ook vaker tegen op." Specifiek de Digital Markets Act is volgens Hodgson een stap in de goede richting.

De argumenten van Hodgson klinken soms wat sleets, of misschien is 'retro' een beter woord. Wie zich een beetje verdiept in privacyvriendelijke alternatieven voor bestaande diensten, heeft ze al honderd keer voorbij zien komen. Het klopt allemaal wel; bij ieder Facebook-schandaal zie je apps als Signal een klein duwtje in gebruikersaantallen krijgen, maar op de lange termijn blijft de grote exodus van WhatsApp nog steeds uit. Element kent bescheiden succesjes waarbij start-ups aan de slag gaan met het onderliggende protocol en het aantal actieve gebruikers stijgt inderdaad, maar vooralsnog blijft Matrix de moonshot die Hodgson zegt dat het is en niet de knaller waar hij van droomt.

Metaverse en p2p

Voor de toekomst staan er nog twee belangrijke ontwikkelingen op de planning, die ook veel tijd kosten. Het ene is om een peer-to-peerprotocol aan chats toe te voegen. Daarvan bestaat al sinds 2020 een alfaversie, maar uiteindelijk wil Hodgson er een volwaardig Zoom-alternatief voor maken, zegt hij. "Als Matrix peer-to-peer wordt, haal je de server als het ware de app in. Dat maakt het allemaal nóg decentraler." Dat is pas een moonshot; Matrix heeft er zelfs een website voor opgezet, arewep2pyet.com. Spoiler alert: 'not yet'.

Daarnaast wil Matrix in de toekomst zijn naam eer aandoen en kijken naar een echte Matrix-achtige ontwikkeling: de metaverse. De makers bouwen aan Third Room, een decentrale metaverse 'zonder cryptovaluta, nft's en walled gardens'. Hodgson en zijn team zitten dus voorlopig nog niet om werk verlegen.

Third room

Reacties (75)

Sorteer op:

Weergave:

Matrix is een chatprotocol, vergelijkbaar met xmpp, maar met het grote verschil dat het versleuteld is en decentraal werkt.
Een ander verschil is dat XMPP een IETF standaard is (RFC6120) en Matrix een zelfverklaarde 'open standaard'. Het wemelt tegenwoordig van de 'open' initiatieven, maar het Internet is groot geworden door standaarden waar via een wereldwijd erkende organisatie een breed draagvlak voor is. Dat draagvlak heeft een hoge prijs: jarenlang drafts en proposals schrijven, testen, pilotten, reizen, vergaderen. Die prijs moet echter betaald worden, anders blijven we torens van Babel bouwen.
met name xmpp, dat berichten alleen in plaintext verstuurt
XMPP zelf wel, maar in de praktijk word daar obv het XMPP Extension Protocol (XEP) e2e encryptie aan toegevoegd met b.v. OMEMO. Toegegeven, net als bij e-mail is dat nog een vrij moeizaam proces.
Dat is natuurlijk wel heel kort door de bocht. Iets hoeft niet door de IETF of een andere specifieke organisatie uitgegeven te worden om een open standaard te zijn; het gaat erom dat de standaard in de praktijk geadopteerd wordt, en dat er een open proces is om de toekomst ervan te bepalen. Dat alles geldt net zo goed voor Matrix.
Dat draagvlak heeft een hoge prijs: jarenlang drafts en proposals schrijven, testen, pilotten, reizen, vergaderen. Die prijs moet echter betaald worden, anders blijven we torens van Babel bouwen.
Heb je daadwerkelijk naar het standaardiseringsproces van Matrix gekeken? Want dat gebeurt ook daar allemaal gewoon. Ik vind het wat vreemd om hier te impliceren dat het allemaal maar wat broddelwerk is van een enkeling, puur omdat er geen IETF-stempeltje op zit; dat is absoluut niet het geval.

[Reactie gewijzigd door svenslootweg op 22 juli 2024 13:22]

Iets hoeft niet door de IETF of een andere specifieke organisatie uitgegeven te worden om een open standaard te zijn
Dat ben ik niet me je eens. Als het niet van begin af door een standaardisatie organisatie gecoördineerd wordt is er een groot risico dat het nodige draagvlak er niet komt. En dan blijven er paddenstoelen als Signal en Telegram uit de grond schieten.

Ik vind het trouwens wel heel indrukwekkend wat matrix.org allemaal onderneemt. En ik begrijp van @Samueldw hierboven dat ze wel degelijk stappen richting IETF ondernemen.

Achtergrond van mijn zorgen: toen rond 1990 het Internet tot stand kwam waren er ook allerlei multinationals en consortiums die probeerden een voet tussen de deur te krijgen met andere 'standaarden' dan TCP/IP, SMTP, DNS en HTML. Het is aan de vasthoudendheid van organisaties als NSF, Cern, RIPE, SURF enz. te danken dat het Internet zo universeel toegankelijk is geworden. Daar is heel wat strijd voor geleverd. Lobbyisten van bedrijven als Microsoft, Compuserve en IBM waren enorme stoorzenders.
"History is written by victors"

Laten we nou niet doen alsof TCP/IP, SMTP, DNS en HTML de beste keuzes zijn geweest.
Ik zeg niet dat ze dat niet zijn.. enkel dat het louter de winnaars waren.
Je hebt het over éérst een standaardisatie organisatie en dán een standaard.. beetje kip ei verhaal mijns inziens. De volgorde maakt volgens mij niet enorm veel uit.. als Matrix succesvol wordt/blijkt dan kunnen zij toch gewoon prima een standaardisatie organisatie opzetten waar anderen zich bij aan kunnen sluiten?

Laten we vooral niet al te veel focussen op welk stempeltje van welke belangenorganisatie er op welk product geplakt zit, en gewoon oordelen op de inhoud. Ja, draagvlak en adoptie is in een geval als dit uitermate belangrijk, maar volgens mij zijn we toch tegenwoordig wel nuchter genoeg dat ideeën als "dit grote bedrijf/consortium ondersteunt het dus het zal wel goed zijn" enkel een kreun zouden moeten opleveren.

Het BitTorrent protocol had ook geen IETF stempeltje, en was zeer zeker niet bedacht/gebouwd door een consortium aan grote namen, en toch is dat hét de-facto p2p file-sharing protocol dat de test des tijds doorstaan heeft. ;)

[Reactie gewijzigd door Ayporos op 22 juli 2024 13:22]

XMPP is ook door heel wat bedrijven omarmd, en weer laten vallen… ik vraag me nog steeds wel eens af waarom dat niets is geworden.

Bij matrix gaan we het zien. Ze zijn natuurlijk wel ventured capital gebaseerd dus dat idealisme zal denk ik zo lang duren als de investeerders er geld tegenaan gooien - daar hebben wij bij Nextcloud ook ervaring mee opgedaan, het is een val waar wij niet meer intrappen. Vraag me trouwens wel af waar die 60 miljoen gebruikers zijn. De Franse overheid en Duitse gezondheidszorg zijn niet zo groot - volgens het interview honderdduizenden - dus daar zit het niet. Wie zijn het dan? Of zijn dit alle accounts ooit aangemaakt op het netwerk, incl bridges etc?
Wat ik me afvraag, als Nextcloud-fan, kan Nextcloud Talk niet óók in dat Matrix-protocol? Het zou zo fijn zijn voor adaptie door meer en meer mensen. Iedereen wil cloud-opslag, iedereen wil bestanden kunnen delen, iedereen wil chatten. Daarnaast willen bedrijven nog van alles. Maar in principe heeft Nextcloud met Talk dit alles al bij elkaar, fijn als dat losgekoppeld kan worden én integreert.
Ons principe bij federatie is dat de eigenaar/gebruiker in controle blijft van hun data. Dat is niet compatibel met matrix, wat je data synchroniseert. Dat schaalt ook veel minder goed daar je veel data nutteloos aan het rondpompen bent. Wij ondersteunen hele grote installaties dus dat is ook een issue. We willen wel met matrix bridgen (kan al met matterbridge in Nextcloud) maar native - ik weet het niet. Misschien… als matrix echt populair wordt is er wel een betere reden om het te doen, of als er vraag komt van wat specifiek grote klanten.
Ze zijn wel bezig om het ook daadwerkelijk tot een standaard te maken, alleen dat kost nogal wat tijd:
https://matrix.org/blog/c...n-matrix/2#spec-core-team
Dat wist ik nog niet, ook dat MIMI kende ik niet. Misschien komt het dan toch ooit goed. Maar ik blijf het gevoel houden: waarom hebben we Matrix nodig? XMPP is er al 20 jaar. Het heeft zich alleen te weinig ontwikkeld omdat de grote massa zich heeft laten verleiden om MSN Messenger, WhatsApp, Facebook enz. te gaan gebruiken.
XMPP heeft drie primaire problemen:

1. De mengelmoes aan clients en feature support betekent dat het bijna onmogelijk is om een overlap in featureset tussen gebruikers te vinden, waardoor je in de praktijk doorgaans uitkomt op een text-only protocol. Dat is niet houdbaar voor algemeen gebruik. Dit is vrijwel niet op te lossen, omdat er al zoveel gebouwd is onder de aanname dat het niet uitmaakt dat er geen feature parity is; teveel legacy implementaties.

2. Rooms ("MUCs") in XMPP zijn gecentraliseerd op een server. Dat betekent dat als de server waarop je je room gemaakt hebt verdwijnt, je hele community ook ineens weg is, en het is heel moeilijk om daarvan te herstellen zonder mensen kwijt te raken. Matrix heeft om deze reden decentrale rooms (die dit probleem niet hebben), en dit is niet retroactief in XMPP te implementeren zonder praktisch een nieuw protocol ervan te maken. Ook dat is niet houdbaar voor algemeen gebruik.

3. Er is een langlopend cultuurprobleem binnen de XMPP-community omtrent UX, waar UX doorgaans als iets onnodigs gezien wordt en weggehoond wordt, want "mensen moeten het maar leren gebruiken". Dat zie ik ook weer terug in je verwoording over hoe "de grote massa zich heeft laten verleiden" (i.p.v. te erkennen dat het XMPP-ecosysteem misschien wel gewoon niet goed genoeg is voor die mensen).

Zo'n probleem is bijna niet op te lossen, en de effecten hiervan zie je ook in hoe de spec en de bijbehorende community ontwikkeld worden. Dan is het makkelijker en sneller om gewoon opnieuw te beginnen, en niet voor ieder UX-wissewasje een horde mensen te hoeven overtuigen die vooral graag naar redenen zoeken om te doen alsof het probleem niet bestaat.

Waar het op neerkomt is dat een open chatprotocol alleen maar succesvol kan zijn als de community eromheen het als hun taak ziet om aan de verwachtingen van gebruikers te voldoen, en niet andersom. Bij Matrix is dat het geval; bij XMPP niet. En dat kun je niet oplossen met een spec change.

(Achtergrond: ik heb zelf een tijdje XMPP-dingen ontwikkeld, en ben nu betrokken bij het Matrix-ecosysteem.)

[Reactie gewijzigd door svenslootweg op 22 juli 2024 13:22]

Ik heb zelf een tijdje wat met XMPP gespeeld maar het is een heel gedoe om een client te vinden die alle standaarden die ik wil gebruiken ondersteunt en dan heb je het nog niet eens over de andere kant van het gesprek. Je hebt substandaarden als Modern XMPP maar als eindgebruiker heb ik geen idee welke apps nou wel of niet met die standaard werken.

Qua protocol en serversoftware vind ik XMPP veel beter (al was XMPP niet echt met multi client en server side storage op het oog ontwikkeld omdat het een hele vroege speler was, maar daar heb je XEP's voor) maar qua ecosysteem ben ik toch naar Matrix gegaan. XMPP heeft op een gegeven moment succes gehad tot Google Chat en Facebook zich afzonderen en daarna lijkt de interesse flink afgezakt te zijn. Aan de Matrix-kant vindt nog actieve ontwikkeling plaats die je makkelijk kunt volgen, bij XMPP valt dat nogal tegen.

Ik heb een jaar of acht geleden versleutelde XMPP gebruikt in een bedrijfscontext en dat werkte prima als iedereen maar dezelfde client gebruikte. Toch heb ik bij Matrix clients een veel moderner gevoel dan bij wat ik van XMPP heb kunnen proberen, met Discord-kloons als Cinny in het voortouw qua gebruiksvriendelijkheid. Niet heel origineel, maar bijzonder doeltreffend.

Ik mis wel een goede native applicatie voor Matrix, daar is XMPP dan wel veel beter in. Het huidige ecosysteem is gebouwd op Python en Javascript met hier en daar een vleugje Rust of Go, maar de basis draait niet bepaald op een platform wat bekend staat om de uitstekende performance. Ik zie Fractal (next) wel langzaam richting release bewegen, dat kan nog wel eens de applicatie worden waar ik op heb gewacht.
Ik heb conversations.im client en ook een account daar. Ik kan communiceren met een groep(je) mensen die achter een eigen server zitten, als ik het goed heb een jitsi server.
Het lijkt mij een enorm interessant alternatief. Wel heb ik enkele vragen en ik hoop dat enkele mede Tweakers deze kunnen beantwoorden:
  • Als ik een Matrix server opzet, kan ik het dan zo maken dat bijvoorbeeld mijn vrienden/familie/collega's hier ook op aan kunnen melden? Wat als ik deze server stop, kunnen zij dan elders aanmelden zonder verlies van configuratie/geschiedenis/etc.?
  • Mensen hebben hier de Playbooks gedeeld waar o.a. ook bridges in vermeld worden. Hoe werken deze bridges en hoe werkt dit binnen de app? Kan ik een dergelijke bridge aanmaken waarmee ik berichten kan ontvangen/versturen via Matrix?
  • Als ik een bridge toevoeg, kunnen mijn vrienden/familie/collega's die ook op mijn Matrix server dan ook hun Whatsapp bridgen, of geldt dit alleen voor mij?
Als ik een Matrix server opzet, kan ik het dan zo maken dat bijvoorbeeld mijn vrienden/familie/collega's hier ook op aan kunnen melden?
Zover ik weet wel.
Wat als ik deze server stop, kunnen zij dan elders aanmelden zonder verlies van configuratie/geschiedenis/etc.?
Nee, zover ik weet is account migratie nog relatief beperkt en moet dus ook actief gedaan worden. Accounts zelf zijn dus niet federated.
Mensen hebben hier de Playbooks gedeeld waar o.a. ook bridges in vermeld worden. Hoe werken deze bridges en hoe werkt dit binnen de app? Kan ik een dergelijke bridge aanmaken waarmee ik berichten kan ontvangen/versturen via Matrix?
De term "bridge" is een beetje een container begrip waamee in de meeste brede zin van het woord een brug wordt geslagen tussen verschillende protocollen. In de praktijk kan dat op verschillende manieren en op verschillende lagen.

Op persoonlijk niveau: Hierbij zal de matrix bridge dienen als client voor het andere protocol. Eentje die je standaard veelal tegenkomt is een IRC bridge waarmee je dus vanuit matrix verbinding kan maken met IRC servers.

Op kanaal/room niveau: Hierbij wordt het gehele verkeer tussen kanalen gespiegeld. Om even bij IRC te blijven, in het IRC kanaal zit dan een bot die alles vanuit dat kanaal zal doorsturen naar het matrix kanaal en vanuit matrix gebeurt hetzelfde andersom.

Het zal dus verschillen per bridge hoe (goed) deze werkt.
Als ik een bridge toevoeg, kunnen mijn vrienden/familie/collega's die ook op mijn Matrix server dan ook hun Whatsapp bridgen, of geldt dit alleen voor mij?
Zover ik kan zien niet makkelijk, de implementaties die ik ken maken namelijk gebruik van een android VM om whatsapp in te draaien en dan de berichten door te sluisen naar matrix. Het is dus bedoeld voor persoonlijk gebruik. Sowieso zal het voor de meeste mensen niet gebruiksvriendelijk genoeg zijn. Nog even los de gehele discussie over hoe goed de beschikbare matrix clients zelf zijn, zal bij een bridge de functionaliteit nooit 100% gespiegeld kunnen worden.

[Reactie gewijzigd door Creesch op 22 juli 2024 13:22]

Bedankt voor je uitgebreide antwoord! Zelf ben ik groot voorstander van open source software, al helemaal als dit je online privacy bevorderd. Ik denk dat ik alsnog een server online zet om te kijken hoe ver ik kom en wat het mij kan bieden. Misschien kan ik mijn kring omzetten zodra het project wat ouder en doorontwikkelt is, in de tussentijd kan ik lekker hobbyen en ervaring opdoen om andere mensen te helpen.
Mocht je voor de prijs van een domeinnaam willen proberen, kun je deze guide volgen: https://matrix.org/docs/guides/free-small-matrix-server

Ik heb het hele STUN/COTURN gedoe overgeslagen want ik gebruik gewoon andermans servers daarvoor. Als je de server die wordt beschreven gebruikt (free tier van Oracle Cloud) dan duurt het werken om Oracle's stomme vereisten langer dan het opzetten van de server zelf.
Ik hoor graag als dit enigszins verbeterd is in de laatste tijd, maar voor zover ik weet geldt het volgende nog altijd:

https://gitlab.matrix.org...ocs/megolm.md#limitations
- Géén Backward Secrecy in groepen
- Géén Forward Secrecy in groepen

https://github.com/librem...ster/part1/README.md#tldr
- Matrix is niet decentraal: de servers matrix.org en vector.im krijgen indirect vrijwel alle private identificeerbare gegevens en metadata van andere servers binnen, in ieder geval zodra er ook maar 1 gebruiker van die servers (en dat is de grootste meerderheid) zich aanmeldt in je groep.

https://github.com/librem...ster/part2/README.md#tldr
- Matrix is niét GDPR compliant
Die versleuteling is wat Matrix het meest onderscheidt van andere openbare chatprotocollen, met name xmpp, dat berichten alleen in plaintext verstuurt.
Dit moet écht verbeterd worden, want het staat enorm ver van de werkelijkheid. Voor alle platformen is OMEMO (een significant betrouwbaardere encryptiemethode dan die van Matrix) inmiddels uitstekend beschikbaar en daarnaast heb je PGP en eventueel OTR (eigenlijk niet geschikt meer voor hedendaagse IM's) tot je beschikking. Bovendien klinkt plaintext alsof er niet eens een transport layer encryption aan te pas komt, en dan is natuurlijk ook dikke onzin.

[Reactie gewijzigd door guillaume op 22 juli 2024 13:22]

Ik hoor graag als dit enigszins verbeterd is in de laatste tijd, maar voor zover ik weet geldt het volgende nog altijd:

https://gitlab.matrix.org...ocs/megolm.md#limitations
- Géén Backward Secrecy in groepen
- Géén Forward Secrecy in groepen
Je leest het verkeerd. Wat er staat is dat megolm an sich dit niet garandeert. Dat gaat over megolm, niet over Matrix. Binnen Matrix worden keys regelmatig gerotate, precies zoals in die documentie omschreven wordt als oplossing.
Dit is extreem misleidend, en de auteur van dat document staat erom bekend om bewust desinformatie te verspreiden. Decentralisatie gaat over welke partijen er de controle hebben over een systeem, dat staat los van welke informatie waar precies terecht komt.

Matrix is wel degelijk gedecentraliseerd, echter niet volledig P2P; het is een gefedereerd protocol, wat betekent dat je de homeserver die je kiest vertrouwt met je identiteit, maar dat je op ieder moment kunt veranderen welke homeserver dat is.

Rooms zijn gedecentraliseerd in de zin dat geen enkele homeserver de controle heeft over een room, het werkt feitelijk als een gedistribueerde database waar autorisatie van events volledig gebaseerd is op de permissions/roles die een gebruiker heeft in die room.

Een homeserver kan een gebruiker op die server impersonaten, maar kan dat niet met gebruikers op andere homeservers.
de servers matrix.org en vector.im krijgen indirect vrijwel alle private identificeerbare gegevens en metadata van andere servers binnen, in ieder geval zodra er ook maar 1 gebruiker van die servers (en dat is de grootste meerderheid) zich aanmeldt in je groep.
Dit is wederom zeer misleidend. vector.im is een identity server die uberhaupt niet gebruikt wordt tenzij je daarvoor kiest (door bijvoorbeeld vrijwillig je telefoonnummer in te voeren zodat mensen je via je nummer toe kunnen voegen). matrix.org is simpelweg een van vele Matrix-homeservers, en krijgt precies dezelfde informatie als iedere andere homeserver.

Een gefedereerd protocol betekent dat er een kopie van de data (al dan niet tijdelijk) bestaat op iedere server die aan het gesprek 'deelneemt'. Dat is altijd zo bij gefedereerde protocollen, en is onvermijdelijk - het is hoe het technisch werkt.

Je kunt zeker beargumenteren dat teveel mensen matrix.org gebruiken, maar dat valt in de praktijk erg mee, en is ook geen probleem met het protocol zelf. Sterker nog, als je echt specifiek reden hebt om matrix.org niet te vertrouwen (maar andere random servers wel), dan kun je ook gewoon matrix.org op je ACL zetten en kunnen matrix.org-gebruikers helemaal je room niet in.

Dit is dus een non-issue.
Ik heb vooralsnog geen enkele concrete reden gezien om dit aan te nemen. Qua welke data waar naartoe gaat, is Matrix ongeveer vergelijkbaar met e-mail. Als je vindt dat e-mail ook niet AVG-compliant is, prima, dan zijn daar best interessante discussies over mogelijk - maar als je vindt dat Matrix hier speciaal in is, dan zul je echt met iets concreters moeten komen.
Dit moet écht verbeterd worden, want het staat enorm ver van de werkelijkheid. Voor alle platformen is OMEMO (een significant betrouwbaardere encryptiemethode dan die van Matrix) inmiddels uitstekend beschikbaar en daarnaast heb je PGP en eventueel OTR (eigenlijk niet geschikt meer voor hedendaagse IM's) tot je beschikking. Bovendien klinkt plaintext alsof er niet eens een transport layer encryption aan te pas komt, en dan is natuurlijk ook dikke onzin.
OMEMO is Double Ratchet, oftewel precies hetzelfde algoritme als megolm, maar dan zonder de gedeelde key. Dat kan veiliger zijn afhankelijk van de omstandigheden; maar het betekent ook dat grote rooms technisch onmogelijk zijn, want je moet dan ieder bericht onafhankelijk versleutelen en versturen voor iedere ontvanger in de room. Dat is duidelijk niet werkbaar voor grotere rooms.

PGP is volledig kansloos; geen enkele forward secrecy, en vrijwel onmogelijk om foutloos te implementeren. OTR is beter, maar inmiddels achterhaald, en in alle opzichten inferieur aan OMEMO. Er is echt geen reden om dat vandaag de dag nog te gebruiken.

En hopelijk begrijp je zelf ook wel dat het wat vreemd is om te doen alsof TLS hier zo nuttig is, terwijl je een paar regels daarboven nog megolm bekritiseert om de forward secrecy. Geeft erg de indruk dat je selectief naar problemen aan het zoeken bent.
Wat ik mis in het artikel of de reacties is dat de mailclient Thunderbird in de laatste versies Element ondersteunt in het chat venster. helaas werkt het bij mij nog niet zoals het zou moeten, maar het is wel een mooi begin. Als het goed werkt kan het mail gedeeltelijk vervangen en kun je ook makkelijk berichtjes sturen zonder dat gepruts op een smartphone (wat nu trouwens ook al kan met de Element applicaties onder Windows/MacOs/Linux).
Zelf gebruik ik Element (eerst dus Riot) al jaren. Ik heb het nooit als iets moeilijks ervaren en mijn moeder van tachtig kan het ook gebruiken (inclusief videobellen). Ik kan niet wachten tot anderen het ook omarmen.
Open protocollen zijn tof, maar als je de onmiddelijke wildgroei aan halfbakken implementaties ziet herinner je je meteen weer waar al die gesloten ecosystemen vandaan kwamen. Ik wil dolgraag dat iets als dit succes heeft, maar voor een chat-app is het belangrijk dat m'n ouders het kunnen gebruiken, en als het 5 minuten studie vereist zullen ze afhaken.
Open protocollen zijn tof, maar als je de onmiddelijke wildgroei aan halfbakken implementaties ziet herinner je je meteen weer waar al die gesloten ecosystemen vandaan kwamen.
Dat is ook waar ik tegenaan loop. Zelfs het paradepaardje in de vorm van "Element" voelt niet aan als een volwassen en compleet product. Zeker niet vanuit het perspectief van een niet techy gebruiker. Toevallig had ik het er een paar maanden geleden nog over en heb toen wat screenshots gemaakt. Bij binnenkomst is dit de eerste impressie. Zelfs ik moest hier even dubbel checken of alles goed ging omdat het de indruk wekt dat er nog van alles geladen gaat worden.
Enfin, er is een grote knop zichtbaar "explore public rooms" dus wellicht klikt de gebruiker daarop. Om vervolgens begroet te worden met een enorme lijst zonder noemenswaardige filter opties. Effectief is dit weinig beter dan het "/list" commando waarbij je ook de naam, topic en aantal actieve gebruikers kreeg te zien. Sterker nog, ik meen dat in veel clients of irc implementaties je met list minimaal kon filteren op aantal gebruikers in een kanaal.

Om nog maar niet te spreken over het feit dat er stiekem, meerdere kanaal lijsten zijn van verschillende matrix servers.

Ja, het is in verschillende opzichten gebruiksvriendelijker dan IRC ooit was. Maar het loopt tegelijk ook behoorlijk achter op gesloten alternatieven. Wat automatisch inhoud dat het een kleine kans van slagen heeft om het grote publiek daadwerkelijk te bereiken.
Ooit WhatsApp of Telegram geopend met een leeg adresboek? Dan krijg je ook een leeg scherm te zien. Je hebt niet eens de keuze om uit een lijst van publieke kanalen te kiezen. Je hebt in feite twee van de drie opties die je in je screenshot ziet, namelijk "chat aanmaken" en "groep aanmaken".

Ik zie ook niet helemaal wat je precies wilt filteren in zo'n lijst, gooi een leuke zoekterm in dat zoekveld en misschien komt er wat nuttigs uit. Ik heb nog nooit de neiging gehad een willekeurige chatroom in te gaan puur omdat er minder dan 36 mensen in zaten ofzo.

Dat er meerdere kanalenlijsten zijn is niet stiekem, zo is het ontworpen. Mensen die niet beter weten, kunnen prima leven met alleen kamers op de Matrix.org server. Je gaat een client natuurlijk niet honderdduizend servers allemaal langs om een kamerlijst op te vragen.

Ik weet niet wat je verwacht, maar dit leest een beetje als "ik heb een account bij een chatservice gemaakt waar ik niemand ken en nu kan ik met niemand praten".
Dan krijg je ook een leeg scherm te zien.
Het gaat mij met name om de placeholder lijsten eronder. In enige andere applicatie duid dit er in 99% van de gevallen op dat hier data ingeladen zal worden en dat de applicatie nog bezig is met laden.

De rest van je reactie is voornamelijk er eentje die ik over de jaren heen al meerdere malen heb moeten aanhoren. Ook al toen IRC nog relatief populair was, matrix nog echt niet een alternatief was en mensen steeds vaker kozen voor zaken zoals slack, mattermost, rocket en iets later ook discord.

Ja matrix en de bijbehorende clients zijn prima voor de power users en tech savvy users. Maar dat is dan ook niet mijn punt en zeker niet de context van wat hier wordt besproken.
Ik weet niet wat je verwacht, maar dit leest een beetje als "ik heb een account bij een chatservice gemaakt waar ik niemand ken en nu kan ik met niemand praten".
Je vult het zelf al in. Men wil graag dat mensen matrix gaan gebruiken maar de gemiddelde gebruiker die niet tech savvy is weet niet wat ze kunnen verwachtten.
Ik heb zelf decenia aan IRC gebruik als context en zolang het meer doet dan dat zie ik er wel de meerwaarde van in. Maar zoals ik ook al aangaf laat het nogal wat steken vallen ten opzichte van de gesloten alternatieven waar de meeste mensen hun verwachtingen op zullen baseren.
Nee, de kracht van WhatsApp zit niet in het vinden van contacten, maar in het simpele feit dat als je het installeert al je contacten er automatisch inzitten.
Ja, daar kleven voorwaarden en nadelen aan, maar voor dat gemak leveren mensen veel in.

Ik heb Matrix/Element gebruikt en toen een enthousiaste beheerder dat karretje trok werkte het fantastisch voor ons groepje, maar toen ik via een ander account en een andere server aan de slag wilde was ik eenzaam en alleen en kon met geen mogelijkheid mijn groepje terugvinden.

Het is gewoon veel te complex voor gewone stervelingen en het op deze manier gaat nooit groot worden.
en als het 5 minuten studie vereist zullen ze afhaken.
Inderdaad. Ik lees het artikel, en haak al snel af zodra die 'waterval' aan namen begint te stromen. Ik gebruik géén whatsapp meer, maar dat heeft mij wel jááren gekost, en nog steeds is het, bijvoorbeeld qua sportclubs, feitelijk onwerkbaar om níet in de groepsapp te zitten. Want iets anders dan Whatsapp gebruiken is ondenkbaar: Ook omdat bijvoorbeeld de trainer en coach in meerdere Whatsapp groepen zitten en berichten door sturen naar de andere groepen.

Signal náást WhatsApp installeren is nog wel 'te doen', maar daar loopt ik al veel tegen onwil aan. Met die mensen SMS is dan maar..

Signal is, als WhatsApp vervavanger tot nu toe het meest werkbare alternatief, waarbij echter de pincode al te een te hoge drempel is voor sommige van mijn contacten.

Wat is Matrix dan weer? Kan je als gebruiker ook 'gewoon' net als bij ICQ een programma installeren en verder niet nadenken? Of ben je inderdaad 'verplicht' enige tijd te spenderen aan studie? In dat laatste geval ben ik namelijk bang dat het alleen de tech-lievende zullen zijn die het gebruiken, en/of bedrijven waarbij de installatie en instellingen centraal geregeld worden door de IT afdeling.
Als je geen zin hebt om onderzoek te doen installeer je Element en klik je op "account maken". Je account wordt op de Matrix.org homeserver gemaakt, waar de meeste mensen ook op zitten, en je kunt gewoon met iedereen praten. Bij sommige mensen is de gebruikersnaam iets langer, dan staat er :element.one achter ofzo, maar je kunt elkaar toch vinden op basis van telefoonnummer of mailadres. Je email en telefoonnummer worden namelijk, als je die invult, op de standaardjdentificatieserver opgeslagen, ook bij andere servers, zodat iedereen je kan vinden. Sommige mensen vullen die gegevens niet in of zetten de identificatieservers uit, dat is hun keuze, daar hebben atechnische mensen geen last van.

Mensen kunnen ook de Gmail app instellen ondanks dat je die met andere mailproviders instelt. Volg je de wizard dan krijg je natuurlijk een @gmail.com-adres, daar hoef je echt de SMTP-protocolspecificatie niet voor te volgen.

Ik vind het nogal een gedoe over niks.

[Reactie gewijzigd door GertMenkel op 22 juli 2024 13:22]

Ik vind het nogal een gedoe over niks.
Thanks voor de uitleg. Echt, ik struikel(de?) vooral over de verschillende namen: Is t nou Element of Riot of Matrix of of of.


Ik ga een poging wagen ;-).
Wat terminologie, mocht je nog vragen hebben:

Matrix: het protocol. Zoiets als IMAP/SMTP/HTTP, veel programma's spreken Matrix. Matrix is eigenlijk in de basis JSON over HTTPS met wat trucjes voor bellen.

Element: de chatapp gemaakt door de organisatie die ook achter het Matrix-protocol zit. Heette vroeger Riot maar is hernoemd. De oude naamgeving is nog terug te vinden in oude documentatie en projectnamen, maar Element is hoe men het nu noemt.


Meer dan dat hoef je niet te weten. Mocht je interesse hebben in het onderliggende ecosysteem, dan zijn er hier nog een paar.

Widgets: speciale webpagina's die je in Element en andere clients kan toevoegen aan een chatruimte. Denk bijvoorbeeld aan een livestream die je met zijn allen kijkt, of een conferentie met een videostream en een Q&A. Dit was voor lange tijd ook hoe (video)bellen werkte: stiekem werd Jitsi in de kamer geplaatst met wat mooiere UI om het te integreren en kon de client bellen zonder een eigen protocol in te hoeven bouwen.

Synapse: de naam van de serversoftware. Daar heb je als gebruiker normaal niks mee te maken, alleen als je je eigen server opzet moet je dat installeren.

Dendrite, conduit: alternatieven voor Synapse. Alle servers praten via het Matrix-protocol onderling (een Conduit-server kan prima met een Dendrite-server praten die weer met een Synapse-server praat) maar het zijn andere uitwerkingen van hetzelfde ding. Vergelijkbaar met Apache2/Nginx/IIS die allemaal HTTP doen maar op een eigen manier opgebouwd zijn.

Een room (kamer): de onderliggende infrastructuur waarbinnen berichten bestaan. Kamers hebben allerlei vormen en maten. De meeste zijn gewoon chatruimtes, maar ze kunnen ook andere kamers bevatten (dat heet dan een "space") of bedoeld zijn voor videobellen (belkamers zijn nog in beta, dus als je die gewend bent in Discord en je die echt nodig heb, zou ik nog even wachten).

Als dat te moeilijk klinkt: niet druk over maken, met alleen simpele chatkamers heb je alles wat je nodig hebt. Het feit dat kamers de basis zijn van allerlei trucjes is mooi weggepoetst in de chatclient.

Een bridge: een stuk software dat op een server draait (doorgaans beheerd door iemand die ook de homeserver beheert maar dat hoeft niet per se) die berichten van een externe dienst ontvangt en als brug fungeert tussen verschillende diensten. Er zijn bruggen voor Signal, WhatsApp, Telegram, Slack, Google's SMS app, Skype, the list goes on. Er zijn commerciële diensten die dit soort services tegen betaling voor je hosten (zoals Beeper, Element Matrix Services) of je kunt ze zelf opzetten als je een server kunt beheren. De functionaliteiten kunnen wel minder zijn, dus volledige Matrix rooms zullen altijd beter werken dan bridges (is nogal afhankelijk van hoeveel werk er in de bridge is gestoken en of de andere kant de feature ook heeft; emoji-reacties onder een bericht wordt nog lang niet door iedere app ondersteund).

Let wel op: een kwaadwillende kan de bridge saboteren en berichten meelezen, dus host het zelf of betaal iemand die je vertrouwt.
Signal is, als WhatsApp vervavanger tot nu toe het meest werkbare alternatief, waarbij echter de pincode al te een te hoge drempel is voor sommige van mijn contacten.
Dat komt doordat Signal hetzelfde als WhatsApp is: een gecentraliseerde server die geen andere apps toestaat op het netwerk, wel e2e encryptie heeft maar alle toegang tot jouw metadata heeft. Er zit een andere interface op, het heeft een andere eigenaar, maar daar houden de verschillen wel een beetje op. Als e-mail vandaag uitgevonden werd zouden mensen het ook vele te moeilijk vinden, want hoe ga je aan het e-mail adres van iemand anders komen? Je weet niet eens bij welke provider die persoon zit.
Komt misschien een beetje omdat we 'verwend' en lui zijn geworden.
We hebben namelijk nogsteeds tig e-mail clients en een handje vol browsers. Vroeger was dat wel iets meer en is het assortiment wat kleiner geworden. Dan nog is het feitelijk het zelfde als toen met e-mail.

Een nieuw protocol waarmee je een mailsever nodig had, en een account onder een domain. Waar je naar toe verbindt met een client... En tegenwoordig is dat als water uit de kraan voor mensen. Zelfs m'n oma kan er mee overweg, met een beetje hulp natuurlijk.

Maar inderdaad, we zijn wat lui geworden. Concentratieboog is soms heeeel ver te zoeken bij mensen.
Knopje werkt niet en het apparaat gaat onderhand al de prullenbak in. Terwijl men 5 seconden had gezocht, kon je zien dat je eerst moet ontgrendelen, bij wijze van spreken.
Ik heb een jaar of twee geleden even naar Matrix gekeken (omdat ik weiger aan WhatsApp te doen en hoop nog steeds op een veilig, open systeem waar allerlei gebruikers met elkaar kunnen chatten - dus dat bridging klonk zeer interessant) - maar het was inderdaad veel en veel te moeilijk om "even" te installeren en aanmelden.

Er moet een erg laag drempel zijn om gewone gebruikers in grote getallen over te halen van hun huidige gesloten systemen.

Ik had tevens ook gekeken naar Briar - wat een interessante model heeft (kan zelfs boodschappen tijdelijk bewaren en doorsturen via Bluetooth als je geen internet heb) maar is dan weer opnieuw een aparte systeem. Ik haakte af van keer op keer op nieuwe diensten aanmelden na IRC, ICQ, AOL, MSN, Yahoo!, Trillian en bleef hangen bij Google (gTalk -> Hangouts -> Chat).

Ik blijf hopen dat Matrix oid. doorbreekt om de hegemonie van Meta, Google, enz. te vernietigen.

[Reactie gewijzigd door MossMan op 22 juli 2024 13:22]

voor een chat-app is het belangrijk dat m'n ouders het kunnen gebruiken, en als het 5 minuten studie vereist zullen ze afhaken.
Element geprobeerd? Het is echt geen moeilijke app imho. Je hebt een account nodig, dat is meer dan een telefoonnummer zoals bij WhatsApp. Maar ook vrijwel iedereen z'n oma kan inmiddels wel ergens een account aanmaken.

Wat ik denk dat meer nodig is, en wat in bijvoorbeeld Duitsland of Frankrijk al sterker aanwezig is: urgentie op privacy. Nederlanders interesseert privacy niet. Men is naïef. Gevolg: in Nederland adopteren alle Universiteiten en scholen gewoon Google docs, of Office 365 en MS Teams alsof er geen alternatieven bestaan.

Fransen en Duitsers zijn veel skeptischer en hebben het veel meer over privacy. Ik zie ze daar actief vragen naar alternatieven voor Google, gmail vermijden, etc.
Speelt zeker mee, ja. Ik maak er een keertje een weekendproject van om het goed uit te zoeken.
Ik ben blij dat Tweakers deze aandacht geeft aan Matrix. Ik ben de idealistische push naar Signal namelijk goed zat; ja, Signal is open source, maar het is nog steeds een gecentraliseerd en daarmee gesloten systeem (niemand mag zijn eigen cliënt bouwen en gebruiken op het Signal netwerk). Matrix is wat dat betreft het enige stipje aan de horizon, een platform dat ik graag zou willen gebruiken. Helaas ken ik niemand die het ook echt gebruikt, dus heeft het weinig zin de app te installeren.

Toen ik WhatsApp de eerste keer installeerde kreeg ik dankzij toegang tot mijn telefoonboek direct een overzicht van vrienden die het al gebruikten. Dat was geniaal, zeker voor mensen die, zoals ik, op het schoolplein nog ICQ-nummers van klasgenoten op hebben moeten schrijven. Inmiddels zijn we niet anders gewend, maar klopt het dat we met Matrix weer terug gaan in de tijd? Vanuit privacy- en decentralisatieoogpunt snap ik dat, maar hoe pak je dat praktisch aan? Hoe kom ik er achter hoe ik mijn kennissen via Matrix kan bereiken?

[Reactie gewijzigd door 84hannes op 22 juli 2024 13:22]

Signal is open source, maar het is nog steeds een gedecentraliseerd en daarmee gesloten systeem (niemand mag zijn eigen cliënt bouwen en gebruiken op het Signal netwerk).
Je bedoelt gecentraliseerd :)

Verder 100% eens met wat je zegt, ik doe ook niet aan het promoten van Signal en de enige manier waarop ik het gebruik is via mijn Matrix bridge :)
Toch is dat jammer. Je kunt wel van idealen uitgaan maar zoals elke jonge rooie rakker vaak later in het leven ontdekt, heb je ook met de realiteit te maken. Het artikel geeft duidelijk aan dat Matrix nog lang niet klaar is voor de gewone gebruiker. Signal is dat bijv wel en als je daarmee weer wat mensen bij Facebook vandaan kunt trekken dan is dat mooie bijvangst. Als Matrix dan over een x aantal jaar wel gebruikersvriendelijk genoeg is geworden dan kijken we wel weer verder. Als het zakelijk een vlucht gaat nemen dan kan de consumentenmarkt alsnog snel volgen.
Er is niks mis met Matrix, het werkt prima. Als mensen het te moeilijk vinden dan hebben ze gewoon geen moeite gedaan. Er wordt bijvoorbeeld geklaagd dat je een account moet aanmaken maar mensen kunnen dat wel gewoon bij hun bank of facebook.

Maar ik ben klaar met walled gardens. Helemaal voorkomen kan ik het niet maar ik gebruik alles zoals WhatsApp, Telegram, Signal via bridges. Wel ontraad ik alle walled gardens inclusief signal.

PS ik ben nog steeds een 'rooie rakker' :)
Dat mag jij allemaal wel vinden maar als de makers zelf er nog niet tevreden over zijn dan zal het wel kloppen toch? Natuurlijk werkt het. Punt is dat de eerste indruk telt en daarom zal ik het in ieder geval nog niet bij mensen voorleggen. Dit project moet gewoon nog een paar jaar rijpen.
De realiteit is eveneens dat aan mensen vragen elk jaar van chat dienst te veranderen niet werkt. Dan is het soms beter ze op WhatsApp te laten tot matrix voldoet. Anders gaat je geloofwaardigheid eraan: 'bij de vorige app zei je dat we naar daar moesten omdat het veilig is, dat klopt nu niet ofwa?' En dan gaan ze terug naar WhatsApp.
In mijn geval blijkt dat niet zo te werken. Ik heb geen whatsapp meer en mensen weten me via Signal nagenoeg allemaal te vinden. De enkeling die dat niet lukt is dan blijkbaar niet belangrijk genoeg. Ik vind het daarmee een non-issue.

Als Matrix klaar is voor de markt dan kijk ik wel weer. Wie dan leeft dan zorgt. En daar gaat nog wel wat tijd overheen. Elk jaar een andere chat app is dus ook wel wat overdreven gesteld.
Ik ben het met je eens, maar ik denk echt dat Matrix wel voldoet. Mensen kunnen ook e-mailen. Ze installeren allerlei apps en maken overal accounts aan. Elements is echt niet ingewikkelder. Gewoon een venstertje om tekstjes en plaatjes te versturen naar je contacten. Ik kan lastig bedenken welke killer feature WhatsApp heeft die hier niet op zit, behalve natuurlijk: medegebruikers.
Nee, bij Matrix kun je gebruik maken van adresboek servers waarbij je je matrix ID koppelt aan een telefoonnummer, in sommige clients (zoals Element) is dit ingebouwd, kun je eventueel aanvinken.

Dit is optioneel, je hebt altijd de keuze om je gegevens (e-mail, telefoonnummer) niet te delen met zo'n telefoonboek dienst.

Ik heb alle communicatie (IM, audio / video en groepsgesprekken) binnen mijn familie naar Matrix sinds een aantal jaren. Ook heb ik best wat collega's en vrienden met eigen Matrix servers. Ik realiseer mij dat ik geen gemiddelde gebruiker ben, dus ook de Mautrix bridges naar Whatsapp en Signal gebruik ik. Loopt als een trein.
Ik gebruik zelf Matrix al sinds het prille begin in 2015, en ik vind het geweldig. Een hele tijd met bridges voor Telegram en WhatsApp, nu nog exclusief Matrix. Ik host mijn eigen Dendrite-based server op een relatief zwak ARM-machientje en het draait allemaal als een zonnetje.

Het doet mij altijd een beetje pijn als ik na de zoveelste schandaal met WhatsApp of iets dergelijks mensen Signal zie aanraden. Ja het is zeker een verbetering maar uiteindelijk ben je weer afhankelijk van een enkele partij en is het gewoon wachten tot zij een schandaal hebben en je weer applicaties moet verhuizen. Mensen missen naar mijn mening hoe belangrijk decentralisatie wel niet is.

Een probleem voor veel mensen blijft altijd het netwerk effect; als niemand om je heen een bepaalde chat applicatie gebruikt, waarom zou jij het dan gebruiken? Echter in mijn ervaring zijn de mensen die echt belangrijk voor jou zijn prima willend om eens wat anders te proberen voor jou. Zo gebruiken mijn familie en mijn vriendin ook Matrix om met mij te praten maar ook onderling, en heb ik wekelijkse game sessies met een vriend via Matrix omdat ik weiger Discord te gebruiken. Natuurlijk zullen er voorlopig mensen blijven die niet alternatieven willen gebruiken maar die kunnen mij prima op andere manieren bereiken: mail, SMS, bellen, etc. De uitleg dat ik gewoon geen Facebook producten wil gebruiken snapt eigenlijk iedereen wel tegenwoordig.

Dus ja, blij dat Matrix, al gaat het langzaam, stabiel groeit. Dat overheden het gaan gebruiken zie ik als een goed iets, het betekent dat mensen er op het werk gewend aan beginnen te raken en de overstap in persoonlijke sfeer een stuk minder groot wordt. Ik kan niet wachten op de toekomst!
Absoluut, ik doe ook niet mee met de huidige trend van promoten van Signal. Ik wil graag naar iets verhuizen maar dan moet het niet alleen qua software maar ook qua netwerk volledig open zijn. Signal is dat qua netwerk maar Moxie heeft altijd gezegd dat derde-partij applicaties niet welkom zijn en hij is zelfs sterk tegen federatie, laat staan decentralisatie. Ik hoopte dat dat zou veranderen toen hij opstapte maar dat is vooralsnog niet gebeurd.

Inderdaad heel goed van Matrix!! Het enige dat ik er persoonlijk aan mis, is het makkelijk kunnen gebruiken van meerdere identiteiten. Want ik wil niet in elke community dezelfde identiteit hebben (in sommige wil ik mijn echte naam gebruiken, in anderen weer niet). Er is ook geen matrix-matrix bridge. Ook mis ik nog een betere client dan Element, ik vind hem veel te 'whatsapp achtig' gericht op 1:1 communicatie, zodra je in tientallen grote communities zit, raak je het overzicht kwijt.

Maar dat komt allemaal wel en ik ben ook heel blij dat het nu echt in een opmars zit. Wel jammer dat dit een plus artikel is en het daardoor een beperkt bereik zal hebben onder de tweakers.

[Reactie gewijzigd door GekkePrutser op 22 juli 2024 13:22]

Dus ja, blij dat Matrix, al gaat het langzaam, stabiel groeit.
Eerlijk gezegd denk ik dat dat langzame een goed iets is, niet een probleem. Dan voorkom je dat de diverse communities op Matrix overspoeld wordt met nieuwe mensen die de normen nog niet kennen, met zo'n volume dat het voor de bestaande gebruikers niet meer te managen is (zie ook Eternal September).

Matrix is immers geen startup, dus het hoeft helemaal niet snel te groeien. Stabiel langetermijngebruik is veel belangrijker, en dan heb ik liever dat mensen het pas proberen wanneer het voor hun eisen geschikt is, ook als dat nog even wat langer duurt :)
Ik heb nu enkele jaren een matrix server zelf draaien met bridges voor WhatsApp en Telegram. Werkt best handig omdat al je communicatie in 1 app terecht komt voor mobile, desktop en web. En dit native en niet zoals er tal van apps zijn zoals Franz die dan weer niet op mobile werken.

Verder werd op het werk ook gekeken naar een matrix + element combo maar het leek over het algemeen qua UX en gebruiksvriendelijkheid nog net een stap te moeilijk om er iedereen op te doen overstappen.

Ik ben zeer benieuwd naar hun Dendrite backend oplossing, dit zou inderdaad onder andere p2p mogelijk moeten maken en van iedere smartphone een server kun maken, dit komt decentralisatie nog meer ten goede.

Voor mensen die zelf matrix willen hosten zijn er publieke matrix playbooks: https://github.com/spantaleev/matrix-docker-ansible-deploy
Ik ben zeer benieuwd naar hun Dendrite backend oplossing, dit zou inderdaad onder andere p2p mogelijk moeten maken en van iedere smartphone een server kun maken, dit komt decentralisatie nog meer ten goede.
Het gebruiken als server van een apparaat met beperkte rekencapaciteit, accuduurlimitaties, wisselende netwerkadressen en netwerkkwaliteit, waar een app op elk moment in slaap getrokken kan worden door het OS.. Lijkt me nou niet een geweldige optie :) Niettemin vind ik het een geweldig platform hoor, en ik zie het veel liever dan bijvoorbeeld Signal. Maar een smartphone als server zie ik niet echt praktisch worden.

Verder is dendrite wel de toekomst van het serverplatform ja, als vervanger van synapse.

Ik ben er ook druk gebruiker van, vooral met bridges (via het uitstekende ansible playbook dat je al noemt) omdat er nog niemand anders op Matrix zit die ik ken.

[Reactie gewijzigd door GekkePrutser op 22 juli 2024 13:22]

Hangt van je definitie van server af. Indien het enkel om signaling gaat, valt dat mee.

SFL -heeft een signaling protocol op basis van dht's ontwikkeld, komen ook geen servers aan te pas.
het feit dat er voor Matrix servers nodig zijn is hetgeen me tegenhoudt momenteel.
Beetje OT maar:
De gezondheidssector of financiële bedrijven moeten bijvoorbeeld voldoen aan wettelijke eisen rondom hun communicatie. Die kunnen niet zomaar overstappen op Google Meet of Microsoft Teams.
Ik kreeg aan het begin van de pandemie ons bedrijf (niet financieel of gezondheidszorg) niet overtuigd dat een ander communicatieplatform dan Whatsapp/MS-Teams noodzakelijk was. Het bedrijf is dus vol in de Microsoft-wereld opgezogen (we hadden losse office-licenties maar zijn nu aan het overgaan naar subscription-based licenties voor alle medewerkers want anders geen Teams). Whatsapp doet aan het verzamelen van telefoonnummers en namen maar waarom zou MS-Teams onveilig zijn?
Ben geen expert, maar ik kan me voorstellen dat er haken en ogen zitten aan het werken via servers van een Amerikaans bedrijf? Ik denk persoonlijk dat ik van de verschillende techreuzen het meeste vertrouwen heb in Microsoft op het moment (en hoe bizar is dat), maar dat voelt nog steeds erg als tussen verschillende kwaden kiezen.
Nog gekker, van de GDPR mag je geen data aan Amerikaanse bedrijven geven omdat die dankzij de CLOUD act die data aan Amerikaanse overheden moeten geven. Dus ja Teams is een probleem, de enige reden dat het toch goed lijkt te gaan is omdat iedereen het doet en de overheid denkt dat er geen alternatief is dus zijn ze bang het aan te pakken want economie. Natuurlijk zijn er alternatieven maar goed lobbyen van MS doet haar werk.
De Amerikaanse overheid kan Microsoft dwingen informatie te leveren. Microsoft heeft aangetoond dat ze alle legale middelen waar ze over beschikken in zetten om dat niet te doen, maar de Amerikaanse wetgeving kan hen soms geen andere optie laten.
Dat de data niet op hun eigen servers staat gehost. En dat wil je wel als je met de dokter praat dat jou "dikke teen" pijn doet bij t plassen en hij hem graag wil Bekijken.
Ik ben verschillende keren begonnen aan Matrix, maar hoewel ik het graag wil gebruiken is het hier nog steeds niet blijven plakken.
  • Je kunt inderdaad bridges opzetten, maar zoals vermeld breekt dat de end to end encryptie. Ik kon niet over de drempel stappen om een paar vage scripts te gebruiken zodat ik Signal kan bridgen. Dat voelt als een externe partij het wachtwoord van je e-mail geven.
  • Het systeem met rooms was te ingewikkeld voor gewone gebruikers. Ik heb geprobeerd anderen mee te krijgen, maar dat ging erg moeizaam.
  • De standaard home server synapse was belachelijk zwaar.
  • De IRC bridges van matrix zelf waren onwerkbaar traag. Een IRC channel joinen faalde meestal na een half uur radiostilte. Some werkte het dan opeens wel, meestal niet.
  • Leukigheden als apps die je aan een room toe kon voegen waren ook zwaar onvolwassen en underpowered. Ik heb een tijdje de RSS-app geprobeerd te gebruiken, maar bij meer dan 20 feeds is het klikken, en dan maar koffie maken.
  • De laatste keer waren ze net bezig die encryptie in te voeren en dat was heel buggy met sessies die wel/niet bleven hangen en clients die om vage redenen niet in konden loggen
Maar ik ben blij dat er gestaag doorgewerkt wordt. De nieuwe dendrite server zou een hoop kunnen verbeteren, want die is niet in Python, maar in Go gebouwd, dus waarschijnlijk veel sneller. Binnenkort ga ik het nog eens proberen. Het idee spreekt me nog steeds erg aan.

[Reactie gewijzigd door DJ Henk op 22 juli 2024 13:22]

Qua signal heb je gelijk, je zult altijd de e2ee moeten doorbreken wil je alternatieve clients gebruiken op zo'n manier. Je zou Element kunnen pakken en libsigal kunnen inbouwen, maar de mensen achter Signal willen nadrukkelijk geen alternatieve clients dus het is maar de vraag hoe goed dat op lange termijn werkt. Persoonlijk zie ik mijn server als mijn apparaat, ik vind het niet zo'n probleem dat die mijn Signal keys heeft aangezien de communicatie met de bridge ook e2ee is. Wil je het veilig doen dan moet je overigens natuurlijk wel je bridge en je server scheiden, want e2ee heeft nogal weinig nut als de sleutels naast de versleutelde berichten staan :)

Qua rooms vind ik het wel meevallen, als je de vergelijking tussen een space en een Discordserver maakt snappen mensen het al snel. Het is lichtelijk ergerlijk dat je je moet inschrijven op kamers maar de "recommended" rooms maken dat gelukkig wel enigszins ontdekbaar. Plus, veel mensen zitten op WhatsApp etc. waar rooms de norm zijn, dus ik snap eigenlijk niet zo wat er verwarrend aan is.

Synapse is en blijft Python, maar de performance wordt alleen een probleem bin belachelijk grote chats (1000en mensen met 100en servers). Ze hebben daar afgelopen jaar aardige voortgang in gemaakt.

Qua RSS weet ik niet echt waar je op doelt. Ik heb zelf een Maubot instance draaien die mijn RSS doet, van een native functie ben ik niet op de hoogte. Maar goed, dingen als widgets gebruik ik dan ook niet zoveel.

De encryptieproblematiek is zo goed als opgelost eigenlijk, tenzij je een experimentele server als Conduit gebruikt die de standaard nog niet implementeert; cross signing is de norm nu en wordt hevig aangeraden in de UI op een aardig gebruiksvriendelijke manier. Nog steeds moet je iedereen één keer verifiëren (of anders in "WhatsApp" modus springen (encryptie zonder verificatie) maar dan zie ik het praktisch nut niet zo eigenlijk, kun je net zo goed geen versleuteling gebruiken).

Persoonlijk raad ik op telefoons de clients Fluffychat en Schildichat aan, ik vind die een stuk makkelijker dan Element. De één is een onafhankelijke app, de ander is een fork van Element. Qua server is Synapse nog steeds de norm, ik kijk eens in de zoveel tijd naar Dendrite en Conduit maar ontwikkeling daarop gaat gestaag.

Op dit item kan niet meer gereageerd worden.