首頁 > 軟體

資料傳輸的加密過程

2020-06-16 17:07:04

加密技術是為了保護敏感資料在網路傳輸中的安全,就像日常生活中使用的淘寶、支付寶、微信等等軟體,如果涉及到金額的資料在網路中不加密傳輸,那是極易被別人竊取、篡改的,通訊中的資料加密技術就顯得尤為重要。各類加密工具的原理都是大同小異,這裡對常見加密原理進行解讀。


***

一、對稱加密

加密資料與解密資料使用相同的金鑰,這種加密方法稱為對稱加密

  • 特點
  • 加密與解密使用相同金鑰,加密解密速度快
  • 將原始資料進行切塊,逐個進行加密。
  • 缺點
  • 每一個通訊的物件都有一把金鑰,如果通訊物件過多導致金鑰過多。
  • 金鑰分發問題,如何保證金鑰不被竊取


二、非對稱加密

加密資料與解密資料使用一堆不相同的金鑰,公鑰公開給所有人,私鑰自己儲存。使用公鑰加密的資料只有自己的私鑰可以解開。

  • 特點
  • 用公鑰加密資料,只能使用配對的私鑰進行解密。
  • 用私鑰加密的資料,只能使用配對的私鑰進行解密
  • 缺點
  • 加密解密速度慢、時間長,不適用於對巨量資料進行加密解密。

三、單項雜湊

單項雜湊又稱為hash演算法,把任意長度的資料、字元加密後得到一個固定長度的特徵碼。

  • 特點
  • 加密後輸出的特徵碼長度固定
  • 加密後的特徵碼只跟資料內容有關,與資料名稱無關
  • 可以用作資料的指紋
  • 得到資料的特徵碼無法推算出原資料的內容

  • 缺點
  • 相同內容的檔案加密後的結果相同
  • 通常隨資料一同發出,極易被竊取


四、加密通訊的綜合應用

以上三種如果單獨使用任何一種對資料進行資料加密的話都是不安全的,那麼現在在網際網路中的資料時如何傳輸的呢?其實資料在網際網路中並不會使用單一加密技術,往往都是各類技術混合使用,互補優缺點使資料的傳輸更加安全。

  1. 首先通過TCP三次握手進行連線,然後用戶端傳送hello包到伺服器端,伺服器端回應一個hello包,如果用戶端需要再次傳送數位憑證, 則傳送數位憑證到用戶端。
  2. 用戶端得到伺服器的證書後通過CA服務驗證真偽、驗證證書的主體與存取的主體是否一致,驗證證書是否在吊銷證書列表中。如果全部通過驗證則與伺服器端進行加密演算法的協商。
  3. 然後是用證書中伺服器的公鑰加密【對稱秘鑰】傳送給伺服器端,【對稱秘鑰】只能用伺服器的私鑰進行解密,當伺服器通過私鑰解密【對稱秘鑰】後。使用對稱秘鑰將用戶端請求的資料傳送到用戶端,用戶端在用對稱秘鑰進行解密,從而得到想要的資料。

註:對稱秘鑰非長期有效,每隔一段時間甚至每一次資料的傳輸都使用不同的對稱秘鑰。

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-09/146982.htm


IT145.com E-mail:sddin#qq.com