//用户注册写入数据库
$userPass = "test";
$salt = "$1$123456789$";
$crypted = crypt$userPass , $salt ); //加密过后     $1$123456789$oEitTZYQtRHfNGmsFvTBA/

$passToDb = substr$crypted , strlen($salt) );

//将passToDb写入数据库.

//验证

$passFromDb = "oEitTZYQtRHfNGmsFvTBA/";
$checked = strcmp$crypted , $salt.$passFromDb );
if ($checked==0) {
    
echo "密码验证成功";
}

md5-crypt常用于postfix邮箱系统中

salt字符串一般是$1$XXXXXXXX$
“X”表示“abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./”字符串中的一个某个字符。

http://bbs.chinaunix.net/viewthread.php?tid=122741
Posted on 2007-06-20 13:30  古代  阅读(701)  评论(0编辑  收藏  举报