Sviluppatori del sistema di comunicazioni decentralizzate Matrix nuove versioni delle principali applicazioni client . Riot è sviluppato utilizzando tecnologie web e il framework React (con una libreria ). La versione desktop è basata sulla piattaforma Electron. Il codice sotto licenza Apache 2.0.
La chiave nelle nuove versioni include per impostazione predefinita la crittografia end-to-end (E2EE) per tutte le nuove chat private, accessibili tramite inviti. La crittografia end-to-end è implementata utilizzando un protocollo proprietario, che impiega per lo scambio iniziale delle chiavi e la gestione delle chiavi di sessione un algoritmo (parte del protocollo Signal).
Per l'accordo delle chiavi nelle chat con più partecipanti è utilizzata l'estensione , ottimizzato per la crittografia dei messaggi con un alto numero di destinatari e consente di decifrare un messaggio più volte. Il testo cifrato del messaggio può essere salvato su un server non affidabile, ma non può essere decifrato senza le chiavi di sessione memorizzate sul lato client (ogni client ha la propria chiave di sessione). Durante la crittografia, per ogni messaggio viene generata una chiave unica basata sulla chiave di sessione del client, la quale autentica il messaggio in relazione all'autore. La cattura della chiave compromette solo i messaggi già inviati, ma non quelli che saranno inviati in futuro. L'implementazione dei metodi di crittografia ha superato l'audit dell'organizzazione NCC Group.
Una modifica importante è l'attivazione del supporto per la verifica incrociata (Cross-signing), che consente all'utente di verificare una nuova sessione da una sessione già confermata. In precedenza, quando un utente si collegava a una chat da un nuovo dispositivo, veniva visualizzato un avviso agli altri partecipanti, per evitare ascolti in caso di accesso da parte di un intruso all'account della vittima. La verifica incrociata consente all'utente di convalidare altri dispositivi al momento dell'accesso e di confermare la fiducia nel nuovo login o di rilevare se qualcuno ha tentato di connettersi senza il proprio consenso.
Per semplificare la configurazione di nuovi login, è stata introdotta la possibilità di utilizzare codici QR. Le richieste di verifica e i risultati vengono ora salvati nella cronologia come messaggi inviati direttamente. Invece di un dialogo modale a comparsa, la verifica avviene ora nella barra laterale. Tra le funzionalità correlate è stato notato un layer , che consente di connettersi a chat criptate da client che non supportano E2EE, oltre a funzionare sul lato client. ricerca e indicizzazione di file nelle chat rooms con crittografia.
Ricordiamo che la piattaforma per organizzare comunicazioni decentralizzate Matrix si sviluppa come un progetto che utilizza standard aperti e dedica grande attenzione alla sicurezza e alla privacy degli utenti. Viene utilizzato HTTPS+JSON come trasporto, con la possibilità di impiegare WebSockets o un protocollo basato su +. Il sistema si forma come un consorzio di server, che possono interagire tra loro e unirsi in una rete decentralizzata comune. I messaggi vengono replicati su tutti i server a cui si collegano i partecipanti allo scambio di messaggi. I messaggi si propagano tra i server in modo simile a come i commit si diffondono tra i repository Git. In caso di temporanea disattivazione di un server, i messaggi non vengono persi ma vengono inviati agli utenti dopo il ripristino del server. Sono supportate diverse varianti di identificatori utente, inclusi email, numeri di telefono, account Facebook, ecc.

Nella rete non esiste un singolo punto di fallimento o di controllo sui messaggi. Tutti i server coinvolti nella discussione sono considerati uguali.
Qualsiasi utente può avviare il proprio server e collegarlo alla rete comune. È possibile creare per interagire con Matrix e sistemi basati su altri protocolli, ad esempio, servizi per l'invio bidirezionale di messaggi su IRC, Facebook, Telegram, Skype, Hangouts, Email, WhatsApp e Slack.
Oltre alla messaggistica istantanea e all'organizzazione di chat, il sistema può essere utilizzato per la trasmissione di file, l'invio di notifiche,
l'organizzazione di teleconferenze, effettuando chiamate vocali e videochiamate.
Matrix consente di utilizzare la ricerca e la visualizzazione illimitata della cronologia dei messaggi. Supporta anche funzionalità avanzate come la notifica della digitazione, la visualizzazione della presenza online dell'utente, la conferma di lettura, notifiche push, ricerca lato server, sincronizzazione della cronologia e stato dei client.
Fonte: opennet.ru
