百度全站 https FAQ:技術宅告訴你如何搜索更安全

百度從 14 年開始對外開放了 https 的訪問,並於 3 月初正式對全網用戶進行了 https 跳轉。

你也許會問,切換就切換唄,和我有啥關係?我日常用百度還不是照常順順當當的,沒感受到什麼切換。

話說,日常咱們呼吸空氣也順順溜溜的,沒有什麼感受,但要是沒有了空氣,那就無法愉快的生活了。https 對於互聯網安全的重要性,正如空氣對於咱們人類的重要性同樣。百度全站切換到 https 以後,咱們才能夠愉快的搜索,愉快的上網。

https 到底是如何實現讓咱們更加安全呢,讓百度技術宅來個深度揭祕:
問題 1:https 是什麼?我有沒有用到 https?

https 是 http over ssl(Secure Socket Layer),簡單講就是 http 的安全版本,在 http 的基礎上經過傳輸加密和身份認證保證了傳輸過程當中的安全性。你一般訪問的網站大部分都是 http 的,最簡單的方法能夠看看網址是以 http:// 開頭仍是https:// 開頭。

如下幾個截圖就是 chrome,firefox,IE10 在使用 https 時的效果。

注意圖中綠色的部分, 咱們後面詳細說說。

想進一步瞭解 HTTPS,能夠閱讀《大型網站的 HTTPS 實踐(一)– HTTPS 協議和原理》
問題 2:https 爲何比 http 安全?https 加密是否是須要我在電腦上安裝證書 / 保存密碼?

不帶「s」的 http 不安全,主要是由於它傳輸的是明文內容, 也不對傳輸雙方進行身份驗證。只要在數據傳輸路徑的任何一個環節上,都能看到傳輸的內容,甚至對其進行修改。例如一篇文章」攻下隔壁女生路由器後, 我都作了些什麼」中,不少攻擊的環節,都是經過分析 http 的內容來進行。而在現實生活中呢,你頗有可能泄露你的論壇高級會員帳號 / 密碼,遊戲 vip 帳號 / 密碼,隱私的聊天內容,郵件,在線購物信息,等等。實在是太可怕的有木有!

https 之因此安全,是由於他利用 ssl/tls 協議傳輸。舉個簡單的例子,電影風語者中,美軍發現密碼常常被日本竊聽和破解,就徵召了 29 名印第安納瓦霍族人做爲譯電員,由於這語言只有他們族人懂。即便日本人竊聽了電文,可是看不懂內容也沒用;想僞造命令也無從下手,修改一些內容的話,印第安人看了,確定會說看(shen)不(me)懂(gui)。看到這裏,你確定發現了,這是基於兩邊都有懂這個語言(加密解密規則)的人才行啊,那麼個人電腦上須要安裝什麼密鑰或者證書嗎?通常狀況做爲普通用戶是不用考慮這些的,咱們有操做系統,瀏覽器,數學家,安全和網絡工程師等等, 幫你都作好了, 放心的打開瀏覽器用就好啦。

若是你實在好奇,想知道雙方不用相同的密鑰如何進行加密的,能夠搜索下」公鑰加密」(非對稱加密),」RSA」,」 DH 密鑰交換」, 「ssl 原理」 「數字證書」等關鍵詞。

有朋友會想了,不就是加密嗎,我 wifi 密碼都能破,找個工具分分鐘就破解了。這個想法可不對, 雖然沒有絕對的安全,可是能夠極大增長破解所須要的成本,https 目前使用的加密方式是須要巨大的計算量(按照目前計算機的計算能力)纔可能破解的,你會用世界上最強的超級計算機花費 100 年(只是一個比喻)去解密,看看 100 年前隔壁老王在百度上搜什麼嗎。

 
問題 3:百度爲何要上 https?

咱們天天會處理用戶投訴,好比說:

頁面出現白頁 / 出現某些奇怪的東西

返回了 403 的頁面

搜索不了東西

搜索 url 帶了小尾巴, 頁面總要閃幾回

頁面彈窗廣告

搜索個汽車就有人給我打電話推銷 4s 店和保險什麼的



各類千奇百怪的狀況碰到過的請舉手。

查來查去,很大一部分緣由是有些壞人在數據的傳輸過程當中修改百度的頁面內容,竊聽用戶的搜索內容。悄悄告訴你,https 就是能解決這樣問題的技術哦, 趕忙把瀏覽器首頁改爲https://www.baidu.com吧。

從方向上來講,HTTPS 也是將來的趨勢,目前你們使用的 HTTP 仍是 1.1/1.0 版本的,新的 HTTP2.0 版本的標準已經發布了。標準中涉及了加密的規範,雖然標準中沒有強制使用,可是已經有不少瀏覽器實現聲稱他們只會支持基於加密鏈接的 HTTP2.0(https://http2.github.io/faq/#does-http2-require-encryption)。

 
問題 4:https 不就是在 http 後面加個 s,很難麼?

 

難,又不難。

它包含證書,卸載,流量轉發,負載均衡,頁面適配,瀏覽器適配,refer 傳遞等等等等。反正我指頭確定不夠數。

對於一個超小型我的站點來講,技術宅 1 天就能搞定從申請證書到改造完成。若是是從零開始建設,會更容易。

可是對於百度搜索這種大胖紙來講,可就難了。

1 它一開始並非爲 https 設計的

2 內容豐富(內容自己的表現形式不少:圖片,視頻,flash,form 等等),種類豐富 (頁面上除了天然結果,有視頻,圖片,地圖,貼吧,百科 , 第三方的內容, app 等等)。

3 數據來源複雜,有幾十個內部產品線的內容,幾百個域名,成千上萬個開發者的內容

4 百度在全國,甚至世界範圍都有不少 idc 和 cdn 節點,都得覆蓋到。

5 還不能所以拖慢了百度的速度 (國內使用 https 的銀行, 在線交易的站點,有沒有以爲很慢?)

6 上 https 原本就是爲了更好的體驗,可不能致使你們使用不穩定。



想了解更詳細的內容,能夠閱讀《大型網站的 HTTPS 實踐(四)– 協議層之外的實踐 [1]》

Google 部署 https 花費了 1-2 年,13 年將證書從 1024 位升級到 2048 位花了 3 個月。百度也是去年就開放了入口和小流量,可是今年 3 月才進行全量上線,能夠想像總體的複雜性。

 
問題 5:如何看待百度搜索支持全站 https?

國外的幾個大型站點都 https 化了,這是將來互聯網的趨勢 (有興趣的同窗能夠搜索下’http/2’ )。

對百度自身來講,https 可以保護用戶體驗,減小劫持 / 隱私泄露對用戶的傷害。

不少人會有疑惑,我沒有被劫持,百度上 https 有什麼做用,反而讓我變慢了一些。從咱們的第一手數據能夠看到,劫持的影響正愈來愈大,在法制不健全的環境下,它被當成一個產業,不少公司以它爲生,很多以此創業的團隊還拿到了風投。等它真正傷害到你的時候,你可能又會問咱們爲何不作些什麼。因此,咱們寧願早一些去面對它。

https 在國內的大型站點目前還只用在部分帳戶的登錄和支付等環節。百度也是國內第一個全站 https 的大型站點,它的用戶很是多,流量也很大。百度可以上線 https 會打消你們的疑慮,對其餘國內的站點是很好的示範,這個帶頭做用會顯著加速國內互聯網 https 的進程,有助於中國互聯網的網絡安全建設。百度做爲搜索引擎,是流量的入口和分發的渠道,後續若是對 https 的站點內容的抓取,標記,權值傾斜,那麼更能引導互聯網的網站向 https 進行遷移。

 
問題 6:https 慢不慢?

繁重的計算和屢次交互自然的影響了 https 的訪問速度。。若是什麼優化都不作,https 會明顯慢不少。在百度已經進行過不少速度優化的條件下,若是站點自己已經作過常規優化,可是不針對 https 作優化,這種狀況下咱們實測的結果是 0.2-0.4 秒耗時的增長。若是是沒有優化過的站點,慢 1 秒都不是夢。至於如今慢不慢呢,你們已經體驗了這麼多天了,有感受嗎?

答案:A 慢死了,大家在作啥?  B 有些慢啊  C 還行, 基本無感  D 啥, 我已經用了 https 了?

是否是選的 C 或者 D?喂喂,選 A 的那位 你打開別的網站慢麼, 之前沒有上 HTTPS 的時候慢麼。。。隔壁老王在蹭你網呢。

因此,不是慢,是沒有優化。

 
問題 7:https 耗性能嗎?

答案是,握手的時候耗,建好鏈接以後就不太耗了。按照目前加密強度的計算開銷,服務器支撐握手性能會降低 6-8 倍,可是若是創建好鏈接以後,服務器就幾乎可能撐住打滿網卡的 https 流量了。因此鏈接複用率的提高和計算性能的優化都是重點。能夠閱讀《大型網站的 HTTPS 實踐(三)– 基於協議和配置的優化》

 
問題 8:劫持有些什麼樣的途經?

你的電腦,你設置的 dns,你的瀏覽器,你用的網絡,都有可能被劫持。

簡單和你們介紹下運營商的內容劫持是如何進行的,運營商會分析你的網絡請求,它能夠先於網站回包,也能修改數據包的內容。因此它可讓你跳轉一次,在網址上加上小尾巴,也能在你訪問的頁面彈出小廣告。

感興趣的話,還能夠經過這篇文章看看你的電腦如何被 lsp 劫持的《暗雲木馬》

 
問題 9:https 解決了全部劫持問題嗎?

俗話說有終有始,咱們來講一說文章開始說的瀏覽器上的綠色標記。它標誌着這個安全鏈接可信賴的級別。綠色一般是好的,黃色則是說明有些不安全,例如在 https 的頁面中加載了 http 的資源,這樣 http 的資源仍是有被劫持的風險。

其實客戶端,局域網的風險也很大,惡意插件,木馬能夠作不少事情,你使用的路由器,DNS 也比較脆弱。若是某個大型網站被標記爲了紅色,那你就更要當心了 (固然也多是某個猴子忘記了續費替換證書,致使證書過時了),你有可能遭受了 ssl 劫持 (中間人攻擊的一種),特別是遇到以下圖提示的時候(訪問一些本身簽名的站點也會有相似的提示)。中間人攻擊還有其餘種類的,好比代理你的通訊讓你退化 http, 還能夠利用注入根證書,可讓你瀏覽器仍是綠色的標記,就問你怕不怕?

仍是那句話,沒有絕對的安全,可是咱們能夠儘可能下降風險。

https 可以在絕大部分狀況下保證互聯網訪問數據傳輸的安全,這是目前咱們力所能及的工做。git

相關文章
相關標籤/搜索