這兩天閑來無事,在網上看了一下,發現 HTTP 和 HTTPS 的區別很受關注,多位大牛做了很詳細的闡述,非常深刻全面。但是小編還是發現一個問題,大牛們的描述太過于專業了,對于專業人士來說當然很容易看明白,可是真正需要了解的往往是一些小白,小白們一開始就接觸這些專業術語其實是很難理解的。你們說是不是這個理。所以小編決定聯系實際來聊聊這個話題。
首先我們還是簡單的描述一下專業定義。 HTTP 是怎么定義的? HTTPS 又是怎么定義的?
HTTP (全稱 Hyper Text Transfer Protocol ),一般稱為超文本傳輸協議,也是互聯網上應用最為廣泛的一種網絡協議。所有的WWW文件都必須遵守這個標準。設計 HTTP最初的目的是為了提供一種發布和接收html頁面的方法。一種詳細規定了瀏覽器和萬維網服務器之間互相通信的規則。 HTTPS (全稱:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全為目標的HTTP通道,簡單講是 HTTP 的安全版。
俗話講:無規矩不成方圓。只有遵循一定規則通信才能有序正常的進行。本質上來說 HTTP 和 HTTPS 是相同的,都是一種傳輸協議,一種通信規則。只不過 HTTPS 是從 HTTP 的基礎上發展而來的,加入了獨特的安全機制。
接下來我們聯系現實,舉個例子為大家描述一下。
就拿打電話來說吧,如果你用自己的手機去給朋友手機撥打電話??瓷先ミ@很簡單,可能有人會問,這打電話還能有規則?怎么沒有呢,我們簡單看一下打電話的過程,撥號碼》接通電話》交流》結束掛電話。這不正是打電話的一套規則嗎。
前面我們說過了, HTTP 規定了瀏覽器和萬維網服務器之間互相通信的規則,比如我們通過瀏覽器去瀏覽一個網頁,第一步是打開瀏覽器,瀏覽器好比是你的手機,在瀏覽器輸入 URL 地址,進行請求,實際上我們輸入 URL 后,我們的瀏覽器給 Web 服務器發送了一個 Request , Web 服務器接到 Request 后進行處理,生成相應的Response ,然后發送給瀏覽器, 瀏覽器解析 Response 中的 HTML ,這樣我們就看到了網頁,這里的URL就相當于你打電話時輸入朋友的手機號碼,而朋友手機可以看作是你訪問的服務器。而 Request 和 Response 大致可以看作是你和朋友的通話內容吧。有些時候訪問網頁會出現提示找不到服務器等現象,這就說明對方服務器出了問題,也許是關閉了,也許是故障了。這又可以看作是撥打朋友電話,結果朋友手機關機或者損壞,自然無法接通。最后我們關閉瀏覽器結束訪問也就好比通話結束,掛掉電話一樣。
我們再看 HTTPS 規則, HTTPS 是運行在 SSL/TLS 之上的HTTP協議, SSL/TLS 運行在 TCP 之上。所有傳輸的內容都經過加密,加密采用對稱加密,但對稱加密的密鑰用服務器方的證書進行了非對稱加密。如果同樣用打電話來理解,可以看作是你和朋友通電話的內容進行了加密處理,中國電信有一項特別定制的加密通信業務,內置國家密碼管理局指配加密算法的手機終端,向客戶提供實現商密級的端到端手機話音通信加密功能、手機終端信息保護以及手機終端加密信息的遠程擦除等安全服務。而 HTTPS 協議使用的對稱加密就好比是加密電話中添加的加密算法。可以防止被竊取和監聽。
我們有必要解釋一下 HTTPS 的證書,采用 HTTPS 協議的服務器必須要有一套數字證書,可以自己制作,也可以向組織申請,區別就是自己頒發的證書需要客戶端驗證通過,才可以繼續訪問,而使用受信任的公司申請的證書則不會彈出提示頁面。這套證書其實就是一對公鑰和私鑰,如果對公鑰和私鑰不太理解,可以想象成一把鑰匙和一把鎖,這把鎖只有你一個人有這把鑰匙,你可以把鎖給別人,別人可以用這個鎖把重要的東西鎖起來,然后發給你,因為只有你一個人有這把鑰匙,所以只有你才能看到被這把鎖鎖起來的東西。
證書類別可以分為以下:按證書認證等級分類有 DV SSL 證書、 IV SSL 證書、 OV SSL 證書、 EV SSL 證書。按適用域名數量分類有通配符型 SSL 證書、萬能型 SSL 證書、單域名 SSL 證書、多域名 SSL 證書。按照簽發主體分類有:自簽名 SSL 證書和 CA 機構簽發 SSL 證書(各類證書的區別和申請方法因篇幅有限這里就不詳細描述了。)
最后我們通過前面的講述具體來概括一下 HTTP 和 HTTPS 的區別
1、HTTP 的 URL 以 HTTP:// 開頭,而 HTTPS 的 URL 以 HTTPs:// 開頭;
2、HTTP 是不安全的,而 HTTPS 是安全的,比如一些銀行、政府、平臺網站會使用 HTTPS,就拿小編現在所在的SUBMAIL賽郵云通信來說, 我們的官網 API 就采取了 HTTPS 協議,提高其安全性。示例HTTPs://api.submail.cn/message/xsend;
3、傳輸效率上 HTTP 要高于 HTTPS ,因為 HTTPS 需要經過加密過程,過程相比于 HTTP 要繁瑣一點,效率上低一些也很正常;
4、HTTP 無需證書,而 HTTPS 必需要認證證書;
5、從 seo 方面來參考,發現百度和谷歌是不同的。谷歌在 HTTPS 站點的收錄問題上與對 HTTP 站點態度并無什么不同之處,甚至把“是否使用安全加密”(HTTPS)作為搜索排名算法中的一個參考因素,采用 HTTPS 加密技術的網站能得到更多的展示機會。百度曾表示不主動抓取 HTTPS 網頁,所以目前采取 HTTPS 的網站是很難被百度收錄的,不過有消息稱百度接下來可能會向谷歌靠攏,對于 HTTPS 頁面同樣主動抓取。
6、還有一點也不能忽視,使用 HTTPS 需要證書,申請證書是要費用的,相比于 HTTP 不需要證書來說,HTTPS 這筆費用是無法避免的。
以上就是對 HTTP 和 HTTPS 的一些簡述,從個人角度來說,我是希望將來采用 HTTPS 的站點越多越好,畢竟現在網站上購物支付這種活動已經非常頻繁了,安全是我們不得不去重視的問題。如何提高站點信息的安全,目前最簡單的解決方案就是站點采用 HTTPS 協議,進行 web 安全訪問。
如您有其他疑問或建議,請在評論區留言,感謝您的閱讀!
更多行業咨詢,請關注我們的微信公眾號,我們不定期推送您感興趣的文章






