Azienda New Vector, i cui membri dirigono anche un'organizzazione no-profit del protocollo Matrix, ha annunciato il rilascio di una serie di client Matrix della famiglia Riot.
Matrix è un protocollo aperto per realizzare una rete federata basata su una cronologia di eventi (events) all'interno di un grafo aciclico (DAG). L'implementazione principale di questo protocollo è un messenger con supporto per la segnalazione VoIP, ma sono possibili anche altre implementazioni, dato che si tratta di un protocollo generico.
La principale novità rilasciata per browser e wrapper Electron (1.6.0), Android (0.19.0) e iOS (0.11.1-0.11.2) è stata l'introduzione della crittografia end-to-end per le conversazioni personali per impostazione predefinita. La crittografia è possibile grazie al protocollo Olm, basato sul protocollo del messenger Signal. La crittografia delle chat di gruppo utilizza un'estensione del protocollo chiamata Megolm, che permette di decrittografare il messaggio molte volte.
La crittografia opzionale è stata introdotta nel 2016. L'attivazione predefinita nelle versioni sperimentali è avvenuta durante FOSDEM 2020.
Dalla prima implementazione della crittografia sono state introdotte le seguenti funzionalità:
- il client può richiedere le chiavi per decrittografare i messaggi ad altri client dell'utente o ai client dei contatti;
- è stato creato uno storage server dei client per le chiavi di crittografia, criptato con una frase segreta;
- oltre alla verifica dei dispositivi tramite impronte (fingerprint), è stata introdotta anche la verifica tramite simboli emoji.
In futuro si prevede di attivare la crittografia per impostazione predefinita non solo per le chat personali, ma anche per le stanze non pubbliche in generale, incluse quelle di gruppo.
Si menzionano inoltre:
- l'introduzione di una nuova UI per la crittografia;
- la verifica dei dispositivi tramite QR code;
- la ricerca nella cronologia dei messaggi crittografati;
- finalizzazione della stabilizzazione del funzionamento.
La ricerca nelle stanze crittografate è già disponibile tramite l'estensione Firefox Radical.
Per facilitare la gestione delle chiavi di crittografia, gli sviluppatori del protocollo Matrix hanno presentato un meccanismo chiamato "cross-signing". Questo permette, utilizzando un dispositivo già verificato, di verificare automaticamente altri dispositivi dell'utente. Con il funzionamento di questo meccanismo, due interlocutori devono verificare i propri dispositivi solo una volta, e non ciascun dispositivo separatamente. La specifica del meccanismo può essere letta su GitHub.
Oltre a Riot, anche altri client supportano la crittografia: FluffyChat, nheko Reborn, client su libQuotient (WIP), client su mautrix-go (gomuks), client su matrix-nio (Mirage e WeeChat), Seaglass (abbandonato). Altre implementazioni sono in fase di sviluppo. Per i client senza supporto per la crittografia è disponibile un demone per il proxy E2EE — pantalaimon.
Fonte: linux.org.ru
