大家好,我是一枚從事IT外包的網(wǎng)絡(luò)運維工程師,在網(wǎng)絡(luò)中,存在著大量網(wǎng)絡(luò)攻擊,相對安全就很重要了,這里跟大家介紹一種安全連接技術(shù)SSL。
SSL概述
概述
SSL協(xié)議是在Internet基礎(chǔ)上提供的一種保證私密性的安全協(xié)議。它能使客戶端與服務器之間的通信不被攻擊者竊聽,并且始終對服務器進行認證,還可選擇對客戶端進行認證。目前,SSL協(xié)議廣泛應用于電子商務、網(wǎng)上銀行等領(lǐng)域。SSL具有以下優(yōu)點:
· 提供較高的安全性保證。SSL利用數(shù)據(jù)加密、身份驗證和消息完整性驗證機制,保證網(wǎng)絡(luò)上數(shù)據(jù)傳輸?shù)陌踩浴?/p>
· 支持各種應用層協(xié)議。雖然SSL設(shè)計的初衷是為了解決萬維網(wǎng)安全性問題,但是由于SSL位于應用層和傳輸層之間,它可以為任何基于TCP可靠連接的應用層協(xié)議提供安全性保證。
· 部署簡單。目前SSL已經(jīng)成為網(wǎng)絡(luò)中用來鑒別網(wǎng)站和網(wǎng)頁瀏覽者身份,在瀏覽器使用者及Web服務器之間進行加密通信的全球化標準。
SSL從以下幾方面提高了設(shè)備的安全性:
· 通過SSL協(xié)議保證合法客戶端可以安全地訪問服務器,禁止非法的客戶端訪問服務器。
· 客戶端與服務器之間交互的數(shù)據(jù)需要經(jīng)過加密和摘要,加密保證了傳輸?shù)陌踩?,摘要保證了數(shù)據(jù)的完整性,從而實現(xiàn)了對設(shè)備的安全管理。
· 為設(shè)備制定基于證書屬性的訪問控制策略,對客戶端的訪問權(quán)限進行控制,進一步避免了非法客戶對設(shè)備進行攻擊。
基本概念
· CA(Certificate Authority)
CA是發(fā)放、管理、廢除數(shù)字證書的機構(gòu)。CA的作用是檢查數(shù)字證書持有者身份的合法性,并簽發(fā)數(shù)字證書(在證書上簽字),以防證書被偽造或篡改,以及對證書和密鑰進行管理。國際上被廣泛信任的CA,被稱之為根CA。根CA可授權(quán)其它CA為其下級CA。CA的身份也需要證明,而證明信息在信任證書機構(gòu)文件中描述。
例如:CA1作為最上級CA也叫根證書,簽發(fā)下一級CA2證書,CA2又可以給它的下一級CA3簽發(fā)證書,以此下去,最終由CAn簽發(fā)服務器的證書。
如果服務器端的證書由CA3簽發(fā),則在客戶端驗證證書的過程從服務器端的證書有效性驗證開始。先由CA3證書驗證服務器端證書的有效性,如果通過則再由CA2證書驗證CA3證書的有效性,最后由最上級CA1證書驗證CA2證書的有效性。只有通過最上級CA證書即根證書的驗證,服務器證書才會驗證成功。
證書簽發(fā)過程與證書驗證過程如圖1所示。
圖1證書簽發(fā)過程與證書驗證過程示意圖
· 數(shù)字證書
數(shù)字證書實際上是存于計算機上的一個記錄,是由CA簽發(fā)的一個聲明,證明證書主體(證書申請者擁有了證書后即成為證書主體)與證書中所包含的公鑰的惟一對應關(guān)系。數(shù)字證書中包括證書申請者的名稱及相關(guān)信息、申請者的公鑰、簽發(fā)數(shù)字證書的CA的數(shù)字簽名及數(shù)字證書的有效期等內(nèi)容。數(shù)字證書的作用使網(wǎng)上通信雙方的身份得到了互相驗證,提高了通信的可靠性。
用戶必須事先獲取信息發(fā)送者的公鑰證書,以便對信息進行解碼認證,同時還需要CA發(fā)送給發(fā)送者的證書,以便用戶驗證發(fā)送者的身份。
· 證書撤銷列表CRL(Certificate Revocation List)
CRL由CA發(fā)布,它指定了一套證書發(fā)布者認為無效的證書。
數(shù)字證書的壽命是有限的,但CA可通過證書撤銷過程縮短證書的壽命。CRL指定的壽命通常比數(shù)字證書指定的壽命要短。由CA撤銷數(shù)字證書,意味著CA在數(shù)字證書正常到期之前撤銷允許使用密鑰對的有關(guān)聲明。在撤銷證書到期后,CRL中的有關(guān)數(shù)據(jù)被刪除,以縮短CRL列表的大小。
任何一個證書被廢除以后,證書機構(gòu)CA就要發(fā)布CRL來聲明該證書是無效的,并列出所有被廢除證書的簽發(fā)者和序列號、CRL的簽發(fā)日期、證書被撤銷的日期、CRL下次發(fā)布時間等信息。
CRL提供了一種檢驗證書有效性的方式,當終端實體需要驗證對端證書合法性時,通常需要檢查對端證書的CRL,判斷該證書是否被撤銷。
協(xié)議安全機制
SSL協(xié)議提供的安全機制如下:
· 連接的私密性
SSL利用對稱加密算法對傳輸數(shù)據(jù)進行加密,并利用密鑰交換算法—RSA(Rivest Shamir and Adleman,非對稱密鑰算法的一種)加密傳輸對稱密鑰算法中使用的密鑰。
· 身份驗證機制
基于證書利用數(shù)字簽名方法對服務器和客戶端進行身份驗證。SSL服務器和客戶端通過公鑰基礎(chǔ)設(shè)施PKI(Public Key Infrastructure)提供的機制從CA獲取證書。
· 內(nèi)容的可靠性
消息傳輸過程中使用基于密鑰的消息驗證碼MAC(Message Authentication Code)來檢驗消息的完整性。
MAC算法是將密鑰和任意長度的數(shù)據(jù)轉(zhuǎn)換為固定長度數(shù)據(jù)的一種算法。
§ 發(fā)送端在密鑰參與下,利用MAC算法計算出消息的MAC值,并將其加在消息之后發(fā)送給接收端。
§ 接收端利用同樣的密鑰和MAC算法計算出消息的MAC值,并與接收到的MAC值比較。
如果二者相同,則報文沒有改變。否則,報文在傳輸過程中被修改,接收端將丟棄該報文。