Симметричный шифр закрывает содержимое
ChaCha20-Poly1305 или AES-256-GCM. Оба режима шифруют и одновременно проверяют целостность: изменённый по дороге пакет не расшифруется, а будет отброшен как повреждённый.
Шифрование в туннеле состоит из двух независимых механизмов: симметричного шифра, который закрывает содержимое, и обмена ключами, который позволяет сторонам договориться о секрете. Разбираем оба и очерчиваем границы того, что они дают.
Обновлено

| Симметричный шифр | ChaCha20-Poly1305, при аппаратном ускорении — AES-256-GCM |
|---|---|
| Обмен ключами | X25519 (Curve25519), в TLS-транспорте — ECDHE |
| Проверка целостности | Poly1305 или GHASH, встроены в режим шифрования |
| Прямая секретность | Есть: сессионные ключи не выводятся из долговременных |
| Смена сессионного ключа | Каждые 120 секунд в WireGuard |
| Стоимость шифрования | 3–7% одного ядра процессора на 500 Мбит/с |
ChaCha20-Poly1305 или AES-256-GCM. Оба режима шифруют и одновременно проверяют целостность: изменённый по дороге пакет не расшифруется, а будет отброшен как повреждённый.
Стороны договариваются о секрете через X25519 или ECDHE, не передавая его по сети. Наблюдатель, записавший весь обмен, не может вычислить полученный ключ за разумное время.
WireGuard переустанавливает сессионный ключ каждые две минуты. Компрометация одного ключа раскрывает только тот отрезок трафика, который им зашифрован, а не всю историю.
Кроме шифрования протокол подтверждает, что вы говорите именно с нашим сервером. Без этой части шифрование бесполезно: канал можно было бы перехватить подстановкой посредника.
Симметричный шифр — тот, где одним и тем же ключом данные и закрываются, и открываются. Именно он обрабатывает основной поток: каждый пакет, уходящий в туннель, превращается в набор байт, неотличимый от случайного. Скорость здесь критична, потому что операция выполняется миллионы раз в секунду.
AES-256-GCM опирается на аппаратные инструкции процессора. На машине с поддержкой AES-NI, а это все настольные процессоры последних пятнадцати лет, он обрабатывает поток почти бесплатно: несколько процентов ядра на гигабитном канале. Без аппаратной поддержки он резко замедляется, и это заметно на бюджетных роутерах и старых ARM-устройствах.
ChaCha20-Poly1305 спроектирован так, чтобы быстро работать на обычных арифметических операциях, без специальных инструкций. На мобильных процессорах и в роутерах он часто быстрее AES, поэтому WireGuard использует именно его и не даёт выбора. Криптографической разницы в стойкости между ними на практике нет — обе конструкции считаются надёжными, выбор определяется железом.
Симметричный шифр требует, чтобы обе стороны знали один ключ. Передать его по той же сети, которую вы не считаете доверенной, нельзя. Задачу решает асимметричная криптография: стороны обмениваются публичными значениями, и каждая, зная свой приватный ключ и чужой публичный, независимо вычисляет один и тот же общий секрет. Сам секрет по сети не передаётся ни разу.
В WireGuard за это отвечает X25519 — операция на эллиптической кривой Curve25519. В протоколах поверх TLS используется ECDHE, тот же принцип с эфемерными, то есть одноразовыми, ключами. Наблюдатель, записавший весь обмен целиком, получает два публичных значения, из которых вывести общий секрет вычислительно неосуществимо при текущем уровне техники.
Здесь же решается вторая задача — подтверждение подлинности. Обмен ключами сам по себе не защищает от посредника, который представится сервером обеим сторонам. Поэтому клиент заранее знает публичный ключ сервера и сверяет его. Если ключ не совпал, соединение не устанавливается — это и есть защита от подмены.
Прямая секретность (forward secrecy) означает, что сессионные ключи не выводятся из долговременного ключа сервера. Каждое соединение получает собственный секрет, живущий ровно столько, сколько длится сессия, и нигде не сохраняемый после её окончания.
Разница видна в сценарии, который иначе выглядел бы так: наблюдатель годами записывает зашифрованный трафик, затем получает приватный ключ сервера и расшифровывает весь архив. При наличии прямой секретности этот сценарий не работает: приватный ключ не позволяет восстановить сессионные, каждую сессию пришлось бы вскрывать отдельно, а это неосуществимо.
WireGuard идёт дальше и меняет сессионный ключ каждые 120 секунд работы соединения. Если гипотетически раскрыть один такой ключ, он откроет две минуты трафика — ни минутой раньше, ни минутой позже. Это не защита от всего, но существенное ограничение ущерба.
Формулировка встречается на сайтах почти всех сервисов и не означает ничего конкретного. Военного стандарта шифрования для гражданских продуктов не существует; AES действительно одобрен американским институтом стандартов для государственных данных, но ровно тот же алгоритм работает в вашем браузере при открытии любого сайта по HTTPS и в архиваторе с паролем.
Число 256 указывает длину ключа. Разница между 128 и 256 битами на практике неощутима: перебор 128-битного ключа уже за пределами возможного при любом мыслимом объёме вычислений. Более длинный ключ не делает систему пропорционально безопаснее — он лишь увеличивает запас там, где запаса и так избыточно.
Взламывают не шифр. Реальные компрометации происходят через ошибки реализации, слабые генераторы случайных чисел, утечку ключей с устройства, уязвимости в клиентском коде и человеческий фактор. Поэтому осмысленный вопрос к сервису — не «сколько бит», а «какой протокол, как реализован обмен ключами, есть ли прямая секретность и кто проверял код».
Оно закрывает содержимое трафика в пути между вашим устройством и сервером. Всё остальное остаётся за его пределами, и это важно понимать без иллюзий. Факт соединения виден: провайдер знает, что вы установили зашифрованное соединение с определённым адресом, в какое время и какой объём данных передали. Скрыть само наличие соединения шифрование не пытается.
Оно не влияет на то, что делает сайт после того, как вы к нему подключились. Учётная запись, в которую вы вошли, идентифицирует вас точнее любого адреса. Cookies и отпечаток браузера — набор из версии, шрифтов, разрешения экрана, часового пояса — позволяют узнать устройство между сессиями. Часовой пояс и языковые заголовки часто выдают реальный регион при любой локации туннеля.
И оно ничего не делает с угрозами на самом устройстве. Вредоносная программа, кейлоггер или расширение браузера с широкими правами читают данные до того, как те попадут в туннель, — в этот момент они ещё не зашифрованы. Шифрование канала — одна мера из нескольких, а не замена антивирусу, обновлениям системы и внимательности к тому, что вы устанавливаете.
Безлимитный трафик, три устройства по одной ссылке, оплата и поддержка внутри бота. Регистрация на сайте не нужна.
Подписка оформляется в Telegram-канале сервиса · Безлимитный трафик · Поддержка круглосуточно