One Time Passwords (OTPs) adalah mekanisme untuk meningkatkan keamanan atas kata sandi saja. Ketika OTP Berbasis Waktu (TOTP) disimpan di ponsel pengguna, dan digabungkan dengan sesuatu yang diketahui pengguna (Kata Sandi), Anda memiliki jalan yang mudah menuju autentikasi multi-faktor tanpa menambahkan ketergantungan pada penyedia SMS. Kombinasi Password dan TOTP ini digunakan oleh banyak website populer termasuk Google, GitHub, Facebook, Salesforce dan banyak lainnya.
Pustaka otp
memungkinkan Anda dengan mudah menambahkan TOTP ke aplikasi Anda sendiri, meningkatkan keamanan pengguna Anda terhadap pelanggaran kata sandi massal dan malware.
Karena TOTP distandarisasi dan diterapkan secara luas, terdapat banyak klien seluler dan implementasi perangkat lunak.
otp
Mendukung:Sebagai contoh alur kerja pendaftaran kerja, GitHub telah mendokumentasikannya, namun dasar-dasarnya adalah:
key,_ := totp.Generate(...)
.key.Secret()
dan key.Image(...)
.totp.Validate(...)
.key.Secret()
GenerateCode
dan struct counter atau time.Time
untuk menghasilkan kode valid yang kompatibel dengan sebagian besar implementasi.GenerateCodeCustom
di salah satu modul.totp.Validate(...)
Ketika pengguna kehilangan akses ke perangkat TOTP, mereka tidak lagi memiliki akses ke akunnya. Karena TOTP sering kali dikonfigurasi pada perangkat seluler yang dapat hilang, dicuri, atau rusak, ini adalah masalah umum. Karena alasan ini banyak penyedia memberikan "kode cadangan" atau "kode pemulihan" kepada penggunanya. Ini adalah sekumpulan kode sekali pakai yang dapat digunakan sebagai pengganti TOTP. Ini bisa berupa string yang dihasilkan secara acak yang Anda simpan di backend Anda. Dokumentasi Github memberikan gambaran umum tentang pengalaman pengguna.
Silakan buka terbitan di Github untuk mendapatkan ide, bug, dan pemikiran umum. Permintaan tarik tentu saja lebih disukai :)
otp
dilisensikan di bawah Lisensi Apache, Versi 2.0