Для разработчиков / OAuth

Генератор верификатора и code challenge PKCE

Создайте верификатор кода OAuth 2.0 PKCE, его code challenge S256 и значение state либо проверьте уже имеющийся верификатор согласно RFC 7636.

Генератор верификатора и code challenge PKCE: PKCE защищает поток кода авторизации OAuth в приложениях, которые не могут хранить секрет, например в мобильных приложениях и одностраничных приложениях. Верификатор — это случайная строка из незарезервированных символов, созданная здесь криптографически стойким генератором случайных чисел вашего браузера без смещения; challenge — это SHA-256 верификатора, закодированный в Base64url. Расчёт соответствует примеру из RFC 7636. Работает на 100% локально в вашем браузере, файлы на сервер не загружаются.

Запуски
В вашем браузере
Стоимость
Бесплатно · без регистрации
Доступность
Готово к использованию
Генератор верификатора и проверки кода PKCEЛокальная обработка

Полностью работает в браузере

code_verifier—
code_challenge (S256)—
code_challenge_methodS256
state—

Отправьте code_challenge и code_challenge_method=S256 вместе с запросом авторизации, храните верификатор в секрете на стороне клиента и отправьте его вместе с запросом токена. Проверка — это Base64url SHA-256 верификатора, как определено в RFC 7636.

Кратко о процессе

Приложение создаёт проверочный код и сохраняет его, отправляет проверочный запрос серверу авторизации вместе с запросом на вход, получает код авторизации, а затем обменивает код вместе с проверочным кодом на токены. Злоумышленник, перехвативший код, не сможет использовать его без проверочного кода.

Чтобы изучить полученные токены, воспользуйтесь декодером JWT.

Теперь требуется всегда

OAuth 2.1 и современные рекомендации по безопасности требуют использовать PKCE для каждого клиента в процессе авторизации по коду, включая конфиденциальные серверные клиенты.

Как пользоваться

  1. Выберите длину верификатора — от 43 до 128 символов — и нажмите «Сгенерировать».
  2. Скопируйте code challenge и метод в запрос авторизации.
  3. Сохраните верификатор для запроса токена; вставьте верификатор, чтобы увидеть его challenge.

Конфиденциальность и ограничения

Значения создаются в вашем браузере и никуда не отправляются.

Похожие инструменты

Часто задаваемые вопросы

Что выбрать: plain или S256?

Всегда выбирайте S256, если клиент умеет вычислять SHA-256, а это поддерживается на всех современных платформах; plain предназначен только для клиентов, которые этого не умеют.

Для чего нужно значение state?

Оно защищает от межсайтовой подделки запросов: отправьте его вместе с запросом авторизации и проверьте, что вернулось то же значение.

Какой должна быть длина верификатора?

Не менее 43 символов; часто используют 64 и более. Большая длина повышает случайность, но не создаёт проблем с совместимостью вплоть до 128 символов.

Бесплатный инструмент · запусков: в вашем браузере · аккаунт не нужен