这是密码:
sha1$265b1$5ff32d53cf53bdef243b6f83e33e513514352406
sha1$73f58$b037706983a566e2a2b4bab7ef062c2e84f4a33e
这两个字符串的密码都是'123456',
但为什么他们有不同的字符串?
感谢
答案 0 :(得分:1)
直到django 1.3为“salt”原始密码:
User对象的password属性是这种格式的字符串:
hashtype$salt$hash
这是hashtype,salt和hash,由美元符号字符分隔。
Hashtype是sha1(默认值),md5或crypt - 用于执行密码单向哈希的算法。 Salt是一个随机字符串,用于对原始密码进行加密以创建哈希值。
但django 1.4之后,“salt”部分未记录在数据库中,默认使用其他算法。
答案 1 :(得分:0)
如Docs中所述,django使用salt来密码密码。 salt是2 $
之间的几个字符,因此从技术上讲,您可以使用另一个值更新其中一行。
有关盐哈希的更多信息,请参阅This question
答案 2 :(得分:-2)
决定你的算法,某些算法的结果不一样