2012-07-04 4 views
-2

Я просто хотел бы знать, если этот сценарий является достаточно безопасным для шифрования пароля:PHP Password - соленая, обратная, зашифрованная

<?php 

$password = 'password'; 
$salt  = '9awd8n12jok1llawawf'; 

$new   = hash($password . $salt, 'ripemd160'); 
final  = strrev($new); 

?> 

Спасибо.

+0

Какое шифрование пароля? насколько ценны пароли? Вы управляете финансами? –

+0

Зачем его менять? Это совершенно не нужно и ничего не добавляет безопасности. – Tibor

+2

№ Пожалуйста, прочтите следующее: http://stackoverflow.com/questions/1645161/salt-generation-and-open-source-software/1645190#1645190. –

ответ

3

Не используйте соль для каждого пароля. Обычно то, что вы хотите сделать, это использовать какое-то воспроизводимое значение в качестве соли. Например, некоторый хэш идентификатора пользователя (если идентификатор пользователя никогда не изменяется) или некоторая случайная строка, которую вы сохраняете с информацией учетной записи пользователя. Соль никогда не должна быть видна конечному пользователю.

+0

Просто, чтобы быть ясным, это не отвратительное нарушение безопасности, если соль видна конечному пользователю. Это может немного затруднить взлома пароля пользователя, но пока вы не показываете всем * солям пользователей, это не должно быть большой проблемой. Но, фактически, никогда не должно быть причин, чтобы соль была видна конечному пользователю, я просто говорю, что не кодируйте ее в cookie или что-то еще, ее следует использовать только на стороне сервера. –

1

Если вы хотите обеспечить еще большую безопасность, сохраните временную метку регистрации пользователей и используйте ее для соли хеша. Таким образом, хеш-соль более случайна и ваши данные немного более безопасны.