模块 hashlib模块
生活随笔
收集整理的這篇文章主要介紹了
模块 hashlib模块
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
hashlib模塊 ?提供摘要算法
主要做對比,比較兩段代碼是否完全一致
不管算法多么不同,摘要功能始終不變,
對同一個字符串進項同一算法摘要得到的值始終不變
MD5值的生成
import hashlib sha1 = hashlib.md5() #一定加括號 sha1.update(bytes('alex3421',encoding='utf-8')) print(sha.hexdigest())sha 算法隨著算法復雜程度的增加,時間空間都會提高
密碼的密文存儲
文件一致性驗證(不需要加鹽,別人不知道你的鹽是什么)
1、在下載時,檢查我們下載的文件和遠程服務器上的文件是否一致
2、兩臺機器上的兩個文件你想檢查這兩個文件是否相等
import hashlib usr1 = input('請輸入注冊用戶名>>>') psd1 = input('密碼>>>') with open('file') as f3:for i in f3:use2,psd2=i.split('|')if use2 == usr1:print('已存在用戶名')else:with open('file','a') as f1:md5 = hashlib.md5(bytes(usr1[:2],encoding='utf-8')+bytes('Ebola',encoding='utf-8'))md5.update(bytes(psd1,encoding='utf-8'))md5_psd1 = md5.hexdigest()f1.write('{}|{}\n'.format(usr1,md5_psd1)) usr = input('請輸入用戶名>>>') psd = input('密碼>>>') with open('file') as f:for i in f:username,passwd = i.split('|')passwd = passwd.strip()md5 = hashlib.md5(bytes(usr[:2],encoding='utf-8')+bytes('Ebola',encoding='utf-8')) #動態加鹽md5.update(bytes(psd,encoding='utf-8'))md5_psd = md5.hexdigest()if usr == username and md5_psd == passwd:print('登陸成功')?
轉載于:https://www.cnblogs.com/Ebola-/p/8336943.html
總結
以上是生活随笔為你收集整理的模块 hashlib模块的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RTKLIB的主要功能
- 下一篇: AtCoder Beginner Con