Home >Backend Development >PHP Tutorial >User password check (/etc/passwd)_PHP tutorial

User password check (/etc/passwd)_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 17:09:061116browse

/*
* etc.passwd.inc v1.0
*
* Syntax:
* verifypasswd(string USERNAME, string PASSWORD)
*
* The function will return one of three values:
* -2 if there was a file reading error
* -1 if the password is incorrect
* 0 if the username doesn't exist
* 1 if the password is correct
*/

function verifypasswd ($USERNAME, $PASSWORD) {

$fd = fopen( "/etc/passwd", "r");
$contents = fread($fd, filesize( "/etc/passwd"));
fclose($fd);
if (!$contents) return -2;

$lines = split( "n", $contents);
$passwd = array();

for($count=0;$count list ($user,$pass) = split( ":",$lines[$count]);
if ($user == $USERNAME) {
break;
}
}

if (!$user) return 0;

$cryptedpass = $pass;
$salt = substr($cryptedpass,0,2);
$Pass = crypt($PASSWORD,$salt);

if ($Pass == $cryptedpass) {
return 1;
} else {
return -1;
}
}
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/629775.htmlTechArticle? /* * etc.passwd.inc v1.0 * * Syntax: * verifypasswd(string USERNAME, string PASSWORD) * * The function will return one of three values: * -2 if there was a file reading error * -...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn