utf-8、pbkdf2_sha

#utf-8加密、解密

import base64

base64.b64encode('lienlien123'.encode('utf-8'))

b'bGllbmxpZW4xMjM='

base64.b64decode(b'bGllbmxpZW4xMjM='.decode('utf-8'))

b'lienlien123'

#pbkdf2_sha加密,校验

该种密码在不同时刻会有产生不同的加密结果

该加密方法使用的是散列消息,所以加密是不可逆的,

只能通过校验验证密码加密解密后是否一致,不可解密

PASSWORD_HASHERS = (

'django.contrib.auth.hashers.PBKDF2PasswordHasher',

'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher',

'django.contrib.auth.hashers.BCryptSHA256PasswordHasher',

'django.contrib.auth.hashers.BCryptPasswordHasher',

'django.contrib.auth.hashers.SHA1PasswordHasher',

'django.contrib.auth.hashers.MD5PasswordHasher',

'django.contrib.auth.hashers.CryptPasswordHasher',

)

from django.contrib.auth.hashers import make_password, check_password

pwd='lienlien123'

产生加密后密码

make_password()的第二位参数为None时,每次产生的加密结果都不一样,

当加入任意参数时,既可以相同

mpwd=make_password(pwd,None,'pbkdf2_sha256')

校验加密后是否相同

pwd_bool=check_password(pwd,mpwd)

print(pwd_bool)

相关推荐
BoBoZz193 小时前
Glyph2D 同一个图形根据点云的输入产生不同位置的输出
python·vtk·图形渲染·图形处理
一笑code3 小时前
pycharm vs vscode安装python的插件
vscode·python·pycharm
liwulin05063 小时前
【PYTHON-YOLOV8N】yoloface+pytorch+cnn进行面部表情识别
python·yolo·cnn
(●—●)橘子……4 小时前
记力扣1471.数组中的k个最强值 练习理解
数据结构·python·学习·算法·leetcode
_OP_CHEN4 小时前
用极狐 CodeRider-Kilo 开发俄罗斯方块:AI 辅助编程的沉浸式体验
人工智能·vscode·python·ai编程·ai编程插件·coderider-kilo
Wpa.wk4 小时前
自动化测试 - 文件上传 和 弹窗处理
开发语言·javascript·自动化测试·经验分享·爬虫·python·selenium
_OP_CHEN4 小时前
【Python基础】(二)从 0 到 1 入门 Python 语法基础:从表达式到运算符的全面指南
开发语言·python
我命由我123454 小时前
Python Flask 开发:在 Flask 中返回字符串时,浏览器将其作为 HTML 解析
服务器·开发语言·后端·python·flask·html·学习方法
拾忆,想起4 小时前
设计模式:软件开发的可复用武功秘籍
开发语言·python·算法·微服务·设计模式·性能优化·服务发现
沃斯堡&蓝鸟4 小时前
DAY28 元组和OS模块
python·元组与os模块