Выпуск реализации анонимной сети I2P 2.10.0 и C++-клиента I2pd 2.58

Представлен релиз анонимной сети I2P 2.10.0 и C++-клиента i2pd 2.58.0. I2P представляет собой многослойную анонимную распределенную сеть, работающую поверх обычного интернета, активно использующую сквозное (end-to-end) шифрование, гарантирующую анонимность и изолированность. Сеть строится в режиме P2P и образуется благодаря ресурсам (пропускной способности), предоставляемым пользователями сети, что позволяет обойтись без применения централизованно управляемых серверов (коммуникации внутри сети основаны на применении шифрованных однонаправленных туннелей между участником и peer-ами).

В сети I2P можно анонимно создавать web-сайты и блоги, отправлять мгновенные сообщения и электронную почту, обмениваться файлами и организовывать P2P-сети. Для построения и использования анонимных сетей для клиент-серверных (сайты, чаты) и P2P (обмен файлами, криптовалюты) приложений, применяются I2P-клиенты. Базовый I2P-клиент написан на языке Java и может работать на широком спектре платформ, таких как Windows, Linux, macOS, Solaris и т.п. I2pd представляет собой независимую реализацию клиента I2P на языке C++ и распространяется под модифицированной лицензией BSD.

В новой версии I2P:

  • Реализована экспериментальная поддержка алгоритмов пост-квантовой криптографии (отключена по-умолчанию).
  • В торрент-клиент I2PSnark добавлена поддержка UDP-трекеров.
  • Улучшена работа скрытого режима (Hidden Mode), снижающая шансы иссякания структур RouterInfo с информацией о маршрутизаторах и связи с ними.
  • Начиная с релиза I2P 2.11.0, запланированного на конец этого года, клиент станет требовать Java 17.

Для C++-клиента i2pd можно выделить следующие изменения:

  • Добавлена поддержка пост-квантовой E2E-криптографии (ML-KEM-512, ML-KEM-768, ML-KEM-1024) при сборке с OpenSSL версии 3.5.0 и выше. Включена по умолчанию.
  • Внедрение протоколов datagram2 и datagram3.
  • В ОС Haiku исправлена нехватка файловых дескрипторов.
  • Реализована поддержка библиотеки boost 1.89.
  • Прекращён приём соединений с сессий ECIESx25519.
  • В веб-консоль маршрутизатора добавлена поддержки тёмной и светлой темы.
  • При неудачной попытке резолвинга хоста в серверном туннеле отныне производится повторная попытка.
  • Добавлены параметры “ssu2.firewalled4” и “ssu2.firewalled6” для форсированного применения поведения, свойственного маршрутизатору, находящемуся за межсетевым экраном, даже если межсетевого экрана нет.
  • Добавлена возможность создавать уникальные loopback-адреса в диапазоне fd00::/8 для ::1, если это явно указано в конфигурации серверного туннеля.
  • Убрано отображение статуса сети, если применяется режим ipv6-only.
  • Добавлена команда PING для интерфейса SAM.
  • Исправлена отправка неправильной версии в сообщении SetDate интерфейса I2CP.
  • Исправлен максимальный размер буфера UDP для OpenBSD.
  • Добавлены параметры “i2p.streaming.maxWindowSize” и “i2p.streaming.dontSign”.
  • Добавлен стриминг PING через интерфейс BOB.
  • Ограничено максимальное количество исходящих стриминговых пакетов, если пир не способен их обработать.
  • Исходящий поток больше не будет постоянно перезапрашивать LeaseSet, если удалённый пир исчез.
  • Убраны вызовы функций, удалённых из OpenSSL.
  • Обеспечен приём “HELLO VERSION” без “MIN” и “MAX” в интерфейсе SAM.
  • Добавлен неблокирующий режим для UDP-сокетов в UDP-туннелях.
  • Обновлён список reseed-серверов.
Release. Ссылка here.