Випуск GNUnet Messenger 0.7 та libgnunetchat 0.1 для створення децентралізованих чатів

Розробники фреймворку GNUnet, призначеного для побудови захищених децентралізованих P2P-мереж, які не мають єдиної точки відмови і здатні гарантувати недоторканність приватної інформації користувачів, представив перший випуск бібліотеки libgnunetchat 0.1.0. Бібліотека дозволяє спростити використання технологій GNUnet та сервісу GNUnet Messenger для створення захищених програм для чату.

Libgnunetchat надає окремий рівень абстракції над GNUnet Messenger, що включає типову функціональність, яка застосовується в месенджерах. Розробнику залишається зосередити увагу на створенні графічного інтерфейсу з використанням GUI-тулкіту на свій вибір, і не дбати про компоненти, пов'язані з організацією роботи чату та взаємодією між користувачами. Створювані на базі libgnunetchat реалізації клієнтів залишаються сумісними між собою і можуть взаємодіяти один з одним.

Для забезпечення конфіденційності та захисту від перехоплення повідомлень застосовується протокол CADET (Confidential Ad-hoc Decentralized End-to-End Transport), що дозволяє організувати повністю децентралізовану взаємодію між групою користувачів з використанням наскрізного шифрування даних, що передаються. Користувачам надається можливість надсилання повідомлень та файлів. Доступ до повідомлень у файлах надається лише учасникам групи. Для координації взаємодії між учасниками децентралізованої мережі може застосовуватись розподілена хеш таблиця (DHT) або спеціальні точки входу.

Крім Messenger у libgnunetchat також застосовуються такі сервіси GNUnet:

  • GNS (GNU Name System, повністю децентралізована та недоступна для цензури заміна DNS) для визначення опублікованих записів у публічних сторінках чатів (lobbie), відкриття чату та обміну обліковими даними.
  • ARM (Automatic Restart Manager) для автоматизації запуску всіх сервісів GNUnet, необхідних роботи.
  • FS (File Sharing) для безпечного завантаження, відправки та організації спільного доступу до файлів (вся інформація передається тільки в зашифрованому вигляді, а використання протоколу GAP не дозволяє відстежити хто розмістив та скачав файл).
  • IDENTITY для створення, видалення та керування обліковими записами, а також для верифікації параметрів іншого користувача.
  • NAMESTORE для локального зберігання адресної книги та інформації про чати та для публікації записів на сторінках чатів, доступних через GNS.
  • REGEX для оприлюднення інформації про учасників, що дозволяє швидко сформувати публічний груповий чат на певну тему.

Основні можливості першого випуску libgnunetchat:

  • Керування обліковими записами (створення, перегляд, видалення) та можливість перемикання між різними обліковими записами під час роботи.
  • Можливість перейменування облікового запису та оновлення ключа.
  • Обмін контактами через сторінки чатів (lobbie). Інформація користувача може бути отримана як у форматі текстового посилання, так і у вигляді QR-коду.
  • Контакти та групи можуть керуватися окремо, можлива прив'язка різних ників до різних груп.
  • Можливість запиту та відкриття прямого чату з будь-яким учасником з адресної книги.
  • Абстрагування уявлень користувача та чату для спрощення обгортки в бажаний інтерфейс.
  • Підтримка надсилання текстових повідомлень, файлів та організації спільного доступу до файлів.
  • Підтримка надсилання підтвердження про прочитання повідомлення та можливість перевірка статусу отримання повідомлення.
  • Можливість автоматичного видалення повідомлення за заданий час.
  • Гнучкі можливості управління файлами в чаті, наприклад, можна організувати відображення ескізу вмісту з залишенням самого вмісту в зашифрованому вигляді.
  • Можливість підключення обробників для відстеження всіх операцій (завантаження, відправлення, видалення з індексів).
  • Підтримка прийому запрошень для підключення до нових чатів.

Додатково можна відзначити реліз готового месенджера GNUnet Messenger 0.7, який пропонує інтерфейс на базі GTK3. GNUnet Messenger продовжує розвиток графічного клієнта cadet-gtk, переведеного на бібліотеку libgnunetchat (функціональність cadet-gtk розділена на універсальну бібліотеку та надбудову з GTK-інтерфейсом). Програма підтримує створення чатів та груп чатів, керування адресною книгою, розсилку запрошень на вступ до груп, надсилання текстових повідомлень та голосових записів, організацію спільного доступу до файлів, переключення між кількома обліковими записами. Для любителів адресного рядка окремо розвивається консольний месенджер на базі libgnunetchat, який поки що знаходиться на початковій стадії розвитку.

Випуск GNUnet Messenger 0.7 та libgnunetchat 0.1 для створення децентралізованих чатів
Випуск GNUnet Messenger 0.7 та libgnunetchat 0.1 для створення децентралізованих чатів


Джерело: opennet.ru

Додати коментар або відгук