1,客戶端輸入https網址,鏈接到server443端口;
2,服務器手中有一把鑰匙和一個鎖頭,把鎖頭傳遞給客戶端。數字證書既是公鑰,又是鎖頭
3,客戶端拿到鎖頭后,生成一個隨機數,用鎖頭把隨機數鎖起來(加密),再傳遞給服務器。這個隨機數成為私鑰,現在只有客戶端知道
4,服務器用鑰匙打開鎖頭,得到隨機數。該隨機數變成了新的鎖頭,把內容鎖起來(加密),再傳遞給客戶端。這個隨機數服務器也知道了,並且用它來加密數據
5,客戶端用自己手中的鑰匙(隨機數),解密后得到內容。客戶端用私鑰解密數據
6,接下來的客戶端和服務器的數據交換都通過這個隨機數來加密。只有客戶端和服務器知道私鑰,所以數據傳輸是安全的,不是明文的
圖解如下: