2016-03-02 2 views
-1

У меня есть хэш-функция на SA-MPКак использовать SHA256 С солью?

new MyHash[256]; 
SHA256_PassHash(inputtext, "78sdjs86d2h", MyHash, sizeof(MyHash)); 
if(!strcmp(MyHash, PlayerInfo[playerid][pKey])) 

Я предполагаю, что 78sdjs86d2h является солью, но как установить соль в PHP?

Я использую этот код, и он хеширует, но не с моей солью.

if(isset($_POST['username']) && isset($_POST['password'])){ 

    mysql_query('SET NAMES utf8'); 
    $var = mysql_real_escape_string("\xbf\x27 OR 1=1 /*"); 

    $username = mysql_real_escape_string($_POST['username']); 
    $parola = mysql_real_escape_string($_POST['password']); 
    $hash = hash('sha256', $parola); 

    $check = get_row("SELECT ID FROM players WHERE Name='$username' && password='$hash' LIMIT 1"); 
    if(isset($check['ID'])) 
    { 
     $_SESSION['username'] = $_POST['username']; 
     $_SESSION['password'] = $_POST['password']; 
     $id = $check['ID']; 
     header("location: index.php"); 
    } 
    else 
    { 
     printf("%s", $hash); 
     $err = 'Username sau parola incorecte'; 
    } 
} 

Как сделать его хэш с моей солью?

+0

я настоятельно рекомендуется использовать [password_hash] (http://php.net/manual/en/function. password-hash.php) и [используя mysqli или pdo вместо mysql] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php). –

ответ

-1

ОБНОВЛЕНИЕ: Пытались этот путь

$username = mysqli_real_escape_string($DB_H, addslashes($_POST['username'])); 
$password1 = $_POST['password']; 
$salt  = '78sdjs86d2h'; 
$parola = hash('sha256', $password1 . $salt); 

Результат: 33ca067dc70ef75fc1a1107f4345f3a819ecca657d3d9646d26822fd691cd10c Оригинал: BFD2832240F5FC1FD12004634EBE9FDE97BD0D4690695DFAC1350D0AE037398F

Смежные вопросы