@ Gahooa:
Bu büyük bir cevap! Ancak, kesinlikle insanların kendi kullanıcı adı / parola açık metin göremiyorum ki bunu yapmak için bir mesajı (tercihen bazı dolgu ile) bu şifre sindirmek kullanmak isteyeceksiniz.
http://pajhome.org.uk/crypt/md5/scripts.html Burada ağ üzerinden göndermeden önce bilgiyi şifrelemek JavaScript büyük bir set.
Temelde kavram bu şifrelenmiş biçimde (aynı zamanda gerçekten iyi bir fikir) olarak kullanıcının şifresini saklamak veya dinamik isterseniz onları hesaplamak, ancak her ikisi de sindirilmiş edildikten sonra onlar eşleşmesi gerekir olabilir.
Ve sonra (gahooa koduyla) sadece 1 fonksiyonu eklemek istiyorum:
$.post(
'/login.php',
{username: u, password: hex_md5(p)}, // here
onLogin,
'json'
);
Bu the most Bunu nerede yapılacak, hem de tuz yapıyor düşünebiliriz gibi, olabilir güvenli değildir:
var salt = '$@.@^-^$'; // any random value with $p3c14l ch@|2$ (special chars)
$.post(
'/login.php',
{username: u, password: hex_md5(hex_md5(p) + salt)}, // here
onLogin,
'json'
);
Daha sonra sunucu tarafı doğrulama işlevi ile hashed değerleri, yani bir karşılaştırma yapmak istiyorum:
<?php
$salt = '$@.@^-^$'; // same as on client-side
function authenticate( $user, $pass ){
...
if( md5( md5( $storedPassword ) . $salt ) == $_POST['username'] ){ ... }
...
}
?>
Dediğim gibi ya, sen zaten sağlaması versiyonunu saklamak olabilir
md5( md5( $_POST['signup_password'] ) . $salt )
kullanıcıların şifreleri onlar kaydolmak (ve tüm varolanları) dönüştürmek zaman