天天看點

加密算法 科普文

加密算法的科普文章。

加密算法 科普文

常用術語

  明文(Plaintext):待加密資訊。

  密文(Ciphertext):經過加密後的。

  加密(Encryption):将明文轉換為密文的過程。

  解密(Decryption):将密文轉換為明文的過程。

  科克霍夫原則(Kerckhoffs’ Principle):資料的安全基于密鑰而不是算法的保密。

加密算法分類

  加密算法分為對稱加密算法和非對稱加密算法。

  對稱加密算法(Symmetric Cipher):也稱為單鑰密碼算法或私鑰密碼算法,指加密密鑰和解密密鑰相同,即加密過程與解密過程使用同一套密鑰。常見的DES、AES算法都是對稱密碼算法的典範。

  非對稱加密算法(Asymmetric Cipher):也稱為雙鑰密碼算法或公鑰密碼算法,指加密密鑰與解密密鑰不同,密鑰分為公鑰與私鑰,公鑰對外公開,私鑰對外保密。比如RSA算法。

散列函數提供的消息認證技術

  對于資訊完整性驗證需要其他技術來支援,這種技術就是由散列函數提供的消息認證技術。

  散列函數,也稱作哈希函數、消息摘要函數、單向函數或雜湊函數,其主要作用是用來驗證資料的完整性,是資料簽名的核心技術。

  通過散列函數,可以為資料建立數字指紋(散列值),散列值通常是一個短的随機字母和數字組成的字元串。

  散列函數具有确定性,并且散列函數的運算過程是不可逆的,即單向的。

  散列函數的常用算法有:

  MD:消息摘要算法;

  SHA:安全雜湊演算法;

  MAC:消息認證碼算法。

參考資料

  幾種常見加密算法初窺及如何選用加密算法:

  http://clement.blog.51cto.com/2235236/948107

作者: 聖騎士Wind

出處: 部落格園: 聖騎士Wind

Github: https://github.com/mengdd

微信公衆号: 聖騎士Wind

加密算法 科普文