我有一个遗留的2010 Pylons应用程序,我想用更新的Django替换它。
在Django中,我的理解是哈希密码中使用的Salt是配置文件中的(我错了并纠正了)。SECRET_KEY
。如果我错了,请纠正我。很容易找到。
无论如何,由于Django中使用了不同的哈希算法,公司并不热衷于重置每个人的密码。所以我打算改变Django以匹配Pylons,或者找到解密Pylons散列的方法,并在Django下重新加密。
问题是在查看文档和Google搜索之后,我不知道Salt在Pylons应用程序中的位置。有人有想法吗?
答案 0 :(得分:1)
在金字塔(或Pylons)中使用盐没有单一的方法。存储/检索密码哈希到数据存储的实现留给应用程序代码。
这给了你很多自由。
这样做的一种方法可能是在Django中重现代码并继续使用它作为哈希算法,因为它可能是安全的。快速修复或概念验证可能是安装django并从中导入代码(虽然如果许可证允许,我会亲自复制粘贴代码的一小部分,或者只是重写它)。一旦剥离到最小值,您需要的散列部分可能少于15行。
此外,我不建议按照您的问题评论中的建议进行操作:在用户登录时迁移密码。因为您将永远陷入旧密码,并且您必须保留代码来处理它们,加上处理新密码的新代码,以及迁移代码。