1. 程式人生 > >HTTPS及非對稱加密

HTTPS及非對稱加密

  1. 非對稱加密:公鑰加密,只有私鑰能解密。私鑰加密,只有公鑰能解密。A首先生成一對公鑰和私鑰,然後將公鑰公開給別人加密,別人使用公鑰加密報文傳送給A,A使用私鑰解密。反之相同。(傳送給某人,用某人的公鑰加密。證明自己的身份,用自己的私鑰加密)
  2. 摘要演算法:輸出用於校驗資料的長度固定的資料指紋。
  3. 數字簽名:防止資料被篡改:

    • 傳送端:資料 -摘要演算法-> 指紋 -私鑰加密-> 指紋密文(簽名)
    • 接收端:資料 -摘要演算法-> 指紋A 指紋密文->公鑰解密->指紋B 對比AB指紋。
    • 為什麼可以保證資料不被篡改:若想修改資料,必須修改資料和指紋兩樣,而指紋被加密無法修改。
  4. TLS握手:協商加密三件套,交換證書確定身份,交換密碼以便傳輸資料。一般用非對稱交換的都是用來解密對稱加密的密碼。

  5. TLS:公鑰一般和證書一起給別人。CA簽發的證書包含證明伺服器身份的一系列資訊,以及伺服器本身的公鑰,以及用CA私鑰生成的簽名。可以離線用CA的公鑰驗證證書和公鑰的有效性。