三大類加密算法以及應(yīng)用場景
1.哈希(散列函數(shù))算法
????????其中的特點:1.算法公開什燕。2.對不同的數(shù)據(jù)加密的結(jié)果都是32位字符沙峻。3.是不可逆的
代表的算法:MD5图谷、SHA256/512檩奠、HMAC
2.對稱加密算法
????????其中的特點:1.加密后可逆沛简。2.加密和解密都要用同一個秘鑰(秘鑰的保密工作很重要呕缭,秘鑰要一定要定期更換,秘鑰管理非常麻煩)3.加密的效率高
代表算法:AES("高級"加密方法)筒愚、DES(數(shù)據(jù)加密標(biāo)準(zhǔn))赴蝇、3DES
????????對稱加密算法的兩種加密方式:1.ECB (電子代碼本,也就是說每個數(shù)據(jù)塊都是加密的)巢掺。終端命令:$ openssl enc -des-ecb -K 616263 -nosalt -in msg1.txt -out msg1.bin(加密).?$ openssl enc -des-ecb -K 616263 -nosalt -in msg1.bin -out msg1.txt -d(解密).$ xxd msg1.bin(查看加密之后的二進制文件)句伶。
? ? ? ? 2.CBC(密碼塊鏈,使用一個秘鑰和一個“初始化向量(IV)對數(shù)據(jù)進行加密轉(zhuǎn)換址遇,每個數(shù)據(jù)塊加密都與上一個數(shù)據(jù)款有關(guān)聯(lián),如果數(shù)據(jù)在傳輸?shù)倪^程中被竄改斋竞,那么整個數(shù)據(jù)都沒有犯法解密了”)
3.非對稱加密算法
? ? ? ? 其中的特點:1.加密后可逆倔约,2.私鑰加密公鑰解密,公鑰加密私鑰解密坝初。3.純數(shù)學(xué)運算加密效率很低
4.應(yīng)用場景
? ? ? ? MD5:(1.一般用來密碼加密2.版權(quán)問題3.搜索引擎(取MD5的值按位相加)4.百度云/360云的秒傳(比對文件MD5的值))
? ? ? ? DES:(標(biāo)準(zhǔn)的加密方式浸剩,因為強度不夠,用的很少)
? ? ? ? 3DES:(對相同的數(shù)據(jù)進行3次加密鳄袍,強度有所加強绢要,用的更少)
? ? ? ? AES:(高級加密標(biāo)準(zhǔn),目前美國國家安全局用的就是AES)