Es wurde eine neue Version der dezentralen Kommunikationsplattform Jami veröffentlicht, die unter dem Codenamen „Világfa“ vertrieben wird. Das Projekt zielt darauf ab, ein Kommunikationssystem zu schaffen, das im P2P-Modus arbeitet und sowohl die Kommunikation großer Gruppen als auch individuelle Anrufe ermöglicht, wobei ein hohes Maß an Vertraulichkeit und Sicherheit gewährleistet ist. Jami, früher bekannt als Ring und SFLphone, gehört zu den GNU-Projekten und wird unter der GPLv3-Lizenz veröffentlicht. Binäre Builds sind für GNU/Linux (Debian, Ubuntu, Fedora, SUSE, RHEL usw.), Windows, macOS, iOS, Android und Android TV vorbereitet.
Im Gegensatz zu traditionellen Kommunikationsclients kann Jami Nachrichten ohne den Zugriff auf externe Server über die direkte Verbindung zwischen Benutzern mit Ende-zu-Ende-Verschlüsselung (Schlüssel sind nur auf der Client-Seite vorhanden) und authentifizierung basierend auf X.509-Zertifikaten übertragen. Neben geschützten Nachrichten ermöglicht das Programm, Sprach- und Videoanrufe zu tätigen, Telefonkonferenzen zu erstellen, Dateien auszutauschen und einen gemeinsamen Zugriff auf Dateien und Bildschirminhalte zu organisieren. Für Videokonferenzen auf Server einem CPU Intel Core i7-7700K 4.20 GHz, 32 GB RAM und einer Netzwerkverbindung von 100 Mbit/s wird die beste Qualität bei maximal 25 Teilnehmern erreicht. Jeder Teilnehmer der Videokonferenz benötigt eine Bandbreite von etwa 2 Mbit/s.
Ursprünglich entwickelte sich das Projekt als Softwaretelefon auf Basis des SIP-Protokolls, hat jedoch längst diese Grenzen zugunsten eines P2P-Modells überschritten, während es die Kompatibilität mit SIP und die Möglichkeit, Anrufe über dieses Protokoll zu tätigen, beibehalten hat. Die Software unterstützt verschiedene Codecs (G711u, G711a, GSM, Speex, Opus, G.722) und Protokolle (ICE, SIP, TLS), und bietet zuverlässige Verschlüsselung für Video-, Audio- und Nachrichtenübertragungen. Zu den Dienstfunktionen gehören Anrufweiterleitung und -haltung, Anrufaufzeichnung, Anrufhistorie mit Suchfunktion, automatische Lautstärkeregelung sowie Integration mit den Adressbüchern von GNOME und KDE.
Zur Identifizierung von Benutzern in Jami wird ein dezentralisierter globaler Authentifizierungsmechanismus für Konten verwendet, der auf der Implementierung eines Kontaktbuchs in Form einer Blockchain basiert (basierend auf den Entwicklungen des Ethereum-Projekts). Ein Benutzeridentifikator (RingID) kann gleichzeitig auf mehreren Geräten verwendet werden und ermöglicht die Kommunikation mit dem Benutzer, unabhängig davon, welches der Geräte aktiv ist, ohne mehrere Identifikatoren auf dem Smartphone und PC pflegen zu müssen. Das Kontaktbuch, das für die Übersetzung von Namen in RingID verantwortlich ist, wird auf einer Gruppe von Knoten gespeichert, die von verschiedenen Teilnehmern unterstützt werden; es ist auch möglich, einen eigenen Knoten zu betreiben, um eine lokale Kopie des globalen Kontaktbuchs zu pflegen (Jami implementiert auch ein separates internes Kontaktbuch, das vom Client unterstützt wird).
Zur Adressierung von Benutzern in Jami wird das OpenDHT-Protokoll (verteilte Hash-Tabelle) verwendet, das keine zentralisierten Register für Informationen über Benutzer erfordert. Die Basis von Jami bildet der Hintergrundprozess jami-daemon, der für die Verarbeitung von Verbindungen, die Organisation der Kommunikation und die Verarbeitung von Video und Audio zuständig ist. Die Interaktion mit dem jami-daemon erfolgt über die LibRingClient-Bibliothek, die die Grundlage für die Entwicklung von Client-Software bildet und alle typischen Funktionen bereitstellt, die nicht an die Benutzeroberfläche und Plattformen gebunden sind. Auf LibRingClient basieren direkt die Client-Anwendungen, was die Erstellung und Wartung verschiedener Benutzeroberflächen erleichtert. Der Hauptclient für PCs ist mit der Qt-Bibliothek geschrieben, zusätzlich werden Clients auf Basis von GTK und Electron entwickelt.
Hauptneuheiten:
- Die Entwicklung des Gruppensystemkommunikationssystems „Swarms“ wurde fortgesetzt, das vollständig verteilte P2P-Chats ermöglicht, in denen die Kommunikationshistorie auf allen Geräten des Benutzers synchron gespeichert wird. Während im vorherigen Update nur die Kommunikation zwischen zwei Teilnehmern zugelassen war, können im neuen Release im Schwarmmodus jetzt kleine Gruppenchats mit bis zu 8 Teilnehmern erstellt werden (in zukünftigen Versionen wird geplant, die Anzahl der Teilnehmer zu erhöhen und Unterstützung für öffentliche Chats hinzuzufügen).

Für die Erstellung von Gruppenchats wurde ein neuer Button hinzugefügt und die Möglichkeit zur Anpassung der Chatparameter bereitgestellt.

Nach der Erstellung eines Gruppenchats können neue Teilnehmer hinzugefügt und bestehende entfernt werden. Es gibt drei Kategorien von Teilnehmern: Eingeladener (hinzugefügt zur Gruppe, aber noch nicht dem Chat beigetreten), Beigetretener und Administrator. Jeder Teilnehmer kann Einladungen an andere Personen senden, aber nur der Administrator hat die Möglichkeit, Personen aus der Gruppe zu entfernen (vorerst kann es nur einen Administrator geben, in späteren Versionen wird jedoch ein flexibles Berechtigungssystem und die Möglichkeit zur Ernennung mehrerer Administratoren eingeführt).

- Ein neues Panel mit Informationen über den Chat wurde hinzugefügt, wie z. B. die Teilnehmerliste, die Liste der gesendeten Dokumente und die Einstellungen.

- Mehrere Arten von Lesebestätigungen und Tippindikatoren wurden hinzugefügt.

- Die Möglichkeit, Dateien im Chat zu senden, wurde bereitgestellt; die Teilnehmer des Chats können die Datei auch erhalten, wenn der Absender nicht online ist.
- Eine Benutzeroberfläche für die Suche nach Nachrichten in Chats wurde hinzugefügt.
- Unterstützung für das Setzen von Reaktionen mit Emojis wurde hinzugefügt.
- Eine Option zur Anzeige von Informationen über den aktuellen Standort wurde hinzugefügt.
- Der Desktop-Client hat experimentelle Unterstützung für Gruppenchats, die Videokonferenzen begleiten, erhalten.
Quelle: opennet.ru





