Apa itu time-based one-time password?
Time-based one-time password (TOTP) adalah kode sandi sementara yang dihasilkan oleh sebuah algoritma yang menggunakan waktu saat ini sebagai salah satu faktor autentikasinya.
TOTP biasanya digunakan untuk autentikasi dua faktor (2FA) dan semakin banyak diadopsi oleh penyedia aplikasi berbasis cloud.
Mengapa TOTP penting?
TOTP memberikan keamanan tambahan. Bahkan jika kata sandi tradisional seorang pengguna dicuri atau disusupi, penyerang tidak akan dapat mengakses akun tanpa TOTP, yang hanya berlaku untuk waktu singkat.
Bagaimana cara kerja TOTP?
Autentikasi dua faktor (2FA) adalah metode umum untuk memverifikasi identitas pengguna. Sistem ini memverifikasi pengguna berdasarkan dua kondisi: sesuatu yang diketahui pengguna (seperti kata sandi) dan sesuatu yang dimiliki pengguna (seperti perangkat). Contohnya, saat pengguna masuk ke akun bank mereka menggunakan nama pengguna dan kata sandi, sistem akan mengirimkan kode acak melalui SMS atau email. Pengguna harus memasukkan kode ini sebelum dapat mengakses akun. Nama pengguna dan kata sandi adalah sesuatu yang diketahui pengguna, sementara kode acak dikirim ke perangkat yang dimiliki pengguna.
TOTP biasanya kedaluwarsa setelah 30, 60, 120, atau 240 detik.
Berbagai metode dapat digunakan untuk menerima TOTP, termasuk:
- Token keamanan perangkat keras yang menampilkan kode sandi pada layar kecil;
- Aplikasi autentikator di ponsel, seperti Google Authenticator;
- Pesan teks (SMS) yang dikirim dari server terpusat;
- Email yang dikirim dari server terpusat; dan
- Pesan suara yang dikirim dari server terpusat.
Apa perbedaan antara OTP berbasis waktu dan non-waktu?
Algoritma berbasis waktu menggunakan waktu saat ini, bersama dengan token atau kunci rahasia, untuk menghasilkan kode sandi. Sementara itu, algoritma non-waktu memulai dengan nilai awal (seed value) dan menggunakan fungsi hash untuk menghasilkan kode sandi.
Setelah kode sandi pertama dihasilkan, kode sandi sebelumnya digunakan sebagai input untuk menghasilkan kode sandi berikutnya.
TOTP adalah standar yang disetujui oleh Internet Engineering Task Force (IETF).
Standar OTP lainnya meliputi:
- S/KEY One-Time Password System (RFC 1760),
- One-Time Password System (RFC 2289), dan
- HMAC-Based One-Time Password Algorithm (RFC 4226).