1、加解密技術算法
一、分類安全
加解密算法主要分爲對稱加密和非對稱加密。對稱加密也叫共享密鑰加密,非對稱加密也叫公共密鑰加密。網絡
二、對稱密鑰技術ide
對稱密鑰技術主要有DES、3DES、IDEA等,對稱密鑰技術是指加密系統的加密密鑰和解密密鑰相同,或者雖然二者不一樣,但經過其中的任意一個能夠很容易地導出另外一個。其優勢是有很強的保密強度,可是密鑰傳輸須要通過安全可靠地途徑。函數
對稱密鑰技術有兩種基本類型,分組密碼和序列密碼,DES是一種迭代分組密碼,輸入輸出都是64位,使用一個56位的密鑰以及附加的8位奇偶校驗位,因爲DES密鑰長度較短,爲了提升安全性,出現了112位密鑰對數據進行三次加密算法,即3DES。加密
IDEA算法的明文和密文均爲64位,密鑰長度爲128位。spa
三、非對稱密鑰技術orm
非對稱密鑰技術也稱公鑰算法,指加密系統的密鑰和解密密鑰徹底不一樣,而且不可能從任何一個推出另外一個。其優勢是能夠適應開放性的使用環境,能夠實現數字簽名與驗證。blog
最多見的非對稱加密技術就是RSA,,但加密大量數據時速度慢,效率低,所以RSA普遍應用於密鑰的分發(對回話密鑰進行加密)。字符串
2、密鑰管理機制
一、密鑰管理概念
密鑰管理是指處理密鑰自產生到銷燬整個過程當中的有關問題,包括系統的初始化、密鑰的產生、存儲、備份、恢復、裝入、分配、保護、更新、控制、丟失、吊銷及銷燬。當前主要有三種技術,分別爲:KMI、PKI、SPK。
二、KMI
KMI適用於封閉網,分發密鑰的安全性依賴於祕密信道。有很好的封閉性,適用於專用業務。提供加密和簽名功能。
三、PKI
PKI解決了分發密鑰時依賴祕密信道的問題。有良好的擴展性,適用於開放業務。只提供數字簽名服務。
3、數字簽名
一、概念
認證技術主要解決網絡通訊過程當中通訊雙方的身份認證,認證的過程涉及加密和祕鑰交換。一般加密可以使用對稱加密、非對稱加密以及兩者混合的方法。認證方式通常有用戶名/口令認證、摘要算法認證、基於PKI的認證。
二、Hash函數和信息摘要
Hash函數又稱散列函數,輸入長度不固定的字符串,返回一串定長的字符串,又稱Hash值,單向Hash函數用於產生信息摘要。信息摘要能夠用於建立數字簽名,不一樣的文件必將產生不一樣的信息摘要。常見的信息摘要算法有MD5和SHA。MD5產生128位的定長輸出,而SHA產生160位的定長輸出,能夠用來保護數據完整性。
三、數字簽名技術
數字簽名技術是經過一個單向函數對要傳送的報文進行處理獲得用以認證報文來源並覈實報文是否發生變化的一個字母數字串,它與數據加密技術一塊兒構建了安全的商業商業加密體系:數據加密是保護數據的基本方法,它只可以防止第三者得到真實數據,即數據的機密性;而數字簽名能夠解決否定、僞造、篡改和冒充的問題,即數據的完整性和不可抵賴性。
數字簽名可使用對稱加密技術實現也可使用非對稱加密技術實現,但使用對稱加密技術須要第三方認證,較爲複雜。一般使用非對稱加密算法。
四、數字簽名過程
例如A給B發送一個信息,則A先使用Hash函數對信息生成信息摘要,再對生成的信息摘要進行私鑰加密,再把信息自己和已簽名的信息摘要一塊兒發送出去。B收到信息後使用與發送者同一個Hash函數對信息自己生成信息摘要,再使用A的公鑰對信息摘要進行驗證,以確認A的身份是否被修改過。
4、數字證書
一、數字證書採用公鑰體制,即利用一對互相匹配的密鑰進行加密和解密,每一個用戶將設定一個私鑰和一個公鑰。私鑰僅本人可知,用於解密和簽名;公鑰由本人公開,用於加密和驗證簽名。
二、加密流程
假設A給B發送機密文件,A使用B的公鑰進行加密,B使用私鑰解密。B能夠經過數字證書來確認A的身份,A沒法抵賴,信息自數字簽名後能夠保證信息沒法更改。
三、數字證書格式
數字證書通常使用X.509國際標準,X.509用戶的公鑰證書是由可信賴的證書頒發機構CA建立的,並由CA或用戶存放在X.500目錄。
5、應用案例一
假設條件:發送方A和接收方B均擁有對方的公鑰.
紅色表明是A的公鑰,綠色表明B的公鑰,×××表明A的私鑰,藍色表明B的私鑰,信息正文爲:你好:我是A!
①A先使用Hash算法給本身的明文信息Text作信息摘要獲得Digest。
②A再使用本身的私鑰對信息摘要Digest進行加密,獲得數字簽名Signature。
③A把信息正文與數字簽名Signature合併。
④A把合併後的內容再用B的公鑰進行加密,獲得密文Secret,並使用互聯網發送給B。
⑤B收到加密的信息Secret後先用B的私鑰解密獲得正文與數字簽名Signature。
⑥將兩者信息分離。
⑦對分離出的正文用相同的Hash函數進行運算獲得Digest
⑧對分離出的數字簽名Signature用A的公鑰解密獲得Digest
⑨對比兩種方式獲得的Digest是否相同,若是相同則證實信息沒有被篡改,若是不一致則證實在傳輸過程當中遭到篡改或破壞,則信息不可信。
流程圖以下:
6、應用案例二
歡迎各位讀者提出寶貴意見,謝謝!