技術宅告訴你如何搜尋更安全
前言
百度從14年開始就已經對外開放了HTTPS的訪問,並於15年3月初正式對全網使用者進行了HTTPS跳轉。
你也許會問,切換就切換唄,和我有啥關係?我平常用百度還不是照常順順當當的,沒感覺到什麼切換。
話說,平常我們呼吸空氣也順順溜溜的,沒有什麼感覺,但要是沒有了空氣,那就沒法愉快的生活了。HTTPS對於網際網路安全的重要性,正如空氣對於我們人類的重要性一樣。百度全站切換到HTTPS之後,我們才可以愉快的搜尋,愉快的上網。
HTTPS究竟是如何實現讓我們更加安全呢,讓百度技術宅來個深度揭秘:
問題1:HTTPS是什麼?我有沒有用到HTTPS?
HTTPS是HTTP over SSL(Secure Socket Layer),簡單講就是HTTP的安全版本,在HTTP的基礎上透過傳輸加密和身份認證保證了傳輸過程中的安全性。要觀察是否用到了HTTPS,最簡單的方法可以看看網址是以http://開頭還是https://開頭。
以下幾個截圖就是Chrome,Safari在使用HTTPS時的效果。
注意圖中鎖的圖示,我們後面詳細說說。
想進一步瞭解HTTPS,可以閱讀《大型網站的HTTPS實踐(一)–HTTPS協議和原理》。
問題2:HTTPS為什麼比HTTP安全?HTTPS加密是不是需要我在電腦上安裝證書/儲存密碼?
不帶“S”的HTTP不安全,主要是因為它傳輸的是明文內容,也不對傳輸雙方進行身份驗證。只要在資料傳輸路徑的任何一個環節上,都能看到傳輸的內容,甚至對其進行修改。例如一篇文章“攻下隔壁女生路由器後,我都做了些什麼”中,很多攻擊的環節,都是透過分析HTTP的內容來進行。而在現實生活中呢,你很有可能洩露你的論壇高階會員賬號/密碼,遊戲VIP賬號/密碼,隱私的聊天內容,郵件,線上購物資訊等等。實在是太可怕的有木有!
HTTPS之所以安全,是因為他利用SSL/TLS協議傳輸。舉個簡單的例子,電影《風語者》中,美軍發現密碼經常被日本竊聽和破解,就徵召了29名印第安納瓦霍族人作為譯電員,因為這語言只有他們族人懂。即使日本人竊聽了電文,但是看不懂內容也沒用;想偽造命令也無從下手,修改一些內容的話,印第安人看了,肯定會說看(shen)不(me)懂(gui)。看到這裡,你肯定發現了,這是基於兩邊都有懂這個語言(加密解密規則)的人才行啊,那麼我的電腦上需要安裝什麼金鑰或者證書嗎?一般情況作為普通使用者是不用考慮這些的,我們有作業系統、瀏覽器、數學家、安全和網路工程師等等,幫你都做好了,放心的開啟瀏覽器用就好啦。
如果你實在好奇,想知道雙方不用相同的金鑰如何進行加密的,可以搜尋下“公鑰加密”(非對稱加密),“RSA”,“DH金鑰交換”,“SSL原理”,“數字證書”等關鍵詞。
有朋友會想了,不就是加密嗎,我Wi-Fi密碼都能破,找個工具分分鐘就破解了。這個想法可不對,雖然沒有絕對的安全,但是可以極大增加破解所需要的成本,HTTPS目前使用的加密方式是需要巨大的計算量(按照目前計算機的計算能力)才可能破解的,你會用世界上最強的超級計算機花費100年(只是一個比喻)去解密,看看100年前隔壁老王在百度上搜什麼嗎。
問題3:百度為什麼要上HTTPS?
我們每天會處理使用者投訴,比如說:
頁面出現白頁/出現某些奇怪的東西
返回了403的頁面
搜尋不了東西
搜尋URL帶了小尾巴,頁面總要閃幾次
頁面彈窗廣告
搜尋個汽車就有人給我打電話推銷4s店和保險什麼的
…
各種千奇百怪的情況碰到過的請舉手。
查來查去,很大一部分原因是有些壞人在資料的傳輸過程中修改百度的頁面內容,竊聽使用者的搜尋內容。悄悄告訴你,HTTPS就是能解決這樣問題的技術哦。
從方向上來說,HTTPS也是未來的趨勢,目前大家使用的HTTP還是1.1/1.0版本的,新的HTTP2.0版本的標準已經發布了。標準中涉及了加密的規範,雖然標準中沒有強制使用,但是已經有很多瀏覽器實現聲稱他們只會支援基於加密連線的HTTP2.0()。
問題4:HTTPS不就是在HTTP後面加個S,很難麼?
難,又不難。
它包含證書、解除安裝、流量轉發、負載均衡、頁面適配、瀏覽器適配、refer傳遞等等等等,反正我指頭肯定不夠數。
對於一個超小型個人站點來說,技術宅1天就能搞定從申請證書到改造完成。如果是從零開始建設,會更容易。
但是對於百度搜尋這種大胖紙來說,可就難了。
它一開始並不是為HTTPS設計的。
內容豐富(內容本身的表現形式很多:圖片、影片、Flash、Form等等),種類豐富(頁面上除了自然結果,有影片、圖片、地圖、貼吧、百科、第三方的內容、APP等等)。
資料來源複雜,有幾十個內部產品線的內容,幾百個域名,成千上萬個開發者的內容。
百度在全國,甚至世界範圍都有很多IDC和CDN節點,都得覆蓋到。
還不能因此拖慢了百度的速度(國內使用HTTPS的銀行,線上交易的站點,有沒有覺得很慢?)。
上HTTPS本來就是為了更好的體驗,可不能導致大家使用不穩定。
想了解更詳細的內容,可以閱讀《百度HTTPS部署實踐》。
Google部署HTTPS花費了1-2年,13年將證書從1024位升級到2048位花了3個月。百度也是從14年就開放了入口和小流量,但是直到15年3月才進行全量上線,可以想像整體的複雜性。
問題5:如何看待百度搜尋支援全站HTTPS?
對百度自身來說,HTTPS能夠保護使用者體驗,減少劫持/隱私洩露對使用者的傷害。
很多人會有疑惑,我沒有被劫持,百度上HTTPS有什麼作用,反而讓我變慢了一些。從我們的第一手資料可以看到,劫持的影響正越來越大,在法制不健全的環境下,它被當成一個產業,很多公司以它為生,不少以此創業的團隊還拿到了風投。等它真正傷害到你的時候,你可能又會問我們為什麼不做些什麼。所以,我們寧願早一些去面對它。
百度也是國內第一個全站HTTPS的大型站點,它的使用者非常多,流量也很大。百度上線HTTPS打消了大家的疑慮,對其他國內的站點是很好的示範,這個帶頭作用顯著加速了國內網際網路普及HTTPS的程式,有助於中國網際網路的網路安全建設。百度作為搜尋引擎,是流量的入口和分發的渠道,後續如果對HTTPS的站點內容的抓取、標記、權值傾斜,那麼更能引導網際網路的網站向HTTPS進行遷移。
問題6:HTTPS慢不慢?
繁重的計算和多次互動天然的影響了HTTPS的訪問速度……如果什麼最佳化都不做,HTTPS會明顯慢很多。在百度已經進行過很多速度最佳化的條件下,如果站點本身已經做過常規最佳化,但是不針對HTTPS做最佳化,這種情況下我們實測的結果是0.2-0.4秒耗時的增加。如果是沒有最佳化過的站點,慢1秒都不是夢。至於現在慢不慢呢,大家已經體驗了這麼久了,有感覺嗎?
答案:
慢死了,你們在做啥?
有些慢啊
還行,基本無感
啥,我已經用了HTTPS了?
是不是選的C或者D?喂喂,選A的那位你開啟別的網站慢麼,以前沒有上HTTPS的時候慢麼……隔壁老王在蹭你網呢。
所以,不是慢,是沒有最佳化。
問題7:HTTPS耗效能嗎?
答案是,握手的時候耗,建好連線之後就不太耗了。按照目前加密強度的計算開銷,伺服器支撐握手效能會下降6-8倍,但是如果建立好連線之後,伺服器就幾乎可能撐住打滿網路卡的HTTPS流量了。所以連線複用率的提升和計算效能的最佳化都是重點。可以閱讀《百度HTTPS效能最佳化經驗》。
問題8:劫持有些什麼樣的途經?
你的電腦,你設定的DNS,你的瀏覽器,你用的網路,都有可能被劫持。
簡單和大家介紹下運營商的內容劫持是如何進行的,運營商會分析你的網路請求,它可以先於網站回包,也能修改資料包的內容。所以它可以讓你跳轉一次,在網址上加上小尾巴,也能在你訪問的頁面彈出小廣告。
感興趣的話,還可以透過這篇文章看看你的電腦如何被ISP劫持的《暗雲木馬》。
問題9:HTTPS解決了所有劫持問題嗎?
俗話說有終有始,我們來說一說文章開始說的瀏覽器上鎖的圖示。它標誌著這個安全連線可信賴的級別。若訪問非HTTPS網站,就存在被劫持的風險,瀏覽器也會提示網站不安全。
其實客戶端、區域網的風險也很大,惡意外掛、木馬可以做很多事情,你使用的路由器、DNS也比較脆弱。如果某個大型網站被標記為了紅色,那你就更要小心了,你有可能遭受了SSL劫持(中間人攻擊的一種),特別是遇到如下圖提示的時候(訪問一些自己簽名的站點也會有類似的提示)。中間人攻擊還有其他種類的,比如代理你的通訊讓你退化HTTP,還可以利用注入根證書,可以讓你瀏覽器還是綠色的標記,就問你怕不怕?
還是那句話,沒有絕對的安全,但是我們可以儘量降低風險。
HTTPS能夠在絕大部分情況下保證網際網路訪問資料傳輸的安全,這是目前我們力所能及的工作。
問題10:我應該如何更爽更快切換到HTTPS?
如此強悍有用的HTTPS,我也想體驗,在安全的網際網路世界中翱翔,那麼我該怎麼做呢?
實際上你不需要動手,百度的攻城獅已經體貼的幫你做到了。現在訪問百度試試,我們已經自動切換到HTTPS了,再也不用擔心隱私洩露的問題,趕緊來體驗吧!
另外以下一些技巧能有讓HTTPS有更好的效能哦:
使用更高階大氣上檔次的瀏覽器,最好是非IE系列的,比如Chrome、Firefox、Safari瀏覽器,或者百度等雙核瀏覽器的極速模式。
把瀏覽器首頁或者收藏夾的百度URL也換為,可以讓你有更快更好的體驗。
文章整理自百度HTTPS技術聯合團
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31557835/viewspace-2221596/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 百度全站 https FAQ:技術宅告訴你如何搜尋更安全HTTP
- 索尼PS VR究竟有多火?讓搜尋資料告訴你VR
- 技術宅的幽默你懂嗎?
- NLP技術如何為搜尋引擎賦能
- 搜尋器robot技術
- 如何輕鬆做資料治理?開源技術棧告訴你答案
- 年計劃,技術兒告訴你怎麼做?
- 網際網路廣告投哪了?adbug廣告搜尋告訴你
- 產品技術團隊怎麼搭 原QQ安全產品人告訴你
- 搜尋排序技術簡介排序
- 如何高效搭建資產管理平臺?眾安科技告訴你答案是圖技術
- SAP UI 搜尋分頁技術UI
- 技術宅如何用ML技術進化為女裝大佬
- Elasticsearch核心技術(五):搜尋API和搜尋執行機制ElasticsearchAPI
- Bing搜尋核心技術BitFunnel原理
- 影像搜尋技術發展應知道
- 影象搜尋技術發展應知道
- 語音技術——關鍵詞搜尋
- IT技術文件搜尋 - slideshare, wordpressIDE
- 技術宅找女朋友的技術分析
- 遊戲是如何告訴"你快要死了”?遊戲
- 大神告訴你如何理解微服務框架微服務框架
- 中文搜尋引擎技術揭密:中文分詞中文分詞
- 開源搜尋技術的核心引擎 —— Lucene
- 產品級搜尋技術-全文字索引索引
- PHP開發搜尋引擎技術全解析PHP
- 李彥巨集的搜尋技術傳奇
- 利用AJAX技術提高搜尋引擎排名(轉)
- ping 命令你真的會了嘛?網路高手告訴你如何玩的更 6!!!
- 11大唱片公司狀告“阿里巴巴”搜尋侵權勝訴阿里
- 如何看懂DOE分析報告?這篇文章告訴你
- 不明惡意攻擊致<搜狗搜尋><搜尋結果>跳轉<百度搜尋>技術原理分析
- 深信服桌面雲aDesk如何實現輕鬆運維?這篇技術解析告訴你答案運維
- 讓老媽告訴你如何程式設計程式設計
- 電商搜尋演算法技術的演進演算法
- 有贊搜尋系統的技術內幕
- Suggestion(搜尋建議)產品和技術
- win10如何更換edge預設搜尋引擎_win10 edge更改搜尋引擎的方法Win10