Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah Bcrypt Mengesahkan Kata Laluan Hashed dengan Garam Rawak?
Memahami Bcrypt dan Garam Dijana Secara Rawak
Bcrypt, algoritma standard industri untuk mencincang kata laluan dengan selamat, menggunakan garam rawak untuk meningkatkan perlindungan kata laluan . Walau bagaimanapun, pengguna mungkin tertanya-tanya bagaimana proses pengesahan berfungsi semasa mengambil kira elemen yang kelihatan rawak ini.
Peranan Garam
Garam berfungsi sebagai awalan unik yang ditambahkan pada kata laluan sebelum pencincangan. Nilai rawak ini memastikan bahawa setiap kata laluan menghasilkan cincang yang berbeza walaupun sama. Dengan menggunakan garam yang tidak dapat diramalkan, penyerang tidak boleh membuat prakiraan cincang kata laluan, menjadikannya lebih sukar untuk menjejaskan akaun pengguna.
Struktur Kata Laluan Dicincang
Sementara garam dijana secara rawak , ia disertakan dalam kata laluan cincang yang terhasil. Kata laluan cincang terdiri daripada beberapa bahagian, termasuk:
Proses Pengesahan
Apabila mengesahkan kata laluan, kata laluan yang dicincang diberikan kepada algoritma bcrypt. Algoritma mengekstrak bahagian garam dan menggunakannya untuk mencincang kata laluan yang disediakan.
Proses ini pada asasnya mencerminkan operasi pencincangan awal yang menjana kata laluan cincang. Jika cincang yang baru dijana sepadan dengan cincang yang disimpan, kata laluan yang disediakan disahkan sebagai betul.
Contoh
Pertimbangkan kata laluan cincang yang dijana untuk kata laluan "kata laluan":
y$abcdefg...123456789...
Untuk mengesahkan sama ada "kata laluan" adalah betul, perkara berikut digunakan:
crypt("password", "y$abcdefg...123456789...")
Hasil operasi ini akan sama dengan cincang yang dijana asal jika "kata laluan" adalah betul. Ini kerana garam terkandung dalam kata laluan cincang, membolehkan operasi pencincangan asal dibuat semula.
Atas ialah kandungan terperinci Bagaimanakah Bcrypt Mengesahkan Kata Laluan Hashed dengan Garam Rawak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!