Deep Dive

OAuth 2.0 and OIDC Internals: Grant Flows, PKCE, and JWT Verification

6 interactive labs
Updated Jan 2026

See the Invisible

Interactive simulators visualize what's hidden from view.

Hands-On Labs

Step through executions tick by tick. Manipulate state.

Why, Not Just What

Deep architectural understanding for mid-senior developers.

AI Sandbox Lab

Real-world scenarios. Find the flaws AI misses.

The AI Era Demands More

Become the Engineer Who Supervises AI

As AI generates more code, understanding what that code does becomes more valuable, not less. Someone must verify AI output, debug failures, and make architectural decisions.

Build Your Architectural Edge

You've implemented OAuth. But do you actually understand it?

You've copied the redirect URIs, configured the client secrets, and somehow got tokens flowing. But when something breaks, when the authorization server returns invalid_grant, when tokens fail validation, when a security review asks why you chose Authorization Code over Implicit, you're guessing. The OAuth and OIDC specs are complex, fragmented across multiple RFCs, and built on assumptions you've never seen visualized.

The Knowledge Gaps
  • Why does the authorization code travel through the browser, but tokens never do?
  • Why can't your SPA safely store a client_secret?
  • What attack does PKCE actually prevent?
  • When should you call the introspection endpoint vs verify JWTs locally?
  • What's the difference between an ID token and an access token, and why is sending ID tokens to APIs an anti-pattern?
After This Course
  • Trace each actor's role in the Authorization Code Grant, including the security boundary between front-channel and back-channel
  • Explain why PKCE's code_verifier/code_challenge mechanism defeats authorization code interception
  • Choose between symmetric (HS256) and asymmetric (RS256/ES256) JWT signing based on your architecture
  • Debug token validation failures by checking signature, expiration, issuer, audience, and scope
  • Architect OIDC flows correctly, using ID tokens for client-side authentication and access tokens for API calls

Interactive Simulators: Watch Token Flows Execute Step by Step

OAuth and OIDC are multi-party protocols. Reading sequence diagrams doesn't build intuition. Our simulators let you trigger each step: the browser redirect, the user consent screen, the authorization code exchange, the token refresh. You'll watch the code_verifier transform into code_challenge, see how JWKS endpoints deliver public keys, and observe refresh token rotation invalidating old tokens. The invisible choreography becomes visible.

What You'll Master

01 OAuth 2.0 Trust Model

The four actors, security boundaries between them, and why delegated authorization replaces credential sharing.

02 Grant Type Security

Authorization Code vs Implicit (and why Implicit is deprecated), Client Credentials for M2M, and when each grant type applies.

03 Public Client Protection

Why SPAs and mobile apps are public clients, and how PKCE's code_verifier/code_challenge defeats code interception attacks.

04 JWT Architecture

Header, payload, and signature anatomy. Standard claims. The Base64 encoding trap. Symmetric vs asymmetric signing. JWKS endpoints.

05 Token Lifecycle

Access token expiration, refresh token rotation mechanics, and the introspection vs local verification trade-off.

06 OpenID Connect Layer

The authentication/authorization split. ID tokens for clients, access tokens for APIs. Nonce for replay prevention. UserInfo endpoint.

Course Curriculum

Course Toolkit
Quick Reference Card

Visual cheatsheet

AI Sandbox Lab

Practice verifying AI-generated code

The OAuth 2.0 Trust Model: Actors, Boundaries, and Delegated Authorization
Lab: Authorization Code Grant: The Front-Channel and Back-Channel Exchange
Why Authorization Code Beats Implicit: Security Properties of Grant Types
Lab: Client Credentials Grant: Machine-to-Machine Authorization Without Users
Public vs Confidential Clients: Why SPAs and Mobile Apps Cannot Hold Secrets
Lab: PKCE: Protecting Public Clients from Authorization Code Interception
JWT Anatomy: Header, Payload, Claims, and the Base64 Encoding Trap
Lab: JWT Signing and Verification: Symmetric vs Asymmetric Algorithms
Lab: Token Lifetimes and Refresh Token Rotation Mechanics
Access Token Validation: Introspection vs Local JWT Verification
OpenID Connect Layer: ID Tokens, Authentication, and the Authorization/Authentication Split
Lab: Complete OIDC Flow: Scopes, ID Token Validation, and UserInfo Endpoint
Debugging OAuth and OIDC Failures: Rejection Scenarios and Architectural Decisions

Built for Engineers Who Want to Understand, Not Just Implement

Whether you're a senior engineer designing authentication architecture, a tech lead reviewing OAuth implementations, or a developer tired of debugging token flows by trial and error, this course gives you the internal model you need to make confident decisions. Stop guessing why tokens fail. Start seeing the protocol execute.

Ready to see what's really happening?

All deep dives included with your subscription. Cancel anytime.