国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 幫助中心 > 正文

Django自帶的加密算法及加密模塊詳解

2024-07-09 22:42:18
字體:
來源:轉載
供稿:網友

Django 內置的User類提供了用戶密碼的存儲、驗證、修改等功能,可以很方便你的給用戶提供密碼服務。

默認的Ddjango使用pbkdf2_sha256方式來存儲和管理用的密碼,當然是可以自定義的。

Django 通過PASSWORD_HASHERS 設置選擇要使用的算法。

下面有一個列表,列出了Django 支持的哈希算法類。列表的第一個元素 (即settings.PASSWORD_HASHERS[0]) 會用于儲存密碼, 所有其它元素都是用于驗證的哈希值,它們可以用于檢查現有的密碼。意思是如果你打算使用不同的算法,你需要修改PASSWORD_HASHERS,來將你最喜歡的算法在列表中放在首位。

一個settings中的Password_hashers看起來是這樣的:

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',)

具體在Django中的用戶密碼生成、驗證的過程是怎么樣的,可以通過django.contrib.auth.hashers模塊中的幾個函數大體了解一下。通過對兩個函數的了解,完全可以脫離內置的User, 實現自定義的用戶表中使用django內置的密碼機制。

首先導入

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

通過函數名即可發現,主要有兩個函數,分別是創建密碼和驗證

用法

ps = "123456"

dj_ps = make_password(ps, None, 'pbkdf2_sha256') #創建django密碼, 第二個參數為None是每次產生的密碼都不用,第三個參數為算法, 后面兩個參數可以忽略

ps_bool = check_password(ps, dj_ps) # check_password 返回值為一個Bool類型,驗證密碼的正確與否 

以上這篇Django自帶的加密算法及加密模塊詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網之家。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 芜湖市| 康乐县| 康定县| 连南| 阳东县| 甘德县| 霍林郭勒市| 南华县| 莆田市| 英超| 日土县| 辽宁省| 大埔县| 西贡区| 张家口市| 嘉祥县| 浑源县| 青铜峡市| 北京市| 南澳县| 内黄县| 乐陵市| 定襄县| 山阳县| 壤塘县| 青州市| 高平市| 三河市| 揭东县| 敖汉旗| 大城县| 博白县| 荃湾区| 昌平区| 拉萨市| 玛纳斯县| 花垣县| 抚远县| 安龙县| 高雄县| 郸城县|