CA认证及鉴定过程
CA認證流程🚔
關鍵詞??
- CSR
CSR是Certificate Signing Request的英文縮寫,即證書請求文件,也就是證書申請者在申請數字證書時由CSP(加密服務提供者)在生成私鑰的同時也生成證書請求文件,證書申請者只要把CSR文件提交給證書頒發機構后,證書頒發機構使用其根證書私鑰簽名就生成了證書公鑰文件,也就是頒發給用戶的證書。 - 自簽證書
利用 openssl 模擬CA進行的證書認證過程
申請證書步驟🙈
1.生成CA證書🐼
- 1.1 CA生成秘鑰
openssl genrsa -out ./cakey.pem 2048 - 1.2 生成自簽名證書
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out cacert.pem -days 3650
2.生成server端的 csr(請求證書)🐌
- 2.1 生成服務端私鑰
openssl genrsa -out server.key 1024 - 2.2 生成CSR證書()
openssl req -new -key server.key -out server.csr
3. 頒發證書🦍
- 3.1 證書頒發
openssl ca -in server.csr -out server.crt -days 1000
驗證證書步驟🙈
-
1.客戶端收到證書后進行證書有效性的驗證,這其中涉及證書鏈, 上級證書會簽名到下級證書代表由上級證書進行頒發的合法證書,驗證過程即層層遞歸最終找到CA根證書然后用根證書的公鑰去校驗下級證書的簽名是否合法,最終驗證客戶端收到的證書簽名是否合法,如下圖:
-
2.客戶端對收到服務端傳來的證書利用本地的證書公鑰進行解密
-
3.解密后拿到證書明文和數字簽名
-
4.CA公鑰解密數字簽名,拿到數字摘要
-
5.hash證書明文本地生成數字摘要
-
6.校驗數字摘要是否相等, 若相等則代表證書明文沒有做過篡改
-
7.最終拿到服務端的公鑰, 利用公鑰交換對稱密鑰進行之后的加密通信
-
2-6可以描述為下圖
總結🐣
- 1.簽名證書的流程
- 服務端生成 csr 請求證書交給CA,由CA進行證書簽名
- 將CSR提交給CA,CA一般有2種認證方式:
1、域名認證,一般通過對管理員郵箱認證的方式,這種方式認證速度快,但是簽發的證書中沒有企業的名稱;
2、企業文檔認證,需要提供企業的營業執照
- 2.證書之于服務端相當于 身份證之于個人是一種身份認證
- 3.自己總結的交互簽名方式
通信加密簽名的幾種場景
特殊通信(少數: 密鑰串及規則的交互是私下的,不走公共通道的) - 加鹽hash, 服務端發送對稱加密的key給到客戶端, 并私下約定對報文進行簽名的方式, 如:
雙方約定 報文按規則拼接 + salt(時間戳(毫秒級)+固定字符串(“O”)+密鑰串) 之后hash生成唯一散列值, 這種簽名方式針對特殊客戶的少量通信, 安全性在不暴露salt的基礎上很安全 - 對稱加密
總結
- 上一篇: gtsam 学习十(ISAM2 理论)
- 下一篇: 安装SQL server显示重新启动计算