Представен е новият 0.17 издание на GNUnet фреймворка, предназначен за изграждане на защитени децентрализирани P2P мрежи. Мрежите, създадени с GNUnet, нямат единна точка на отказ и могат да гарантират неприкосновеността на личната информация на потребителите, включително да изключат възможни злоупотреби от страна на разузнавателни служби и администратори с достъп до узли на мрежата.
GNUnet поддържа създаването на P2P мрежи върху TCP, UDP, HTTP/HTTPS, Bluetooth и WLAN, и може да работи в режим F2F (от приятел до приятел). Поддържа обход на NAT, включително с използване на UPnP и ICMP. За адресиране на разположението на данни е възможно да се използва разпределена хеш таблица (DHT). Предоставят се средства за разгръщане на mesh мрежи. За селективно предоставяне и отнемане на права за достъп се прилага услугата за децентрализирана размяна на атрибути за идентификация reclaimID, използваща GNS (GNU Name System) и криптиране на базата на атрибути (Attribute-Based Encryption).
Системата се отличава с ниско потребление на ресурси и използване на многопроцесорна архитектура за осигуряване на изолация между компонентите. Предоставят се гъвкави средства за водене на логове и натрупване на статистика. За разработка на крайни приложения GNUnet предоставя API за езика C и биндинги за други програмни езици. За улесняване на разработката вместо потоци се предлага използването на цикли за обработка на събития (event loop) и процеси. Включена е тестова библиотека за автоматично разгръщане на експериментални мрежи, обхващащи десетки хиляди пирa.
На базата на технологиите на GNUnet се разработват няколко готови приложения:
- Системата за домейни GNS (GNU Name System) служи като напълно децентрализирана и неконтролируема алтернатива на DNS. GNS може да се използва заедно с DNS и в традиционни приложения, като уеб браузъри. За разлика от DNS, GNS прилага насочена граф структура вместо дървовидна йерархия на сървърите. Преобразуването на имена е подобно на това при DNS, но запитванията и отговорите се извършват с гарантирана конфиденциалност — узелът, който обработва запитването, не знае на кого отговаря, а транзитните узли и странични наблюдатели не могат да декодират запитванията и отговорите. Цялостта и неизменността на записите се осигурава чрез използване на криптографски механизми. DNS зоната в GNS се определя с помощта на двойка от публичен и частен ключ ECDSA, базиран на елиптичните криви Curve25519.
- Услуга за анонимен обмен на файлове, която не позволява анализ на информацията, тъй като данните се предават само в криптиран вид и не позволява проследяване на това, кой е поставил, търсил или свалил файловете благодарение на използването на протокол GAP.
- Система VPN за създаване на скрити услуги в домейна '.gnu' и пробиване на тунели IPv4 и IPv6 през P2P мрежа. Допълнително се поддържат схеми за трансформация от IPv4 в IPv6 и обратно, както и създаване на тунели IPv4 върху IPv6 и IPv6 върху IPv4.
- Услуга GNUnet Conversation за провеждане на гласови разговори през GNUnet. За идентификация на потребителите се използва GNS, съдържанието на гласовия трафик се предава в криптиран вид. Анонимността все още не е предоставена — другите потребители могат да проследят връзката между двама потребители и да определят техния. IP адреси.
- Платформа за изграждане на децентрализирани социални мрежи Secushare, която използва протокола PSYC и поддържа разпространение на уведомления в режим multicast с end-to-end криптиране, така че само упълномощени потребители да имат достъп до съобщения, файлове, чатове и обсъждания (потребители, до които не са адресирани съобщенията, включително администратори на узли, няма да могат да ги прочетат);
- Системата за организиране на криптирана електронна поща pretty Easy privacy, която използва GNUnet за защита на метаданните и поддържа различни криптографски протоколи за верификация на ключовете;
- Платежната система GNU Taler предоставя анонимност за потребителите, но проследява транзакциите на продавачите за осигуряване на прозрачност и предоставяне на данъчни отчети. Поддържа работа с различни съществуващи валути и електронни пари, включително долари, евро и биткойни.
В новата версия на GNUnet са направени промени, които нарушават съвместимостта на протокола и водят до възможни проблеми при взаимодействието между узли на базата на GNUnet 0.17 и по-стари версии. В частност, нарушена е съвместимостта на нивото на разпределената хеш таблица (DHT) — реализацията на DHT е обновена до новата версия на спецификацията, а определенията на типовете блокове са пренесени в GANA (GNUnet Assigned Numbers Authority). Добавена е поддръжка на подравнени и преорганизирани формати на съобщения. Обратно в новата версия на спецификацията са пренесени несъвместими промени, касаещи децентрализирана система за домейни GNS (GNU Name System). За добавените в GNS записи е предоставена възможност за настройка на времето за живот на записа.
Източник: opennet.ru
