Reality — технология защиты соединения из проекта Xray, которая заменяет обычный TLS для протокола VLESS. Серверу с Reality не нужны собственный домен и TLS-сертификат: клиент проверяет сервер по его публичному ключу.
Как работает
При настройке сервер получает пару ключей X25519 и имя стороннего сайта, который поддерживает TLS 1.3. Клиент начинает стандартное рукопожатие TLS 1.3 с именем этого сайта и добавляет в него данные, которые может проверить только сервер с нужным закрытым ключом. Если проверка прошла, сервер устанавливает с клиентом защищённое соединение. Если нет, сервер пересылает запрос на тот самый сторонний сайт, и запрашивающая сторона получает его настоящий ответ.
Где применяется
Reality используют в связке VLESS, XTLS Vision и Reality на серверах Xray, её также поддерживает ядро sing-box. В ключе vless:// параметры Reality видны как security=reality, pbk — публичный ключ, sni — имя сайта и sid — короткий идентификатор. Если клиент сообщает об ошибке TLS-рукопожатия, одна из частых причин — устаревший публичный ключ: попросите у сервиса свежую ссылку или обновите подписку.
Чем отличается от обычного TLS
Обычный TLS требует домен и сертификат от удостоверяющего центра, которые нужно регулярно продлевать. Reality работает без них: проверку цепочки сертификатов на клиенте заменяет проверка по публичному ключу, заданному в ссылке. Для пользователя настройка не усложняется: параметры Reality приходят в том же ключе или подписке, что и остальные настройки.