【问题标题】:How to hash strings in python(django) and compare the hashed value with a given string如何在python(django)中散列字符串并将散列值与给定字符串进行比较
【发布时间】:2022-01-25 04:24:29
【问题描述】:

我正在开发一个允许用户注册然后登录的网络应用程序,我使用以下函数对密码进行哈希处理

from passlib.hash import pbkdf2_sha256
import math

def encrypt_password(pswd):
    encrypt_pswd = pbkdf2_sha256.encrypt(pswd, rounds=(int(math.pow(len(pswd),3))), salt_size=(len(pswd)*2))
    return encrypt_pswd

def verify_password(pswd, e_pswd):
    en_pswd = encrypt_password(pswd)
    if en_pswd == e_pswd:
        return True
    else:
        return False

我的问题是,当我第二次散列它时,我散列的字符串不会产生相同的结果。我该如何解决这个问题,或者我可以使用什么方法对密码进行哈希处理,存储在数据库中并将该值与登录表单中的值进行比较

【问题讨论】:

    标签: python django encryption hash


    【解决方案1】:

    你需要使用verify函数

    def verify_password(pswd, e_pswd):
        return pbkdf2_sha256.verify(pswd, e_pswd)
    

    【讨论】:

      猜你喜欢
      • 2016-04-22
      • 1970-01-01
      • 2017-10-22
      • 1970-01-01
      • 2020-03-17
      • 2015-05-28
      • 2021-08-27
      • 2011-09-30
      • 1970-01-01
      相关资源
      最近更新 更多