Подробнее о демоне GoVPN
GoVPN это простой демон виртуальных частных сетей, код которого нацелен
на лёгкость чтения и анализа, безопасность, устойчивость к DPI/цензуре.
- Свободное программное обеспечение, копилефт: лицензировано под условиями
GPLv3+.
- Быстрый сильный аутентифицируемый по парольной фразе несбалансированный
протокол согласования ключей с двусторонней аутентификацией сторон и
нулевым неразглашением (PAKE DH A-EKE (Diffie-Hellman Augmented
Encrypted Key Exchange)).
- Несбалансированные аутентификационные токены устойчивые к внесетевым
(offline) атакам по словарю. Злоумышленник не может замаскироваться под
клиента даже скомпрометировав базу данных токенов сервера.
- Зашифрованный и аутентифицируемый транспортный протокол передачи данных
с 128-бит порогом безопасности и современной криптографией.
- Цензуроустойчивые сообщения транспорта и рукопожатия: неотличимые от
шума с опциональным скрытием размеров сообщений.
- Свойство совершенной прямой секретности (perfect forward secrecy).
- Защита от атак повторного воспроизведения (replay) (используя
одноразовые MAC).
- Встроенные функции пересогласования ключей (ротация сессионных ключей) и
сердцебиения (heartbeat).
- Возможность скрывать размеры пакетов путём зашумления данных.
- Возможность скрывать временные характеристики полезной нагрузки путём
постоянного по скорости трафика.
- Совместимость с EGD (демон сборки
энтропии) генераторами псевдослучайных чисел.
- Поддержка нескольких клиентов одновременно с специфичной для каждого
конфигурацией. Клиенты имеют заранее установленный идентификатор,
невидимый третьим лицам (они анонимны для них).
- Использует TAP низлежащие сетевые интерфейсы.
- Может работать поверх UDP, TCP и HTTP прокси для доступа к серверу.
- Полностью IPv4 и IPv6 совместимый.
- Опциональный встроенный HTTP-сервер для получения статистики о
подключённых клиентах в режиме реального времени в JSON формате.
- Написан на языке Go с простым кодом, ориентированным на лёгкость чтения
и анализа.
- Поддержка GNU/Linux и FreeBSD.