Cara memakai
- Ketik kunci dari halaman dua faktor layanan ke kolom, atau tempel teks otpauth:// yang ada di kode QR-nya. Tekan Tampilkan untuk memeriksa apa yang Anda ketik.
- Pilih Hash, Digit, dan Periode yang disebut layanan. Banyak layanan memakai bawaan Key URI Format: SHA-1, 6 digit, dan 30 detik.
- Untuk layanan berbasis penghitung, pilih Berbasis penghitung (HOTP) dan masukkan penghitungnya; Penghitung + 1 menambahkannya.
- Masukkan Kode saat ini sebelum Sisa waktu habis, dan periksa kode Sebelumnya dan Berikutnya bila jam perangkat Anda sedikit meleset.
Cara kode dibuat
HOTP (RFC 4226) mengambil kunci rahasia dan penghitung, membuat HMAC dari penghitung dengan hash tersebut, lalu mengambil empat byte darinya (pemotongan dinamis). Angka dari byte-byte itu, modulo 10 pangkat jumlah digit, adalah kodenya.
TOTP (RFC 6238) adalah HOTP dengan penghitung yang dibuat dari waktu: waktu Unix dalam detik, dibagi periode dan dibulatkan ke bawah. Kode baru dimulai pada setiap periode, sehingga kedua pihak memerlukan jam yang akurat.
TOTP = HOTP(kunci, floor(waktu unix / periode)); HOTP = truncate(HMAC(kunci, penghitung)) mod 10^digit
Kunci rahasia dan URI otpauth://
Kunci rahasia adalah teks Base32 (RFC 4648): huruf A sampai Z dan digit 2 sampai 7. Spasi diabaikan dan pengisi boleh dihilangkan. Kunci dengan karakter di luar himpunan itu, atau dengan panjang yang mustahil, ditolak.
URI otpauth:// (Key URI Format dari Google) memuat jenis, label, kunci rahasia, dan pilihan penerbit, algoritma, digit, periode, serta penghitung. Pengaturan yang tidak ada mengambil bawaan format: SHA1, 6 digit, 30 detik, dan penghitung 0.
Cara halaman ini diperiksa
Kode diuji dengan nilai uji RFC 4226 Lampiran D (penghitung 0 sampai 9) dan RFC 6238 Lampiran B (enam kali, untuk SHA-1, SHA-256, dan SHA-512 dengan delapan digit). HMAC dihitung oleh SubtleCrypto peramban Anda.
Contoh: kunci uji RFC 6238
Kunci uji RFC adalah teks 12345678901234567890, yang dalam Base32 menjadi GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ. Pada waktu Unix 59, dengan periode 30 detik, langkah 1 TOTP memberi kode delapan digit 94287082 untuk SHA-1.
Dengan enam digit, langkah yang sama memberi 287082, kode penghitung RFC 4226 ke-1; yaitu enam digit terakhir dari nilai delapan digit itu.
Pertanyaan yang sering diajukan
Apakah kunci atau kode dikirim ke server?
Tidak. Kode dihitung di peramban Anda, dan halaman tidak membuat permintaan yang memuat kunci atau kode. Tidak ada yang disimpan, dan memuat ulang halaman melupakan keduanya.
Haruskah saya menempelkan kunci akun sungguhan saya di sini?
Hanya di halaman yang Anda percayai, dan hanya bila tidak ada orang lain yang bisa melihat layar Anda. Aplikasi autentikator Anda adalah tempat yang lazim untuk akun sungguhan, karena ia menyimpan kunci untuk pemakaian harian; halaman ini cocok untuk alat dan kode milik Anda sendiri yang hanya perlu sekali pakai.
Mengapa kode berubah setiap 30 detik?
Kode berbasis waktu (TOTP) memakai jumlah periode sejak epoch Unix, sehingga kode baru dimulai pada setiap periode. Hitung mundur menunjukkan berapa lama kode yang berlaku saat ini bertahan.
Mengapa kode saya tidak cocok dengan aplikasi layanan?
Periksa kunci (hanya Base32), hash, digit, dan periode yang disebut layanan; lalu pastikan jam perangkat Anda benar, karena kode berbasis waktu bergantung padanya. Kode sebelumnya dan berikutnya membantu melihat selisih jam yang kecil.
Hash mana yang sebaiknya saya pilih?
Pilih yang dinyatakan layanan. SHA-1 adalah bawaan HOTP RFC 4226 dan format otpauth; RFC 6238 juga mengizinkan SHA-256 dan SHA-512 untuk TOTP.
Apa perbedaan TOTP dan HOTP?
TOTP memakai waktu, sehingga kode berubah setiap periode. HOTP memakai penghitung yang bertambah setiap kali dipakai, sehingga kodenya tetap sama sampai penghitungnya berubah.
Apa fungsi teks otpauth://?
Ia membawa pengaturan kunci dua faktor dalam Key URI Format, biasanya di dalam kode QR. Menempelkannya di sini mengisi kunci rahasia, hash, digit, periode, dan penghitung.
Sumber
- RFC 4226 (dalam bahasa Inggris): HOTP, HMAC-Based One-Time Password Algorithm
- RFC 6238 (dalam bahasa Inggris): TOTP, Time-Based One-Time Password Algorithm
- RFC 4648 (dalam bahasa Inggris): The Base16, Base32, and Base64 Data Encodings
- Google Authenticator (dalam bahasa Inggris): Key Uri Format
- MDN (dalam bahasa Inggris): SubtleCrypto.sign()
Angka dan teks terakhir diperiksa pada Selasa, 10 November 2026.