1.DES,3DES
概述:對(duì)稱加密算法
? 優(yōu)點(diǎn):算法公開、計(jì)算量小、加密速度快、加密效率高
缺點(diǎn):雙方都使用同樣密鑰,安全性得不到保證
2.AES
? 概述:對(duì)稱加密算法
? 優(yōu)點(diǎn):算法公開、計(jì)算量小、加密速度快、加密效率高
? 缺點(diǎn):雙方都使用同樣密鑰,安全性得不到保證
3.XOR
概述:異或加密:原字符或數(shù)字 m 與一個(gè)數(shù)值 k 進(jìn)行異或運(yùn)算得到結(jié)果 r ,則用 r 與 k 做異或運(yùn)算即可還原到 m
? 優(yōu)點(diǎn):兩個(gè)變量的互換(不借助第三個(gè)變量),簡(jiǎn)單的數(shù)據(jù)加密
? 缺點(diǎn):加密方式簡(jiǎn)單
4.Base64
概述:算不上什么加密算法,只是對(duì)數(shù)據(jù)進(jìn)行編碼傳輸
5.SHA
概述:非對(duì)稱加密算法。安全散列算法,數(shù)字簽名工具。著名的圖片加載框架Glide在緩存key時(shí)就采用的此加密
優(yōu)點(diǎn):破解難度高,不可逆
? 缺點(diǎn):可以通過窮舉法進(jìn)行破解
6.RSA
概述:非對(duì)稱加密算法,最流行的公鑰密碼算法,使用長(zhǎng)度可變的秘鑰
? 優(yōu)點(diǎn):不可逆,既能用于數(shù)據(jù)加密,也可以應(yīng)用于數(shù)字簽名
? 缺點(diǎn):RSA非對(duì)稱加密內(nèi)容長(zhǎng)度有限制,1024位key的最多只能加密127位數(shù)據(jù)
7.MD5
? 概述:非對(duì)稱加密算法。全程:Message-Digest Algorithm,翻譯為消息摘要算法
? 優(yōu)點(diǎn):不可逆,壓縮性,不容易修改,容易計(jì)算
? 缺點(diǎn):窮舉法可以破解
從上述簡(jiǎn)單的介紹,我們發(fā)現(xiàn),算法分為了兩大類:
(1)對(duì)稱加密算法
(2)非對(duì)稱加密算法
各自的特點(diǎn)也一目了然:
(1)對(duì)稱加密算法可以互逆,即通過key加密,也可以通過key來解密
(2)非對(duì)稱加密則不可互逆
具體工具類 可在GItHub中進(jìn)行下載