發(fā)布時間:2023-2-21 分類: 電商動態(tài)
2014年,谷歌宣布,使用HTTPS/SSL安全認證的網(wǎng)站將獲得谷歌更多信任,這將有助于該網(wǎng)站在谷歌搜索結(jié)果中排名更高。這使得HTTPS/SSL躍入許多網(wǎng)站管理員的視野。
說到HTTPS和SSL,你不能說HTTP和它們之間的區(qū)別。我們對HTTP并不陌生,即超文本傳輸??協(xié)議,但安全性存在一些缺陷,即缺乏明文傳輸和消息完整性檢測。這種安全漏洞很容易被利用來獲取個人信息,如手機,身份信息,信用卡號碼等。特別是在線交易,支付等已經(jīng)變得非常普遍。為了確??梢约用芎蛡鬏斶@些私有數(shù)據(jù),Netscape設(shè)計了SSL(安全套接字層)協(xié)議來加密HTTP協(xié)議傳輸?shù)臄?shù)據(jù),從而產(chǎn)生了HTTPS。
當(dāng)前版本的SSL是3.0,由RFC 6101中的IETF(Internet工程任務(wù)組)定義。之后,IETF升級了SSL 3.0,因此出現(xiàn)了TLS(傳輸層安全性)1.0,其在RFC 2246中定義。事實上,我們當(dāng)前的HTTPS使用的是TLS協(xié)議,但由于SSL出現(xiàn)得更早并且仍然受到當(dāng)前瀏覽器的支持,因此SSL仍然是HTTPS的同義詞,但TLS和SSL都是上個世紀。 SSL的最后一個版本是3.0。將來,TLS將繼承SSL的優(yōu)秀血統(tǒng)并繼續(xù)為我們加密服務(wù)。當(dāng)前版本的TLS是1.2,如RFC 5246中所定義。對歷史感興趣的朋友可以參考http://en.wikipedia.org/wiki/Transport_Layer_Security,其中詳細描述了TLS/SSL。
我剛剛介紹了HTTPS和SSL的細節(jié)。更多人可能更關(guān)心HTTPS是否會影響網(wǎng)站的訪問速度。對于這個問題的答案,我們可能需要從HTTPS的工作原理開始。
它是如何工作的
HTTPS需要在傳輸數(shù)據(jù)之前在客戶端(瀏覽器)和服務(wù)器(網(wǎng)站)之間進行握手。在握手過程中,建立雙方加密傳輸數(shù)據(jù)的密碼信息。 TLS/SSL協(xié)議不僅僅是一組用于加密傳輸?shù)膮f(xié)議。這是藝術(shù)家設(shè)計的藝術(shù)品。在TLS/SSL中使用非對稱加密,對稱加密和HASH算法。握手過程的簡要說明如下:
1.瀏覽器向網(wǎng)站發(fā)送一組支持的加密規(guī)則。
2.網(wǎng)站選擇一組加密算法和HASH算法,并以證書的形式將其身份信息發(fā)送回瀏覽器。證書包含諸如網(wǎng)站地址,加密的公鑰和證書的頒發(fā)機構(gòu)之類的信息。
3.獲得網(wǎng)站證書后,瀏覽器應(yīng)完成以下工作:
a)驗證證書的有效性(頒發(fā)證書的機構(gòu)是否合法,證書中包含的網(wǎng)站地址是否與訪問的地址一致等),如果證書是可信的,將顯示一個小鎖在瀏覽器欄中,否則為證書提供一條不相信的消息。
b)如果證書是可信的,或者用戶接受不受信任的證書,則瀏覽器會生成一串隨機數(shù),并使用證書中提供的公鑰對其進行加密。
c)使用約定的HASH計算握手消息,用生成的隨機數(shù)加密消息,最后將所有先前生成的信息發(fā)送到網(wǎng)站。
4.從瀏覽器接收數(shù)據(jù)后,網(wǎng)站應(yīng)執(zhí)行以下操作:
a)使用您自己的私鑰解密信息,檢索密碼,使用密碼解密來自瀏覽器的握手消息,并驗證HASH是否與瀏覽器一致。
b)使用密碼加密握手消息并將其發(fā)送到瀏覽器。
5.瀏覽器解密并計算握手消息的HASH。如果HASH與服務(wù)器發(fā)送的HASH一致,則握手過程結(jié)束。之后,所有通信數(shù)據(jù)將由先前瀏覽器生成的隨機密碼加密,并通過對稱加密算法加密。
這里,瀏覽器和網(wǎng)站相互發(fā)送加密的握手消息,并驗證其目的是確保雙方都獲得了一致的密碼,并且可以正常加密和解密數(shù)據(jù),并對后續(xù)的實際數(shù)據(jù)傳輸進行測試。 。此外,HTTPS常用的加密和HASH算法如下:
非對稱加密算法:RSA,DSA/DSS
對稱加密算法:AES,RC4,3DES
HASH算法:MD5,SHA1,SHA256
非對稱加密算法用于在握手過程中加密生成的密碼,對稱加密算法用于加密實際傳輸?shù)臄?shù)據(jù),HASH算法用于驗證數(shù)據(jù)的完整性。由于瀏覽器生成的密碼是整個數(shù)據(jù)加密的關(guān)鍵,因此在傳輸過程中使用非對稱加密算法對其進行加密。非對稱加密算法生成公鑰和私鑰。公鑰只能用于加密數(shù)據(jù),因此可以隨意傳輸,網(wǎng)站的私鑰用于解密數(shù)據(jù),因此網(wǎng)站會小心保存其私鑰。防止泄漏。
如果在TLS握手期間出現(xiàn)任何錯誤,則加密連接將斷開連接,從而阻止私人信息的傳輸。由于HTTPS非常安全,攻擊者無法找到起點。
實戰(zhàn)
為了讓讀者更好地理解HTTPS的工作,我們將從實際訪問HTTPS開始。我們使用Firefox打開網(wǎng)站(https://www.bairendai.com/)并使用Firefox附帶的調(diào)試工具來瀏覽它。
首先你可以打開這個網(wǎng)站的HTTP頁面,你可以看到:
然后打開這個網(wǎng)站的HTTPS頁面,發(fā)現(xiàn)時間真的越來越大,但實際差異并不大:
然后單擊Security以查看此HTTPS連接的詳細信息:
總結(jié)
以上是對SSL證書是否影響網(wǎng)絡(luò)速度和網(wǎng)站訪問速度的分析。了解原理后,您會發(fā)現(xiàn)它與HTTP訪問之間存在SSL握手??傊褂靡韵聝蓚€公式。
HTTP時間消耗=TCP握手
HTTPS時間消耗=TCP握手+ SSL握手
隨著網(wǎng)絡(luò)帶寬的增加和硬件設(shè)備的不斷改進,SSL握手可能需要幾百毫秒的時間。對于每日訪問網(wǎng)站,很難體驗到這種差異,因此您可以完全忽略HTTPS速度。負面影響。
« Microsoft Edge瀏覽器新曝光圖標!放棄自己的EdgeHTML引擎并更改Google內(nèi)核! | 高通發(fā)布驍龍712移動平臺:支持QC4+,比710提升10% »
周一周五 8:30 - 18:00
客服QQ