我有一个遗留用户数据库,我想集成到一个新的Django项目中。简单的MD5哈希可以转换为django密码吗?
密码用简单明了的MD5加密(MD5 PHP()函数)保存在旧数据库的用户,不用任何腌制。
重写check_password和django.contrib.auth的set_password是不是一种选择,因为我已经有了新的Django项目活动的新用户。
看着passlib,但不幸的是它不会做什么是需要要在这一具体项目来完成。因此基本上,我唯一的选择是将哈希以某种方式转换为Django salted格式,或实现自定义的check_password方法,该方法将确定密码是纯MD5还是django密码(甚至可能通过我的参数自定义用户模型,类似legacy=True
布尔标志)。
任何帮助,非常感谢。
“将哈希以某种方式转换为Django腌制格式” - 这应该是不可能的。第二个选项听起来很对。 – amsh
我知道,MD5被认为是单向加密,但也许有人很好的彩虹表的知道:d –
它实际上可以工作,只是我不太热衷于做这样的操作,以django.contrib.auth –