PHP password_hash Kullanımı

tarafından
PHP password_hash Kullanımı

Merhabalar. Diyelim ki bir script kodluyorsunuz ve scriptinizde üye kayıt , giriş özelliği var. Kullanıcı kayıt olduğunda parolayı direk veritabanına yazarsanız büyük risk alırsınız. Çünkü herhangi bir açıkla sizin veritabanınıza ulaşırlarsa bütün kullanıcı parolaları çalınır. Bu yüzden parolaları direk yazmak yerine şifreleme algoritmaları ile veritabanına yazıyoruz. Şifreleme algoritmalarında en çok kullanılan md5 i php de aşağıdaki gibi kullanabiliriz.

md5’in kırılması aslında mümkün değil olarak biliniyor ama brute force atakları ve internetteki kayıt altına alınan md5 ‘ler yüzünden artık parolalar bulunabiliyor. Onun yerine PHP’nin kendi fonksiyonunu kullanacağız.   Peki md5 ile password_hash arasındaki farkı sorarsanız şöyle açıklayayım.

Yukarıda gördüğünüz gibi md5 kullandığımızda her seferinde aynı çıktıyı verir ama password_hash kullanırsak her seferinde farklı çıktı veriyor. Bu da md5 den daha güvenli olmasını sağlıyor.
Yukarıdaki kodda nasıl password_hash oluşturduğumuzu gördünüz şimdi ise bunu kontrol ettirmeyi yapalım.

Yukarıdaki kullanım gibi , password_verify fonksiyonu ile şifremizin parolaya eşit olup olmadığını kontrol edebiliyoruz. Eğer script kodluyorsanız md5 yerine bunu kullanmanız faydanıza olacaktır.