最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2019年12月03日 17:32:31   作者:lanix516  
今天小編就為大家分享一篇Django自帶的加密算法及加密模塊詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

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

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

Django 通過PASSWORD_HASHERS 設(shè)置選擇要使用的算法。

下面有一個列表,列出了Django 支持的哈希算法類。列表的第一個元素 (即settings.PASSWORD_HASHERS[0]) 會用于儲存密碼, 所有其它元素都是用于驗證的哈希值,它們可以用于檢查現(xiàn)有的密碼。意思是如果你打算使用不同的算法,你需要修改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模塊中的幾個函數(shù)大體了解一下。通過對兩個函數(shù)的了解,完全可以脫離內(nèi)置的User, 實現(xiàn)自定義的用戶表中使用django內(nèi)置的密碼機制。

首先導入

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

通過函數(shù)名即可發(fā)現(xiàn),主要有兩個函數(shù),分別是創(chuàng)建密碼和驗證

用法

ps = "123456"

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

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

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

相關(guān)文章

最新評論

太湖县| 新竹县| 陕西省| 盐源县| 正定县| 金阳县| 衡水市| 陕西省| 大田县| 高安市| 平陆县| 张北县| 舟山市| 台东县| 阳东县| 岳阳市| 旌德县| 襄樊市| 大兴区| 临沂市| 芮城县| 容城县| 泸溪县| 定边县| 尉氏县| 连城县| 洛扎县| 黄龙县| 尉氏县| 和政县| 綦江县| 永嘉县| 乡宁县| 中西区| 克什克腾旗| 镇沅| 永德县| 晋州市| 汾西县| 综艺| 巴楚县|