RetroShare – свободное кроссплатформенное программное обеспечение для бессерверного обмена письмами, мгновенными сообщениями и файлами с помощью шифрованной F2F- (и опционально P2P-) сети, построенной на основе алгоритмов GPG и протокола совершенной секретности с упреждением (Perfect Forward Secrecy).
Криптоплатформа RetroShare относится к классу darknet-сетей, топология которых подразумевает осуществление соединений и обмен данными лишь с доверенными участниками сети и исключает как внешние контакты, так и непосредственные контакты с другими участниками, не являющимися доверенными. IP-адреса участников криптосети недоступны друг другу, за исключением ограниченного круга доверенных участников – друзей. Все соединения с удалёнными участниками (пирами), не являющимися друзьями, осуществляются посредством одной или нескольких независимых цепочек анонимных туннелей, прокладываемых между узлами сети со взаимным доверием. Взаимное доверие между участниками устанавливается путём обмена сертификатами GPG, содержащими 2048-, 4096- или 8192-битный публичный ключ. Указанная топология сети вкупе с сильным шифрованием обеспечивает децентрализацию и анонимизацию обмена данными между участниками.
После установки пользователь или генерирует пару ключей GPG с помощью RetroShare, или выбирает существующую. После проверки подлинности и обмена асимметричным ключом, соединение устанавливается по SSH. Для шифрования используется OpenSSL. Друзья друзей по умолчанию не могут соединяться, но могут видеть друг друга если пользователи включили такую возможность.
Также можно шарить папки между друзьями. Передача файлов идёт сегментировано через несколько точек (multi-hop swarming). В целом данные передаются только между друзьями, но путь от отправителя до конечного получателя конкретного сегмента может идти через нескольких друзей. Функцию анонимного поиска по нескольким точкам (multi-hop search) является ещё одним способом находить файлы по сети.
Файлы представляются в виде своих SHA-1 хешей. HTTP-совместимые ссылки на них могут экспортироваться, копироваться и вставляться из/в RetroShare, чтобы опубликовать их виртуальное расположение в сети.
Помимо прочего, в криптоплатформе RetroShare реализована система форумов, разрешающая как анонимные, так и аутентифицированные сообщения. Система форумов также используется для обмена сообщениями между друзьями. Кроме этого, тут есть система каналов объявлений, которая позволяет автоматически загружать файлы размещённые на конкретном канале каждому подписанному клиенту.
Ядро RetroShare основано на базовой библиотеке, к которой могут подсоединяются два модуля пользовательского интерфейса: модуль командной строки, который не даёт почти никакого контроля, и модуль графического интерфейса на Qt 4, который будет более приятен большинству пользователей. В дополнение к популярным функциям другого программного обеспечения обмена файлами, таким как вкладки поиска и визуализация закачек, RetroShare даёт возможность управлять своей сетью путем сбора дополнительной информации о соседних друзьях и отображения её в виде матрицы доверия или в виде динамического графа сети.
Ко всему прочему, F2F структура RetroShare сети затрудняет вторжение и делает почти невозможным мониторинг сети извне. Степень анонимности может быть улучшена деактивацией DHT и сервисов обмена IP/сертификатами, превращая таким образом сеть RetroShare в настоящий даркнет. Друзья друзей не могут напрямую соединяться друг с другом. Тем не менее, возможность анонимного обмена файлами с друзьями друзей существует, если она включена пользователем. Поиск, доступ, загрузка и скачивание таких файлов производится путём «маршрутизации» через ряд друзей. Это означает, что связь между источником данных (Uploader) и получателем данных (Downloader) является косвенной через общих друзей. Хотя друзья-посредники не могут определить источник отправления или пункт назначения, они могут просматривать содержимое проходящих через них пакетов.
Особенности RetroShare
Ссылки
Хорошая копипаста из Википедии. Вот материал посерьезней:
На самом деле, сейчас проект хостится на GitHub