取經之路 - TCP如何保證傳輸安全

在這裏插入圖片描述

TCP如何保證傳輸安全

  • 對稱加密
    • 加密和解密使用同一把密鑰進行
    • 問題暴露: 明文傳輸密鑰跟客戶端,密鑰在中間被截取了呢,如何安全傳輸密鑰給客戶端?
  • 非對稱加密
    • 客戶端和服務器同時擁有公鑰和私鑰
    • 用公鑰加密的數據,只有對應的私鑰才能解密;用私鑰加密的數據,只有對應的公鑰才能解密
    • 過程: 服務器用公鑰加密,客戶端使用私鑰解密
    • 問題暴露:加密速度較對稱加密慢百倍
  • 對稱加密 + 非對稱加密
    • 非對稱加密 加密密鑰
    • 對稱加密 加密傳輸數據
    • 過程: 明文傳輸公鑰給客戶端 -> 客戶端使用收到的公鑰加密 密鑰(對稱加密的) -> 服務器私鑰解密得到 密鑰(對稱加密的)
    • 解決的問題:
      • 服務端如何安全得到 密鑰(對稱加密的)
      • 數據傳輸速度提升 (真正的數據傳輸使用對稱加密, 只有密鑰傳輸使用了非對稱加密)
    • 問題暴露: 服務器明文傳輸公鑰,萬一傳輸過程中被截取了呢 (若截取成功,客戶端傳輸數據再次被截取,豈不是GG),跟換了一個公鑰,也就說服務器身份無法得到驗證
  • 數字證書
    • 認證中心CA
    • 過程: 把要傳輸的公鑰和服務器信息通過Hash算法生成 信息摘要 -> CA使用自己的私鑰加密信息摘要形成數字簽名 -> 再把 公鑰+數字簽名+未hash的個人信息 形成 數字證書 -> 客戶端擁有一份數字證書,經過hash算法對公鑰和個人信息生成信息摘要,最後對比兩份信息摘要 (一致就是可靠的服務器)
    • 問題暴露: 1. CA的公鑰怎麼給客戶端 2. CA的私鑰怎麼給服務器
      • 客戶端內置證書
      • 服務器一開始就申請證書 (需要購買的)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章