GNUnet

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
GNUnet
Скриншот программы GNUnet
Тип Анонимная одноранговая сеть
Разработчик Команда разработчиков GNUnet
Написана на C
Интерфейс GTK[3]
Операционные системы официальный: Свободные программы операционные системы (Linux, FreeBSD, NetBSD, OpenBSD); неофициальный: Другие операционные системы (OS X, Windows)
Первый выпуск 2001
Последняя версия
Репозиторий git.gnunet.org/gnunet.gi…
Лицензия GNU AGPLv3 либо более поздней[2] (Свободные программы)
Сайт gnunet.org
Логотип Викисклада Медиафайлы на Викискладе

GNUnet — программный пакет для безопасного P2P-соединения, не нуждающегося в серверах. Проект возник в 2001 году и был вдохновлён целым рядом технических идей, призванных обеспечить безопасный файлообмен в пиринговых сетях.

Основная цель проекта — создание надёжной, открытой, равноправной и анонимной сети обмена информацией. Планируется предоставление множества интернет-услуг, а сама сеть стремится стать платформой для разработки децентрализованных служб следующего поколения. Использует Drupal в качестве системы управления содержимым[4] и Mantis для отслеживания ошибок[5].

За основу GNUnet были взяты существующие Freenet и Mnet[англ.], однако GNUnet существенно отличается от каждой из них.

Первый реализованный сервис позволяет обмениваться файлами анонимно и без какой либо сетевой цензуры. GNUnet может использовать для передачи данных как стандартные протоколы TCP и UDP, так и необычные для P2P HTTP, причём с возможностью работы через прокси-сервер, а также SMTP. Кроме того, GNUnet может работать за NAT.

В данный момент в проект входит демон gnunetd, несколько библиотек и два фронтенда: gnunet-gtk и gnunet-qt, соответственно написанные с использованием GTK и Qt.

Фронтенд gnunet-gtk
Фронтенд gnunet-qt

Сервисы и модули

[править | править код]

Для идентификации объектов и сервисов GNUnet использует URI. Любой объект в сети GNUnet идентифицируется с помощью URI, который в текущей версии выглядит как gnunet://module/identifier, где module — имя модуля сети, а identifier — уникальный хеш, идентифицирующий сам объект.

Самым популярным и наиболее стабильным сервисом является служба File Sharing, предназначенная для анонимного децентрализованного файлообмена. Поддерживается поиск, публикация и скачивание как отдельных файлов, так и целых каталогов. Благодаря сложному механизму маршрутизации запросов и ответов пользователь не может знать, от кого он принимает или кому передаёт файл.

В GNUnet можно настраивать степень анонимности от 0 (не анонимно) до бесконечности, по умолчанию используется 1. Передаваемые файлы закодированы с помощью ECRS (англ. An Encoding for Censorship-Resistant Sharing) и обрабатываются соответствующим модулем.

В GNUnet также существует простейший чат, и планируются ещё несколько служб, например, анонимная P2P-почта.

Примечания

[править | править код]
  1. Schanzenbach M. GNUnet 0.23.0 released (англ.) — 2024.
  2. license notice placed at the top in one of the source files of the project's repository, probably in each of its source files. — «GNUnet is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.» Дата обращения: 8 июня 2018. Архивировано 12 июня 2018 года.
  3. Free Software Directory
  4. Facilitating the free flow of information for the GNUnet community Архивировано 27 декабря 2007 года.
  5. GNUnet.org bugtracking. Дата обращения: 28 сентября 2009. Архивировано из оригинала 18 марта 2008 года.

Файловые архивы

Форумы и конференции

Публикации