저는 PHP 보안을 처음 접했고 사이트에 로그인하고 로그인했으며 md5 암호를 추가하려고합니다. 그러나 어디에서나 찾을 수 없습니다. 로그인에 추가해야 할 항목과 로그인 파일 및/또는 데이터베이스에 추가해야하는 항목에 대한 명확한 지침을 제공합니다. 웹 보안 측면에서 새로운 PHP에 익숙해졌습니다. 난 그냥 예 또는 나는 그것이 제대로 작동 얻기 위해 무엇을해야하는지의 좋은 가이드가 필요암호를 해시하려고 시도했지만 성공하지 못했습니다.
$error = $user = $pass = "";
if (isset($_SESSION['user'])) destroySession();
if (isset($_POST['user']))
{
$user = sanitizeString($_POST['user']);
$pass = sanitizeString($_POST['pass']);
if ($user == "" || $pass == "")
{
$error = "Not all fields were entered<br /><br />";
}
else
{
$query = "SELECT * FROM members WHERE user='$user'";
if (mysql_num_rows(queryMysql($query)))
{
$error = "Username already taken<br /><br />";
}
else
{
$query = "INSERT INTO members VALUES('$user', '$pass')";
queryMysql($query);
die("<h4>Account created</h4>Please Log in.");
}
}
}
: 약간의 도움을 필요로, 여기에 내가 내 가입 양식에 가지고있는 부분입니다.
을, 난 그냥 SHA-1 암호를 해시하고 충분 이것은 일어날 것 같지 않습니다. – gd1
제 생각에 당신은 준비된 진술과 교리와 같은 "높은 추상화"솔루션에 대해 정말로 읽어야한다고 생각합니다. – hamczu
@Giacomo : 아니요. 합리적인 시간 (시간 또는 일) 동안 클라우드에서 SHA1을 크랙 할 수 있습니다. 암호는 항상 제대로 소금에 절인되어야하며 sha512와 같은 강력한 해시 함수로 해시되어야합니다. – hamczu