from django.contrib.auth.models import User u = User.objects.get(username='test') user.password u'sha1$c6755$66fc32b05c2be8acc9f75eac3d87d3a88f513802
是否可以撤消此密码加密?
答案 0 :(得分:17)
是的,这是可能的。你所需要的只是几百万年,而且是一台与太阳系相当的电脑。
答案 1 :(得分:17)
Sha-1是单向哈希。除了使用需要数百万年的蛮力攻击之外,它无法逆转。
有一些在线数据库允许您反转常用单词/单词组合的哈希值。但是,在计算哈希值之前,django会在密码中添加“salt”,因此您无法撤消django密码。
这就是使用哈希的原因。没有人能找到你的密码,甚至连sys管理员都没有: - )
答案 2 :(得分:8)
不,这就是重点。
如果您的用户忘记了密码,则必须重置密码。
答案 3 :(得分:1)
Django正在使用 sha1 ,这是密码哈希的单向哈希,加密前是“salt”密码。所以解密它们需要更长的时间(也许是我们的一生)。密码经过哈希处理,即使它们具有散列值,也无法解密密码。