iOS 對稱加密

什麼是對稱加密

對稱加密算法是應用較早的加密算法,技術成熟。在對稱加密算法中,數據發信方將明文(原始數據和加密密鑰)一起經過特殊加密算法處理後,使其變成複雜的加密密文發送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的密鑰及相同算法的逆算法對密文進行解密,才能使其恢復成可讀明文。在對稱加密算法中,使用的密鑰只有一個,發收信雙方都使用這個密鑰對數據進行加密和解密,這就要求解密方事先必須知道加密密鑰。

對稱加密的優缺點

優點:算法公開、計算量小、加密速度快、加密效率高。

缺點:

(1)交易雙方都使用同樣鑰匙,安全性得不到保證。

(2)每對用戶每次使用對稱加密算法時,都需要使用其他人不知道的惟一鑰匙,這會使得發收信雙方所擁有的鑰匙數量呈幾何級數增長,密鑰管理成爲用戶的負擔。對稱加密算法在分佈式網絡系統上使用較爲困難,主要是因爲密鑰管理困難,使用成本較高。

常見的對稱加密算法

  • DES 數據加密標準(用的比較少,因爲強度不夠).

  • 3DES 使用3個密鑰,對相同的數據執行三次加密,強度增強.

  • AES 高級加密標準,也是目前使用最多的對稱加密算法,目前美國國家安全局使用AES加密,蘋果的鑰匙串訪問就是使用AES加密

  • RC算法 ,包括RC2,RC4,RC5。

加密方式

  • ECB: 電子代碼本,就是將一個數據拆分爲多塊,然後獨立加密的!

  • CBC: 密碼塊鏈,使用一個密鑰和一個初始化"向量"對數據執行加密轉換,能保證密文的完整性,如果一個數據發生改變,後面所有的數據將會被破壞!
    向量:某個方向的數量.
    現代的密碼學都和幾何有關!因爲幾何(包含圓形\橢圓\球體)的變量是有規律的,但是結果是多變的!

image1.png

DES算法

DES 全稱 Data Encryption Standard,是一種使用密鑰加密的塊算法。現在認爲是一種不安全的加密算法,因爲現在已經有用窮舉法攻破 DES 密碼的報道了。儘管如此,該加密算法還是運用非常普遍,是一種標準的加密算法,3DES 是 DES 的加強版本。DES 加密算法出自 IBM 的研究,後來被美國政府正式採用,之後開始廣泛流傳,但是近些年使用越來越少,因爲 DES 使用56位密鑰(密鑰長度越長越安全),以現代計算能力24小時內即可被破解。雖然如此,在某些簡單應用中,我們還是可以使用 DES 加密算法。

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