公鑰基礎(chǔ)設(shè)施PKI(Public Key Infrastructure)是以不對稱秘鑰加密技術(shù)為基礎(chǔ),以數(shù)據(jù)機(jī)密性,完整性、身份認(rèn)證,行為不可抵賴性為安全目的,來提供安全服務(wù)的具有普遍適用性的安全基礎(chǔ)設(shè)施。它的主要內(nèi)容包括數(shù)字證書、不對稱密碼技術(shù)、認(rèn)證中心。證書和秘鑰的管理、安全代理軟件、不可否認(rèn)服務(wù)、時(shí)間戳服務(wù),相關(guān)的信息標(biāo)準(zhǔn)等,具體來說,PKI解決了信息傳遞中一系列必須解決的問題,例如:接收信息的人是否就是應(yīng)該接收該信息的人?接收信息的人是否具有相應(yīng)的安全等級(jí)來看這些信息?數(shù)據(jù)在傳輸和保存時(shí),是否本人暗中修改過?數(shù)據(jù)的加密措施是否可靠?等等!必須承認(rèn),要解決上述問題雖然PKI不是唯一的方案,但是可以說PKI是目前最完善的唯一最可行的技術(shù)。PKI的主要構(gòu)成如下:
第一、數(shù)字證書
是由認(rèn)證機(jī)構(gòu)經(jīng)過數(shù)字簽名后發(fā)給網(wǎng)上信息交易主體(企業(yè)或者個(gè)人,設(shè)備或者程序)的一段電子文檔。這段文檔包括主體名稱、證書序列號(hào)、發(fā)證機(jī)構(gòu)名稱、證書有效期、秘鑰算法標(biāo)識(shí)、公鑰和私鑰信息等。簽名證書和加密證書分開,最常用的證書格式為X.509 v3,x.509的證書結(jié)構(gòu)如下圖所示:
X.509證書格式
版本1、2、3
序列號(hào)
在CA內(nèi)部唯一
簽名算法標(biāo)識(shí)符
指該證書中的簽名算法
簽發(fā)人名字
CA的名字
有效時(shí)間
起始和終止時(shí)間
個(gè)體名字
個(gè)體的公鑰信息
算法
參數(shù)
密鑰
簽發(fā)人唯一標(biāo)識(shí)符
個(gè)體唯一標(biāo)識(shí)符
擴(kuò)展域
簽名
第二、認(rèn)證中心(CA Certification Atuthority)
CA是PKI的核心。它是公正、權(quán)威、可信的第三方網(wǎng)上認(rèn)證機(jī)構(gòu),負(fù)責(zé)數(shù)字證書的簽發(fā)、撤銷、生命周期管理、秘鑰管理和證書在線查詢等服務(wù);CA為使用公開密鑰的用戶發(fā)放數(shù)字證書,以此證明證書中列出的用戶名稱與證書中列出的公開密鑰相對應(yīng);CA在數(shù)字證書上的數(shù)字簽名使得攻擊者不能偽造和篡改數(shù)字證書;
CA還負(fù)責(zé)數(shù)字證書的撤銷,公布列入CRL的證書
CA的主要職責(zé)如下:
接收驗(yàn)證最終用戶數(shù)字證書的申請。
確定是否接受最終用戶數(shù)字證書的申請-證書的審批。
向申請者頒發(fā)、拒絕頒發(fā)數(shù)字證書-證書的發(fā)放。
接收、處理最終用戶的數(shù)字證書更新請求-證書的更新。
接收最終用戶數(shù)字證書的查詢、撤銷。
產(chǎn)生和發(fā)布證書廢止列表CRL(Certificate Revocation List) 。
數(shù)字證書的歸檔。
密鑰歸檔。
歷史數(shù)據(jù)歸檔。
第三、證書注冊審批機(jī)構(gòu)(RA Rregistration Authority)
RA是CA的數(shù)字證書發(fā)放、管理的延伸。它負(fù)責(zé)數(shù)字證書申請者的信息錄入、審核、以及數(shù)字證書的發(fā)放工作,同時(shí)對發(fā)放的數(shù)字證書進(jìn)行管理。RA系統(tǒng)是整個(gè)CA中心正常運(yùn)營不可缺少的一部分,是CA和用戶的接口。
主體注冊證書的個(gè)人認(rèn)證,確認(rèn)主體所提供的信息的有效性。這里的信息可以是書面形式的,也可以是電子形式的。但簽發(fā)證書所需的公鑰必須是電子形式的。
根據(jù)請求信息,驗(yàn)證請求者的身份檢查請求信息是否完整和正確。如果正確,則進(jìn)行下一步,否則,退回請求。對該請求分配一個(gè)身份識(shí)別符,且該身份識(shí)別符是唯一的,并對該請求信息、數(shù)字公鑰和身份識(shí)別符進(jìn)行簽名。將上述簽名連同以上信息提交給證書機(jī)構(gòu)CA,并把提交信息在本地做一個(gè)備份,在這里信息提交的信道應(yīng)該是加密的,而且對提交的請求應(yīng)做數(shù)字簽名
第四、端實(shí)體
包括持有者和驗(yàn)證者兩種。持有者是證書的擁有者,是證書所聲明的主體。持有者向管理實(shí)體申請并獲得證書,也可以在需要時(shí)請求更新或撤銷證書。持有者使用證書向?qū)Ψ阶C實(shí)自己的身份,從而獲得相應(yīng)的權(quán)利。驗(yàn)證者通常是授權(quán)的,確認(rèn)對方所提供的證書的有效性和對方是否為該證書的真正擁有者,只有在成功鑒別之后才可授權(quán)對方。
第五、證書庫
證書庫中存取的對象是證書和CRL,其完整性由數(shù)字簽名保證,因此對證書庫的操作可在無特殊安全保護(hù)的信道上傳輸。
不同的實(shí)體間通過PKI操作完成證書的請求、確認(rèn)、發(fā)布和撤銷、更新和獲取等過程。PKI操作分為存取操作和管理操作兩類。前者涉及管理實(shí)體、終端實(shí)體與證書庫之間的交互,操作的目的是向證書庫存放證書和CRL,或從證書庫中讀取證書和CRL;后者涉及管理實(shí)體與端實(shí)體之間或管理實(shí)體內(nèi)部的交互,操作的目的是完成證書的各項(xiàng)管理任務(wù)和建立證書鏈。各實(shí)體共同構(gòu)成了一個(gè)PKI系統(tǒng)。
第六、其它
秘鑰和證書管理工具:管理和審計(jì)數(shù)字證書的工具,認(rèn)證中心使用它來管理一個(gè)CA上的證書。
雙證書體系:PKI采用雙證書體系,非對稱算法支持RSA和ECC算法,對稱秘鑰算法支持國家密碼管理委員后制定的算法。
產(chǎn)生、驗(yàn)證和分發(fā)密鑰方式:
用戶自己產(chǎn)生密鑰對:用戶自己生成密鑰對,然后將公鑰以安全的方式傳送給CA,該過程必須保證用戶公鑰的可驗(yàn)證性和完整性。
CA為用戶產(chǎn)生密鑰對: CA替用戶生成密鑰對,然后將其安全地傳給用戶,該過程必須確保密鑰對的機(jī)密性、完整性和可驗(yàn)證性。該方式下由于用戶的私鑰為CA所知,故對CA的可信性要求更高。
CA(包括PAA、PCA、CA)自己產(chǎn)生自己的密鑰對
雙秘鑰證書的生成過程:
1、用戶使用客戶端產(chǎn)生雙秘鑰對
2、用戶的簽名私鑰保存在客戶端
3、用戶將簽名秘鑰對中的公鑰發(fā)給CA中心
4、CA中心為用戶的公鑰簽名,產(chǎn)生簽名證書
5、CA中心將該簽名證書傳給客戶端保存
6、KMC為用戶產(chǎn)生加密秘鑰對
7、KMC備份加密秘鑰用于密鑰恢復(fù)
8、CA中心為加密秘鑰對生成加密證書
9、CA中心將用戶的加密私鑰和加密證書打包成標(biāo)準(zhǔn)格式PKCS#12格式
10、將打包后的文件傳給客戶端
11、用戶客戶端裝入加密公鑰證書和加密私鑰
用到的關(guān)鍵技術(shù)
數(shù)字時(shí)間戳技術(shù)
時(shí)間戳是用來標(biāo)明一個(gè)事件發(fā)生的日期和時(shí)間的一種記號(hào),它一般是同生成該記號(hào)的人或機(jī)構(gòu)的身份聯(lián)系在一起的。這個(gè)標(biāo)記一般被附加在消息的后面,或以某種方式使其與消息形成邏輯上的關(guān)聯(lián)。
時(shí)間戳是由交易各方、可信任的第三方以及電信服務(wù)提供商們?yōu)榱四撤N目的而生成的。
可信任的第三方會(huì)讓專門的時(shí)間戳服務(wù)機(jī)構(gòu)在消息或摘要里附上時(shí)間數(shù)據(jù)后,再對結(jié)果進(jìn)行數(shù)字簽名。這種時(shí)間戳就可以用來作為支持不可否認(rèn)性的證據(jù)。
數(shù)字簽名
利用發(fā)信者的私鑰和可靠的秘鑰算法對待發(fā)送信息或者電子摘要進(jìn)行加密處理,這個(gè)過程和結(jié)果就稱為數(shù)字簽名。收信者可以利用發(fā)信者的公鑰對收到的信息進(jìn)行解密從而辨別真?zhèn)?。?jīng)過數(shù)字簽名后的信息具有真實(shí)性和不可否認(rèn)性。 如下圖所示,顯示了一個(gè)完整的驗(yàn)證過程:
首先,甲需要驗(yàn)證乙所用證書的真?zhèn)?。?dāng)乙在網(wǎng)絡(luò)上將證書傳送給甲時(shí),甲使用CA的公鑰解開證書上的數(shù)字簽名,如果簽名通過驗(yàn)證,則證明乙持有的證書是真的;其次,甲還需要驗(yàn)證乙身份的真?zhèn)?。乙可以將自己的口令用自己的私鑰進(jìn)行數(shù)字簽名傳送給甲,甲已經(jīng)從乙的證書中或從證書庫中查得了乙的公鑰,甲就可以用乙的公鑰來驗(yàn)證乙的數(shù)字簽名,如果該簽名通過驗(yàn)證,乙在網(wǎng)絡(luò)中的真實(shí)身份就能夠確定,并能獲得甲的的信任,反之,當(dāng)乙確定了甲的真實(shí)身份后,甲乙雙方就可以建立相互信任關(guān)系
聯(lián)系客服