HTTPS的通信過程如下:1、客戶端向服務器發起請求,請求中包含使用的協議版本號、生成的一個隨機數、以及客戶端支持的加密方法。
2、服務器端接收到請求后,確認雙方使用的加密方法、并給出服務器的證書、以及一個服務器生成的隨機數。
3、客戶端確認服務器證書有效后,生成一個新的隨機數,并使用數字證書中的公鑰,加密這個隨機數,然后發給服 務器。并且還會提供一個前面所有內容的 hash 的值,用來供服務器檢驗。
4、服務器使用自己的私鑰,來解密客戶端發送過來的隨機數。并提供前面所有內容的 hash 值來供客戶端檢驗。
5、客戶端和服務器端根據約定的加密方法使用前面的三個隨機數,生成對話秘鑰,以后的對話過程都使用這個秘鑰來加密信息。