早上好,今天是2019年10月10日,最低氣溫14度,山東文匯官網(wǎng)提醒您,天冷,且加衣。
之前查看數(shù)據(jù)庫的時(shí)候,心血來潮復(fù)制了一個(gè)加密過的密碼。找到md5解密的網(wǎng)站上,發(fā)現(xiàn)解不出來。
百思不得其解中,問了一下師哥才知道,這個(gè)密碼是經(jīng)過md5加密,然后又使用了加鹽加密的方法,使得密碼更加安全。
密碼加鹽是因?yàn)槊艽a不能以明文形式保存到數(shù)據(jù)庫中,否則數(shù)據(jù)泄露密碼就會(huì)被知道。而一般的加密方式由于加密規(guī)則固定,很容易被破解,安全系數(shù)不高。密碼加鹽的加密方式,能很好的解決這一點(diǎn)。
Salt 可以是任意字母、數(shù)字、或是字母或數(shù)字的組合,但必須是隨機(jī)產(chǎn)生的,每個(gè)用戶的 Salt 都不一樣,用戶注冊(cè)的時(shí)候,數(shù)據(jù)庫中存入的不是明文密碼,也不是簡單的對(duì)明文密碼進(jìn)行散列,而是 MD5( 明文密碼 + Salt),也就是說:
MD5('123' + '1ck12b13k1jmjxrg1h0129h2lj') = '6c22ef52be70e11b6f3bcf0f672c96ce'
MD5('456' + '1h029kh2lj11jmjxrg13k1c12b') = '7128f587d88d6686974d6ef57c193628'
或者說兩個(gè)用戶設(shè)置的相同的密碼,因?yàn)榧尤肓恕胞}”的原因,存儲(chǔ)在數(shù)據(jù)庫里的值也是不一樣的了。這樣就不用避免出現(xiàn)相同字符而獲取該密碼。
由于加了 Salt,即便數(shù)據(jù)庫泄露了,但是由于密碼都是加了 Salt 之后的散列,明文密碼被破解出來的概率也大大降低。
分享完畢,感謝觀看濟(jì)南文匯軟件官網(wǎng)。