После почти трёх лет разработки представлен релиз универсального фреймворка для построения безопасных P2P-сетей - GNUnet 0.9.0. Под безопасностью понимается как обеспечение неприкосновенности частной информации пользователей, так и возможность противостояния сети атакам и попыткам злоупотребления. Новый релиз включает большие изменения в архитектуре и переработку с нуля большей части системы. Ценой столь значительных изменений стало нарушение совместимости со старыми версиями 0.8.x.
В настоящее время на базе фреймворка GNUnet создано два основных сервиса:
- Сервис для обмена файлами, который позволяет анонимно и с защитой от цензуры обмениваться данными. Файлы, поисковые запросы и результаты поиска передаются только в зашифрованном виде, что затрудняет отслеживание или применение цензуры. Используемый в сети протокол GAP обеспечивает анонимность и не позволяет связать активность по обмену файлами с конечными пользователями;
- VPN, который позволяет создавать "скрытые сервисы" в домене ".gnunet", а так же туннелировать трафик IPv4 и IPv6 поверх P2P-сети. Поддерживаются также схемы трансляции IPv4-в-IPv6 и наоборот, а также создание туннелей IPv4-поверх-IPv6 и IPv6-поверх-IPv4.
Другие приложения находятся в разработке.
Ключевые особенности GNUnet:
- Работает на GNU/Linux, FreeBSD, Mac OS X и Win32;
- Поддерживает работу P2P поверх TCP, UDP, HTTP (IPv4 или IPv6) и WLAN;
- Поддерживает режим F2F (Friend-to-friend);
- Включает реализацию распределённой хэш таблицы (DHT) общего назначения;
- Поддерживает прохождение NAT, используя UPnP, ICMP или ручное пробитие (возможно в комбинации с DynDNS);
- Не потребляет много памяти.
Для разработчиков GNUnet предоставляет:
- API для доступа ко всем подсистемам из приложений на языке Си;
- Несмотря на то, что GNUnet написан на языке Си, имеется возможность создания расширений и на других языках программирования;
- Мультипроцессная архитектура для более надёжной изоляции компонентов;
- Использование циклв обработки событий и процессов вместо потоков для упрощения разработки;
- Обширные возможности по ведению журнала и сбору статистики;
- Встроенная библиотека для автоматического развёртывания сетей, включающих десятки тысяч пиров.
Ключевые новшества GNUnet 0.9.0:
- Мультипроцессная архитектура с ARM-супервизором;
- Новое приложение: VPN;
- Новая утилита конфигурации gnunet-setup (часть gnunet-gtk), включающая автоматизированные тексты для оценки конфигурации сети и базы данных;
- Новый сервис: mesh-марштутизатор;
- Новые транспорты: HTTPS и WLAN;
- GNUnet теперь находит пиры в LAN по бродкасту (IPv4) и мультикасту (IPv6);
- Новые таблица хранения данных и структура индексов позволили значительно ускорить выполнение различных операций с БД;
- Улучшена соединяемость с использованием UPnP и обхода NAT по ICMP;
- Исполнение, основанное на событиях, приводит к существенным улучшениям производительности во многих областях;
- Усиленная публикация для файлообмена: пользователи указывают приоритет тиражирования для улучшения тиражирования определённых файлов в сети.