一種x509數(shù)字證書與證書應用之間的精確化身份認證方法
【專利摘要】本發(fā)明一種X509數(shù)字證書與證書應用之間的精確化身份認證方法,包括:搭建身份認證平臺,通過自動加載證書鏈、CRL并自動更新的方式,提供高效的證書鏈和CRL驗證,配合在平臺上維護的數(shù)字證書與證書應用之間的匹配關系,最終形成唯一的可信列表,為證書應用提供身份認證服務;精確化身份認證,證書應用在對數(shù)字證書進行身份認證時,只需要驗證該證書是否存在于該應用對應的可信列表即可。本發(fā)明立足身份認證平臺,通過安全高效的證書驗證方式,配合維護數(shù)字證書與證書應用間的匹配關系,創(chuàng)新性構(gòu)建唯一的可信列表,減少了證書應用既要驗證白名單又要驗證黑名單的繁瑣,提高了驗證效率,實現(xiàn)了數(shù)字證書與證書應用之間的精確化身份認證。
【專利說明】一種X509數(shù)字證書與證書應用之間的精確化身份認證方法
【技術(shù)領域】
[0001]本發(fā)明一般應用于公開密鑰基礎設施系統(tǒng)(PKI)領域,尤其是涉及一種X509數(shù)字證書與證書應用之間的精確化身份認證方法,能夠安全可靠高效的對數(shù)字證書進行精確化身份認證。
【背景技術(shù)】
[0002]X509是由ITU-T推薦的一個國際標準,X.509定義了一個已經(jīng)被廣泛接受的PKI基礎,它包括數(shù)據(jù)格式和通過由證書機構(gòu)簽發(fā)的數(shù)字證書來進行分發(fā)公鑰的過程。
[0003]數(shù)字證書是一個經(jīng)證書授權(quán)中心數(shù)字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件。它是由一個由權(quán)威機構(gòu)——CA機構(gòu),又稱為證書授權(quán)(CertificateAuthority)中心發(fā)行的,最簡單的證書包含一個公開密鑰、名稱以及證書授權(quán)中心的數(shù)字簽名。
[0004]證書指紋是用于保護證書完整性的,是將證書的內(nèi)容采用一定的哈希算法計算得出。用于數(shù)字證書的哈希算法一般為SHAl或MD5,兩種算法是單向且不可逆的,也就是說,無法通過哈希之后的數(shù)據(jù)計算出哈希之前的原文,并且原文數(shù)據(jù)做過任何一點改動經(jīng)過哈希值后獲得的數(shù)據(jù)將完全不同。由此可知,證書指紋是唯一的。
[0005]數(shù)字簽名具備不可篡改、不可抵賴的特性,使得數(shù)字證書替代用戶名和口令方式,越來越多的成為眾多信息系統(tǒng)首選的身份認證方式。
[0006]證書吊銷列表CRL:俗稱黑名單,是一個被簽署的列表,它指定了一套證書發(fā)布者認為無效的證書。CRL —定是被CA所簽署的,可以使用與簽發(fā)證書相同的私鑰,也可以使用專門的CRL簽發(fā)私鑰。
[0007]傳統(tǒng)上對于數(shù)字證書進行身份認證的方式,主要是驗證三個方面,一、驗證數(shù)字證書的簽名者信息,二、驗證數(shù)字證書的有效期,三、驗證數(shù)字證書是否存在于其頒發(fā)者所簽發(fā)的CRL中。這種身份認證方法僅能滿足一般性的僅限于數(shù)字證書本身的場景,但其缺點和局限性也是明顯的:
[0008]I)僅能做數(shù)字證書合法性認證,無法結(jié)合證書應用進行身份認證。這種身份認證方式,僅僅驗證數(shù)字證書本身是否合法,一旦和某個證書應用結(jié)合起來,將無法解決數(shù)字證書在這個證書應用當中的身份認證問題。例如,可以驗證張三的數(shù)字證書是合法的,但無法驗證張三的數(shù)字證書在某報稅系統(tǒng)(證書應用)中的身份是否合法。
[0009]2)證書合法性驗證的效率差。傳統(tǒng)上對于數(shù)字證書進行身份認證的方式,對每一張證書都需要驗證是否存在于其頒發(fā)者所簽發(fā)的CRL中,即首先下載該證書所屬頒發(fā)機構(gòu)簽發(fā)的CRL,然后加載,再解析證書的證書序列號,然后在加載的CRL中做匹配,如果存在,則說明此證書已經(jīng)被注銷,為非法狀態(tài),否則說明該證書合法。隨著CA機構(gòu)業(yè)務量的增大,CRL會越來越大,現(xiàn)在有些CA機構(gòu)的CRL大小已經(jīng)有20M。這樣每加載一次CRL再做一次驗證,其耗時會越來越長,效率將越來越低。[0010]在已公布的專利《一種數(shù)字證書精確化認證方法、裝置及云認證服務系統(tǒng)》中,提到了 一種數(shù)字證書精確化認證方法:首先創(chuàng)建白名單數(shù)據(jù),建立一條新的白名單數(shù)據(jù),將可應用的數(shù)字證書序列號和該證書的具體應用系統(tǒng)信息寫入到該條白名單中,根據(jù)預先設定的映射規(guī)則對數(shù)字證書中的信息項進行映射,將映射關系和數(shù)據(jù)錄入到白名單數(shù)據(jù)中,最后由各網(wǎng)絡安全服務器根據(jù)獲得的白名單列表和黑名單列表進行數(shù)字證書認證,僅允許在白名單中列出且未包含在黑名單中的數(shù)字證書認證通過。這種數(shù)字證書精確化認證方法,也存在一定的缺點與不足:
[0011]I)數(shù)字證書序列號無法唯一確定數(shù)字證書身份,存在安全隱患。盡管有規(guī)定:由CA機構(gòu)發(fā)行的數(shù)字證書其證書序列號必須唯一。但全國有33家合法CA機構(gòu),每家CA機構(gòu)的發(fā)證系統(tǒng)各自運行在其安全內(nèi)網(wǎng)中,互不聯(lián)通;另外每家CA機構(gòu)用于生成證書序列號的算法也各不相同,所以完全有可能出現(xiàn)兩張不同的數(shù)字證書卻擁有相同的證書序列號的情況。一旦這種情況發(fā)生,《一種數(shù)字證書精確化認證方法、裝置及云認證服務系統(tǒng)》這個專利描述的精確化認證方法就會出現(xiàn)嚴重漏洞,造成安全隱患。
[0012]2)證書身份驗證的效率差。同傳統(tǒng)上對于數(shù)字證書進行身份認證的方式一樣,《一種數(shù)字證書精確化認證方法、裝置及云認證服務系統(tǒng)》這個專利提出的身份認證方法是:“各網(wǎng)絡安全服務器根據(jù)獲得的白名單列表和黑名單列表進行數(shù)字證書認證,僅允許在白名單中列出且未包含在黑名單中的數(shù)字證書認證通過”,這里明確的提出也要驗證黑名單,即驗證某證書所屬頒發(fā)機構(gòu)簽發(fā)的CRL,在上面內(nèi)容中已有陳述:“隨著CA機構(gòu)業(yè)務量的增大,CRL會越來越大,現(xiàn)在有些CA機構(gòu)的CRL大小已經(jīng)有20M。這樣每加載一次CRL再做一次驗證,其耗時會越來越長,效率將越來越低”。經(jīng)實際測試,加載一個20M左右的CRL需要耗時5000毫秒左右,如果該證書應用同時用到了幾家CA證書,那么就需要加載這幾家CA所簽發(fā)的CRL,用時會更久,用戶體驗也將更差。
【發(fā)明內(nèi)容】
[0013]為了能安全、高效的對數(shù)字證書進行精確化認證,同時避免出現(xiàn)上述問題,本發(fā)明的目的在于提供一種X509數(shù)字證書與證書應用之間的精確化身份認證方法,使得數(shù)字證書能夠在證書應用中的身份認證既安全又高效,同時保證數(shù)字證書的認證不受CA機構(gòu)的限制。
[0014]為了實現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:一種X509數(shù)字證書與證書應用之間的精確化身份認證方法,方法至少包括:
[0015]一、建立一個身份認證平臺,針對證書應用提供身份認證服務。其重要構(gòu)建方式主要有:
[0016]I)在身份認證平臺配置證書應用。配置主要包含:該證書應用支持CA機構(gòu)的證書鏈、該證書應用支持CA機構(gòu)的CRL(可上傳CRL,或配置CRL地址由平臺自動下載)。配置完成后身份認證平臺會在數(shù)據(jù)庫中為每個證書應用創(chuàng)建一張數(shù)字證書與證書應用的匹配表。
[0017]2)證書鏈以及CRL自動載入。按照國家相關政策法規(guī)規(guī)定,每家CA機構(gòu)的證書鏈以及CRL都必須是公開發(fā)布的。平臺的數(shù)據(jù)加載模塊會根據(jù)第一步中的配置,將證書鏈以及CRL加載到內(nèi)存中,并能根據(jù)設置及時更新CRL,以保證加載到平臺的CRL是CA機構(gòu)所頒發(fā)的最新的,從而最大程度上保證安全性。[0018]3)證書合法性驗證。每張數(shù)字證書在申請進入證書應用時,都會經(jīng)過身份認證平臺的三次驗證,依次是:驗證該數(shù)字證書的有效期;驗證該數(shù)字證書的證書鏈;驗證該證書是否存在于CRL中。三次驗證均通過說明數(shù)字證書合法,平臺將該數(shù)字證書加入到匹配表中。
[0019]4)提供可信、安全的身份認證服務。平臺為每個證書應用提供的身份認證服務可以有兩種方式:一種是對證書應用提供在線身份認證接口,以直接的開放接口形式的提供即時身份認證服務;另外一種是對證書應用提供平臺設備接口,由代理證書應用做身份認證的安全網(wǎng)關設備通過該接口和身份認證平臺交互,獲取數(shù)字證書與該證書應用匹配表的部分或全部信息,并能確保其有效更新,從而完成身份認證。不管是哪種方式,證書應用獲得的認證結(jié)果都是經(jīng)身份認證平臺簽名,是可信安全的。
[0020]二、精確化身份證書認證。因為身份認證平臺已經(jīng)對加入到匹配表中的證書做了包含驗證CRL在內(nèi)的三次驗證,所以證書應用在對數(shù)字證書進行身份認證時,只需要驗證該數(shù)字證書是否存在于該數(shù)字證書應用對應的可信列表即可,這樣極大地減少了證書應用的開發(fā)難度,同時因為不再需要驗證CRL而大大提供了證書應用的驗證效率,提高了用戶友好體驗度。
[0021]有益效果:本發(fā)明立足身份認證平臺,在平臺上維護數(shù)字證書與證書應用之間的匹配關系,通過自動加載證書鏈、CRL并能及更新的方式,創(chuàng)新性的將本該證書應用驗證黑名單的環(huán)節(jié)放置在身份認證平臺上,創(chuàng)新性的將一般方案中的白名單與黑名單合并統(tǒng)一加載到匹配表中處理,不但減少了證書應用既要驗證白名單又要驗證黑名單的繁瑣,又提高了驗證效率。本發(fā)明還應用了數(shù)字簽名技術(shù),由身份認證平臺對身份認證結(jié)果簽名,使得身份認證過程更加安全可信。
【專利附圖】
【附圖說明】
[0022]圖1為本發(fā)明的證書應用配置流程圖。
[0023]圖2為本發(fā)明的證書鏈及CRL載入流程圖。
[0024]圖3為本發(fā)明的證書合法性驗證流程圖。
[0025]圖4通過在線身份認證接口完成身份精確認證流程圖。
[0026]圖5設備與身份認證平臺交互流程圖。
[0027]圖6證書應用和設備對數(shù)字證書進行精確化身份認證的流程。
【具體實施方式】
[0028]下面結(jié)合附圖和【具體實施方式】對本發(fā)明進行進一步詳細的說明。
[0029]一、搭建身份認證平臺
[0030]每個基于數(shù)字證書的、需要對數(shù)字證書進行身份認證的應用系統(tǒng),都可以稱為一個證書應用。搭建身份認證平臺,目的在于在平臺上維護數(shù)字證書與證書應用之間的匹配關系,通過自動加載證書鏈、CRL并能及更新的方式,將本該證書應用驗證黑名單的環(huán)節(jié)放置在身份認證平臺上,通過這種方式將傳統(tǒng)上的白名單和黑名單合二為一形成唯一的可信列表,從而提高驗證效率,提高安全可信度。平臺的主要構(gòu)建方式包括:
[0031]I)在身份認證平臺配置證書應用。配置主要包含:該證書應用支持CA機構(gòu)的證書鏈、該證書應用支持CA機構(gòu)的CRL (可上傳CRL,或配置CRL地址由平臺自動下載)。配置完成后身份認證平臺會為每個證書應用創(chuàng)建一張數(shù)字證書與證書應用的匹配表。具體流程參見圖1。
[0032]2)證書鏈以及CRL自動載入。平臺的數(shù)據(jù)加載模塊會根據(jù)第一步中的配置,將證書鏈以及CRL加載到內(nèi)存中,并能根據(jù)設置及時更新CRL,以保證加載到平臺的CRL是CA機構(gòu)所頒發(fā)的最新的,從而最大程度上保證安全性。具體流程參見圖2。
[0033]3)證書合法性驗證。每張數(shù)字證書在申請進入證書應用時,都會經(jīng)過身份認證平臺的三次驗證,依次是:驗證該數(shù)字證書的有效期;驗證該數(shù)字證書的證書鏈;驗證該證書是否存在于CRL中。三次驗證均通過說明數(shù)字證書合法,平臺將該數(shù)字證書加入到匹配表中,該匹配表采用數(shù)字證書指紋作為唯一主鍵。具體流程參見圖3。
[0034]4)提供可信、安全的身份認證服務。平臺為每個證書應用提供的身份認證服務可以有兩種方式:一種是對證書應用提供在線身份認證接口,以直接的開放接口形式的提供即時身份認證服務;另外一種是對證書應用提供平臺設備接口,由設備代理證書應用進行身份認證,即設備通過該接口和身份認證平臺交互,獲取數(shù)字證書與該證書應用匹配表的部分或全部信息,并能確保其有效更新,從而完成身份認證。不管是哪種方式,證書應用獲得的認證結(jié)果都是經(jīng)身份認證平臺簽名,是可信安全的。
[0035]二、精確化身份證書認證。因為身份認證平臺已經(jīng)對加入到匹配表中的證書做了包含驗證CRL在內(nèi)的三次驗證,所以證書應用在對數(shù)字證書進行身份認證時,只需要驗證該數(shù)字證書是否存在于該數(shù)字證書應用對應的可信列表即可,這樣極大地減少了證書應用的開發(fā)難度,同時因為不再需要驗證CRL而大大提供了證書應用的驗證效率,提高了用戶友好體驗度。
[0036]結(jié)合身份認證平臺“對證書應用提供在線身份認證接口”這種方式,證書應用對數(shù)字證書進行精確化身份認證的流程如圖4所示。
[0037]結(jié)合身份認證平臺“對證書應用提供平臺設備接口”這種方式,將設備作為證書應用的身份認證代理,設備和身份認證平臺進行交互,獲取數(shù)字證書與證書應用匹配表的信息并加載,證書應用只需要在設備上進行數(shù)字證書的身份認證即可。設備和身份認證平臺之間的交互如圖5所示。證書應用和設備對數(shù)字證書進行精確化身份認證的流程如圖6所
/Jn ο
[0038]以上實施例只是對于本發(fā)明的部分功能進行描述,但實施例和附圖并不是用來限定本發(fā)明的。在不脫離本發(fā)明之精神和范圍內(nèi),所做的任何等效變化或潤飾,同樣屬于本發(fā)明之保護范圍,因此本發(fā)明的保護范圍應當以本申請的權(quán)利要求所界定的內(nèi)容為標準。
【權(quán)利要求】
1.一種X509數(shù)字證書與證書應用之間的精確化身份認證方法,其特征在于: 步驟一、搭建身份認證平臺,針對證書應用提供身份認證服務;每個基于數(shù)字證書的、需要對數(shù)字證書進行身份認證的應用系統(tǒng),稱為一個證書應用,搭建身份認證平臺,在該身份認證平臺上維護數(shù)字證書與證書應用之間的匹配關系,通過自動加載證書鏈、CRL并能及更新的方式,形成唯一的可信列表; 步驟二、精確化身份證書認證;證書應用在對數(shù)字證書進行身份認證時,只需要驗證該數(shù)字證書是否存在于該數(shù)字證書應用對應的可信列表即可。
2.根據(jù)權(quán)利要求1所述的精確化身份認證方法,其特征在于,步驟一中: (1)在身份認證平臺配置證書應用,該證書應用支持CA機構(gòu)的證書鏈、該證書應用支持CA機構(gòu)的CRL,配置完成后身份認證平臺會在數(shù)據(jù)庫中為每個證書應用創(chuàng)建一張數(shù)字證書與證書應用的匹配表; (2)證書鏈以及CRL自動載入,對于CA機構(gòu)的公開發(fā)布的證書鏈以及CRL,平臺的數(shù)據(jù)加載模塊相關配置,將證書鏈以及CRL加載到內(nèi)存中,并能根據(jù)設置及時更新CRL,保證加載到平臺的CRL是CA機構(gòu)所頒發(fā)的最新的; (3)證書合法性驗證,每張數(shù)字證書在申請進入證書應用時,經(jīng)過身份認證平臺的三次驗證,依次是:驗證該數(shù)字證書的有效期;驗證該數(shù)字證書的證書鏈;驗證該證書是否存在于CRL中;三次驗證均通過說明數(shù)字證書合法,平臺將該數(shù)字證書加入到匹配表中; (4)提供可信、安全的身份認證服務。
3.根據(jù)權(quán)利要求2所述的精確化身份認證方法,其特征在于:所述匹配表采用數(shù)字證書指紋作為唯一主鍵。
4.根據(jù)權(quán)利要求2所述的精確化身份認證方法,其特征在于:所述提供可信、安全的身份認證服務,身份認證平臺為每個證書應用提供的身份認證服務有兩種方式:一種是對證書應用提供在線身份認證接口,以直接的開放接口形式的提供即時身份認證服務;另外一種是對證書應用提供平臺設備接口,由代理證書應用做身份認證的安全網(wǎng)關設備通過該接口和身份認證平臺交互,獲取數(shù)字證書與該證書應用匹配表的部分或全部信息,并能確保其有效更新,從而完成身份認證。
5.根據(jù)權(quán)利要求3或4所述的精確化身份認證方法,其特征在于:證書應用驗證黑名單的環(huán)節(jié)放置在身份認證平臺上,通過這種方式將傳統(tǒng)上的白名單和黑名單合二為一形成唯一的可信列表;身份認證平臺對加入到匹配表中的證書做了包含驗證CRL在內(nèi)的三次驗證,證書應用在對數(shù)字證書進行身份認證時,只需要驗證該數(shù)字證書是否存在于該數(shù)字證書應用對應的可信列表即可。
【文檔編號】H04L9/32GK103560889SQ201310542386
【公開日】2014年2月5日 申請日期:2013年11月5日 優(yōu)先權(quán)日:2013年11月5日
【發(fā)明者】王杰勛, 李業(yè)兵, 莊昱垚 申請人:江蘇先安科技有限公司