您好,登錄后才能下訂單哦!
HTTPS新聞
v 我國仍然有300多萬的Windows server2003、XP、Vista用戶。而微軟早已宣布不再對“Windows server2003、XP、Vista”進行更新服務了,由于系統得不到安全加固,使用這些系統進行web數據交互,更容易引發安全事故:用戶信息泄露、系統遭受***、資金被盜、竊取數據等等。
v 國外的大型互聯網公司很多已經啟用了全站 HTTPS,這也是未來互聯網的趨勢。
v 百度是國內首個全站部署 HTTPS,對國內互聯網的全站 HTTPS 進程必將有著巨大的推動作用。
v 國內的大多網站并沒有全站部署 HTTPS,只是在一些涉及賬戶或者交易的子頁面/子請求上啟用了HTTPS。
v 微軟和google都已經宣布2016年及2017年之后不再支持 sha1 簽名證書。
v Mozilla更是堅決,在2016年7月1日起就停止支持sha1算法的SSL。
引言
最近有朋友問我,為什么很多網站變成“https://XXX”了。這是因為http數據傳輸不安全,而https可以保護用戶隱私、防止流量劫持。
當然,現在https中的“TLS1.0 和 SSL3.0”也不安全了。
那https該怎么用才安全呢?下面就簡單介紹一下“https”所提供的解決方案。
HTTPS概述
HTTPS 可以認為是 HTTP + TLS
v HTTP 協議大家耳熟能詳了,目前大部分 WEB 應用和網站都是使用 HTTP 協議傳輸的。
v TLS 是傳輸層加密協議,它的前身是 SSL 協議,最早由 netscape 公司于 1995 年發布,1999 年經過 IETF 討論和規范后,改名為 TLS。如果沒有特別說明,SSL 和 TLS 說的都是同一個協議。
HTTP 和 TLS 在協議層的位置以及 TLS 協議的組成,如下圖:
v TLS 協議主要有五部分:應用數據層協議、握手協議、報警協議、加密消息確認協議、心跳協議。
v TLS 協議本身又是由 record 協議傳輸的,record 協議的格式如上圖最右所示。
目前常用的 HTTP 協議是 HTTP1.1,常用的 TLS 協議版本有如下幾個:TLS1.2、TLS1.1、 TLS1.0和SSL3.0。
其中 SSL3.0 由于 POODLE ***已經被證明不安全,但統計發現依然有不到 1% 的瀏覽器使用 SSL3.0。TLS1.0 也存在部分安全漏洞,比如 RC4 和 BEAST ***。
TLS1.2和TLS1.1暫時沒有已知的安全漏洞,比較安全,同時有大量擴展提升速度和性能,推薦大家使用。但是Windows server2003、XP、Vista不支持TLS1.1和TLS1.2。
需要關注一點的就是 TLS1.3 將會是 TLS 協議一個非常重大的改革。不管是安全性還是用戶訪問速度都會有質的提升。不過目前沒有明確的發布時間。
同時 HTTP2 也已經正式定稿,這個由 SPDY 協議演化而來的協議相比 HTTP1.1又是一個非常重大的變動,能夠明顯提升應用層數據的傳輸效率。
HTTPS怎么用才安全?
HTTP 本身是明文傳輸的,沒有經過任何安全處理。
例如:用戶在百度搜索了一個關鍵字,比如“蘋果手機”,中間者完全能夠查看到這個信息,并且有可能打電話過來騷擾用戶。也有一些用戶投訴使用百度時,發現首頁或者結果頁面浮了一個很長很大的廣告,這也肯定是中間者往頁面插的廣告內容。如果劫持技術比較低劣的話,用戶甚至無法訪問百度。
這里提到的中間者主要指一些網絡節點,是用戶數據在瀏覽器和web服務器中間傳輸必須要經過的節點。比如 WIFI 熱點,路由器,防火墻,反向代理,緩存服務器等。
在 HTTP 協議下,中間者可以隨意嗅探用戶搜索內容,竊取隱私甚至篡改網頁。不過 HTTPS 是這些劫持行為的克星,能夠完全有效地防御。總體來說,HTTPS 協議提供了三個強大的功能來對抗上述的劫持行為:
v 內容加密:瀏覽器到web服務器的內容都是以加密形式傳輸,中間者無法直接查看原始內容。
加密算法一般分為兩種,對稱加密和非對稱加密。所謂對稱加密(也叫密鑰加密)就是指加密和解密使用的是相同的密鑰。而非對稱加密(也叫公鑰加密)就是指加密和解密使用了不同的密鑰。
v 身份認證:保證用戶訪問的是web服務,即使被 DNS 劫持到了第三方站點,也會提醒用戶沒有訪問web服務,有可能被劫持。
身份認證主要涉及到 PKI 和數字證書。通常 PKI(公鑰基礎設施)包含如下部分:
End entity:終端實體,可以是一個終端硬件或者網站
CA:證書簽發機構
RA:證書注冊及審核機構。比如審查申請網站或者公司的真實性
CRL issuer:負責證書撤銷列表的發布和維護
Repository:負責數字證書及 CRL 內容存儲和分發
v 數據完整性:防止內容被第三方冒充或者篡改。
openssl 現在使用的完整性校驗算法有兩種:MD5 或者 SHA。由于 MD5 在實際應用中存在沖突的可能性比較大,所以盡量別采用 MD5 來驗證內容一致性。SHA 也不能使用 SHA0 和 SHA1,中國山東大學的王小云教授在 2005 年就宣布破解了 SHA-1 完整版算法。SHA家族的五個算法,分別是SHA-1、SHA-224、SHA-256、SHA-384和SHA-512,后四個有時并稱為SHA-2。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。