PKCE (Proof Key for Code Exchange) — расширение OAuth2, которое защищает от перехвата authorization code. Без PKCE атакующий может перехватить code из URL и обменять его на токен. С PKCE клиент генерирует случайный code_verifier, хеширует его в code_challenge и отправляет challenge при авторизации. При обмене code на токен отправляет оригинальный verifier — сервер проверяет, что хеш совпадает. Изначально создан для мобильных приложений, где нельзя хранить client_secret, но сейчас рекомендуется для всех OAuth2-клиентов. В Go реализуется вручную через crypto/sha256 и base64url.
Что такое PKCE?
Senior
235 просмотровAFK Offer AI
Как реализовать concurrent-safe counter?