擅长:python、mysql、java
<p>Django默认使用不同的密码散列算法,即PBKDF2<em>和SHA-256。将现有散列移到Django的唯一方法是告诉它使用不同的散列器。普通的SHA-256哈希程序不是内置的,所以您必须<a href="https://docs.djangoproject.com/en/3.0/topics/auth/passwords/#writing-your-own-hasher" rel="nofollow noreferrer">write your own</a></p>
<hr/>
<P>不过,我会考虑不这样做,并为您现有的用户提供迁移路径,因为PBKDF2-SAH256被认为更安全:</P>
<p>将这些散列存储在用户的另一个字段中,并在首次登录时提示他们更改密码(然后扔掉旧散列,只保存以Django方式散列的密码)。您<em>甚至可以</em>对您的用户透明地执行此操作(即,在第一次登录时,在检查哈希与Flask中的旧哈希匹配后,基于相同的密码(此时您拥有的密码)生成一个新哈希并存储它,然后丢弃旧哈希</p>