OAuth PKCE detail
PKCE protection code interception OAuth.
Définition
PKCE flow : client génère code_verifier aléatoire (43-128 chars), calcule code_challenge = BASE64URL(SHA256(code_verifier)). Envoie code_challenge + code_challenge_method=S256 dans Authorization Request. Lors du token exchange, envoie code_verifier. Authorization Server vérifie SHA256(code_verifier) == code_challenge. Empêche replay si attaquant intercepte le code.
Origine
IETF OAuth WG, RFC 7636 publié septembre 2015, originellement pour mobile apps (public clients).
Usage
Obligatoire pour tous les flows Authorization Code dans OAuth 2.1, FAPI 2.0, OIDC Core. Activement utilisé par les SDK mobiles (Apple ASWebAuthenticationSession, Android Chrome Custom Tabs).