Skip to main content

Project Brief

In this module, you will be trying to implement secure authentication methods commonly used in OGP applications, specifically email-based One-Time Password (OTP) authentication and OpenID Connect (OIDC) authentication.

You will gain hands-on experience in designing authentication flows, managing user sessions securely, and adhering to best practices for user experience and security.

Implementation requirements

  • Design a secure database schema for user accounts to accommodate multiple authentication methods for the same user
  • Generate and hash OTPs securely using PKCE-like approach
  • Implement the email login flow with OTP verification using client-generated code verifiers
  • Implement OIDC authentication flow
  • Manage authentication state securely using stateless cookies
  • Prevent common security vulnerabilities in authentication systems such as Denial of Service (DoS) and OTP interception.

Preview

At the end of this module, you should have built a simple application that allows users to log in using email OTP verification and OIDC. The application will demonstrate secure authentication flows and session management techniques used in OGP applications.

Final Application Preview