Episode ini menelusuri evolusi autentikasi dari password menuju WebAuthn passkeys, standar RFC 4226 dan RFC 6238 yang melahirkan HOTP dan TOTP, mengapa password lemah terhadap credential stuffing, serta alasan faktor kepemilikan dan compliance enterprise menjadikan 2FA sebuah keharusan.

Autentikasi adalah gerbang masuk setiap aplikasi. Selama puluhan tahun gerbang itu hanya dijaga satu kunci: password. Episode 1 membuka series dengan menelusuri mengapa satu kunci saja tidak cukup, bagaimana industri berevolusi dari password ke OTP berbasis SMS, lalu ke authenticator app (TOTP), dan akhirnya ke WebAuthn passkeys.
Kalian juga akan mengenal standar yang menopang semuanya — RFC 4226 untuk HOTP dan RFC 6238 untuk TOTP — serta dua kerangka keamanan yang sering menjadi acuan: NIST SP 800-63B dan OWASP Authentication Cheat Sheet. Di akhir episode, kalian paham kenapa 2FA bukan sekadar fitur, melainkan kebutuhan untuk mitigasi serangan dan compliance enterprise.
Password murni adalah satu faktor: something you know. Masalahnya, pengetahuan bisa dicuri. Tiga serangan yang paling umum memanfaatkan kelemahan ini:
Ketiga serangan ini berjalan otomatis dan berskala besar. Password yang panjang pun tidak membantu kalau pengguna memasukkannya ke situs palsu.
Langkah pertama industri adalah OTP yang dikirim lewat SMS. Sekilas ini menambah faktor kepemilikan — kode tiba di nomor yang hanya dimiliki pengguna. Namun SMS memiliki celah: SIM swapping, di mana penyerang membajak nomor telepon korban, dan kode yang bisa dicegat lewat jaringan telko yang lemah. NIST secara eksplisit menurunkan status SMS sebagai restricted untuk autentikasi high-risk.
Authenticator app memecahkan masalah SMS: kode dihitung di perangkat pengguna dari shared secret, tidak bergantung pada operator telepon, dan bisa bekerja offline. Inilah TOTP yang dipakai Google Authenticator — fokus utama series ini. Di level paling tinggi, WebAuthn passkeys menghilangkan shared secret sama sekali dengan kriptografi asimetris dan ketahanan penuh terhadap phishing. Episode 17 akan membedah WebAuthn secara mendalam.
Semua authenticator app modern berdiri di atas dua dokumen standar yang bisa dibaca publik:
curl -s https://www.rfc-editor.org/rfc/rfc4226.txt -o hotp.txt
curl -s https://www.rfc-editor.org/rfc/rfc6238.txt -o totp.txt
wc -l hotp.txt totp.txtRFC 4226 (2005) mendefinisikan HOTP, one-time password berbasis counter yang bertambah setiap kali kode dipakai. RFC 6238 (2008) mendefinisikan TOTP, varian HOTP yang mengganti counter dengan waktu — epoch UNIX dibagi periode 30 detik. Keduanya memakai HMAC-SHA1 dan menghasilkan 6 digit, dan rfc-editor.org/rfc/rfc6238.txt adalah sumber yang valid untuk verifikasi.
NIST SP 800-63B mengklasifikasikan assurance level AAL1 sampai AAL3. AAL2 mengharuskan dua faktor dengan OTP perangkat lunak (TOTP) atau hardware, sedangkan AAL3 menuntut faktor berbasis kriptografi seperti hardware key. OWASP Authentication Cheat Sheet merangkum praktik implementasi — verifikasi sisi server, timing-safe comparison, dan rotasi credential — yang akan kalian ikuti dari episode 13 sampai 16.
Info
Istilah 2FA dan MFA sering dipakai bergantian. 2FA artinya tepat dua faktor berbeda, sedangkan MFA adalah istilah umum untuk dua faktor atau lebih. Series ini memakai 2FA karena fokus pada password ditambah TOTP, tapi konsepnya berlaku untuk semua MFA.
Konsep ini adalah jawaban singkat untuk pertanyaan paling mendasar series ini: mengapa password saja tidak cukup, dan apa yang sebenarnya ditambahkan oleh 2FA? Jawabannya terletak pada jumlah dan jenis faktor yang harus dimiliki penyerang.
Konsep autentikasi multi-faktor didasarkan pada tiga kategori:
Password yang bocor saja tidak cukup lagi untuk masuk ketika lapisan kedua berupa something you have — penyerang butuh perangkat fisik yang sulit diduplikasi. Inilah inti 2FA: dua faktor dari kategori berbeda, bukan dua password.
Karena kode TOTP berubah setiap 30 detik dan berasal dari perangkat terpisah, credential stuffing yang memutar ulang password menjadi tidak berguna tanpa kode. Serangan otomatis yang tidak punya akses ke perangkat pengguna akan gagal di lapisan kedua, bahkan saat password pertama sudah bocor.
Sejak 2023, passkeys berbasis WebAuthn resmi didukung oleh Google, Apple, dan Microsoft sebagai pengganti password. Alih-alih shared secret, passkeys memakai pasangan kunci asimetris yang tersinkron di cloud vendor, dan secara teknis membuat phishing tidak berdaya karena signature hanya valid untuk domain asal.
Namun TOTP tidak hilang. Banyak platform masih menjadikan TOTP fallback universal karena tidak memerlukan sinkronisasi cloud atau kepercayaan pada vendor tertentu, dan bekerja sepenuhnya offline. Di 2026, pola paling umum adalah menawarkan keduanya: passkeys untuk pengguna baru, TOTP untuk kompatibilitas lintas perangkat.
Kendati lemah, password tetap menjadi pintu pertama karena murah dan dipahami semua orang. 2FA menjembatani transisi ini: password tetap ada, tapi bukan satu-satunya kunci lagi. Memahami konteks sejarah ini membantu kalian menjelaskan kepada pengguna mengapa aplikasi menuntut langkah verifikasi tambahan di luar password.
Untuk memperdalam sejarah dan standar, tiga dokumen paling otoritatif adalah RFC 4226 dan RFC 6238 untuk mekanisme OTP, serta NIST SP 800-63B untuk kebijakan. Baca bagian test vector pada kedua RFC — angka contoh di sana akan kita pakai sebagai penguji di episode 16.
Jadikan dokumen-dokumen ini sebagai titik balik saat kalian ragu terhadap perilaku otplib: standar selalu menjadi sumber kebenaran, sedangkan library hanyalah implementasi dari standar tersebut.
Banyak perusahaan baru sadar 2FA saat menjawab security questionnaire dari klien. SOC 2 dan ISO 27001 umumnya mengharapkan kontrol akses multi-faktor untuk sistem yang menyentuh data sensitif, dan vendor SaaS ditanya langsung tentang penerapan MFA. Jawaban tidak sering berarti kalah tender. Episode 18 akan membahas enforcement dan compliance lebih dalam dari sudut pandang administrasi.
Episode 1 memetakan peta besar autentikasi: password yang lemah, SMS OTP yang rapuh, TOTP yang andal, dan WebAuthn passkeys sebagai arah modern. Kalian juga mengenal RFC 4226, RFC 6238, NIST SP 800-63B, dan OWASP — empat pijakan yang akan menopang seluruh implementasi series ini.
Inti yang harus dibawa pulang:
Di episode 2 selanjutnya kita akan membedah konsep dasar TOTP dan arsitektur utamanya — bagaimana shared secret Base32, counter waktu, dan HMAC-SHA1 bergabung menghasilkan 6 digit, serta alur arsitektur enrollment sampai login dua langkah. Bekali diri kalian dengan otplib yang sudah terinstall di episode 0!