Gopher 2.0: зашифрованный, динамический и минималистичный протокол (AES-GCM + X25519)
Автор: Killer Monky Recordz (LazyOwn RedTeam Framework)
Загружено: 2025-10-26
Просмотров: 14
Описание:
Gopher 2.0 — это минималистичный протокол, вдохновлённый Gopher, разработанный для сочетания простоты с современными функциями безопасности. Он представлен как альтернатива для пользователей, ценящих простоту, конфиденциальность и полный контроль.
Основные функции и философия
• Сквозное шифрование: Gopher 2.0 гарантирует непрозрачность всего обмена данными без корректного ключа AES.
• Динамический контент: контент может динамически генерироваться с помощью блоков кода Python, безопасно выполняемых на сервере.
• Минимализм: протокол избегает таких технологий, как JavaScript и HTTP, что гарантирует отсутствие отслеживания.
• Разделение безопасности: клиент никогда не выполняет код; он несёт полную ответственность за расшифровку и отображение текста. Сервер выполняет код Python в ограниченной среде (без произвольного импорта, ОС или подпроцессов).
Криптография и обмен ключами
Клиент и сервер Gopher 2.0 используют надёжную современную криптографию:
1. Согласование ключей: эфемерные сеансовые ключи согласуются с использованием ECDH (X25519). Обмен ключами включает отправку клиентом своего 32-байтового открытого ключа, а сервером — ответ своим открытым ключом.
2. Вывод ключа: общий секретный ключ используется с HKDF (с использованием SHA256) для получения общего ключа AES длиной 256 бит (32 байта).
3. Симметричное шифрование: шифрование данных и аутентификация выполняются с помощью AES-256-GCM. В результате шифрования формируется полезная нагрузка, содержащая 12-байтовый одноразовый код, зашифрованный текст и 16-байтовый тег аутентификации.
Доверие и безопасность
Клиент реализует политику доверия при первом использовании (TOFU):
• Клиент вычисляет отпечаток SHA256 открытого ключа сервера.
• Этот отпечаток сверяется с сохранёнными отпечатками в файле ~/.gopher2/known_hosts.
• Если это первое подключение, пользователь должен подтвердить доверие перед сохранением отпечатка. • Если сохранённый отпечаток не совпадает с текущим, соединение прерывается и выдаётся предупреждение о потенциальной атаке MITM.
Подробности реализации
• Требования: Для работы системы требуется Python 3.8+ и библиотека криптографии.
• Структура: Проект включает gopher2_client.py и gopher2_server.py.
• Содержимое: Маршруты содержимого определены в файле selectors.json, который поддерживает текст, интерполяцию переменных ({{var}}), блоки выполнения и безопасное форматирование Markdown, преобразующее его в последовательности ANSI.
• Лицензия: Gopher 2.0 распространяется по лицензии GPL v3.
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: