Бесплатный инструмент

Генератор ключей Reality

Одним кликом получите случайную пару приватный / публичный ключ X25519 и short_id для нового сервера с VLESS Reality. Пригодится, если вы поднимаете свой sing-box или Xray-core с нуля — обычно ключи для этого генерируют командой sing-box generate reality-keypair или xray x25519, но с тем же результатом можно получить их прямо здесь.

Все вычисления — в вашем браузере. Данные никуда не отправляются: можно отключить интернет после загрузки страницы, инструмент продолжит работать.
Приватный ключ — только для сервера
Публичный ключ — для клиентской ссылки
Short ID
Куда вставить
Серверный inbound (sing-box)
 
Параметры клиентской ссылки vless://
 
Уже есть приватный ключ? Вычислить публичный

Как это работает

1
Случайный приватный ключ. 32 случайных байта генерируются через crypto.getRandomValues — встроенный криптографически стойкий генератор случайных чисел браузера.
2
Публичный ключ по X25519. Из приватного ключа по алгоритму X25519 (Curve25519) вычисляется соответствующий публичный ключ — той же математикой, что использует сам протокол Reality при установке соединения.
3
Готово к использованию. Приватный ключ идёт на сервер, публичный — в клиентскую ссылку. Готовую ссылку целиком можно собрать в конвертере JSON → ссылка.

Частые вопросы

Зачем нужна отдельная пара ключей, если конвертер 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.

Приватный ключ куда-то отправляется при генерации?

Нет. Вся генерация происходит локально в вашем браузере, ключи не покидают устройство. Можно отключить интернет после загрузки страницы — инструмент продолжит работать.