Ben Auth::attempt()
yöntemini kullanarak bir kullanıcının kimliğini doğrulamak için çalışıyorum ve başarısız tutar verir, bu yüzden sonunda aşağıdaki kodla sona erdi:laravel 4 - Aynı şifreyi Hashing farklı değerler
$arr = array();
$arr['verified'] = Hash::make('1234') . ' ; ' . Hash::make('1234');
return json_encode($arr);
ve bu sonucudur :
{"verified":"$2y$10$V4yXBUcxealfLrzOE\/xAD.sJ8qpNhrMA6K6dENBBXYqaVx1zSETgy ; $2y$10$C9xpOWLTUyfy1KL.Y3Tot.KWADmQYFK\/HAf6uZGGXTKcVh52qHS4m"}
Gördüğünüz gibi, ilk karma $2y$10$V4yXBUcxealfLrzOE\/xAD.sJ8qpNhrMA6K6dENBBXYqaVx1zSETgy
verir ve ikinci karma verir $2y$10$C9xpOWLTUyfy1KL.Y3Tot.KWADmQYFK\/HAf6uZGGXTKcVh52qHS4m
T Veritabanında saklanmamalı olsa da, 60 karakterlik şifre alanım var.
Herhangi bir fikrin var mı?
minimum boyuta sahip olduğundan emin yapılmış Fakat o nasıl benzerlikler nelerdir, veritabanında karma şifreyi saklamak gerekir olmalıdır? Çünkü şifre her zaman 1234 değil. Bunu “Auth :: attempt()” yöntemiyle nasıl kullanabilirim? –
user3723418 @ - rastgele tuz çıkan sağlama değeri bir parçası haline gelecek, bu tuz sadece() 'sizin için otomatik olarak yapar' Hash :: çek kullanmak, girilen şifreyi doğrulamak için saklanan karma değeri elde edilir. Auth :: attempt() yöntemini kullanarak – martinstoeckli
@ user3723418 daha da kolay. Veritabanınızdaki karma tuzu elinize geçer geçmez (doğru db tasarımı varsayılmıştır) laravel, veri tabanındaki alanlara karşı girişi otomatik olarak kontrol edecektir. Db'de bir parola alanı ve dizinizde bir parola anahtarı varsa, 'Auth :: attempt()' yöntemine geçiş yaparsınız, laravel otomatik olarak bu iki değeri dikkate alarak karmayı dikkate alır ve oturum işlemeyi gerçekleştirir. – thpl