Kata sandi acak yang terdiri dari huruf, angka, dan simbol melalui crypto.getRandomValues.
Pembuat Kode TOTP/HOTP
Alat ini sendiri tersedia dalam bahasa Inggris; halaman ini menjelaskannya dalam bahasa Anda.
Gunakan Pembuat Kode TOTP/HOTP
Fungsinya
Hitung kata sandi sekali pakai berbasis waktu (TOTP) atau berbasis penghitung (HOTP) untuk rahasia Base32, seperti yang dilakukan oleh aplikasi otentikator, dan periksa apakah kode tersebut cocok. Berguna untuk menguji pengaturan 2FA Anda sendiri.
Aplikasi ini sepenuhnya berjalan di browser Anda: tidak ada data yang Anda masukkan yang diunggah.
Cara menggunakan Pembuat Kode TOTP/HOTP
- Masukkan kode rahasia. Tempelkan kode rahasia Base32 dari akun uji coba Anda sendiri ke kolom Kunci Rahasia (Base32), atau tekan tombol Acak untuk mendapatkan kode rahasia baru yang terdiri dari 32 karakter.
- Sesuaikan pengaturan aplikasi Anda. Pilih jenis Kode (TOTP berbasis waktu atau HOTP berbasis penghitung), Algoritma, dan jumlah Digit. Sebagian besar aplikasi otentikator menggunakan TOTP, HMAC-SHA-1, dan 6 digit.
- Tampilkan kodenya. Untuk TOTP, tekan "Mulai TOTP": kode akan muncul bersama hitungan mundur dan dihitung ulang setiap detik. Untuk HOTP, atur penghitungnya lalu tekan "Tampilkan kode HOTP"; tombol "Berikutnya" akan berpindah ke penghitung berikutnya.
- Periksa kode. Ketik kode dari aplikasi Anda atau server ke dalam kolom "Verifikasi Kode", lalu tekan "Verifikasi". Hasilnya akan menunjukkan apakah kode tersebut cocok dan untuk langkah waktu atau penghitung mana.
- Berhenti dan bersihkan. Tekan tombol Stop setelah Anda selesai; kode terakhir akan tetap muncul di layar. Kosongkan sendiri kolom rahasia tersebut.
Contoh
Kode rahasia pengujian RFC 6238
GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ412568Ini adalah kunci uji RFC 6238 yang telah dipublikasikan, yaitu 12345678901234567890 dalam format Base32. Halaman ini menampilkan kode enam digit saat ini dan jumlah detik hingga kode berikutnya, kode yang sama dengan yang ditampilkan oleh aplikasi otentikator untuk rahasia ini; setelah beralih ke HOTP dengan penghitung 0, halaman ini menampilkan 755224, nilai uji pertama sesuai RFC 4226.
Apa yang diperiksa
| Sinyal | Apa artinya |
|---|---|
| Kode tersebut | HMAC dari langkah waktu (TOTP) atau penghitung (HOTP), yang dipersingkat menjadi 6 atau 8 digit sebagaimana tercantum dalam RFC 4226 dan RFC 6238. Kode ini hanya cocok dengan aplikasi jika jenis, algoritma, dan jumlah digitnya sama. |
| Pembaruan dalam Ns · langkah waktu N | Sisa detik dalam jendela 30 detik saat ini dan nomor langkah, yang diambil dari jam perangkat Anda. Jika jam tidak akurat, kode sebelumnya atau berikutnya yang akan ditampilkan. |
| Tombol N · tekan Berikutnya | Dalam mode HOTP, kode tersebut terkait dengan penghitungan tersebut. Setiap kode hanya digunakan sekali; server kemudian mengharapkan penghitungan berikutnya. |
| Bukan Base32: ... | Kata sandi tersebut mengandung karakter di luar rentang A–Z dan 2–7, seperti 0, 1, 8, atau 9. Spasi, tanda hubung, dan tanda = diabaikan, sedangkan huruf kecil diperbolehkan. |
| rahasianya hanya terdiri dari N bit | Kunci rahasia tersebut lebih pendek daripada 128 bit (26 karakter Base32) yang disyaratkan oleh RFC 4226. Kode-kode tersebut tetap ditampilkan, tetapi kunci rahasia semacam itu lebih mudah ditebak. |
| Berlaku: sesuai dengan ... | Pastikan kode untuk langkah waktu saat ini atau penghitung HOTP telah ditemukan di lapangan. |
| Berlaku untuk langkah sebelumnya atau langkah berikutnya | Kode tersebut mengacu pada satu langkah berdurasi 30 detik sebelum atau sesudah saat ini (ditampilkan dalam warna kuning). Biasanya terdapat selisih waktu yang kecil antara kedua perangkat tersebut. |
| Tidak ada hasil yang cocok | Baik langkah waktu yang diperiksa maupun penghitungnya tidak cocok. Periksa nilai rahasia, jam, algoritma, dan jumlah digit. |
Contoh lainnya
Kunci uji RFC 4226, HOTP
GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQDengan tipe kode HOTP, HMAC-SHA-1, 6 digit, dan penghitungan 0, kodenya adalah 755224; Selanjutnya, untuk penghitungan 1, hasilnya adalah 287082, sesuai dengan nilai uji yang dipublikasikan dalam RFC 4226.
Verifikasi kode yang berada satu posisi di depan
GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQDalam mode HOTP dengan nilai penghitung 0, saat memasukkan angka 287082 ke dalam kolom "Verifikasi Kode", hasilnya adalah: "Valid untuk nilai penghitung 1", yaitu 1 lebih besar dari nilai penghitung yang tertera.
Bukan rahasia Base32
0189KESALAHAN dengan pesan "Bukan Base32: '0', '1', '8', '9'", karena Base32 hanya menggunakan huruf A–Z dan angka 2–7.
Pertanyaan yang Sering Diajukan
Apa sebenarnya yang dihitung oleh program tersebut?
Kode TOTP berdasarkan waktu saat ini dengan selang 30 detik (RFC 6238) atau kode HOTP untuk penghitung yang Anda tetapkan (RFC 4226), dengan HMAC-SHA-1, SHA-256, atau SHA-512 dan terdiri dari 6 atau 8 digit; kebanyakan aplikasi otentikator menggunakan SHA-1 dan 6 digit. Verifikasi kode akan mencoba interval waktu saat ini dan satu interval ke kiri maupun ke kanan, atau penghitung HOTP dan 9 nilai berikutnya, dan kode rahasia yang mengandung karakter di luar rentang A-Z dan 2-7 akan ditolak dengan pesan kesalahan.
Apakah kode TOTP dapat melindungi saya dari serangan phishing?
Tidak sepenuhnya. Kit phishing tipe "adversary-in-the-middle" meneruskan kode tersebut ke situs asli saat Anda mengetiknya, sehingga kode tersebut terekam bersamaan dengan kata sandi; sedangkan passkeys dan kunci keamanan FIDO2 kebal terhadap hal ini karena terikat pada domain asli.
Apakah rahasia tersebut telah dikirim atau disimpan di suatu tempat?
Tidak. Kode-kode tersebut dihitung di browser Anda menggunakan Web Crypto API, dan kunci rahasia tidak pernah diunggah atau disimpan. TOTP bergantung pada jam perangkat Anda, sehingga jika jamnya tidak akurat, kode yang dihasilkan pun akan berbeda.
Bagaimana cara saya mencocokkan kode-kode tersebut dengan RFC?
Gunakan kunci uji 12345678901234567890, dalam format Base32 GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ. Dalam mode HOTP, penghitung 0 menghasilkan 755224 dan penghitung 1 menghasilkan 287082 (RFC 4226). RFC 6238 mencantumkan 94287082 untuk 8 digit pada 59 detik setelah 1 Januari 1970 UTC; mode TOTP selalu menggunakan waktu saat ini.
Apa perbedaan antara TOTP dan HOTP?
HOTP (RFC 4226) menghitung jumlah penggunaan: setiap kode terikat pada sebuah penghitung yang nilainya bertambah satu. TOTP (RFC 6238) adalah HOTP dengan penghitung yang disetel pada interval waktu 30 detik saat ini, sehingga kode tersebut berubah seiring berjalannya waktu.
Mengapa aplikasi saya menampilkan kode yang berbeda?
Periksa dulu pengaturan waktunya, karena selisih 30 detik saja sudah bisa mengubah kode. Kemudian, periksa apakah ada kesalahan ketik pada kode rahasia dan apakah akun tersebut menggunakan SHA-256, SHA-512, 8 digit, atau penghitung (counter) sebagai pengganti waktu, lalu atur opsi yang sama di sini.
Apakah saya sebaiknya menempelkan kode rahasia 2FA yang asli di sini?
Hindari hal itu. Kode rahasia tersebut tetap tersimpan di peramban Anda, tetapi siapa pun yang melihat atau menyalinnya dapat menghasilkan kode-kode tersebut hingga Anda mengatur ulang 2FA pada akun tersebut. Untuk memindahkan 2FA ke ponsel baru, gunakan opsi pemindahan atau pengaturan ulang yang tersedia di akun tersebut.