Udviklere af det decentrale kommunikationssystem Matrix nye udgivelser af de vigtigste klientapplikationer . Riot er skrevet med web-teknologier og React-rammeværket (der anvendes en indpakning ). Desktop-versionen baseret på Electron-platformen. Koden er under Apache 2.0-licensen.
En vigtig i de nye versioner inkluderer som standard end-to-end kryptering (E2EE) for alle nye private chats, som tilgås via invitationssending. End-to-end kryptering er implementeret på baggrund af en egen protokol, som bruger en algoritme til indledende nøgleudveksling og session nøglehåndtering (del af Signal-protokollen).
Til nøgleaftale i chats med flere deltagere anvendes udvidelsen , optimeret til kryptering af meddelelser til et stort antal modtagere og som muliggør dekryptering af én meddelelse flere gange. Krypteret meddelelse kan gemmes på en usikker server, men kan ikke dekrypteres uden session nøgler, som opbevares på klientsiden (hver klient har sin egen session nøgle). Ved kryptering genereres der for hver meddelelse en unik nøgle baseret på klientens session nøgle, som autentificerer meddelelsen i relation til forfatteren. Opsnapning af nøglen tillader kun at kompromittere allerede sendte meddelelser, men ikke de meddelelser, der vil blive sendt fremad. Implementeringen af krypteringsmetoderne er blevet auditeret af NCC Group.
Den anden vigtige ændring er aktiveringen af støtte til krydsbekræftelse (Cross-signing), som gør det muligt for en bruger fra en allerede bekræftet session at verificere en ny session. Tidligere, når en bruger opretter forbindelse til chatten fra en ny enhed, blev der vist en advarsel til de øvrige deltagere for at undgå aflytning i tilfælde af, at en angriber havde fået adgang til offerets konto. Krydsbekræftelsen gør det muligt for brugeren ved login at verificere sine andre enheder og bekræfte tillid til det nye login eller bestemme, om nogen har forsøgt at oprette forbindelse uden deres viden.
For simplifying the setup of new logins, the option to use QR codes has been provided. Verification requests and results are now saved in history as directly sent messages. Instead of a pop-up modal dialog, verification is now performed in the sidebar. Among the additional features, a layer is also noted. , allowing the connection to encrypted chats from clients that do not support E2EE, as well as operating on the client side. for searching and indexing files in chat rooms with encryption.
Let us remind you that the platform for organizing decentralized communications, Matrix, is evolving as a project that utilizes open standards and pays great attention to ensuring the security and privacy of users. HTTPS + JSON is used as transport with the possibility of using WebSockets or a protocol based on +. The system is formed as a consortium of servers that can interact with each other and are combined into a common decentralized network. Messages are replicated across all servers to which participants of the message exchange are connected. Messages spread across servers similarly to how commits are spread between Git repositories. In the event of a temporary server outage, messages are not lost but are delivered to users after the server resumes operation. Various options for user identifiers are supported, including email, phone number, Facebook account, etc.

The network lacks a single point of failure or control over messages. All servers involved in the discussion are equal to each other.
Any user can launch their own server and connect it to the common network. It is possible to create for interacting Matrix with systems based on other protocols, for example, services for two-way messaging in IRC, Facebook, Telegram, Skype, Hangouts, Email, WhatsApp, and Slack.
In addition to instant text messaging and organizing chats, the system can be used for file transfer, sending notifications,
organizing teleconferences, and making voice and video calls.
Matrix giver mulighed for at søge og ubegrænset gennemse historikken for samtaler. Der understøttes også avancerede funktioner såsom tekstindtastningsnotifikationer, vurdering af brugerens tilstedeværelse online, bekræftelse af læsning, push-notifikationer, server-side søgning, samt synkronisering af historik og klientstatus.
Kilde: opennet.ru
