2014-10-17 2 views
1

В настоящее время я шифрую данные, входящие в базу данных, используя код, который я нашел в Интернете, и как введение в тему. Мой вопрос здесь проистекает из двух статей WikiHow (и относится к этим статьям): один по login шифрованию; другой - на session security. Обе статьи выглядят неплохо; Однако, есть одна существенная разница между ними: бывшие государства, определение JavaScript использованного алгоритма hasing ($password = hash('sha512', $password . $salt) требуется для PHP, сама работатьИспользование шифрования (алгоритм хэширования) Переменные

Даже с включением hash() метода PHP (найдено. в обеих статьях), автор первых государств, что 'sha512' шифрования должен сам быть определяется извне с помощью другого языка (автор предлагает JavaScript).

от чтения документации PHP, у меня сложилось впечатление, что hash() смог обрабатывать серию заранее определенных алгоритмов хеширования, распознаваемых идентификатором, например whirpool, sha512 и т. Д. Эти идентификаторы PHP можно захватить с помощью hash_algos() (или вы можете просто прочитать документацию).

Я ошибаюсь, полагая, что внешнее определение конкретного заранее заданного алгоритма хэширования не нужно?

+1

хэширования в Javascript только действительно попытка защитите пароль перед передачей по небезопасному протоколу HTTP. В любом случае пароли действительно должны быть отправлены по HTTPS. – Jonathon

+0

@ Джонатон это то, о чем я думал. Так, действительно, единственной причиной, по которой понадобится JavaScript, было бы, если бы передача была небезопасной? – Thomas

+1

Немного разглагольствования, но он делает несколько замечательных пунктов> http://matasano.com/articles/javascript-cryptography/ – Dennis

ответ

1

Я не вижу необходимости использовать javascript для хэш-строки.

Лично я предпочитаю использовать bcrypt, чем sha512, но это прекрасно, это не очень слабый алгоритм.

$password = hash('sha512', $password . $salt) 

Это хороший способ для хеширования паролей, и если вы чувствуете, как происходит полный газ, вы можете посмотреть PBKDF2

http://en.wikipedia.org/wiki/PBKDF2 https://defuse.ca/php-pbkdf2.htm

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