1. 程式人生 > >Linux的安全和加密篇(二)CA和證書原理

Linux的安全和加密篇(二)CA和證書原理

CA和證書

PKI: Public Key Infrastructure

  •  簽證機構: CA( Certificate Authority)
  • 註冊機構: RA
  • 證書吊銷列表: CRL
  • 證書存取庫:

X.509:定義了證書的結構以及認證協議標準

版本號             序列號              簽名         演算法         頒發者

有效期限

主體名稱        主體公鑰          CRL分發點

擴充套件資訊        發行者簽名

證書獲取

證書型別:

證書授權機構的證書:

  • 伺服器               給網站辦法證書
  • 使用者證書           給使用者mail頒發證書

獲取證書兩種方法:

使用證書授權機構

  •      生成簽名請求( csr)
  •      將csr傳送給CA
  •      從CA處接收簽名

自簽名的證書

  • 自已簽發自己的公鑰

CA的實現需要配合一個協議SSL/TLS

安全協議

SSL: Secure Socket Layer, TLS: Transport Layer Security(傳輸層安全協議)

  • 1995: SSL 2.0 Netscape
  • 1996: SSL 3.0
  • 1999: TLS 1.0
  • 2006: TLS 1.1 IETF(Internet工程任務組) RFC 4346
  • 2008: TLS 1.2 當前使用
  • 2015: TLS 1.3

功能:機密性,認證,完整性,重放保護

兩階段協議,分為握手階段和應用階段

握手階段(協商階段):客戶端和伺服器端認證對方身份(依賴於PKI體系,利用數字證書進行身份認證),並協商通訊中使用的安全引數、密碼套件以及主金鑰。 後續通訊使用的所有金鑰都是通過MasterSecret生成。

應用階段:在握手階段完成後進入,在應用階段通訊雙方使用握手階段協商好的金鑰進行安全通訊

SSL/TLS

SSL/TLS工作在應用層和傳輸層中間;對應用層的應用進行加密

Handshake協議:包括協商安全引數和密碼套件、伺服器身份認證(客戶端身份認證可選)、金鑰交換;

ChangeCipherSpec 協議:一條訊息表明握手協議已經完成

Alert 協議:對握手協議中一些異常的錯誤提醒,分為fatal和warning兩個級別,fatal型別錯誤會直接中斷SSL連結,而warning級別的錯誤SSL連結仍可繼續,只是會給出錯誤警告

Record 協議:包括對訊息的分段、壓縮、訊息認證和完整性保護、加密等

HTTPS 協議:就是“HTTP 協議”和“SSL/TLS 協議”的組合。 HTTP over   SSL” 或“HTTP over TLS” ,對http協議的文字資料進行加密處理後,成為二進位制形式傳輸;

HTTPS結構

HTTPS工作過程