我是 Web 开发和数据库的新手,正在尝试以合理的安全性和速度实现密码身份验证。我已经阅读了关于对密码进行哈希处理并为每个用户附加一个唯一的盐,以阻止人们生成彩虹表。
我的问题涉及我必须搜索以验证用户的时间。由于我不知道谁在任何给定时间尝试连接,在我看来,我需要从 salt 列中检索每个字段,然后对提交的密码 + 每个唯一的 salt 进行哈希处理,然后最后将每个输出与哈希值进行比较表中的字符串?
所以我必须为哈希(密码+盐)的每个组合提交一个单独的查询?这似乎会非常缓慢。我错过了一个可以加快进程的技巧吗?或者它只是为了更好的安全性而牺牲它的速度?还是我弄错了,以当今计算机的速度,这根本不是问题?