Latihan 1: Passwordless & Passkeys — Auth

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

Implementasikan tiga function yang merepresentasikan mekanisme inti WebAuthn/Passkey.

1. createChallenge(userId, operation) Server membuat challenge untuk dikirim ke client. operation adalah "register" atau "authenticate". Kembalikan:

2. isValidPublicKey(publicKey) Public key valid jika: string, panjang minimal 10 karakter, dan dimulai dengan "pk_". Return true atau false.

3. matchCredential(credentialId, allowedCredentials) allowedCredentials adalah array { id, type }. Cari credential dengan id === credentialId dan type === "public-key". Return credential yang cocok, atau null jika tidak ditemukan.

Hint