数据库存储密码方式有哪些?明文密码是否安全?
密码存储方案对比
| 存储方式 | 安全性 | 实现示例 |
|---|---|---|
| 明文存储 | ❌ 高危 | 密码 = "123456" |
| MD5哈希 | ⚠️ 弱 | MD5("密码+salt") |
| SHA-256 | ✅ 中 | hash("sha256", $password) |
| Bcrypt | ★★★★ 强 | password_hash($pwd, PASSWORD_BCRYPT) |
| Argon2 | ★★★★★ 最强 | password_hash($pwd, PASSWORD_ARGON2I) |
安全实践
- 绝对禁止明文存储
- 使用现代哈希算法(如Bcrypt)
- 加盐处理(Salt)防止彩虹表攻击
php
$hashedPassword = password_hash($password . $uniqueSalt, PASSWORD_BCRYPT); - 定期审计数据库中的密码存储方式

更新时间:2025-06-02 15:11:35
