加密方式

對稱加密

加密 與解密用的是一樣的密鑰 (密鑰越大,加密越強)。  經常使用的有: DES 、AES。算法

 對稱加密算法存在幾個問題:安全

  一、要求提供一條安全的渠道使通信雙方在首次通信時協商一個共同的密鑰, 雙方可能須要藉助於郵件和電話等其它相對不夠安全的手段來進行協商;併發

  二、密鑰的數目難於管理。由於對於每個合做者都須要使用不一樣的密鑰,很難適應開放社會中大量的信息交流;假設兩個用戶須要使用對稱加密方法加密而後交換數據,則用戶最少須要2個密鑰並交換使用,若是企業內用戶有n個,則整個企業共須要n×(n-1) 個密鑰,密鑰的生成和分發將成爲惡夢。函數

  三、對稱加密算法通常不能提供信息完整性的鑑別, 它沒法驗證發送者和接受者的身份; 加密

  四、對稱密鑰的管理和分發工做是一件具備潛在危險的和煩瑣的過程。對稱加密是基於共同保守祕密來實現的,採用對稱加密技術的貿易雙方必須保證採用的是相同的密鑰,保證彼此密鑰的交換是安全可靠的,同時還要設定防止密鑰泄密和更改密鑰的程序。spa

非對稱加密

用一對密鑰,公鑰(public key)和私鑰(private key)。私鑰只能由一方安全保管,不能外泄,而公鑰則能夠發給任何請求它的人。非對稱加密使用這對密鑰中的一個進行加密,而解密則須要另外一個密鑰 (公鑰加密私鑰解密,私鑰加密公鑰解密).net

加密和解密花費時間長、速度慢,不適合對文件加密而只適對少許數據進行加密。 經常使用的有: RSA、DSA、 GPG2.blog

HASH加密

一種單向算法,經過Hash算法對目標信息生成一段特定長度的惟一的Hash值,卻不能經過這個Hash值從新得到目標信息。所以Hash算法經常使用在不可還原的密碼存儲、信息完整性校驗等。經常使用的有MD五、SHA( SHA-1, SHA-2, SHA-256...)get

數字簽名、驗證

對傳輸過來的數據進行校驗, 數據防篡改。hash

數字簽名是個加密的過程,數字簽名驗證是個解密的過程。

將摘要信息hash加密後的值用發送者的私鑰加密,與原文一塊兒傳送給接收者。接收者只有用發送者的公鑰才能解密被加密的摘要信息,而後用HASH函數對收到的原文產生一個摘要信息,與解密的摘要信息對比。若是相同,則說明收到的信息是完整的,在傳輸過程當中沒有被修改,不然說明信息被修改過。 所以數字簽名可以驗證信息的完整性。


數字信封 

  數字信封用加密技術來保證只有特定的收信人才能閱讀信的內容。

流程: 

    信息發送方採用對稱密鑰來加密信息,而後再用接收方的公鑰來加密此對稱密鑰(這部分稱爲數字信封),再將它和信息一塊兒發送給接收方;接收方先用相應的私鑰打開數字信封,獲得對稱密鑰,而後使用對稱密鑰再解開信息。 

依舊用對稱加密來傳送消息,但對稱加密所使用的密鑰咱們能夠經過非對稱加密的方式發送出去。

該方式相似於https的方式

  客戶端生成隨機的對稱加密密鑰A,請求服務端返回非對稱加密的公鑰B。客戶端用返回的公鑰B對生成的A進行加密,併發送給服務服務端,服務端經過非對稱加密的密鑰C來解析出A。

相關文章
相關標籤/搜索