EMP加密信道

EMP信道

EMP信道由客戶端與服務器握手流程建立,建立後客戶端和服務器之間的通信數據將經過加密傳輸。EMP信道協議已從1.0版本更新至1.4版本。

1 通用功能

  • 加密傳輸。建立信道後,客戶端與服務端將使用密文傳輸,同時會對請求和響應內容做完整性校驗。
  • 密鑰有效期。信道協商的密鑰存在有效期,當客戶端在有效期內沒有訪問服務器時,服務器會將信道數據刪除。
  • 一次一密。在一些特殊場景(如輸入密碼),請求中的某個參數需要二次加密,來提高該參數傳輸的安全性。此時客戶端會與服務器在信道中協商一個臨時密鑰,對該請求參數進行加密傳輸和解密獲取。

2 1.0版本功能

  • 單向驗證。客戶端本地會存放一個根證書,在信道握手流程中,使用該根證書校驗服務器返回的公鑰證書,從而驗證服務器身份。

3 1.1版本新增功能

  • 請求防重放。信道建立時,客戶端和服務器會協商一個序列號,客戶端每次請求需要發送一個比服務端序列號大的值。服務器接收到請求後,會判斷客戶端序列號和本地序列號大小。如果客戶端大,則更新本地序列號,並繼續後續處理。否則會拒絕本次訪問。

4 1.2版本新增功能

  • 雙向驗證。與單向驗證類似,服務器本地也會保存一個根證書。在握手時,客戶端會生成一個服務器簽發的證書併發送給服務器,服務器使用根證書校驗該客戶端證書,從而驗證客戶端身份。

5 1.3版本新增功能

  • 客戶端防篡改。在服務端上傳客戶端包自描述文件,在握手建立成功後,客戶端對本地自描述文件計算摘要併發送給服務器,服務器使用對應平臺的自描述文件對摘要進行驗證。如果客戶端程序被篡改,那麼自描述文件也會發生變化,服務器將校驗失敗,並銷燬建立的信道

6 1.4版本新增功能

  • 併發請求。支持異步請求方重放功能。握手過程中,客戶端和服務端會協商多組序列號,客戶端請求時會將組別和序列號同時上傳給服務器,服務器檢驗對應組別的序列號是否有效。各組的序列號分別維護,互不影響。客戶端發送異步請求時,會使用不同組的序列號。使用同一組的序列號只能發送同步請求。解決了之前版本的併發請求問題:客戶端發送異步請求時,可能發生序列號較大的請求先到達了服務器,導致序列號較小的請求被拒絕。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章