Jest dostępna nowa wersja zdecentralizowanej platformy komunikacyjnej Jami, wydawana pod kodową nazwą „Maloya”. Projekt ma na celu stworzenie systemu komunikacji działającego w trybie P2P, który umożliwia zarówno komunikację dużych grup, jak i prowadzenie indywidualnych rozmów z zapewnieniem wysokiego poziomu poufności i bezpieczeństwa. Jami, wcześniej znane jako Ring i SFLphone, jest jednym z projektów GNU i jest publikowane na licencji GPLv3. Binarne wersje są przygotowane dla GNU/Linux (Debian, Ubuntu, Fedora, SUSE, RHEL itp.), Windows, macOS, iOS, Android oraz Android TV.
W przeciwieństwie do tradycyjnych klientów komunikacyjnych, Jami jest w stanie przesyłać wiadomości bez korzystania z zewnętrznych serwerów, organizując bezpośrednie połączenie między użytkownikami, przy użyciu szyfrowania end-to-end (klucze są obecne tylko po stronie klienta) oraz autoryzacji opartej na certyfikatach X.509. Oprócz bezpiecznej wymiany wiadomości, program umożliwia prowadzenie rozmów głosowych i wideo, organizowanie telekonferencji, wymianę plików oraz współdzielenie plików i zawartości ekranu.
Początkowo projekt rozwijał się jako programowy telefon oparty na protokole SIP, ale od dawna wykracza poza te ramy na rzecz modelu P2P, zachowując jednocześnie zgodność z SIP i możliwość wykonywania połączeń przy użyciu tego protokołu. Program obsługuje różne kodeki (G711u, G711a, GSM, Speex, Opus, G.722) oraz protokoły (ICE, SIP, TLS), zapewniając niezawodne szyfrowanie wideo, głosu i wiadomości. Do funkcji serwisowych można zaliczyć przekierowywanie i wstrzymywanie połączeń, nagrywanie rozmów, historię połączeń z wyszukiwarką, automatyczną kontrolę głośności oraz integrację z książkami adresowymi GNOME i KDE.
Do identyfikacji użytkownika w Jami stosowany jest zdecentralizowany globalny mechanizm uwierzytelniania kont, oparty na realizacji książki adresowej w formie blockchaina (wykorzystywano osiągnięcia projektu Ethereum). Jeden identyfikator użytkownika (RingID) może być używany jednocześnie na kilku urządzeniach i umożliwia kontakt z użytkownikiem niezależnie od tego, które z urządzeń jest aktywne, bez potrzeby utrzymywania różnych identyfikatorów na smartfonie i PC. Książka adresowa, odpowiadająca za translację nazw w RingID, jest przechowywana na grupie węzłów, wspieranych przez różnych uczestników, istnieje również możliwość uruchomienia własnego węzła w celu utrzymania lokalnej kopii globalnej książki adresowej (Jami wdraża także oddzielną, wewnętrzną książkę adresową, wspieraną przez klienta).
Do adresacji użytkowników w Jami używany jest protokół OpenDHT (rozproszona tabela haszująca), który nie wymaga stosowania scentralizowanych rejestrów z informacjami o użytkownikach. Podstawą Jami jest proces w tle jami-daemon, który odpowiada za obsługę połączeń, organizację komunikacji oraz pracę z wideo i dźwiękiem. Interakcja z jami-daemon odbywa się za pomocą biblioteki LibRingClient, która stanowi podstawę dla budowy oprogramowania klienckiego i zapewnia wszelką standardową funkcjonalność, niezwiązaną z interfejsem użytkownika i platformami. Na bazie LibRingClient powstają bezpośrednio aplikacje klienckie, co pozwala na dosyć proste tworzenie i utrzymywanie różnych interfejsów.
W nowym wydaniu:
- Ujednolicone aplikacje klienckie dla platform GNU/Linux i Windows (a wkrótce również dla macOS), które oferują nowy, ulepszony interfejs oparty na Qt, przekształcony w celu uproszczenia indywidualnych połączeń i organizowania konferencji. Dodano możliwość zmiany mikrofonu i urządzenia wyjściowego bez przerywania połączenia. Udoskonalone środki do udostępniania ekranu.

- Zwiększona stabilność i rozszerzone możliwości związane z organizacją konferencji i spotkań. Wprowadzono wsparcie dla wyznaczania moderatorów konferencji, którzy mogą określać układ wideo uczestników na ekranie, przyznawać głos mówcom oraz przerywać uczestników w razie potrzeby. Z przeprowadzonych testów wynika, że Jami w trybie komfortowym może być używane do konferencji z udziałem do 20 uczestników (w najbliższym czasie planują zwiększyć tę liczbę do 50).

- Ogłoszono o zakończeniu rozwoju klienta dla GNU/Linux z interfejsem opartym na GTK (jami-gnome). Przez pewien czas jami-gnome będzie jeszcze wspierany, ale ostatecznie prace nad nim zostaną zatrzymane na rzecz klienta opartego na Qt. W przypadku, gdy pojawią się entuzjaści gotowi przejąć GTK-klienta, projekt jest gotowy to umożliwić.
- W kliencie dla macOS dodano wsparcie dla wtyczek.
- Udoskonalono działanie wtyczki „GreenScreen”, która wykorzystuje metody uczenia maszynowego do ukrywania lub zastępowania tła podczas rozmów wideo. W nowej wersji dodano możliwość rozmycia tła, aby inni nie widzieli tego, co dzieje się wokół uczestnika.

- Dodano nową wtyczkę „Watermark”, która pozwala na wyświetlanie własnego logo lub dowolnego obrazu na wideo, a także na umieszczenie daty i godziny.

- Dodano wtyczkę „AudioFilter” do dodawania efektu echa do dźwięku.
- Zreformowano klienta dla iOS, zmieniając całkowicie interfejs oraz poprawiając efektywność energetyczną. Zwiększono stabilność działania klienta dla macOS.

- Ulepszono serwer zarządzanie kontami JAMS (Jami Account Management Server), umożliwiając centralne zarządzanie kontami lokalnej społeczności lub organizacji, jednocześnie zachowując zdecentralizowany charakter sieci. JAMS może być używany do integracji z LDAP i Active Directory, prowadzenia książki adresowej oraz stosowania specyficznych ustawień dla grup użytkowników.
- Przywrócono pełne wsparcie dla protokołu SIP i zapewniono możliwość podłączenia do sieci GSM oraz dowolnych dostawców usług SIP.
Źródło: opennet.ru





