Cara Membuat Enkripsi Password yang Kuat

12/03/2017    Reza Indra    8739     Website

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.

Web Security

Cara Cepat Pintar Membuat Website, Tanpa Perlu Basic IT

Membuat website perusahaan, portal berita, blog, katalog online, dan e-commerce.

Learn More

Cara Cepat Pintar Membuat Website, Tanpa Perlu Basic IT

Membuat website perusahaan, portal berita, blog, katalog online, dan e-commerce.

Learn More