Создайте или вставьте code_verifier и получите code_challenge S256 для OAuth 2.0 PKCE (RFC 7636).
Работает полностью в браузере. Введённые данные не отправляются и не сохраняются.
Частые вопросы
Что такое PKCE?
Proof Key for Code Exchange (RFC 7636). Клиент отправляет хешированный code_challenge при авторизации и исходный code_verifier при запросе токена, поэтому одного перехваченного кода авторизации недостаточно.
Как вычисляется code_challenge?
Для S256: SHA-256 от code_verifier в ASCII, затем base64url без дополнения. Для примера из RFC 7636 dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk получается E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM.
Почему созданный verifier длиной 43 символа?
32 случайных байта в base64url без дополнения — это 43 символа, минимальная длина по RFC 7636 (от 43 до 128 символов из A-Z, a-z, 0-9, -, ., _, ~).