返回列表
成本因子选择指南
什么是成本因子?
成本因子(Cost Factor)控制哈希计算的迭代次数或内存消耗,直接影响计算耗时。更高的成本因子意味着更强的安全性,但也会消耗更多 CPU/内存资源。
bcrypt 成本因子
bcrypt 的成本因子为 2^n 轮迭代,范围 4-31。每增加1,计算时间翻倍。常用值:
- 10:默认值,约 100ms,适合一般 Web 应用。
- 12:约 400ms,适合高安全场景。
- 14:约 1.6s,可能影响用户体验,不推荐在线场景。
Argon2 成本因子
Argon2 有多个参数:时间成本(t)、内存成本(m)、并行度(p)。本工具统一使用 t 作为成本因子(1-10),并固定 m=64MB、p=2。推荐 t=2 或 3。
选型建议
- 用户登录场景,建议 bcrypt cost=10 或 Argon2 t=2,保证响应时间 < 200ms。
- 敏感数据加密,可适当调高成本,但需评估服务器负载。
- 定期评估硬件发展,适时调整成本因子。
本工具支持自定义成本,方便测试不同参数的性能影响。