关于加密方式
来源:6-9 扩展django的用户模型
Kepler_
2020-11-14 20:33:17
老师,您好:
加密方式有很多种,老师能不能在这里举一些常用的加密方式,以及它的使用方式,视频中老师没有展开介绍到,但是我想具体知道它的一些常用的加密方式,以及如何在django文档中查找对应的加密方式的其他种的应用,老师能不能具体说明一下,谢谢
1回答
同学,你好,
一、使用django默认的加密方法
1、注册时加密
from django.contrib.auth.hashers import make_password user.password = make_password(password) # 明文密码经过加密处理 user.save()
2、登录验证
# 系统验证 from django.contrib.auth import authenticate user = authenticate(username=username, password=password) #手动验证 通过check_password(原始值, 生成的密文)来校验密码的。 user.check_password(password)
二、md5加密,自己定义一个函数来对密码进行加密,解密的时候把用户输入的密码同样加密后再和数据库中的密文进行比对。
import hashlib
def calc_sha1(password):
sha1_obj = hashlib.sha1()
sha1_obj.update(password.encode('utf-8'))
return sha1_obj.hexdigest()三、官方文档链接:https://docs.djangoproject.com/en/1.11/ref/contrib/auth/
相似问题