È uscito un nuovo aggiornamento della piattaforma di comunicazione decentralizzata Jami, distribuito con il nome in codice «Taranis». Il progetto è focalizzato sulla creazione di un sistema di comunicazione che opera in modalità P2P e consente di organizzare sia comunicazioni tra grandi gruppi che chiamate individuali, fornendo un elevato livello di riservatezza e sicurezza. Jami, in precedenza conosciuto come Ring e SFLphone, fa parte dei progetti GNU e viene distribuito con licenza GPLv3. Le versioni binarie sono disponibili per GNU/Linux (Debian, Ubuntu, Fedora, SUSE, RHEL, ecc.), Windows, macOS, iOS, Android e Android TV.
A differenza dei tradizionali client di comunicazione, Jami è in grado di inviare messaggi senza interpellare server esterni, organizzando una connessione diretta tra gli utenti con l'uso di crittografia end-to-end (le chiavi sono presenti solo lato client) e autenticazione basata su certificati X.509. Oltre allo scambio sicuro di messaggi, il programma consente di effettuare chiamate vocali e video, creare teleconferenze, scambiare file e organizzare l'accesso condiviso a file e contenuti dello schermo. Per le videoconferenze con server CPU Intel Core i7-7700K 4.20 GHz, 32 GB di RAM e connessione di rete 100 Mbit/s, la migliore qualità si ottiene con un massimo di 25 partecipanti. Ogni partecipante alla videoconferenza richiede una larghezza di banda di circa 2 Mbit/s.
Inizialmente, il progetto si è sviluppato come telefono software basato sul protocollo SIP, ma da tempo ha superato questi limiti a favore del modello P2P, mantenendo comunque la compatibilità con SIP e la possibilità di effettuare chiamate tramite questo protocollo. Il programma supporta vari codec (G711u, G711a, GSM, Speex, Opus, G.722) e protocolli (ICE, SIP, TLS), garantendo una crittografia sicura per video, voce e messaggi. Tra le funzionalità di servizio, si possono notare il trasferimento e la messa in attesa delle chiamate, la registrazione delle chiamate, la cronologia delle chiamate con ricerca, il controllo automatico del volume, e l'integrazione con le rubrica GNOME e KDE.
Per l'identificazione dell'utente in Jami viene utilizzato un meccanismo globale decentralizzato di autenticazione degli account, basato sull'implementazione di una rubrica in forma di blockchain (si utilizzano le scoperte del progetto Ethereum). Un identificatore utente (RingID) può essere utilizzato contemporaneamente su più dispositivi e consente di contattare l'utente indipendentemente dal dispositivo attivo, senza la necessità di mantenere identificatori diversi su smartphone e PC. La rubrica, responsabile della traduzione dei nomi in RingID, è memorizzata su un gruppo di nodi supportati da diversi partecipanti; è anche possibile avviare il proprio nodo per mantenere una copia locale della rubrica globale (Jami implementa anche una rubrica interna separata, mantenuta dal client).
Per indirizzare gli utenti in Jami viene utilizzato il protocollo OpenDHT (tabella hash distribuita), che non richiede l'uso di registri centralizzati con informazioni sugli utenti. La base di Jami è un processo in background chiamato jami-daemon, che si occupa della gestione delle connessioni, dell'organizzazione della comunicazione e della gestione di video e audio. L'interazione con jami-daemon è organizzata tramite la libreria LibRingClient, che costituisce la base per lo sviluppo del software client e fornisce tutte le funzionalità tipiche, non legate all'interfaccia utente e alle piattaforme. Sui LibRingClient vengono direttamente creati le applicazioni client, il che rende abbastanza semplice la creazione e la manutenzione di diverse interfacce.
Novità principali:
- È stata proposta un'implementazione iniziale di un nuovo sistema di comunicazione di gruppo, chiamato «swarm». Il sistema permette di creare chat P2P completamente distribuite, la cui cronologia delle comunicazioni è memorizzata in modo sincronizzato su tutti i dispositivi dell'utente. La prima implementazione è limitata alla comunicazione tra due partecipanti con la possibilità di connettere l'utente da diversi dispositivi associati a un unico account (la cronologia della chat è sincronizzata su tutti i dispositivi). Nella versione successiva sarà aggiunto il supporto per i gruppi di chat in modalità swarm.

- Migliorato il supporto per le conferenze. Aggiunta la modalità "luogo di incontro", che consente di unire tutte le chiamate in arrivo in una conferenza (è possibile consentire la connessione solo agli utenti presenti nella rubrica), evitando di dover aggiungere manualmente ogni partecipante. Aggiunte impostazioni per definire il moderatore predefinito. I moderatori delle conferenze possono disattivare e riattivare l'audio dei microfoni dei partecipanti, nonché rimuovere partecipanti (kick).

Aggiunta la funzione "alzare la mano", tramite la quale un partecipante può esprimere il desiderio di intervenire.

Espanse le possibilità di trasmissione del contenuto dello schermo, che ora consentono di mostrare ad altri partecipanti il contenuto di singole finestre, anziché dell'intero schermo o di un'area evidenziata.

- Nell'app per la piattaforma Android è stata implementata una nuova interfaccia per effettuare chiamate. Nella versione per iOS migliorata la connettività quando il dispositivo è in modalità di sospensione o risparmio energetico.

- Aggiunto il supporto per la piattaforma Windows 11.
Fonte: opennet.ru





