HTTPS申請證書並部署到網站流程

轉自:https://www.cnblogs.com/zdz8207/p/https-public-key-pem-crt.html

https申請證書並部署到網站流程:

1、生成一對祕鑰,設公鑰爲pubk1,私鑰爲prik1
2、假設發佈的網站地址爲https://www.example.com
3、生成一個CSR文件(Cerificate Signing Request),該文件內容包括: pubk1,網站地址,以及營業執照等信息,然後將該文件發給CA機構
4、CA機構收到CSR文件後,進行審覈,主要檢查網站地址的擁有者是否是證書的申請者
5、審覈通過後,CA機構生成一對祕鑰,假設採用ECDSA簽名算法,公鑰爲pubk2,私鑰爲prik2。用prik2對CSR文件進行簽名得到簽名值sigVal,將sigVal附在CSR文件後面形成證書文件caFile,caFile中還要添加CA機構的信息,如: 簽名算法,CA機構名稱等
6、將證書文件caFile放到網站服務器對應目錄下

====================

====================

瀏覽器驗證證書流程:

1、瀏覽器向服務器發請求https://www.example.com
2、服務器將caFile和pubkey1(實際上就是申請證書流程中生成的一對祕鑰中的公鑰pubk1)發給瀏覽器
3、瀏覽器收到caFile文件進行分析,知道了簽名算法;拿到CA機構名稱後,由於瀏覽器中內置了該CA機構的根證書,所以知道pubk2;還知道caFile文件中的簽名值sigVal以及原文(caFile的一部分,這部分在申請證書流程中稱爲CSR文件)知道這四個條件,就可以驗證簽名了,若驗證簽名成功則進入第4步。
4、接下來瀏覽器校驗證書申請者的身份,從caFile中取出pubk1和網站地址w1。如果w1和https://www.example.com一摸一樣,而且pubk1與連接成功後服務器發下來的公鑰pubkey1相等,則說明瀏覽器連接的https://www.example.com沒問題,而且沒有受到中間人攻擊
5、一旦服務器校驗成功,接下來就是進行祕鑰協商,這個協商成功後的祕鑰就是真正用來加密業務數據的祕鑰

參考:
https://www.linuxidc.com/Linux/2015-01/112073.htm,openssl進行RSA加解密
https://www.linuxidc.com/Linux/2015-01/112072.htm, openssl製作CA證書

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章