從上面兩張圖中可知,https協議是基於ssl協議的。
2、https的實現原理
有兩種基本的加解密演算法型別:
1)對稱加密:金鑰只有乙個,加密解密為同乙個密碼,且加解密速度快,典型的對稱加密演算法有des、aes等;
2)非對稱加密:金鑰成對出現(且根據公鑰無法推知私鑰,根據私鑰也無法推知公鑰),加密解密使用不同金鑰(公鑰加密需要私鑰解密,私鑰加密需要公鑰解密),相對對稱加密速度較慢,典型的非對稱加密演算法有rsa、dsa等。
下面看一下https的通訊過程:
https通訊的優點:
1)客戶端產生的金鑰只有客戶端和伺服器端能得到;
2)加密的資料只有客戶端和伺服器端才能得到明文;
3)客戶端到服務端的通訊是安全的。
3、伺服器驗證客戶端
如果伺服器要求客戶的身份認證,伺服器必須檢驗客戶證書和簽名隨機數的合法性,具體的合法性驗證過程包括:
①客戶的證書使用日期是否有效
②為客戶提供證書的ca 是否可靠
③發行ca 的公鑰能否正確解開客戶證書的發行ca 的數字簽名
④檢查客戶的證書是否在證書廢止列表(crl)中
4、加密
在https的通訊過程中,組合使用了公用金鑰方式加密和共享金鑰方式加密這兩種技術。
公用金鑰方式要比共享金鑰方式慢得多,因此使用公用金鑰來完成共享金鑰的交換。公用金鑰是從證書中獲得的。
拿到共享金鑰之後,所有的內容之間的通訊都會使用共享金鑰來進行加密和解密。
公用金鑰的作用就是為了安全的交換共享金鑰,共享金鑰是用來通訊內容的加密和解密。這樣既確保了通訊之間的安全,也確保了加密和解密的效率。
5、ssl的連線
連線分為兩個階段,即握手和資料傳輸階段。
握手階段對伺服器進行認證並確立用於保護資料傳輸的加密金鑰。必須在傳輸任何應用資料之前完成握手。一旦握手完成,資料就被分成一系列經過保護的記錄進行傳輸。
https學習總結
版本 產生時間 內容發展現狀 1991年 不涉及資料報傳輸,規定客戶端和伺服器之間通訊格式,只能get請求沒有作為正式的標準 1996年 傳輸內容格式不限制,增加put patch head options delete命令 正式作為標準 1997年 持久連線 長連線 節約頻寬 host域 管道機制...
HTTPS詳解 學習總結
前言 講完了http,接下來必然就是https了,現在想上谷歌已經必須使用https了,不然總是會404。我的github github又快乙個月沒有更新過了,不過現在已經做了200題,按照一天3題的速度應該乙個月可以做完第一遍吧。因為http本身不具備加密功能,所以也無法做到對通訊整體進行加密,h...
HTTPS簡單總結
https全稱hyper text transfer protocol over secure socket layer超文字傳輸安全協議,是以安全為目標的http通道。即http下加入ssl tls層,https的安全基礎是ssl,https在http跟tcp之間多了乙個加密 身份校驗層。http...