издаването на фреймворка , предназначен за изграждане на защитени децентрализирани P2P мрежи. Създадените с GNUnet мрежи нямат единична точка на отказ и могат да гарантират неприкосновеността на личната информация на потребителите, включително да изключат възможността за злоупотреби от страна на специални служби и администратори, които имат достъп до възлите на мрежата. Издаването е отбелязано с значителни промени в протокола, нарушаващи обратната съвместимост с версиите 0.11.x.
GNUnet поддържа създаването на P2P мрежи върху TCP, UDP, HTTP/HTTPS, Bluetooth и WLAN, може да работи в режим F2F (Friend-to-friend). Поддържа обход на NAT, включително с използване на UPnP и ICMP. За адресиране на данни може да се използва разпределена хеш таблица (DHT). Осигурени са средства за разгръщане на mesh мрежи. За селективно предоставяне и отнемане на права за достъп се прилага услуга за децентрализирана разменя на атрибути за идентификация , GNS (GNU Name System) и криптиране на базата на атрибути ().
Системата се отличава с ниска консумация на ресурси и използване на многопроцесорна архитектура за осигуряване на изолираност между компонентите. Осигурени са гъвкави средства за водене на логове и събиране на статистика. За разработка на крайни приложения GNUnet предоставя API за езика C и биндинги за други програмни езици. За улесняване на разработката вместо потоци се предлага използването на цикли за обработка на събития (event loop) и процеси. В състава има тестова библиотека за автоматично разгръщане на експериментални мрежи, обхващащи десетки хиляди пирове.
Основни нововъведения в GNUnet 0.12:
- В децентрализирана система за домейни GNS (GNU Name System) са внесени промени в протоколите за генериране на ключове (за съответствие с развиваната на бъдещия стандарт). Домейните и етикетите в UTF-8, без прилагане на punycode нотация на IDNA. За обработка на нестандартни имена IDNA е предложен NSS плъгин. Също така е добавен плъгин за блокиране на заявки от root (GNUnet никога не трябва да се стартира с права root).
- В GNS и (Network Size Estimation) е променен алгоритъмът за доказване на работа (proof of work), използван при отнемането на домейн. Промените са свързани с усложняване на изчисленията на специализирани ASIC.
- Плъгинът за реализиране на транспорт върху UDP е преместен в категорията експериментални поради проблеми с стабилността;
- и документиран бинарен формат за отворени ключове RSA;
- излишното хеширане в цифровите подписи EdDSA;
- Добавена е възможност за инсталиране на скрипта gnunet-logread за провеждане на одит на дневниците;
- Реализацията на ECDH е преместена на кода ;
- Много проблеми в системата за компилиране са решени. Хората от зависимостите са премахнати
(GNU Linear Programming Kit). Добавено е коректно описание на пакета за дистрибуции, базирани на пакетен мениджър .
На базата на технологии GNUnet се разработват няколко готови приложения:
- Услуга за анонимен обмен на файлове, която не позволява анализ на информацията, тъй като предава данни само в криптиран вид и не позволява откриване на това, кой е качил, търсил и изтеглял файлове благодарение на използването на протокола GAP.
- Система VPN за създаване на скрити услуги в домейн '.gnu' и пренасочване на тунели IPv4 и IPv6 върху P2P мрежа. Допълнително се поддържат схеми за транслация IPv4-в-IPv6 и IPv6-в-IPv4, както и създаване на тунели IPv4-повърх-IPv6 и IPv6-повърх-IPv4.
- Система за домейни GNS (GNU Name System), която служи като напълно децентрализирана и цензура недостъпна алтернатива на DNS. GNS може да се използва паралелно с DNS и да се използва в традиционни приложения, като уеб браузъри. Целостта и неизменността на записите се осигурява чрез използването на криптографски средства. За разлика от DNS, в GNS вместо дървовидна йерархия от сървъри се използва насочена графа. Преобразуването на имената е подобно на DNS, но запитванията и отговорите се изпълняват с запазване на конфиденциалността — обработващият запитването възел не знае на кого се дава отговор, а транзитните възли и трети наблюдатели не могат да дешифрират запитванията и отговорите;
- GNUnet Conversation е услуга за осъществяване на гласови повиквания над GNUnet. За идентификация на потребителите се използва GNS, а съдържанието на гласовия трафик се предава в криптиран вид. Анонимността не се предоставя за момента - другите пирувители могат да проследят връзката между двама потребители и да определят техните IP адреси.
- Платформа за изграждане на децентрализирани социални мрежи , използваща протокола и поддържаща разпространение на известия в режим multicast с прилагане на end-to-end криптиране, за да имат достъп до съобщенията, файловете, чатове и дискусии само упълномощени потребители (тези, на които не са адресирани съобщенията, включително администраторите на възлите, няма да могат да ги прочетат);
- Система за организиране на криптирана електронна поща , прилагаща GNUnet за защита на метаданните и поддържаща различни за верификация на ключовете;
- Платежна система , предоставяща анонимност на купувачите, но проследяваща транзакциите на продавачите за осигуряване на прозрачност и предоставяне на данъчна отчетност. Поддържа работа с различни съществуващи валути и електронни пари, включително с долари, евро и биткойни.
Източник: opennet.ru
