1:根證書:由權(quán)威機(jī)構(gòu)發(fā)布,在操作系統(tǒng)和網(wǎng)絡(luò)中記錄
2:數(shù)字證書的生成時(shí)分層級(jí)的,下一級(jí)證書的生成需要上一級(jí)證書的私鑰簽名,驗(yàn)證的時(shí)候也需要上一級(jí)證書的公鑰驗(yàn)簽。
3:根證書是自簽名的,用自己的私鑰簽名。
簽名:簽名就是在信息的后面再加上一段內(nèi)容,可以證明信息沒有被修改過。
具體操作:對(duì)一段信息hash之后得到hash值,將這個(gè)hash添加到這段信息之后一起發(fā)送給別人。但是在實(shí)際操作的情況下為了防止hash值被別人修改,一般將hash值加密(簽名)之后再添加到信息后面再進(jìn)行發(fā)送。
4:證書的內(nèi)容:
對(duì)象名稱
共有名稱
證書的頒發(fā)者
簽名算法(簽名也叫做指紋)
序列號(hào)
生效期 失效期
公鑰
簽名
5.證書的生成:
證書的頒發(fā)者在得到證書申請(qǐng)者的一些必要的信息(對(duì)象名稱,公鑰,私鑰)之后,證書的頒發(fā)者通過哈希得到證書摘要,并用證書頒發(fā)者的私鑰給這個(gè)摘要加密,得到數(shù)字簽名。綜合所有信息生成包含公鑰和私鑰的兩個(gè)證書。

6.證書的驗(yàn)證:
證書的驗(yàn)證:
我們"ABC Company"申請(qǐng)到這個(gè)證書后,我們把證書投入使用,我們?cè)谕ㄐ胚^程開始時(shí)會(huì)把證書發(fā)給對(duì)方,對(duì)方如何檢查這個(gè)證書的確是合法的并且是我們"ABC Company"公司的證書呢?
1.首先應(yīng)用程序(對(duì)方通信用的程序,例如IE、OUTLook等)讀取證書中的Issuer(發(fā)布機(jī)構(gòu))為"SecureTrust CA" ,然后會(huì)在操作系統(tǒng)中受信任的發(fā)布機(jī)構(gòu)的證書中去找"SecureTrust CA"的證書,如果找不到,那說明證書的發(fā)布機(jī)構(gòu)是個(gè)水貨發(fā)布機(jī)構(gòu),證書可能有問題,程序會(huì)給出一個(gè)錯(cuò)誤信息;
2.如果在系統(tǒng)中找到了"SecureTrust CA"的證書,那么應(yīng)用程序就會(huì)從證書中取出"SecureTrust CA"的公鑰,然后對(duì)我們"ABC Company"公司的證書里面的簽名和簽名算法用這個(gè)公鑰進(jìn)行解密;
3.然后使用這個(gè)簽名算法計(jì)算"ABC Company"證書的簽名,將這個(gè)計(jì)算的簽名與放在證書中的簽名對(duì)比,如果一致,說明"ABC Company"的證書肯定沒有被修改過并且證書是"SecureTrust CA" 發(fā)布的,證書中的公鑰肯定是"ABC Company"的。對(duì)方然后就可以放心的使用這個(gè)公鑰和我們"ABC Company"進(jìn)行通信了。

4.從上面可以看出花錢買的證書不需要下載額外的私鑰證書到客戶端,但是個(gè)人自己生成的證書需要在客戶端下載私鑰,因?yàn)榛ㄥX買的證書會(huì)將證書加入到受信任的證書層級(jí)里面,下一級(jí)證書由上一級(jí)證書驗(yàn)證,一直到根證書。
摘自:
https://www.cnblogs.com/oc-bowen/p/5896041.html
https://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html
https://www.cnblogs.com/oc-bowen/p/5896041.html
http://oncenote.com/2014/10/21/Security-1-HTTPS/