為您解碼網(wǎng)站建設(shè)的點(diǎn)點(diǎn)滴滴
發(fā)表日期:2018-03 文章編輯:小燈 瀏覽次數(shù):2647
首先,我們得搞清楚什么是數(shù)字證書(shū),有什么作用。
數(shù)字證書(shū)是在維基百科上是這樣描述的:為通信提供電子認(rèn)證,用于網(wǎng)絡(luò)身份識(shí)別。說(shuō)白了就是網(wǎng)絡(luò)中的身份證,一般用于服務(wù)器。
現(xiàn)實(shí)中,一般是網(wǎng)站的服務(wù)器向CA機(jī)構(gòu)申請(qǐng)數(shù)字證書(shū),用于向客戶端(瀏覽器)證明自己的身份。在雙向認(rèn)證中,客戶端也會(huì)申請(qǐng)數(shù)字證書(shū),數(shù)字證書(shū)就跟你去公安局辦身份證一樣,也是要錢(qián)的。所以客戶端證書(shū)一般很少,例如銀行給你的U盾里就有客戶端證書(shū)。數(shù)字證書(shū)在通信中向網(wǎng)絡(luò)的一方證明數(shù)字證書(shū)持有者的身份,就像身份證證明你的身份一樣。
數(shù)字證書(shū)的結(jié)構(gòu)(基于 x.509 證書(shū)標(biāo)準(zhǔn)):
1 證書(shū)格式版本號(hào)
2 證書(shū)序列號(hào)
3 證書(shū)簽名算法
4 證書(shū)頒發(fā)者
5 證書(shū)有效期
6 對(duì)象的名稱
7 對(duì)象的公開(kāi)密鑰
8 其它信息
9 證書(shū)頒發(fā)機(jī)構(gòu)的數(shù)字簽名 (對(duì)前面8項(xiàng)內(nèi)容進(jìn)行哈希散列形成固定摘要,加上頒發(fā)者私鑰參數(shù)做參數(shù),用證書(shū)簽名算法最終形成簽名)
可以做個(gè)比喻,數(shù)字證書(shū)就如現(xiàn)實(shí)生活中的身份證(用于證明持證人身份),CA 機(jī)構(gòu)就是現(xiàn)實(shí)整的公安機(jī)關(guān)(頒發(fā)證件可信度高),而證書(shū)上的公鑰信息就類似于身份證的照片,數(shù)字證書(shū)的簽名就相當(dāng)于身份證的章?。ㄗC明是公安機(jī)關(guān)的)。
申請(qǐng)數(shù)字證書(shū)的流程 :
1 申請(qǐng)者(一般是服務(wù)器)自己生成申請(qǐng)證書(shū)的證書(shū)請(qǐng)求和私鑰,證書(shū)請(qǐng)求一般是 cer 文件,里面包含服務(wù)器公鑰等信息。
2 服務(wù)器向證書(shū)認(rèn)證機(jī)構(gòu)(權(quán)威CA機(jī)構(gòu))遞交證書(shū)請(qǐng)求。
3 CA 機(jī)構(gòu)核對(duì)服務(wù)器的證書(shū)請(qǐng)求。(核對(duì)是物理過(guò)程,很?chē)?yán)格)
4 CA 核對(duì)完畢,會(huì)給服務(wù)器頒發(fā)數(shù)字證書(shū)server.crt(物理過(guò)程)。證書(shū)包含公鑰和 CA 簽名等信息。
5 申請(qǐng)者使用數(shù)字證書(shū)
數(shù)字證書(shū)的驗(yàn)證流程:
1 將證書(shū)除最后簽名外的所有信息(如證書(shū)結(jié)構(gòu)里的8項(xiàng)信息)進(jìn)行哈希,生成摘要1.
2 對(duì)證書(shū)最后的數(shù)字簽名,用證書(shū)的簽名算法,加上證書(shū)頒發(fā)者的公鑰,最后生成摘要2.(此處頒發(fā)者的公鑰默認(rèn)是瀏覽器內(nèi)置的,證書(shū)最后的簽名是CA簽的,驗(yàn)證用的對(duì)應(yīng)是CA的公鑰)
3 對(duì)比摘要1和摘要2,若相等,則證明該數(shù)字證書(shū)是合法的機(jī)構(gòu)頒發(fā)的,證書(shū)信息也是可信的