Генератор ключей Reality
Одним кликом получите случайную пару приватный / публичный ключ X25519 и short_id для нового сервера с VLESS Reality. Пригодится, если вы
поднимаете свой sing-box или Xray-core с нуля — обычно ключи для этого генерируют командой sing-box generate reality-keypair или xray x25519, но с тем же
результатом можно получить их прямо здесь.
— — — Как это работает
crypto.getRandomValues — встроенный криптографически стойкий генератор
случайных чисел браузера.
Частые вопросы
Зачем нужна отдельная пара ключей, если конвертер JSON → ссылка уже вычисляет публичный из приватного?
Тот инструмент рассчитан на готовый чужой конфиг — например, скачанный с панели VPS, где ключи уже существуют. Этот генератор — для случая, когда вы поднимаете сервер с нуля (свой sing-box или Xray-core) и пары ключей ещё нет вообще.
Куда вставить приватный ключ?
В серверный inbound — поле reality.private_key в sing-box или realitySettings.privateKey в Xray-core. Приватный ключ никогда не передаётся клиентам и не покидает сервер.
Куда вставить публичный ключ?
В клиентскую ссылку или конфиг — параметр pbk в ссылке vless://, либо reality.public_key (sing-box) / realitySettings.publicKey (Xray-core) в клиентском outbound.
Можно ли переиспользовать одну пару ключей для нескольких серверов?
Технически можно, но не рекомендуется: если один сервер скомпрометирован или его приватный ключ утечёт, под ударом окажутся все остальные серверы с тем же ключом. Для каждого нового сервера генерируйте отдельную пару.
Что такое short_id и обязателен ли он?
short_id — короткий hex-идентификатор Reality для дополнительной фильтрации входящих подключений (сервер может завести несколько допустимых short_id для разных клиентов). Поле не обязательно — можно оставить пустым, но большинство панелей и примеров задают его по умолчанию.
Эти ключи криптографически надёжны?
Да. Генерация идёт через Web Crypto API (crypto.getRandomValues) — тот же источник случайности, которым браузер пользуется для TLS-соединений, — а сама пара строится по алгоритму X25519 (Curve25519) библиотекой @noble/curves.
Приватный ключ куда-то отправляется при генерации?
Нет. Вся генерация происходит локально в вашем браузере, ключи не покидают устройство. Можно отключить интернет после загрузки страницы — инструмент продолжит работать.