在實現理想的路上,順便賺些外快!=.=!
安全機制:加密/解密、數字簽名、訪問控制、數據完整性、認證交換、流量控制、路由控制
密鑰:控制進行加密和解密過程的指令
算法:規定加密及解密的一組規則
故加密、解密:即密鑰通過指定的算法所做的一系列操作
故加密和解密的安全性不僅取決於加密算法,密鑰的安全性甚至更重要
加密方式:
單向加密
特點:
通過計算一段數據的特徵碼來進行加密
不論原數據大小,都會定長輸出
不可逆:無法用得到的數據逆着解密
雪崩效應:微小的變化,導致結果的巨大變化
用於:校驗數據的完整性
常用算法:MD5、SHA1、SHA256、SHA384、SHA512、CRC32
公鑰加密(非對稱加密)
用公鑰加密加密,須用對應的私鑰解密;用私鑰加密,須用對應的公鑰解密
私鑰:僅供個人使用;公鑰:公開給所有用戶
優點:相對於對稱加密,消除了密鑰的交換過程,更安全
缺點:密鑰長,花費時間較長
常用於:數字簽名、密鑰交換和身份認證
常用算法:RSA、DSA(用於數字簽名)、ELGamal
對稱加密
優點:加密、解密速度塊
缺點:
常用算法:DES(基本不用了)、3DES、AES、Blowfish、Twofish、IEDA、RC6、CAST5
雙方在第一次通信時,很難安全地將密鑰傳輸給對方
由於沒兩個用戶都需要有對應的密鑰,故密鑰過多,難於管理
不提供完整性身份驗證,故難以驗證發送者和接收者的身份
對稱加密:雙方使用同樣的加密方式用同樣的密鑰進行加密和解密
非對稱加密(公鑰加密):解密解密分別使用密鑰對兒相對進行
基於加密解密的通信過程:
發送者:
使用單向加密算法提取生成數據的特徵碼
使用自己的私鑰加密特徵碼並附加在數據後面
生成用於對稱加密的臨時密鑰
用此臨時密鑰加密數據和已經使用私鑰加密後的特徵碼
使用接收方的公鑰加密此臨時密鑰,並附加在對稱加密後的數據後方
接收者:
使用自己的私鑰解密加密的臨時密鑰,從而獲得臨時對稱密鑰
使用對稱密鑰解密對稱加密的 數據和私鑰加密的特徵碼密文,從而獲得數據和特徵碼密文
使用發送方的公鑰解密特徵碼密文,從而獲得對方計算生成的特徵碼
使用與對方同樣的單向加密算法計算數據的特徵碼,並與解密而來的進行比較