小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

TLS詳解

 lifei_szdz 2019-04-03

一、為什么使用TLS

在SSL/TLS出現(xiàn)之前,很多應(yīng)用層協(xié)議(http、ftp、smtp等)都存在著網(wǎng)絡(luò)安全問(wèn)題,例如大家所熟知的http協(xié)議,在傳輸過(guò)程中使用的是明文信息,傳輸報(bào)文一旦被截獲便會(huì)泄露傳輸內(nèi)容;傳輸過(guò)程中報(bào)文如果被篡改,無(wú)法輕易發(fā)現(xiàn);無(wú)法保證消息交換的對(duì)端身份的可靠性。為了解決此類問(wèn)題,人們?cè)趹?yīng)用層和傳輸層之間加入了SSL/TLS協(xié)議。

二、什么是TLS

TLS(Transport Layer Security,安全傳輸層),TLS是建立在傳輸層TCP協(xié)議之上的協(xié)議,服務(wù)于應(yīng)用層,它的前身是SSL(Secure Socket Layer,安全套接字層),它實(shí)現(xiàn)了將應(yīng)用層的報(bào)文進(jìn)行加密后再交由TCP進(jìn)行傳輸?shù)墓δ堋?/p>

TLS的作用

TLS協(xié)議主要解決如下三個(gè)網(wǎng)絡(luò)安全問(wèn)題。

  1. 保密(message privacy),保密通過(guò)加密encryption實(shí)現(xiàn),所有信息都加密傳輸,第三方無(wú)法嗅探;
  2. 完整性(message integrity),通過(guò)MAC校驗(yàn)機(jī)制,一旦被篡改,通信雙方會(huì)立刻發(fā)現(xiàn);
  3. 認(rèn)證(mutual authentication),雙方認(rèn)證,雙方都可以配備證書(shū),防止身份被冒充;

TLS的發(fā)展過(guò)程

  • 1995: SSL 2.0, 由Netscape提出,這個(gè)版本由于設(shè)計(jì)缺陷,并不安全,很快被發(fā)現(xiàn)有嚴(yán)重漏洞,已經(jīng)廢棄。
  • 1996: SSL 3.0. 寫(xiě)成RFC,開(kāi)始流行。目前(2015年)已經(jīng)不安全,必須禁用。
  • 1999: TLS 1.0. 互聯(lián)網(wǎng)標(biāo)準(zhǔn)化組織ISOC接替NetScape公司,發(fā)布了SSL的升級(jí)版TLS 1.0版
  • 2006: TLS 1.1. 作為 RFC 4346 發(fā)布。主要修復(fù)了CBC模式相關(guān)的如BEAST攻擊等漏洞
  • 2008: TLS 1.2. 作為 RFC 5246 發(fā)布 。增進(jìn)安全性,目前應(yīng)該主要部署的版本
  • 2015之后: TLS 1.3,還在制訂中,支持0-rtt,大幅增進(jìn)安全性,砍掉了aead之外的加密方式

TLS是怎樣實(shí)現(xiàn)的

TLS協(xié)議可以分為兩部分

  1. 記錄協(xié)議(Record Protocol)
    通過(guò)使用客戶端和服務(wù)端協(xié)商后的秘鑰進(jìn)行數(shù)據(jù)加密傳輸。

  2. 握手協(xié)議(Handshake Protocol)
    客戶端和服務(wù)端進(jìn)行協(xié)商,確定一組用于數(shù)據(jù)傳輸加密的秘鑰串。

TLS握手過(guò)程

TLS握手
  • 步驟 1. ClientHello – 客戶端發(fā)送所支持的 SSL/TLS 最高協(xié)議版本號(hào)和所支持的加密算法集合及壓縮方法集合等信息給服務(wù)器端。

  • 步驟 2. ServerHello – 服務(wù)器端收到客戶端信息后,選定雙方都能夠支持的 SSL/TLS 協(xié)議版本和加密方法及壓縮方法,返回給客戶端。

  • (可選)步驟 3. SendCertificate – 服務(wù)器端發(fā)送服務(wù)端證書(shū)給客戶端。

  • (可選)步驟 4. RequestCertificate – 如果選擇雙向驗(yàn)證,服務(wù)器端向客戶端請(qǐng)求客戶端證書(shū)。

  • 步驟 5. ServerHelloDone – 服務(wù)器端通知客戶端初始協(xié)商結(jié)束。

  • (可選)步驟 6. ResponseCertificate – 如果選擇雙向驗(yàn)證,客戶端向服務(wù)器端發(fā)送客戶端證書(shū)。

  • 步驟 7. ClientKeyExchange – 客戶端使用服務(wù)器端的公鑰,對(duì)客戶端公鑰和密鑰種子進(jìn)行加密,再發(fā)送給服務(wù)器端。

  • (可選)步驟 8. CertificateVerify – 如果選擇雙向驗(yàn)證,客戶端用本地私鑰生成數(shù)字簽名,并發(fā)送給服務(wù)器端,讓其通過(guò)收到的客戶端公鑰進(jìn)行身份驗(yàn)證。

  • 步驟 9. CreateSecretKey – 通訊雙方基于密鑰種子等信息生成通訊密鑰。

  • 步驟 10. ChangeCipherSpec – 客戶端通知服務(wù)器端已將通訊方式切換到加密模式。

  • 步驟 11. Finished – 客戶端做好加密通訊的準(zhǔn)備。

  • 步驟 12. ChangeCipherSpec – 服務(wù)器端通知客戶端已將通訊方式切換到加密模式。

  • 步驟 13. Finished – 服務(wù)器做好加密通訊的準(zhǔn)備。

  • 步驟 14. Encrypted/DecryptedData – 雙方使用客戶端密鑰,通過(guò)對(duì)稱加密算法對(duì)通訊內(nèi)容進(jìn)行加密。

  • 步驟 15. ClosedConnection – 通訊結(jié)束后,任何一方發(fā)出斷開(kāi) SSL 連接的消息。

TLS記錄協(xié)議

TLS記錄協(xié)議


作者:freagle
鏈接:https://www.jianshu.com/p/1fc7130eb2c2
來(lái)源:簡(jiǎn)書(shū)
簡(jiǎn)書(shū)著作權(quán)歸作者所有,任何形式的轉(zhuǎn)載都請(qǐng)聯(lián)系作者獲得授權(quán)并注明出處。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多