Gerador de PKCE code_verifier e code_challenge

Gere ou cole um code_verifier e obtenha o code_challenge S256 para OAuth 2.0 PKCE (RFC 7636).

code_challenge (S256)

Roda inteiramente no seu navegador. Nada do que você digita é enviado ou armazenado.

Como usar

  1. Clique em Gerar para um novo code_verifier ou cole o seu.
  2. O code_challenge é calculado como BASE64URL(SHA-256(code_verifier)).
  3. Envie code_challenge e code_challenge_method=S256 na requisição de autorização.
  4. Envie o code_verifier na requisição de token.

Perguntas frequentes

O que é PKCE?

Proof Key for Code Exchange (RFC 7636). O cliente envia um code_challenge com hash na autorização e o code_verifier original ao pedir o token, então um código roubado não basta sozinho.

Como o code_challenge é calculado?

Com S256: SHA-256 do code_verifier em ASCII, codificado em base64url sem preenchimento. Para o exemplo da RFC 7636 dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk o resultado é E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM.

Por que o verifier gerado tem 43 caracteres?

32 bytes aleatórios em base64url sem preenchimento dão 43 caracteres, o mínimo permitido pela RFC 7636 (43 a 128 caracteres de A-Z, a-z, 0-9, -, ., _, ~).

Ferramentas relacionadas