像往常一样,答案是“它取决于”.
一般来说,我会说如果攻击者可以访问您的数据库,那么您的安全状况就会严重受损,加密密码可能对您没有好处.这与使用单向散列不同 – 有权访问您的数据库的攻击者也可以访问您的解密密钥,而根据定义,单向散列是单向散列.
正如您所说,您可能需要定期访问userID(例如,如果您使用电子邮件地址作为用户ID);在这种情况下,再次,可以读取您的数据库的攻击者可能会拦截未加密的数据.
因此,如果您在银行,政府或数据安全必须位于列表顶部的任何其他地方工作,这种额外的保护可能是值得的,特别是如果您拥有强大的密钥管理系统.
对于其他用途,我认为额外的安全性太小,不值得额外的痛苦.