Membuat Password Generator di Kotlin
Membuat Password Generator di Kotlin – Pada artikel kali ini kita akan membahas bagaimana membuat password generator di Kotlin. Password generator yang akan dibuat memiliki kemampuan untuk menentukan apakah password yang dihasilkan terdapat huruf kecil yaitu “abcdefghijklmnopqrstuvwxyz“, huruf besar yaitu “ABCDEFGHIJKLMNOPQRSTUVWXYZ“, angka yaitu “0123456789“, karakter spesial yaitu “@#=+!£$%&?*()_-[]{}“, dan panjang tertentu seperti 17, 20 ataupun lainnya. Simak artikel berikut ini untuk membuat password generator di Kotlin.
Daftar Isi
Kode Kotlin – Password Generator Class
Berikut ini adalah kelas untuk membuat algoritma untuk menghasilkan string password yang dihasilkan secara acak.
import java.security.SecureRandom class PasswordGenerator { companion object { const val letters : String = "abcdefghijklmnopqrstuvwxyz" const val uppercaseLetters : String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" const val numbers : String = "0123456789" const val special : String = "@#=+!£$%&?*()_-[]{}" } fun generatePassword( isWithLetters: Boolean, isWithUppercase: Boolean, isWithNumbers: Boolean, isWithSpecial: Boolean, length: Int ) : String { var generatedPassword = "" var idx = 0 if(isWithLetters){ generatedPassword += letters } if(isWithUppercase){ generatedPassword += uppercaseLetters } if(isWithNumbers){ generatedPassword += numbers } if(isWithSpecial){ generatedPassword += special } val randomAlgorithm = SecureRandom.getInstance("SHA1PRNG") val sb = StringBuilder(length) while (idx < length) { val randomInt : Int = randomAlgorithm.nextInt(generatedPassword.length) sb.append(generatedPassword[randomInt]) idx++ } return sb.toString() } }
Kode Kotlin – Password Generator Parameter Settings
Disini kita akan membuat tiga string acak dengan berbagai setting pada Password Generator.
Password Generator – Setting Value 1
Pada setting yang pertama, string yang dihasilkan akan terdiri dari huruf kecil, huruf besar, angka, karakter spesial, dan memiliki panjang 20. Kalian dapat melakukan inisialisasi kelas PasswordGenerator dengan parameter seperti dibawah ini.
val newPassword1 = passwordGenerator.generatePassword( isWithLetters = true, isWithUppercase = true, isWithNumbers = true, isWithSpecial = true, length = 20 )
Password Generator – Setting value 2
Pada setting yang pertama, string yang dihasilkan akan terdiri dari huruf kecil, angka, dan memiliki panjang 25. Kalian dapat melakukan inisialisasi kelas PasswordGenerator dengan parameter seperti dibawah ini.
val newPassword2 = passwordGenerator.generatePassword( isWithLetters = true, isWithUppercase = false, isWithNumbers = true, isWithSpecial = false, length = 25 )
Password Generator – Setting value 3
Pada setting yang pertama, string yang dihasilkan akan terdiri dari huruf besar, angka, dan memiliki panjang 15. Kalian dapat melakukan inisialisasi kelas PasswordGenerator dengan parameter seperti dibawah ini.
val newPassword3 = passwordGenerator.generatePassword( isWithLetters = false, isWithUppercase = true, isWithNumbers = true, isWithSpecial = false, length = 15 )
Password Generator – Setting value 4
Pada setting yang pertama, string yang dihasilkan akan terdiri dari huruf besar, angka, dan memiliki panjang 30. Kalian dapat melakukan inisialisasi kelas PasswordGenerator dengan parameter seperti dibawah ini.
val newPassword4 = passwordGenerator.generatePassword( isWithLetters = false, isWithUppercase = true, isWithNumbers = true, isWithSpecial = false, length = 30 )
Kode Kotlin – Main Function
Berikut ini adalah main function untuk menginisialisasi kelass PasswordGenerator dan menampilkan hasil string secara acak.
fun main() { val passwordGenerator = PasswordGenerator() val newPassword1 = passwordGenerator.generatePassword( isWithLetters = true, isWithUppercase = true, isWithNumbers = true, isWithSpecial = true, length = 20 ) val newPassword2 = passwordGenerator.generatePassword( isWithLetters = true, isWithUppercase = false, isWithNumbers = true, isWithSpecial = false, length = 25 ) val newPassword3 = passwordGenerator.generatePassword( isWithLetters = false, isWithUppercase = true, isWithNumbers = true, isWithSpecial = false, length = 15 ) val newPassword4 = passwordGenerator.generatePassword( isWithLetters = false, isWithUppercase = true, isWithNumbers = true, isWithSpecial = false, length = 30 ) println("Password Baru 1 : $newPassword1") println("Password Baru 2 : $newPassword2") println("Password Baru 3 : $newPassword3") println("Password Baru 4 : $newPassword4") }
Hasil yang diperoleh (Output)
Ketika kamu menjalankan kode diatas, maka hasil yang diperoleh akan seperti gambar dibawah ini.
Temukan source code menarik lainnya hanya di Inpows.
Baca Juga
Membuat Pola Alphabet Bentuk Setengah Pyramid Menggunakan Kotlin
Membuat Email Validation pada Android Kotlin