Latihan 1: CSRF Protection — Auth

Latihan 1 dari materi CSRF Protection di Auth — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

Implementasikan tiga function yang menyusun proteksi CSRF untuk sebuah aplikasi.

1. issueCsrfToken(sessionId) Buat token untuk session tertentu. Format: "csrf_" + sessionId + "_" + nonce di mana nonce adalah "n1" (untuk simplicity — di real world pakai random bytes).

2. validateCsrfToken(submittedToken, sessionToken) Bandingkan token. Return true jika sama persis, false jika berbeda atau salah satu null/undefined.

3. isTrustedOrigin(origin, trustedOrigins) Cek apakah origin ada di array trustedOrigins. Return true atau false. Jika origin null/undefined, return false.

Hint