13 Linux之加密解密

在實現理想的路上,順便賺些外快!=.=!


  • 安全機制:加密/解密、數字簽名、訪問控制、數據完整性、認證交換、流量控制、路由控制

  • 密鑰:控制進行加密和解密過程的指令

  • 算法:規定加密及解密的一組規則

  • 故加密、解密:即密鑰通過指定的算法所做的一系列操作

  • 故加密和解密的安全性不僅取決於加密算法,密鑰的安全性甚至更重要

  • 加密方式:

    • 單向加密

    • 特點:    
            通過計算一段數據的特徵碼來進行加密

         不論原數據大小,都會定長輸出
           不可逆:無法用得到的數據逆着解密
          雪崩效應:微小的變化,導致結果的巨大變化

  • 用於:校驗數據的完整性

  • 常用算法:MD5、SHA1、SHA256、SHA384、SHA512、CRC32

  • 公鑰加密(非對稱加密

  • 用公鑰加密加密,須用對應的私鑰解密;用私鑰加密,須用對應的公鑰解密

  • 私鑰:僅供個人使用;公鑰:公開給所有用戶

  • 優點:相對於對稱加密,消除了密鑰的交換過程,更安全

  • 缺點:密鑰長,花費時間較長

  • 常用於:數字簽名、密鑰交換和身份認證

  • 常用算法:RSA、DSA(用於數字簽名)、ELGamal

  • 對稱加密

  • 優點:加密、解密速度塊

  • 缺點:

  • 常用算法:DES(基本不用了)、3DES、AES、Blowfish、Twofish、IEDA、RC6、CAST5

  • 雙方在第一次通信時,很難安全地將密鑰傳輸給對方

  • 由於沒兩個用戶都需要有對應的密鑰,故密鑰過多,難於管理

  • 不提供完整性身份驗證,故難以驗證發送者和接收者的身份

  • 對稱加密:雙方使用同樣的加密方式用同樣的密鑰進行加密和解密

  • 非對稱加密(公鑰加密):解密解密分別使用密鑰對兒相對進行


  • 基於加密解密的通信過程:

    • 發送者:

      • 使用單向加密算法提取生成數據的特徵碼

      • 使用自己的私鑰加密特徵碼並附加在數據後面

      • 生成用於對稱加密的臨時密鑰

      • 用此臨時密鑰加密數據和已經使用私鑰加密後的特徵碼

      • 使用接收方的公鑰加密此臨時密鑰,並附加在對稱加密後的數據後方

    • 接收者:

      • 使用自己的私鑰解密加密的臨時密鑰,從而獲得臨時對稱密鑰

      • 使用對稱密鑰解密對稱加密的 數據和私鑰加密的特徵碼密文,從而獲得數據和特徵碼密文

      • 使用發送方的公鑰解密特徵碼密文,從而獲得對方計算生成的特徵碼

      • 使用與對方同樣的單向加密算法計算數據的特徵碼,並與解密而來的進行比較

wKioL1VDdwyxAjMVAAGiqElObwQ470.jpg

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