我知道这里已经有很多关于“如何安全地存储密码”的问题,而且我也知道答案总是“永远不要这样做!使用哈希函数存储密码!使用bcrypt!”。
但是当你不能使用哈希函数进行身份验证时该怎么办呢?例如自动化过程。比如说我编写了一个需要登录到SFTP站点或某种需要用户名/密码的外部服务的自动化应用程序。我无法使用哈希函数对外部服务进行身份验证,那我应该怎么做呢?
我在这个问题上标记了C#和ASP.NET,因为这两个领域对我的具体情况适用。
编辑:由于评论中提出的讨论,让我澄清一下我试图解决的威胁:我想防止攻击者能够读取用于访问外部服务的明文密码。这意味着如果他们以某种方式获得非管理员访问我们的网络或数据库,即使拥有数据库转储,他们也无法读取明文密码。
但是当你不能使用哈希函数进行身份验证时该怎么办呢?例如自动化过程。比如说我编写了一个需要登录到SFTP站点或某种需要用户名/密码的外部服务的自动化应用程序。我无法使用哈希函数对外部服务进行身份验证,那我应该怎么做呢?
我在这个问题上标记了C#和ASP.NET,因为这两个领域对我的具体情况适用。
编辑:由于评论中提出的讨论,让我澄清一下我试图解决的威胁:我想防止攻击者能够读取用于访问外部服务的明文密码。这意味着如果他们以某种方式获得非管理员访问我们的网络或数据库,即使拥有数据库转储,他们也无法读取明文密码。