Encrypt Password Dengan Md5 di PHP

MD5 ialah fungsi hash kriptografik yang digunakan secara luas dengan hash value 128-bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah file.

MD5 di desain oleh Ronald Rivest pada tahun 1991 untuk menggantikan hash function sebelumnya, MD4. Pada tahun 1996, sebuah kecacatan ditemukan dalam desainnya, walau bukan kelemahan fatal, pengguna kriptografi mulai menganjurkan menggunakan algoritma lain, seperti SHA-1 (klaim terbaru menyatakan bahwa SHA-1 juga cacat). Pada tahun 2004, kecacatan-kecacatan yang lebih serius ditemukan menyebabkan penggunaan algoritma tersebut dalam tujuan untuk keamanan jadi makin dipertanyakan.

Itulah sekilas tentang MD5 yang saya cuplik dari wikipedia. Akhir-akhir ini sedang marak pembobolan situs dengan domain pemerintah baik itu skala nasional maupun sekala daerah. Tentunya masih hangat dalam ingatan kita, beberapa pekan terakhir situs KOMINFO jadi sasaran dedemit maya, yang lebih menghebohkan lagi, si Cracker menitip pesan, kalau situs KOMINFO user dan password berupa plaintext, tidak di encrypt sama sekali.
Disebuah group facebook, beberapa teman bertanya kesaya tentang cara encrypt password dalam sebuah web, namun penjelasan yg saya berikan nampaknya kurang bisa dipahami, entah karena saya yang bodoh menjelaskan atau karena mereka,, tapi saya pikir karena kebodohan saya yang tidak bisa menjelaskan. Langsung saja melihat contohnya dalam syntaxt PHP.
include ("koneksi.php");
$username=$_POST['username'];
$password=md5($_POST['password']);
$jenis=$_POST['level'];
$query=mysql_query("insert into admin (user,passwd,level) values ('$username','$password','$level')");

Ketika password yang di inputkan melalui script php diatas, maka yang tersimpan kedalam database adalah password yang sudah di encrypt, namun jika anda ingin username juga di encrypt, maka anda tinggal menambahkan saja md5 seperti contoh pada password.

Nah yang menjadi pertanyaan adalah, apakah ketika login nanti, text password yang diinputkan bisa dikenali sebagai md5 juga ?. Masalah seperti ini awalnya saya dapati, tapi kalau kita berpikir ala encoder, kita tidak akan menemui masalah, karena logika nya tetep sama

  • Ketika menyimpan password dengan md5, maka ketika login juga harus md5 domz,

caranya adalah kita kenali di form login kita di text dengan md5, berikut contoh syntaxnya
$user=$_POST['username'];
$pass=md5($_POST['password']);
$hasil=mysql_query("select * from admin where user='$username' and passwd='$password'");

Demikian tips singkat ini, semoga bisa berguna untuk pemula seperti saya ini,,,,,