摘要演算法:
@密碼的密文儲存
@檔案的一致性驗證
1、使用者登陸
import hashlib
usr = input('username:')
pwd = input('password:')
with open('user') as f:
for line in f:
user,passwd,role = line.split('|')
md5 = hashlib.md5()
md5.update(bytes(pwd,encoding='utf-8'))
md5_pwd = md5.hexdigest()
if usr == user and md5_pwd == passwd:
print('登陸成功!')
import hashlib
md5 = hashlib.md5(bytes('salt',encoding='utf-8')) #可以給『salt』位置加任何字元進行加鹽
md5.update(b'longfei')
print(md5.hexdigest())
import hashlib
md5 =hashlib.md5()
with open('nihao.txt',encoding='utf-8') as f:
reg = f.readlines()
for line in reg:
md5.update(b'line')
print(line)
print(md5.hexdigest())
2、動態加鹽:使用使用者名稱的一部分或者直接使用整個使用者作為鹽 python摘要 python 摘要演算法
一 概述 摘要演算法主要特徵是加密過程不需要金鑰,並且加密的資料無法解密,只有輸入相同的明文資料經過相同的摘要演算法才能得到相同的密文。摘要演算法主要應用在 數字簽名 領域。接下來會講述rsa公司的md5演算法和sha 1演算法。二 原理 通過乙個函式,把任意長度的資料轉換成乙個長度固定的資料串 通...
加密演算法 公鑰密碼 摘要演算法
des 資料加密標準,是一種使用金鑰加密的塊演算法。des中的金鑰key為8個位元組64位,但每第8個為校驗位不參與運算,所以有效金鑰只有56位,data為8個位元組64位,是要被加密或解密的資料,des採用16輪運算,每輪產生乙個輪金鑰參與到運算中,金鑰與明文運算時採用按位異或的方法 不僅僅是與金...
java加密解密研究5 訊息摘要演算法簡介
一 訊息摘要演算法的概述 我們之前介紹過雜湊函式,就是用雜湊 hash 函式來驗證資料的完整性。任何訊息經過雜湊函式處理後,都會獲得唯一的雜湊值。這一過程稱為 訊息摘要 其雜湊值稱為 數字指紋 自然其演算法就是 訊息摘要演算法 換句話說,如果其數字指紋唯一,就說明其訊息是一致的。訊息摘要演算法又稱為...