1. 程式人生 > 實用技巧 >三種常見加密演算法MD5、非對稱加密,對稱加密【多測師_王sir】

三種常見加密演算法MD5、非對稱加密,對稱加密【多測師_王sir】

一、MD5加密
MD5加密的特點:
不可逆運算
對不同的資料加密的結果是定長的32位字元(不管檔案多大都一樣)
對相同的資料加密,得到的結果是一樣的(也就是複製)
抗修改性 : 資訊“指紋”,對原資料進行任何改動,哪怕只修改一個位元組,所得到的 
MD5 值都有很大區別.
弱抗碰撞 : 已知原資料和其 MD5 值,想找到一個具有相同 MD5 值的資料(即偽造
資料)是非常困難的
強抗碰撞: 想找到兩個不同資料,使他們具有相同的 MD5 值,是非常困難的
二、對稱加密
簡介: 
對稱加密演算法又稱傳統加密演算法。 
加密和解密使用同一個金鑰。
加密解密過程:明文->金鑰加密->密文,密文->金鑰解密->
明文 示例: 金鑰:www.duoceshi.cn 加密演算法:每個字元+www.duoceshi.cn 明文:dcs 金鑰為 1時加密結果:abmmx 金鑰為 2時加密結果:dwddx 優缺點: 演算法公開,計算量小,加密速度快,加密效率高 雙方使用相同的鑰匙,安全性得不到保證 經典加密演算法有三種: 1. DES(Data Encryption Standard):資料加密標準(現在用的比較少,因為它的加密強度不夠,能夠暴力破解) 2. 3DES:原理和DES幾乎是一樣的,只是使用3個金鑰,對相同的資料執行三次加密,增強加密強度。
(缺點:要維護3個金鑰,大大增加了維護成本)
3. AES(Advanced Encryption Standard):高階加密標準,目前美國國家安全域性使用的,蘋果的鑰匙串訪問採用的就
AES加密。是現在公認的最安全的加密方式,是對稱金鑰加密中最流行的演算法。
三、非對稱加密RSA
簡介: 
1. 對稱加密演算法又稱現代加密演算法。 
2. 非對稱加密是計算機通訊安全的基石,保證了加密資料不會被破解。 
3. 非對稱加密演算法需要兩個金鑰:公開金鑰(publickey) 和私有密(privatekey) 
4. 公開金鑰和私有金鑰是一對

特點:
加密的公鑰和私鑰不同、都是後端伺服器生成給到前端的
如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密。 
如果用私有金鑰對資料進行加密,只有用對應的公開金鑰才能解密。 演算法強度複雜,安全性依賴於演算法與金鑰。 加密解密速度慢。 與對稱加密演算法的對比: 對稱加密只有一種金鑰,並且是非公開的,如果要解密就得讓對方知道金鑰。 非對稱加密有兩種金鑰,其中一個是公開的。 RSA應用場景: 由於RSA演算法的加密解密速度要比對稱演算法速度慢很多,在實際應用中,通常採取 資料本身的加密和解密使用對稱加密演算法(AES)。 用RSA演算法加密並傳輸對稱演算法所需的金鑰。