Использование приватных одноранговых чатов давно вышло за пределы даркнета. К ним активно прибегают как обычные пользователи, так и серьёзные компании для внутреннего общения и обмена файлами. О том, что все узлы P2P chat https://shazzle.com/shazzlechat равноправны, говорит расшифровка аббревиатуры «peer-to-peer» — «равный равному». Важной особенностью является отсутствие центрального элемента.
Работать сеть может с различными ресурсами, но в установленных этой сетью рамках. Каждый элемент сети представляет собой отдельный сервер и может самостоятельно обрабатывать запросы от других пользователей. Из-за отсутствия центрального элемента каждый узел берет на себя часть функций администратора. Подобная организация позволяет использовать сеть независимо от качества сети и количества узлов.
Как создать P2P chat
Чтобы написать свой мессенджер P2P в Python, необходимы следующие ресурсы: сервер со статическим межсетевым протоколом, два устройства с соединением Фул Кон НАТ и простое прохождение UDP через NAT-серверы (STUN-сервер). Можно использовать Python-модули стьюн, сокет или оз. Для связи между узлами обычно используется протокол UDP
Механика чата такая:
Server-STUN server
Client-STUN server
Server-Signaling server
Client-Signaling server
Client-Server
Для того чтобы запустить чат, необходимы файлы с названием всех трех узлов. Создать и заполнить файлы нужно самостоятельно.
Тестировать чат лучше всего под операционной системой, состоящей из свободного программного обеспечения с открытым исходным кодом, например Debian. Если же желания и навыков самостоятельно заниматься программированием нет, можно воспользоваться готовыми вариантами.