openssl原理的初步理解與私人CA伺服器的建立

來源:互聯網
上載者:User

標籤:私人ca openssl加密過程

密碼編譯演算法主要分為對稱式加密演算法和對稱式加密演算法

 一。對稱式加密演算法的原理:使用相同的密鑰進行加密運算的演算法就是對稱式加密演算法
       加密過程(內容-->對稱式加密-->加密後的內容)
       解密過程(加密內容-->對稱式加密方式--》解密後的內容)
       優點與特點:速度塊 加密相對安全 加密緊湊;缺點是不能用於大規模使用,會隨參與人數的正佳而映像密鑰的儲存和管理,不支援數位簽章和不可否認性
   
二.  非堆成加密的原理:非對稱演算法需要每個參與者產生一對密鑰,且將公開金鑰共用到伺服器,保證了私 鑰的安全
        加密解密過程:產生金鑰組--> 通過公開金鑰/私密金鑰進行加密-->加密內容-->通過私密金鑰/公開金鑰進行解密-->解密後的內容
        優點:不需要發送密鑰給接受者,密鑰數目與參與者相同,沒有複雜的密鑰分發問題,在交換公開金鑰錢不需要預先建立信任關係
        缺點:加密速度慢,會導緻密文遠大於加密前的長度  
        
三.單向加密的過程:(發送方=A  接受方=B 傳輸內容=O)
          1.A使用演算法產生自己的數位簽章,用自己的私密金鑰對數位簽章加密並與C打包
          2.A使用演算法產生隨機對稱金鑰密碼編譯整個資料,產生資料C1
          3.A再用B的公開金鑰加密隨機產生的對稱金鑰,產生最終的資料CC
          4.B先使用自己的私密金鑰對資料CC機密,得到產生的隨機對稱金鑰
          5。B再用A的公開金鑰解密有A的私密金鑰加密產生的數字就簽名
          6.最後對比數位簽章,確定該包是否由A發送過來的
        
         
       
  四. 認證的產生流程:        
         1.Client 能互連網下載CA的公開金鑰,用於驗證Server身份
         2.Server 通過密碼編譯演算法產生一對密鑰,將公開金鑰發給CA認證機構,做數位憑證
         3.CA 通過自己的私密金鑰加密 Server 公開金鑰並加上自己的數位簽章後,將產生的數位憑證發給Server
         4.Client 與 Server 通TCP的三向交握建立串連
         5.Client 發出HTTP的報文請求,並和Server協商使用哪種演算法加密
         6.Server 響應報文並將公開金鑰(CA認證)發送給用戶端
         7.Client 能通過CA的公開金鑰解密CA認證,得到Server的公開金鑰和數位簽章,Client 通過散列函數算出
                    Server公開金鑰的數位簽章與得到的數位簽章對比,來驗證Server身份,驗證成功並發送資料請求
         8.Server 處理請求,並根據Client請求的資源類型,來訪問相關資源做出響應報文,並記錄日誌
         9.Client 與 Server 通過TCP的四次揮手中斷連線,通訊完成

 

五.建立CA認證簽署伺服器

     (一)CA伺服器

      1.產生金鑰組

650) this.width=650;" title="ca1.png" src="http://s3.51cto.com/wyfs02/M02/43/D7/wKioL1PdycXBFBx2AACo2vQBxBE179.jpg" alt="wKioL1PdycXBFBx2AACo2vQBxBE179.jpg" />

      2.產生自簽署認證

650) this.width=650;" title="ca2.png" src="http://s3.51cto.com/wyfs02/M02/43/D6/wKiom1PdyLvxLlACAAHprclskwo579.jpg" alt="wKiom1PdyLvxLlACAAHprclskwo579.jpg" />

      3.初始化工作環境

         #touch /etc/pki/CA/{index.txt,serial}

         #echio  01 > index.txt

       

     (二)節點產生簽署認證請求(這裡以http服務為例)

      1.產生金鑰組

650) this.width=650;" title="jiedian1.png" src="http://s3.51cto.com/wyfs02/M00/43/D6/wKiom1PdyYbTCSVGAADDrnFUmN4427.jpg" alt="wKiom1PdyYbTCSVGAADDrnFUmN4427.jpg" />

       2.產生簽署請求

650) this.width=650;" title="jiedian2.png" src="http://s3.51cto.com/wyfs02/M00/43/D7/wKioL1Pdyq_Q59Z9AAInU0Ttxew705.jpg" alt="wKioL1Pdyq_Q59Z9AAInU0Ttxew705.jpg" />

         3.使用scp將簽署請求發送給CA伺服器 使用scp即可

 

     (三)CA為節點簽署認證

       1.驗證認證的資訊的真實性

        2.簽署認證

650) this.width=650;" title="qianshou.png" src="http://s3.51cto.com/wyfs02/M00/43/D7/wKioL1PdyvGDGqZlAAJVxVGAqfc105.jpg" alt="wKioL1PdyvGDGqZlAAJVxVGAqfc105.jpg" />

        3.將認證發送給節點

            #scp 認證名  伺服器IP地址

       (四)吊銷認證

       1.節點後去認證中的serial與subject資訊,並將資訊發送給CA伺服器

        # openssl x509 -in /path/to/certificate_file.crt -noout -serial -subject

     

        2.CA伺服器對比驗證需要撤銷憑證

        3.吊銷認證

             # openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem

 

         4.產生吊銷列表

         # echo 00 > /etc/pki/CA/crlnumber

 

         5、更新憑證撤銷清單
         # cd /etc/pki/CA/crl/
         # openssl ca -gencrl -out thisca.crl

 

         如果需要,查看crl檔案的內容:
         # openssl crl -in /path/to/crlfile.crl -noout -text

 

註:openssl的各子命令的詳細用法請使用# man openssl       

本文出自 “菜鳥前行之路” 部落格,謝絕轉載!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.