di Mary Branscombe, ZDNET – 21/01/2021
Slack e Teams criptano i dati dei clienti a riposo e in transito. Dopo una buona dose di polemiche, Zoom ha introdotto la crittografia end-to-end, ma non per le configurazioni on-premise. Element promette una messaggistica crittografata end-to-end ma anche decentralizzata, con chat room pubbliche e private, condivisione di file e chiamate vocali e video. È basato sul protocollo Matrix, che potete ospitare voi stessi, usare con un server gratuito o utilizzare su un servizio commerciale ospitato (che non avrà accesso al contenuto dei messaggi, ma memorizzerà metadati non criptati sulle conversazioni, elenchi di contatti e indirizzi IP).
Tuttavia, non raccomanderemmo di utilizzare l’homeserver pubblico gratuito di Matrix per uso lavorativo: oltre alle numerose comunità di sviluppatori, Linux e crittografia, ci sono alcune comunità per adulti con stanze pubbliche nella directory che la maggior parte delle organizzazioni troverebbe inappropriate, comprese alcune bandite da Reddit.
I nomi possono creare confusione con Element. Matrix è la specifica sottostante e ci si connette a un server Matrix utilizzando un client. Element, precedentemente noto come Riot IM e prima ancora come Vector, è una delle numerose applicazioni Matrix (il governo francese ha creato la propria applicazione di messaggistica istantanea, ad esempio) e finché il server Matrix a cui ci si connette è federato con quello a cui si connettono gli altri utenti, è possibile comunicare con gli utenti di altre istanze utilizzando client diversi.
Matrix può anche fare da “ponte” con altre reti di chat tra cui Slack, Signal, SMS, Skype, Discord versione testo, Telegram, IRC, Twitter e Gitter (ora di proprietà di Element) con vari livelli di fedeltà e sincronizzazione. Ma la creazione di queste integrazioni è sicuramente un lavoro per il team IT, che richiede una chiara comprensione dell’autenticazione e della federazione.
Per gli utenti finali, iniziare è relativamente semplice, purché sappiano a quale server Matrix accedere e creare il proprio account. È possibile connettersi dal browser o scaricare l’applicazione Element per iOS, Android, macOS, Windows 10 a 64 bit o Debian/Ubuntu a 64 bit (per altre distribuzioni Linux è necessario creare e confezionare il client da soli). Non esiste una versione a 32 bit per Windows o Linux: quest’ultima è una restrizione di Electron, mentre la prima è in programma da nove mesi.
L’interfaccia utente di Element è migliorata in modo significativo rispetto ai primi giorni del client mobile Riot, ma può essere ancora un po’ complicata. C’è una sorta di rivelazione progressiva dei termini e delle condizioni che si devono accettare per utilizzare il server, creare chat room pubbliche o private o inviare messaggi diretti ad altri utenti, e si viene ripetutamente invitati a impostare un backup sicuro per le chiavi di crittografia, se un amministratore non l’ha già fatto.
A causa della crittografia, l’accesso a Element con un nuovo dispositivo richiede la verifica del dispositivo con una passphrase, o una combinazione di codici QR e una password emoji una tantum se si dispone di un dispositivo già connesso. L’esperienza è piuttosto semplice. Le chat e le sale riunioni con dispositivi non verificati mostrano un’icona rossa per avvertire gli altri partecipanti, ma una volta verificate si vedrà la cronologia delle chat su tutti i dispositivi e i messaggi letti su un dispositivo saranno contrassegnati come letti sugli altri.
È possibile invitare altri utenti nelle chat room e nelle sessioni di messaggistica tramite la loro identità Matrix o utilizzando il loro indirizzo e-mail, che invia loro un invito al servizio Matrix – gli utenti business preferiranno sicuramente questo alla condivisione del loro numero di telefono. È possibile impostare ruoli di amministrazione molto granulari per le chat room (il diritto di cambiare il nome della stanza non consente di rimuovere i messaggi o di bandire gli utenti, ad esempio) e scegliere se i nuovi colleghi che si uniscono a una chat room vedono l’intera cronologia delle chat o solo i nuovi messaggi. Tuttavia, aspettatevi che gli inviti e le conferme di iscrizione finiscano nella posta indesiderata o addirittura in quarantena; gli amministratori dovranno inserirli nella whitelist o consigliare agli utenti dove cercarli.
I team IT dovranno inoltre definire le policy e spiegare agli utenti quando abilitare la crittografia end-to-end per la messaggistica, perché questo comporta ulteriori implicazioni oltre alla protezione del contenuto dei messaggi.
La crittografia utilizza Olm/Megolm, un’implementazione aperta del protocollo utilizzato da Signal, che supporta la Perfect Forward Secrecy. In questo modo, se una password o una chiave di crittografia viene compromessa in futuro, il contenuto dei messaggi precedenti non trapela. Per sicurezza, una conversazione che inizia in modo criptato non può essere disabilitata in seguito. Tuttavia, i ponti con altre reti di chat e la maggior parte dei bot non funzionano nelle stanze crittografate e le conversazioni possono essere cercate solo nel client desktop di Element, non in quello mobile o web. Se volete usare Element per ChatOps integrandolo con GitHub, Jenkins o JIRA, o se volete avere bot per Giphy, per la ricerca di immagini su Imgur o per la ricerca su Wikipedia, non potete usare la crittografia end-to-end.
Il bot di Giphy è anche piuttosto primitivo rispetto alla selezione di GIF animate in Teams, Slack o persino Twitter: il bot si presenta come se fosse un collega di lavoro piuttosto che una funzione di chat, e non si sceglie dalle anteprime ma si digita una ricerca testuale senza alcun modo di sapere che il clip inviato da Giphy sia effettivamente appropriato per l’uso lavorativo o che possa farvi ottenere un incontro con le risorse umane.
Element si propone per la collaborazione, non solo per la chat, quindi i bot sono importanti non solo per l’espressione personale, ma anche per gli emoji e gli adesivi. È possibile caricare file (che sono anche criptati), ma è necessario il client desktop per vedere l’elenco dei file condivisi o per condividere lo schermo.
È possibile effettuare chiamate vocali e video: le chiamate vocali utilizzano WebRTC, mentre le videochiamate si avvalgono dell’integrazione di Jitsi (che attualmente è gratuita per l’ecosistema Matrix o che si può fornire autonomamente). Anche in questo caso, mancano molti dei vantaggi dei sistemi commerciali come Teams: è possibile avere la finestra video come miniatura all’interno della chat o a schermo intero, ma se è a schermo intero non è possibile mettere la chiamata in attesa. Abbiamo anche riscontrato problemi quando abbiamo dovuto chiamare qualcuno due volte per far apparire il suo video.
Gli utenti in cerca di aiuto troveranno un elenco piuttosto anemico di FAQ sul sito di Element; nel blog di Element ci sono molti più dettagli sulle funzioni e le opzioni, ma le informazioni non sono facili da trovare. Gli utenti che vogliono sapere come utilizzare la condivisione dello schermo, ad esempio, non vorranno cercare tra i blog o su GitHub i temi delle app per personalizzare il client.
Conclusioni
La sicurezza e gli aspetti decentralizzati di Element saranno interessanti per le aziende che preferiscono controllare la propria architettura di messaggistica piuttosto che affidarsi a fornitori di cloud pubblici, ma offre un’esperienza di collaborazione molto scarna rispetto a Teams o Slack. A lungo termine, Element prevede di portare le funzionalità più ricche di Gitter nelle app Element, e un’interfaccia più curata amplierà sicuramente l’appeal delle comunità open-source che già si trovano a proprio agio con questi strumenti. Per il momento, Element è più adatto alle organizzazioni con un’alta percentuale di utenti esperti di tecnologia e una forte esigenza di messaggistica crittografata e decentralizzata.
