用特定的盐生成密码

时间:2018-06-21 11:35:59

标签: c# asp.net-core-2.0 identityserver4 asp.net-core-webapi

我们正在使用Identity Server 4进行用户身份验证。

我需要添加一项功能来限制用户重复使用其最后5个密码之一。

要根据他们的历史记录检查新密码,我认为最好的方法是(一次使用1个历史密码)使用历史盐来哈希其新密码,然后比较输出。

我可以从哈希中获取每种历史盐,但是我不知道如何

  1. 使用特定的盐作为哈希值
  2. 生成哈希以与历史哈希进行比较

我已经检查了http://docs.identityserver.io/en/release/处的文档,但在那里找不到任何相关内容。

我在这里正确吗?如果是这样,我该如何做?如果没有,如何检查以前没有使用过的新密码? (无论如何都在最近5个之内)

1 个答案:

答案 0 :(得分:0)

IdentityServer4对用户密码或身份验证不执行任何操作。您是否在询问ASP.Net身份?如果是这样,我建议在Github中深入研究该代码,并覆盖您的需求。

关于一般方法;我将使用散列了特定于用户的,不可变的盐的哈希,但仅对单独存储在不同表中的历史密码使用哈希。他们当前的密码应正常使用随机盐。