我们正在考虑将身份验证数据(用户名 + 密码)存储在我公司的新产品平台的 ActiveDirectory 中。我们不能 100% 确定 AD 对我们来说是正确的长期解决方案,但是现在有一个团队准备好并愿意支持它,因此使用它很有吸引力。
但是,我担心如果我们决定从它迁移出去(甚至迁移到一些简单的东西,比如 MySQL + REST 接口),我们将无法保留现有用户的密码。我不希望要问我们的客户改变他们的密码,只是因为我们的后端改变了道路。
所以我的问题是:AD 使用的哈希算法(包括 salt!)是否有记录和可预测?我不是要求解密密码(我认为这是不可能的)。我只是问我是否需要,我可以提取散列密码并重现散列算法,以便我们可以在需要时离开 AD 吗?谢谢!
更新:似乎很多人都误解了我的问题。我不希望任何解密密码。那不仅是超级草图,而且不是我想要做的。我想要做的是知道 AD 用于以安全的单向方式散列密码的例程。一旦我知道了这一点,我就可以轻松地重新实现我自己的系统,该系统可以以兼容的方式对用户进行身份验证。我希望这能解决问题!