SSL知識簡介

1、什麼是SSL算法

SSL(或安全套接字層)是基於加密的Internet安全協議。 它最初由Netscape1995年開發,旨在確保Internet通訊中的隱私,身份驗證和數據完整性。SSL是當今使用的現代TLS加密的前身。使用SSL/TLS的網站的URL中帶有「 HTTPS」,而不是「 HTTP」瀏覽器

圖十四:HTTP與HTTPS區別示意圖的副本.jpg

2SSL/TLS如何工做?安全

1)爲了提供高度的隱私,SSL會對經過網絡傳輸的數據進行加密。這意味着任何試圖攔截此數據的人都只會看到亂碼,並且幾乎沒法解密。服務器

2SSL在兩個通訊設備之間啓動稱爲握手的身份驗證過程,以確保兩個設備確實是它們聲稱的真實身份。網絡

3SSL還對數據進行數字簽名,以提供數據完整性,並在到達目標收件人以前驗證數據是否被篡改。ide

SSL已經進行了屢次迭代,每次迭代都比上一次更安全。 SSL1999年更新爲TLS網站

3、爲何SSL/TLS如此重要?加密

最初,Web上的數據是以明文形式傳輸的,任何人只要截獲該消息均可以閱讀。 例如,若是消費者訪問了購物網站,下了訂單並在網站上輸入了他們的信用卡號,那麼該信用卡號將在互聯網上明文傳播。spa

建立SSL是爲了糾正此問題並保護用戶隱私。 經過對用戶和Web服務器之間傳輸的任何數據進行加密,SSL可確保攔截數據的任何人只能看到混亂的字符。 消費者的信用卡號如今是安全的,僅在他們輸入該密碼的購物網站上可見。orm

SSL還能夠阻止某些類型的網絡***:它對Web服務器進行身份驗證,這很重要,由於***者一般會嘗試創建僞造網站來欺騙用戶並竊取數據。它還能夠防止***者篡改傳輸中的數據。

4SSLTLS是一回事嗎?

SSLTLS(傳輸層安全性)協議的直接前身。 1999年,IETF提出了要對SSL的更新。因爲此更新是由IETF開發的,再也不涉及Netscape,所以名稱也更改成TLSSSL的最終版本(3.0)與TLS的初版本之間的差別並不大。名稱的更改更多的因爲全部權變動形成的。

因爲它們是如此緊密地聯繫在一塊兒,所以這兩個術語常常互換使用和混淆。有些人仍然使用SSL來指代TLS,其餘人則使用術語「 SSL/TLS加密,由於SSL的名稱仍然具備很高的辨識度。

5SSL還在更新嗎?

1996年開始使用SSL 3.0以來,還沒有對SSL進行任何更新,如今認爲已棄用。SSL協議中存在多個已知漏洞,安全專家建議中止使用它。實際上,大多數現代網絡瀏覽器根本再也不支持SSL

TLS是最新的加密協議,它依然在用,儘管許多人仍將其稱爲「 SSL加密。對於購買安全解決方案的人來講,可能對這些概念發生混淆。事實是,現在提供「 SSL」的任何供應商幾乎均可以確定地提供TLS保護,這已經成爲20多年來的行業標準。 可是,因爲許多人仍在搜索「 SSL保護,所以該術語在許多產品頁面上還是醒目位置。

6、什麼是SSL證書?

只有擁有SSL證書(技術上實際應該是「 TLS證書)的網站才能實施SSLSSL證書就像身份證或徽章同樣,用來證實某人就是他們所說的真實身份。SSL證書由網站或應用程序的服務器存儲並顯示在Web上。

SSL證書中最重要的信息之一是網站的公鑰,公鑰使加密成爲可能。用戶的設備查看公共密鑰,並使用它與Web服務器創建安全的加密密鑰。同時,Web服務器還具備一個保密的私有密鑰,私鑰用來解密使用公鑰加密的數據。證書頒發機構(CA)負責頒發SSL證書。

7SSL證書的類型是什麼?

有幾種不一樣類型的SSL證書。 一個證書能夠應用於一個或多個網站,具體取決於類型:

1)單域:單域SSL證書僅適用於一個域(是網站的名稱,例如www.cloudflare.com)。

2)通配符:與單域證書同樣,通配符SSL證書僅適用於一個域。可是,它也包括該域的子域。例如,通配符證書能夠覆蓋www.cloudflare.comblog.cloudflare.comdevelopers.cloudflare.com,而單域證書只能覆蓋第一個。

3)多域:顧名思義,多域SSL證書能夠應用於多個不相關的域。

SSL證書還具備不一樣的驗證級別。驗證級別就像背景檢查同樣,而且級別會根據檢查的完全性而變化。

1)域驗證:這是最嚴格的驗證級別,也是最便宜的級別。企業要作的就是證實他們控制着域。

2)組織驗證:這是一個更加實際的過程:CA直接與請求證書的人員或企業聯繫。這些證書更受用戶信賴。

3)擴展驗證:在頒發SSL證書以前,這須要對組織進行全面的後臺檢查。

8SSL/TLS密碼套件介紹

任何受SSL/TLS保護的鏈接的安全性在很大程度上取決於客戶端和服務器對密碼套件的選擇。可是什麼是密碼套件?若是您使用HTTPSFTPSAS2之類的文件傳輸協議,但不知道密碼套件是什麼,則須要閱讀這篇文章。

密碼套件的定義簡單說來就是經過SSL/TLS保護網絡鏈接所需的完整方法集(技術上稱爲算法)。每一個集合的名稱表明組成它的特定算法。構成典型密碼套件的算法以下:

1)密鑰交換算法:規定交換對稱密鑰的方式;

2)認證算法:指示如何執行服務器身份驗證和(若是須要)客戶端身份驗證;

3)批量加密算法:指示將使用哪一種對稱密鑰算法來加密實際數據; 

4)消息認證碼(MAC)算法:指示鏈接將用於執行數據完整性檢查的方法;

一個密碼套件一般由一個密鑰交換算法,一個身份驗證算法,一個批量加密算法和一個MAC算法組成。密鑰交換算法包含有RSA, DH, ECDH, ECDHE 等;身份驗證算法包含有RSA, DSA, ECDSA; 批量加密算法包含有AES, 3DES, CAMELLIA; MAC算法包含有SHA, MD5等。下面咱們來看一個密碼套件的例子:

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 

讓咱們逐一拆解開來看:

1TLS表明使用的協議;

2ECDHE表示密鑰交換算法;

3ECDSA表示認證算法;

4AES_256_CBC表示批量加密算法;

5SHA384表示MAC算法。

AES_256_CBC表示此密碼套件專門使用以CBC(密碼塊連接)模式運行的256AES。一樣,SHA384表示密碼套件正在使用特定版本的安全哈希算法(SHA)。有時,會省略使用的協議,以下面的例子所示:

DHE_RSA_AES256_SHA
1DHE:表示密鑰交換算法;

2RSA:表示認證算法;

3AES256:表示批量加密算法;

4SHA:表示MAC算法。

有時,重複的算法只寫一次。例如,在密碼套件RSA_AES256_SHA中,暗指了受權算法是RSA

相關文章
相關標籤/搜索