Subtracks & Tasks
Authentication and Authorization
Implement JWT Authentication System
JWT (JSON Web Token) is a compact, self-contained token that proves identity without a server-side session store. The server signs the payload with a ...
Implement OAuth 2.0 Authorization Flow
OAuth 2.0 lets users grant third-party apps limited access to their account without sharing their password. The authorization code flow sends the user...
Implement Secure Session Management
Sessions store authentication state server-side. After login, the server creates a session record keyed by a random ID and sends that ID to the client...
Implement Role-Based Access Control (RBAC)
RBAC assigns permissions to roles and roles to users. A user can perform an action on a resource only if they hold a role that grants that permission....
Implement API Security Best Practices
API security is a set of layers: rate limiting prevents abuse, input validation rejects malformed data before it reaches business logic, parameterised...
Encryption at Rest and in Transit
Implement Symmetric Encryption
Symmetric encryption uses the same key to encrypt and decrypt. AES-256-GCM is the modern standard: it is both a cipher (confidentiality) and a MAC (in...
Implement Asymmetric Encryption (RSA)
Asymmetric encryption uses a mathematically linked key pair: anything encrypted with the public key can only be decrypted with the private key. This s...
Implement Cryptographic Hash Functions
Cryptographic hash functions map any input to a fixed-size digest. SHA-256 is fast and great for integrity checks, but too fast for passwords. Bcrypt ...
Implement Secure Key Management
Managing cryptographic keys is as important as the encryption itself. A KMS (Key Management System) generates data keys, wraps them with a master key ...
Implement End-to-End Encryption (E2EE)
End-to-end encryption ensures only the communicating parties can read messages — not the server, not the network. The X3DH protocol establishes a shar...
Concepts Covered
Prerequisites
It is recommended to complete the previous tracks before starting this one. Concepts build progressively throughout the curriculum.