Cara Membuat Enkripsi Password yang Kuat

Password adalah hal paling vital dalam keamanan sistem. Saking vitalnya, diciptakan berbagai macam algoritma rumit untuk mengenkripsi sebuah password. Bahkan semakin berkembangnya teknologi, banyak yang sudah meninggalkan password sebagai identitas unik user, mereka lebih memilih identitas yang lebih sulit ditiru, seperti sidik jadi, wajah atau mata.

Dalam mengenkripsi password, dulu kita menggunakan MD5 dan SHA1, namun sekarang algoritma itu sudah dibuang karena ada sudah banyak tool yang dapat membuka hasil enkripsi. Teman-teman bisa lakukan ini sendiri dengan mengunjungi situs https://hashkiller.co.uk, di sana kita bisa pilih menu Decrypter/Cracker dan pilih MD5 atau SHA1 Decrypter.

Cara Membuat Enkripsi Password yang Kuat

Untuk mengatasi hal tersebut, saat ini PHP memiliki algoritma enkripsi yang lebih kuat bernama bcrypt. Bcrypt ini merupakan algoritma "one-way hashing" atau pengenkripsian satu arah, yang artinya ketika password sudah dienkrip, maka tidak bisa lagi dikembalikan (dekrip). Silahkan teman-teman kunjungi situs http://php.net/manual/en/function.password-hash.php. Disini kita akan menggunakan fungsi password_hash() untuk mengenkripsi, dan fungsi password_verify() untuk mengecek kecocokan password. Mari kita coba.

Cara Membuat Enkripsi Password yang Kuat

Hasilnya adalah kode unik sebanyak 60 karakter.

Cara Membuat Enkripsi Password yang Kuat

Fungsi password_hash(), memiliki 3 paramater, yang pertama adalah password kita yang akan dienkrip, yang kedua adalah algoritma bcrypt, dan yang ketiga adalah options, options terdiri dari 2 yakni cost dan salt (deprecated in PHP 7.0). Cost adalah jumlah hashing "pengacakan" dengan default 10 (2^10) dan Salt adalah karakter acak tambahan yang akan digabungkan dengan password saat proses hashing yang memungkinkan hasil enkripsi lebih kuat.

Yang menarik dari enkripsi ini adalah, setiap kita refresh browser, maka hasil enkripsi akan selalu berubah-ubah, namun tetap memiliki panjang 60 karakter. Jadi walaupun password nya sama, misalnya "dumetschool123", maka hasil enkripsinya bisa berbeda-beda.

Lalu bagaimana cara mengeceknya?, untuk pengecekan kita bisa menggunakan fungsi password_verify(). Fungsi ini memiliki 2 parameter, yang pertama adalah password yang kita masukan atau yang akan kita cocokan, yang kedua adalah hasil enkripsi dari password.

Cara Membuat Enkripsi Password yang Kuat

Itulah teknik enkripsi password untuk hasil yang lebih kuat. Semoga bermanfaat.

12 Maret 2017

Webinar Gratis 2024


Selanjutnya Pada Bulan Maret 2024

Sabtu, 09 Maret 2024


10 Bahasa Rekomendasi Untuk Dipelajari di 2024

Python Developer, Data Science, Web Application

Kursus Python Django Web Application 2024 di DUMET School Kursus Postgre SQL Database Developer Terbaik 2024 di Jakarta
chat