Di era digital saat ini, keamanan menjadi aspek yang sangat penting dalam setiap sistem informasi, terutama dalam proses autentikasi pengguna. Salah satu mekanisme yang banyak digunakan untuk meningkatkan keamanan adalah OTP (One-Time Password).
OTP adalah kata sandi sementara yang hanya berlaku untuk satu sesi login atau transaksi. Berbeda dengan kata sandi statis, OTP berubah setiap kali digunakan, sehingga lebih aman dari risiko pencurian data seperti phishing atau replay attack.
Bagaimana OTP Bekerja?
OTP biasanya dikirim melalui SMS, email, atau aplikasi autentikator. Setelah dikirim, pengguna harus memasukkan OTP tersebut dalam waktu tertentu untuk melanjutkan proses login atau verifikasi. Karena OTP hanya berlaku sekali dan dalam waktu singkat, potensi penyalahgunaannya menjadi sangat kecil.
Contoh Implementasi OTP dengan Python
Berikut adalah contoh kode Python sederhana untuk menghasilkan OTP numerik sebanyak 6 digit menggunakan modul secrets
:
import secrets
def generate_otp(length=6):
return ''.join(str(secrets.randbelow(10)) for _ in range(length))
print("Generated OTP:", generate_otp())