使用 PHP 加密密码
由于 Blowfish 在 PHP 版本 5.3.7 之前存在漏洞,建议改用 SHA-256 或 SHA-512。它们都具有类似于 Blowfish 的盐格式(SHA-256 的前缀为 $5$,SHA-512 的前缀为 $6$)。除此之外,它还包含可选的 rounds 参数来强制进行多次哈希。
单独的盐只有 16 个字符,相对较短,但也与 Blowfish 不同,它允许使用除字母数字以外的字符。
示例
echo 'SHA-256 (no rounds): ' . crypt('password-to-encrypt', '$5$YourSaltyStringz$');
echo 'SHA-512 (with rounds): ' . crypt('password-to-encrypt', '$6$rounds=1000$YourSaltyStringz$');输出
这会产生以下输出 −
SHA-256 (no rounds): $5$YourSaltyStringz$td0INaoVoMPD4kieVrkGE67siKj3N8.HSff8ep0Ybs8SHA-512 (with rounds): $6$rounds=1000$YourSaltyStringz$A5UHscsEbSnPnaV6PmSF5T/MQK.Wc3klA.18c.gXG5pD0PVYSVr/7xwRu1XJyn8XpiMDNRTvpJm5S8DkmSywz1
与 Blowfish 类似,生成的哈希值将包含盐作为结果哈希值的一部分。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP