非對稱加密
雙方都有自己的私鑰 公鑰,雙方都收到了對方 用(私 公)生成的秘鑰,再用 對方的(私 公)秘鑰 自己的私鑰=新的秘鑰 ,再用新的秘鑰加密數據發送給對方
用兩個秘鑰來加密和解密,公鑰是所有人都知道的,私鑰隻有持有方才有的秘鑰。
非對稱加密也叫做公鑰加密
服務器上有成對的私鑰/公鑰,公鑰給到客戶端,客戶端用公鑰加密數據,隻有服務器端的私鑰才能解密。
TLS對稱和非對稱加密都有用到。
TCP三次握手
TLS握手過程
1、Client Hello(客戶端發給服務器)
加密套件:16個不同的加密組合
TCP三次握手後 ,客戶端發送了一個Clinet Hello 給服務器告訴服務器我支持那些加密套件,然後生成一個随機數(1)發送給服務器 。
2、Server Hello(服務器發送給客戶端)
服務器的 Server Hello 響應報文裡面會告訴客戶端,服務端支持的TLS版本及選擇的加密套件,并且服務器生成一個随機數(2)發送給客戶端。随機數的作用?
3、Certificate(服務器發送給客戶端)
服務器再發出一個響應來出示自己的證書,這樣浏覽器就可以對照自己的證書信任列表來确認這個服務器是否可信。
4、Server Key Exchange(服務器端發送)
服務器會把公鑰發送給客戶端
網銀 服務器需要客戶端的證書,這一步會發出請求。
5、Server Hello Done(服務器發送給客戶端)
6、Client Key Exchange(客戶端發出)
這一步是個重點也是難點,客戶端會生成第三個随機數(3) 預主秘鑰第三個随機數會用到剛剛收到的公鑰進行加密,并把加密後的随機數發給服務器。就是Pubkey:顯示的随機數
Change Cipher Spec
客戶端告訴服務器以後就用商議好的秘鑰來進行加密。
Encrypted Handshake Message
表示TLS協商已經滅有問題了,可以開始加密了。
7、Encrypted Handshake Message(服務器端發出)
這裡表示TLS的握手已經成功了,可以給數據加密進行交換了。
TLS握手過程圖
先用非對稱加密生成會話密鑰,會話密鑰産生後使用對稱加密來加密數據後傳送(減少資源的消耗)。
對稱加密 非對稱加密 CA中心
非對稱加密HTTPS(SSL2.0)
非對稱加解密速率慢、效率低
非對稱、對稱混合加密的方式
這樣也存在問題
https CA證書(解決中間人私發公鑰、僞裝身份問題)
SSL證書
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!