我们有一个用 c/c++ 编写的 Web 服务 在今天之前,用户密码只是简单地用 MD5 散列并存储在 DB 中我很清楚这个算法根本不安全
Web 服务是 1 个线程应用程序。平均而言,它每秒从用户那里收到约 100 个数据包(100p/s)。其中一些是身份验证数据包。
我读过关于 bcrypt 和 salts 的文章,但根本没有在实践中使用过这种技术。由于安全原因,bcrypt 产生的哈希值比 MD5 慢的事实对我来说也很清楚。如果我们采用这种方式并使用 bcrypt 或 scrypt 来加密密码和检查 auth 数据包,它会使我们的服务变得更慢吗?