安卓加密算法

加密方式的分類:

對稱加密算法: 加密和解密密鑰相同,例如,DES、3DES、AES
AES: 高級加密標準(英語:Advanced Encryption Standard,縮寫:AES),在密碼學中又稱 Rijndael 加密法,是美國聯邦政府採用的一種區塊加密標準。這個標準用來替代原先的 DES,已經被多方分析且廣爲全世界所使用。經過五年的甄選流程,高級加密標準由美國國家標準與技術研究院(NIST)於 2001 年 11 月26 日發佈於 FIPS PUB 197,並在 2002 年 5 月 26 日成爲有效的標準。AES 算法加密強度大,執行效率高,使用簡單,實際開發中建議選擇 AES 算法。
缺點:雙方都使用同樣密鑰,安全性得不到保證

稱加密算法 (公鑰、私鑰):加密和解密密鑰不同,但是是一對,例如RSA、ECC

RSA
概述:非對稱加密算法,最流行的公鑰密碼算法,使用長度可變的祕鑰
優點:不可逆,既能用於數據加密,也可以應用於數字簽名
缺點:RSA非對稱加密內容長度有限制,1024位key的最多隻能加密127位數
綜上:
通常我們經常會將對稱加密和非對稱加密兩種技術聯合起來使用,例如用非對稱加密來給對稱加密裏的祕鑰進行加密(即祕鑰交換)

摘要算法 :變長變定長,不能還原,MD5、SHA、CRC
app我常用md5加密密碼給後臺,後臺數據庫存的也是加密後的密碼然後比對
數字證書也用md5
數字證書就是互聯網通訊中標誌通訊各方身份信息的一串數字,提供了一種在 Internet 上驗證通信實體身份的方式,數字證書不是數字身份證,而是身份認證機構蓋在數字身份證上的一個章或印(或者說加在數字身份證上的一個簽名)。它是由權威機構——CA 機構,又稱爲證書授權(Certificate Authority)中心發行的,人們可以在網上用它來識別對方的身份
使用私鑰簽名,公鑰校驗,只要用公鑰能校驗通過,則該信息一定是私鑰持有者發佈的

拓展:Base64 編碼加密後的結果(Base64不是加密算法)

加密後的結果是字節數組,這些被加密後的字節在碼錶(例如 UTF-8 碼錶)上找不到對應字符,會出現亂碼,當亂碼字符串再次轉換爲字節數組時,長度會變化,導致解密失敗,所以轉換後的數據是不安全的。使用 Base64 對字節數組進行編碼,任何字節都能映射成對應的 Base64 字符,之後能恢復到字節數組,利於加密後數據的保存於傳輸,所以轉換是安全的。同樣,字節數組轉換成 16 進制字符串也是安全的
可以用base64來傳輸小型圖片

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章