我们有一个系统部署在无法保证互联网访问的远程位置,系统的一部分需要密码,但是用户可能会忘记密码并要求恢复选项。
我正在尝试创建一个允许我生成恢复密码的工具,密码需要对系统是唯一的(系统可以提供唯一的数字标识符)并且对时间敏感。
理想情况下,系统将以这种方式工作:用户致电支持并提供他的系统标识符。支持在恢复工具中输入他的标识符并取回在该小时/天有效的密码。当用户在他的系统中输入生成的密码时,系统将允许访问。
我想远程系统必须以相同的方法生成密码,以与支持提供的密码进行比较,这可能会带来安全风险,代码需要进行一些逆向工程校对。我正在寻找 C# 解决方案,但欢迎使用其他方法。