SSL数字证书(一)CA、根证书与数字证书
網絡安全無疑是現階段互聯網發展最大的問題,數字證書是解決這個問題的一個繞不開的辦法,不管是ActiveX插件還是https都需要用到數字證書。
1. 基本概念
- CA(Certificate Authority)被稱為證書授權中心,是數字證書發放和管理的機構。
- 根證書是CA認證中心給自己頒發的證書,是信任鏈的起始點。安裝根證書意味著對這個CA認證中心的信任。
- 數字證書頒發過程一般為:
- 用戶首先產生自己的密鑰對,
- 將公共密鑰(公鑰)及部分個人身份信息傳送給認證中心
- 認證中心在核實身份后,將執行一些必要的步驟,以確信請求確實由用戶發送而來,然后,認證中心將發給用戶一個數字證書,該證書內包含用戶的個人信息和他的公鑰信息,同時還附有認證中心的簽名信息
有4個概念一定要清楚:
1.1 CA根證書,CA證書
CA證書有兩個作用:
在SSL通信握手過程中,需要將公鑰數字證書交給對方,對方如何對數字證書進行校驗?就是要在找到簽發此證書的CA證書及證書鏈,一直找到CA根證書。
1.2 數字證書
使用CA證書的私鑰給用戶生成的公鑰簽名,生成公鑰數字簽名證書。證書是為了防偽、防冒充的。
我們通常說的數字證書都是公鑰數字證書:包含公鑰、簽發證書的CA證書信息、CA數字簽名等數據。
要驗證數字證書的真偽,就需要找到簽發這個證書的CA證書,要驗證CA證書的真偽則需要找到簽發CA證書的CA證書,就這樣一直找到根證書。
1.3 非對稱密鑰系統
非對稱加密、私鑰、公鑰、加密、簽名。
非對稱加密:在非對稱加密系統中,公鑰加密的數據只有私鑰才能解密,私鑰加密的數據只有公鑰才能接密。
加密:公鑰加密,私鑰解密
簽名:私鑰加密、公鑰解密
1.4 ssh免密登錄
在ssh免密登錄中,需要將公鑰放到遠程服務器中,本地保存私鑰,即可實現免密登錄。
2. 認證流程
https認證流程:
- 1、服務器生成一對密鑰,私鑰自己留著,公鑰交給數字證書認證機構(CA)
- 2、CA進行審核,并用CA自己的私鑰對服務器提供的公鑰進行簽名生成數字證書
- 3、將生成的數字證書部署到web服務器
- 4、client在https建立連接時,需要先從服務器獲取數字證書,在本機找到數字證書的簽發機構的CA的公鑰(根證書)對數字證書進行驗證,比對一致,說明該數字證書確實是CA頒發的(得此結論有一個前提就是:客戶端的CA公鑰確實是CA的公鑰,即該CA的公鑰與CA對服務器提供的公鑰進行簽名的私鑰確實是一對。),而CA又作為權威機構保證該公鑰的確是服務器端提供的,從而可以確認該證書中的公鑰確實是合法服務器端提供的。
注:為保證第4步中提到的前提條件,CA的公鑰必須要安全地轉交給客戶端(CA根證書必須先安裝在客戶端),因此,CA的公鑰一般來說由瀏覽器開發商內置在瀏覽器或操作系統的內部。于是,該前提條件在各種信任機制上,基本保證成立。
3. 制作自己的根證書及數字證書
通過CA生成數字證書比較很麻煩,而且要收費貴,在公司設備與公司的服務器通信時可以采用自己生成的數字證書,但是需要將數字證書導入到設備中。
制作數字證書工具 makecert : makecert 制作數字證書
數字簽名工具SignTool下載【 鏈接: https://pan.baidu.com/s/1nROzB5qcmrY25E-PlW3mFw 密碼: x5jj】
總結
以上是生活随笔為你收集整理的SSL数字证书(一)CA、根证书与数字证书的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从《士兵突击》看职场之现象
- 下一篇: 结构体内存对齐,默认对齐数,结构体传参