超文本傳輸安全協議—HTTPS

    超文本傳輸安全協議英語:Hypertext Transfer Protocol Secure,縮寫:HTTPS,常稱為HTTP over TLS,HTTP over SSLHTTP Secure)是一種通過計算機網絡進行安全通信的傳輸協議。HTTPS經由HTTP進行通信,但利用SSL/TLS來加密數據包。HTTPS開發的主要目的,是提供對網站服務器的身份認證,保護交換數據的隱私與完整性。

    HTTPS廣泛使用于保護所有類型網站上的網頁真實性,保護賬戶和保持用戶通信,身份和網絡瀏覽的私密性。

    HTTPS的主要思想是在不安全的網絡上創建一安全信道,并可在使用適當的加密包和服務器證書可被驗證且可被信任時,對竊聽和中間人攻擊提供合理的防護。

    HTTPS的信任繼承基于預先安裝在瀏覽器中的證書頒發機構(如Symantec、Comodo、GoDaddy和GlobalSign等)(意即“我信任證書頒發機構告訴我應該信任的”)。因此,一個到某網站的HTTPS連接可被信任,當且僅當:

  • 用戶相信他們的瀏覽器正確實現了HTTPS且安裝了正確的證書頒發機構;
  • 用戶相信證書頒發機構僅信任合法的網站;
  • 被訪問的網站提供了一個有效的證書,意即,它是由一個被信任的證書頒發機構簽發的(大部分瀏覽器會對無效的證書發出警告);
  • 該證書正確地驗證了被訪問的網站(如,訪問https://example.com時收到了給example.com而不是其它組織的證書);
  • 或者互聯網上相關的節點是值得信任的,或者用戶相信本協議的加密層(TLS或SSL)不能被竊聽者破壞。

    當連接到一個提供無效證書的網站時,較舊的瀏覽器會使用一對話框詢問用戶是否繼續,而較新的瀏覽器會在整個窗口中顯示警告;較新的瀏覽器也會在地址中凸顯網站的安全信息(如,擴展驗證證書Firefox里會使地址欄出現綠鎖標志)。

與HTTP的差異

    與HTTP的URL由“http://”起始且默認使用端口80不同,HTTPS的URL由“https://”起始且默認使用端口443。

HTTP是不安全的,且攻擊者通過監聽和中間人攻擊等手段,可以獲取網站帳戶和敏感信息等。HTTPS被設計為可防止前述攻擊,并(在沒有使用舊版本的SSL時)被認為是安全的。

協議層

    HTTP協議和安全協議同屬于應用層(OSI模型的最高層),具體來講,安全協議工作在HTTP之下,運輸層之上:安全協議向運行HTTP的進程提供一個類似于TCP的套接字,供進程向其中注入報文,安全協議將報文加密并注入運輸層套接字;或是從運輸層獲取加密報文,解密后交給對應的進程。嚴格地講,HTTPS并不是一個單獨的協議,而是對工作在一加密連接(TLS或SSL)上的常規HTTP協議的稱呼。

    HTTPS報文中的任何東西都被加密,包括所有報頭和荷載。除了可能的選擇密文攻擊(參見限制小節)之外,一個攻擊者所能知道的只有在兩者之間有一連接這一事實。

服務器設置

    要使一網絡服務器準備好接受HTTPS連接,管理員必須創建一數字證書,并交由證書頒發機構簽名以使瀏覽器接受。證書頒發機構會驗證數字證書持有人和其聲明的為同一人。瀏覽器通常都預裝了證書頒發機構的證書,所以他們可以驗證該簽名。

獲得證書

    由證書頒發機構簽發的證書有免費的,也有每年收費數美元到數千美元不等的。

    一個組織也可能有自己的證書頒發機構,尤其是當設置瀏覽器來訪問他們自己的網站時(如,運行在公司或學校局域網內的網站)。他們可以容易地將自己的證書加入瀏覽器中。

作為訪問控制

    HTTPS也可被用作客戶端認證手段來將一些信息限制給合法的用戶。要做到這樣,管理員通常會給每個用戶創建證書(通常包含了用戶的名字和電子郵件地址)。這個證書會被放置在瀏覽器中,并在每次連接到服務器時由服務器檢查。

當私鑰失密時

    證書可在其過期前被吊銷,通常情況是該證書的私鑰已經失密。較新的瀏覽器如Google Chrome、Firefox、Opera和運行在Windows Vista上的Internet Explorer都實現了在線證書狀態協議(OCSP)以排除這種情形:瀏覽器將網站提供的證書的序列號通過OCSP發送給證書頒發機構,后者會告訴瀏覽器證書是否還是有效的。

局限

    TLS有兩種策略:簡單策略和交互策略。交互策略更為安全,但需要用戶在他們的瀏覽器中安裝個人的證書來進行認證。

不管使用了哪種策略,協議所能提供的保護總強烈地依賴于瀏覽器的實現和服務器軟件所支持的加密算法。

    HTTPS并不能防止站點被網絡蜘蛛抓取。在某些情形中,被加密資源的URL可僅通過截獲請求和響應的大小推得,這就可使攻擊者同時知道明文(公開的靜態內容)和密文(被加密過的明文),從而使選擇密文攻擊成為可能。

    因為SSL在HTTP之下工作,對上層協議一無所知,所以SSL服務器只能為一個IP地址/端口組合提供一個證書。這就意味著在大部分情況下,使用HTTPS的同時支持基于名字的虛擬主機是不很現實的。一種叫域名指示(SNI)的方案通過在加密連接創建前向服務器發送主機名解決了這一問題。Firefox 2、Opera 8和運行在Windows Vista的Internet Explorer 7都加入了對SNI的支持。

    因為HTTPS連接所用的公鑰以明文傳輸,因此中國的長城可以對特定網站按照匹配的黑名單證書,通過偽裝成對方向連接兩端的計算機發送RST包干擾兩臺計算機間正常的TCP通訊,以打斷與特定IP地址之間的443端口握手,或者直接使握手的數據包丟棄,導致握手失敗,從而導致TLS連接失敗。這也是一種互聯網信息審查和屏蔽的技術手段。

原創文章,作者:HGG,如若轉載,請注明出處:http://www.www58058.com/84164

(0)
HGGHGG
上一篇 2017-08-07
下一篇 2017-08-07

相關推薦

  • Linux路由實驗

    一    實驗背景:路由器的功能是將不同網段的主機建立通信,本次試驗是在使用linux主機當作路由器,完成主機間通信。如下圖所示 二、實驗環境:主機A和B為CentOS7.2,主機C和D為CentOS6.8,且C和D上分別都有兩塊網卡 三、實驗步驟     注意:為避免干擾項,需將每臺主機…

    Linux干貨 2016-09-07
  • ls 命令淺談

           LS命令是Linux中最常用的命令,ls是list的縮寫,通過ls命令不僅可以查看Linux文件夾包含的文件,而且可以查看文件權限(包括目錄、文件夾、文件權限),查看目錄信息等等。ls命令在日常的Linux操作中用的很多。(這里只是介紹了一部分)       命令格式:ls …

    2017-07-15
  • 關于Raid的各種類型特點概要

    關于Raid需要了解掌握的要點

    Linux干貨 2017-11-26
  • grep與基本正則表達式基本用法

    正則表達式:Regual Expression  REGEXP      由一類特殊字符及文本字符所編寫的模式,其中有些字符不表示其字母意義,而是用于表示控制或通配的功能;       分兩類:             &nbsp…

    Linux干貨 2016-11-03
  • shuc之學習目標

    1,每天學習二小時 2,半年熟悉數據中心LINUX技術

    Linux干貨 2016-10-23
  • 第五天03條件判斷與循環

           選擇執行     選擇執行:注意:if語句可嵌套                           單分支       &n…

    Linux干貨 2016-08-18
欧美性久久久久