Jika pernah menggunakan token perangkat keras untuk menyetujui transaksi perbankan digital atau mengetuk YubiKey untuk menghasilkan kode masuk, Anda telah menggunakan teknologi kata sandi sekali pakai berbasis HMAC (HOTP). Untuk membantu memahami cara menggunakan HOTP guna melindungi akun, artikel ini akan membahas cara kerja HOTP, manfaat serta batasannya, dan membandingkannya dengan metode OTP lainnya.

Apa itu HOTP?

HOTP merupakan singkatan dari kata sandi sekali pakai berbasis HMAC. Ini adalah metode autentikasi dua faktor (2FA) yang menghasilkan kode masuk sekali pakai sesuai permintaan.

HMAC, atau Kode Autentikasi Pesan berbasis Hash, adalah teknik kriptografi yang menggunakan kunci rahasia dan fungsi hashing untuk menghasilkan nilai yang aman dan tahan rusak. HOTP menerapkan HMAC bersama dengan penghitung untuk memastikan bahwa setiap kode autentikasi unik dan hanya dapat digunakan sekali.

Karena kode HOTP tetap valid hingga digunakan atau diganti, kode ini sangat cocok untuk pekerjaan jarak jauh dan lingkungan lain yang sinkronisasi waktu yang andal atau konektivitas konstan tidak memungkinkan.

Bagaimana cara kerja HOTP?

Autentikasi HOTP didasarkan pada dua komponen yang dibagikan: kunci rahasia dan penghitung. Perangkat pengguna dan server autentikasi menyimpan nilai ini dan menggunakannya untuk menghasilkan kode sekali pakai yang sama secara independen.

Pengaturan: Saat token perangkat keras disiapkan, kunci rahasia akan dibagikan antara perangkat dan server aplikasi serta disimpan dengan aman di kedua sisi.

Menghasilkan kode: Perangkat menggunakan fungsi hash kriptografi yang disebut HMAC untuk menggabungkan kunci rahasia dengan nilai penghitung saat ini. Hasilnya adalah kata sandi sekali pakai yang pendek dan tidak dapat diprediksi.

Autentikasi: Saat memasukkan kode HOTP, server melakukan penghitungan yang sama menggunakan salinan kunci rahasia dan penghitung miliknya sendiri. Jika kode tersebut cocok, akses akan diberikan.

Penjelasan tentang sistem penghitung HOTP

HOTP bergantung pada sistem penghitung unik yang dibagikan antara perangkat dan server autentikasi. Setiap kali menghasilkan kode baru, penghitung akan bertambah. Setelah masuk dengan sukses, server juga akan memperbarui penghitungnya. Selama penghitung perangkat dan server tetap tersinkronisasi, kode akan cocok dan memberikan akses.

Bayangkan HOTP sebagai buku voucer bernomor yang disobek dan digunakan secara berurutan. Voucer yang sudah digunakan tidak dapat digunakan kembali, dan voucer berikutnya harus digunakan. Sistem penghitung HOTP beroperasi dengan cara yang sama.

Autentikasi HOTP vs. OTP lainnya

HOTP vs. OTP

Kata sandi sekali pakai (OTP) adalah istilah luas untuk berbagai kata sandi sekali pakai yang digunakan untuk 2FA. HOTP adalah jenis OTP khusus yang bergantung pada sistem berbasis penghitung untuk menghasilkan kodenya.

HOTP vs. TOTP

Kata sandi sekali pakai berbasis waktu (TOTP) secara otomatis menghasilkan kode baru setiap 30 hingga 60 detik. Contoh TOTP yang paling umum adalah kode yang dihasilkan oleh aplikasi autentikator. Sebaliknya, HOTP menghasilkan kode baru hanya jika diminta, menggunakan penghitung alih-alih pengukur waktu.

Perbedaan ini memengaruhi keamanan setiap metode OTP. Kedaluwarsa TOTP yang cepat memberikan celah kesempatan yang sangat kecil bagi penyerang. Sebaliknya, kode HOTP dapat tetap valid selama berhari-hari bahkan berminggu-minggu.

Namun, HOTP lebih andal dalam situasi ketika perangkat memiliki jam yang tidak andal. Misalnya, peralatan di lokasi terpencil dengan koneksi internet yang lemah.

HOTP vs. kode SMS dan email

Kode OTP yang dikirim melalui SMS dan email rentan terhadap penyadapan karena harus melewati jaringan seluler dan internet. HOTP menghasilkan kode di perangkat, menjadikannya lebih aman sekaligus menyediakan akses yang konsisten bahkan selama gangguan jaringan.

Apa saja manfaat dan batasan HOTP?

Manfaat autentikasi HOTP

Ada beberapa keuntungan menggunakan HOTP sebagai metode OTP pilihan:

  • Berfungsi luring: HOTP dapat beroperasi secara luring, menjadikannya ideal untuk lokasi dengan akses internet terbatas.
  • Tanpa tekanan waktu: Kode HOTP tidak otomatis kedaluwarsa, sehingga ada cukup waktu untuk memasukkan kode tersebut.
  • Algoritma yang diakui: HOTP ditentukan oleh RFC 4226(jendela baru), yang memastikan kompatibilitas di berbagai penyedia perangkat lunak dan token perangkat keras dari berbagai vendor.
  • Lebih sedikit dependensi: Sistem HOTP berbasis penghitung tidak bergantung pada jam yang akurat atau konektivitas yang terus-menerus, sehingga membuatnya lebih mudah diprediksi di lingkungan tertentu.

Batasan autentikasi HOTP

Seperti semua teknologi lainnya, HOTP disertai dengan beberapa pertimbangan penting:

  • Validitas tanpa batas waktu: Kode HOTP dapat tetap aktif tanpa batas waktu jika tidak ada kode baru yang dihasilkan. Hal ini memberi penyerang lebih banyak waktu untuk menyalahgunakan kode yang dicuri.
  • Sinkronisasi penghitung: Jika menghasilkan kode tanpa menggunakannya, penghitung perangkat dan server dapat menjadi tidak sinkron, sehingga menyebabkan kegagalan autentikasi.
  • Pengelolaan manual: Karena kode tidak otomatis kedaluwarsa, pastikan untuk membuat kode baru setelah setiap penggunaan.

Ambil langkah menuju keamanan kata sandi yang lebih kuat

Meskipun HOTP mungkin tidak menawarkan manfaat keamanan dari kedaluwarsa otomatis atau kenyamanan kode SMS, sistem berbasis penghitungnya menawarkan keuntungan unik. Ini adalah sistem 2FA tepercaya dengan akses luring yang andal, dan tidak adanya tekanan waktu mungkin membuatnya lebih disukai oleh sebagian orang.
Untuk mengelola kata sandi dan kode 2FA dengan mudah di satu lokasi terenkripsi, pertimbangkan untuk menggunakan Proton Pass. Pengelola kata sandi aman dengan autentikator 2FA terintegrasi menjaga semua kredensial dan kode 2FA terlindungi dengan enkripsi end-to-end penuh. Menjaga kehidupan digital tetap aman dan nyaman tidak pernah semudah ini.