天天看點

openssl

https的實作過程

client 從網際網路下載下傳CA的證書(公匙 ),用于驗證server的身份 server 通過加密算法生成一對密匙,将公匙發給CA認證機構,做數字前面 CA通過自己的私匙加密server公匙并加上自己的數字簽名後,将生成的數字證書發給server client 與 server 通過TCP 的三次握手建立連接配接 client發出HTTP 的封包請求,并和server協商使用哪種算法加密 server 響應 封包并将證書(公匙)發給用戶端 client通過CA的證書(公匙)解密,server發過的證書,得到server的公匙和數字簽名,client 通過散列函數算出server公匙的數字簽名與

          得到的數字簽名對比,來驗證server身份

client 生成随機對稱密匙,并用伺服器的公匙加密,然後傳給伺服器 server用私匙解密對稱密鑰,然後用其作為server和client 的 通話密碼 加解密通信 server 處理請求,對通路相關資源做出相應封包

SSL 的 工具 openssl

1 安裝openssl 預設已經安裝

2 openssl 的軟體組成

libcrpto  通用加密庫

libssl        TLS/SSL的實作,基于會話 實作身份認證,資料機密性,完整性

openssl    多用途指令行工具

3 openssl 常用指令

   enc   加解密

dgst   提取特征碼

生成随機數    n*2

4  openssl 實作私有CA具體步驟

一  建立CA機構

       修改配置檔案

       生成一對秘鑰

       生成自簽證書

二   用戶端

       生成證書頒發請求    .csr

       将請求發給CA

三   CA 機構

       簽署此證書

        傳送給用戶端    

建立CA

配置 httpd 使用證書

繼續閱讀