Для разработчиков / 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% локально в вашем браузере, файлы на сервер не загружаются.
- Категория
- Инструменты для разработчиков
- Запуски
- В вашем браузере
- Стоимость
- Бесплатно · без регистрации
- Доступность
- Готово к использованию
Полностью работает в браузере
——S256—Отправьте code_challenge и code_challenge_method=S256 вместе с запросом авторизации, храните верификатор в секрете на стороне клиента и отправьте его вместе с запросом токена. Проверка — это Base64url SHA-256 верификатора, как определено в RFC 7636.
Кратко о процессе
Приложение создаёт проверочный код и сохраняет его, отправляет проверочный запрос серверу авторизации вместе с запросом на вход, получает код авторизации, а затем обменивает код вместе с проверочным кодом на токены. Злоумышленник, перехвативший код, не сможет использовать его без проверочного кода.
Чтобы изучить полученные токены, воспользуйтесь декодером JWT.
Теперь требуется всегда
OAuth 2.1 и современные рекомендации по безопасности требуют использовать PKCE для каждого клиента в процессе авторизации по коду, включая конфиденциальные серверные клиенты.
Как пользоваться
- Выберите длину верификатора — от 43 до 128 символов — и нажмите «Сгенерировать».
- Скопируйте code challenge и метод в запрос авторизации.
- Сохраните верификатор для запроса токена; вставьте верификатор, чтобы увидеть его challenge.
Конфиденциальность и ограничения
Значения создаются в вашем браузере и никуда не отправляются.
Похожие инструменты
Часто задаваемые вопросы
Что выбрать: plain или S256?
Всегда выбирайте S256, если клиент умеет вычислять SHA-256, а это поддерживается на всех современных платформах; plain предназначен только для клиентов, которые этого не умеют.
Для чего нужно значение state?
Оно защищает от межсайтовой подделки запросов: отправьте его вместе с запросом авторизации и проверьте, что вернулось то же значение.
Какой должна быть длина верификатора?
Не менее 43 символов; часто используют 64 и более. Большая длина повышает случайность, но не создаёт проблем с совместимостью вплоть до 128 символов.
Бесплатный инструмент · запусков: в вашем браузере · аккаунт не нужен