⊗ppPmAuHs 423 of 447 menu

Hash Kata Sandi di PHP

Menyimpan kata sandi dalam bentuk terbuka adalah tidak benar. Peretas jahat dapat mendapatkan akses ke basis data Anda dan mencuri kata sandi.

Oleh karena itu, biasanya login disimpan dalam bentuk terbuka, sedangkan kata sandi di-hash dengan fungsi khusus md5, yang menerima kata sandi sebagai parameter dan mengembalikan hash-nya, yang darinya tidak dapat memulihkan kata sandi itu sendiri.

Sebagai contoh, mari kita cari hash dari sebuah string:

<?php echo md5('12345'); // akan menampilkan '827ccb0eea8a706c4c34a16891f84e7b' ?>

Sekarang kita perlu mengubah ulang proses registrasi dan otorisasi kita. Untuk awal, saya menyarankan untuk mengosongkan tabel pengguna, karena saat ini di sana tersimpan kata sandi dalam bentuk terbuka, padahal seharusnya yang disimpan adalah hash-nya. Kemudian saat pengujian registrasi, tabel akan terisi dengan data dalam format baru.

Sekarang mari kita perbaiki registrasi kita sehingga saat menyimpan pengguna baru ke basis data, yang ditambahkan bukanlah kata sandi, melainkan hash-nya.

Perbaikan yang dijelaskan akan terlihat seperti berikut:

<?php $login = $_POST['login']; $password = md5($_POST['password']); // ubah kata sandi menjadi hash-nya $query = "INSERT INTO users SET login='$login', password='$password'"; ?>

Mari terapkan perbaikan serupa pada otorisasi:

<?php $login = $_POST['login']; $password = md5($_POST['password']); // ubah kata sandi menjadi hash-nya $query = "SELECT * FROM users WHERE login='$login' AND password='$password'"; ?>

Lakukan perubahan pada registrasi dengan mempertimbangkan hashing, daftarkan beberapa pengguna baru, pastikan bahwa mereka telah ditambahkan ke basis data dengan kata sandi yang telah di-hash.

Lakukan perubahan pada otorisasi dengan mempertimbangkan hashing, cobalah untuk melakukan otorisasi dengan pengguna yang telah didaftarkan sebelumnya.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak