專利名稱::一種下發(fā)數(shù)字證書的方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及信息安全領(lǐng)域,特別涉及一種下發(fā)數(shù)字證書的方法。
背景技術(shù):
:近些年來(lái),隨著網(wǎng)絡(luò)技術(shù)的蓬勃發(fā)展,網(wǎng)上銀行業(yè)務(wù)也開始迅速的發(fā)展。目前國(guó)內(nèi)大多數(shù)銀行都推出了自己的網(wǎng)上銀行業(yè)務(wù)。用戶在體驗(yàn)方便、快捷的網(wǎng)上銀行服務(wù)之余,難免會(huì)擔(dān)心網(wǎng)上銀行的安全性。目前,大多數(shù)銀行采用的安全措施為向用戶提供專用于網(wǎng)上銀行業(yè)務(wù)的USBKey,用戶在進(jìn)行網(wǎng)上銀行業(yè)務(wù)時(shí)需要USBKey的參與才能完成相應(yīng)的業(yè)務(wù)。USBKey是一種具有USB接口的硬件設(shè)備,其內(nèi)置單片機(jī)或智能卡芯片,用于利用內(nèi)置的密鑰算法實(shí)現(xiàn)對(duì)用戶身份的認(rèn)證。通常情況下,USBKey內(nèi)置的密鑰算法大多是非對(duì)稱算法,利用非對(duì)稱算法能夠生成一對(duì)密鑰,分別為公鑰和私鑰,其中私鑰保存在USBKey中,理論上使用任何方式都無(wú)法被非法讀取,用以對(duì)USBKey中的信息進(jìn)行加密,公鑰保存在銀行客戶端主機(jī)中,用以對(duì)USBKey發(fā)送的加密信息進(jìn)行解密,保護(hù)了用戶交易信息的安全性。每個(gè)USBKey設(shè)備中需要保存數(shù)字證書。數(shù)字證書是由一個(gè)第三方的權(quán)威機(jī)構(gòu)——CA(CertificateAuthority,數(shù)字證書認(rèn)證中心)發(fā)行的,是一種權(quán)威性的電子文檔,作用類似于公民的身份證或者司機(jī)的駕駛執(zhí)照。使用USBKey的用戶通過(guò)數(shù)字證書來(lái)識(shí)別對(duì)方的身份。由于CA作為權(quán)威的、公正的、可信賴的第三方,因此CA提供的數(shù)字證書可以給用戶的身份認(rèn)證充分保證。在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)存在如下缺點(diǎn)由于現(xiàn)有的CA對(duì)數(shù)字證書的載體USBKey的管理手^R非常有限,用戶可以從CA處將數(shù)字證書下載到自己選擇的USBKey中,無(wú)法對(duì)用戶使用的USBKey進(jìn)行規(guī)范化的管理,使一些不符合CA要求的USBKey成為證書的載體,甚至用戶的證書可能被非法用戶盜取并復(fù)制到其他的USBKey中使用,對(duì)用戶的網(wǎng)銀賬戶造成了極大的威脅。
發(fā)明內(nèi)容為了確保將數(shù)字證書下發(fā)給合法的USBKey中,本發(fā)明提供了一種下發(fā)數(shù)字證書的方法。所述技術(shù)方案如下一種下發(fā)數(shù)字證書的方法,所述方法包括認(rèn)證中心接收USBKey發(fā)送的證書請(qǐng)求,所述證書請(qǐng)求中攜帶所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、所述USBKey的公鑰;根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)^f亍-瞼^正;當(dāng)所述驗(yàn)證成功時(shí),保存所述USBKey的公鑰,并為所述USBKey生成數(shù)字證書,并將所述數(shù)字證書與所述USBKey相關(guān)聯(lián),再將所述數(shù)字證書發(fā)送給所述USBKey;當(dāng)所述-瞼證不成功時(shí),結(jié)束操作。所述根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證的方法具體包括所述認(rèn)證中心使用接收到的所述USBKey的公鑰解密USBKey的標(biāo)識(shí)信息的數(shù)字簽名,將解密結(jié)果與所述USBKey的標(biāo)識(shí)信息進(jìn)行比對(duì);當(dāng)比對(duì)結(jié)果為相同時(shí),—瞼^L成功;當(dāng)比對(duì)結(jié)果為不同時(shí),驗(yàn)證失敗。所述根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證的方法具體包括所述認(rèn)證中心使用接收到的所述USBKey的公鑰解密USBKey的標(biāo)識(shí)信息的數(shù)字簽名,將解密結(jié)果進(jìn)行散列運(yùn)算生成消息摘要,并使用所述散列運(yùn)算對(duì)所述USBKey的標(biāo)識(shí)信息進(jìn)行運(yùn)算生成消息摘要,將所述解密結(jié)果的消息摘要與所述USBKey的標(biāo)識(shí)信息的消息摘要進(jìn)行比對(duì);當(dāng)比對(duì)結(jié)果為相同時(shí),-驗(yàn)"^正成功;當(dāng)比對(duì)結(jié)果為不同時(shí),驗(yàn)證失敗。所述根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證的方法具體包括所述認(rèn)證中心使用接收到的所述USBKey的公鑰解密USBKey的標(biāo)識(shí)信息的數(shù)字簽名,將解密結(jié)果進(jìn)行變換和散列運(yùn)算生成消息摘要,對(duì)USBKey的標(biāo)識(shí)信息使用所述變換和散列運(yùn)算生成消息摘要,將所述解密結(jié)果的消息摘要與所述USBKey的標(biāo)識(shí)信息的消息摘要進(jìn)行比對(duì);當(dāng)比對(duì)結(jié)果為相同時(shí),-瞼i正成功;當(dāng)比對(duì)結(jié)果為不同時(shí),驗(yàn)"i正失敗。當(dāng)所述驗(yàn)證成功時(shí),為所述USBKey生成數(shù)字證書之前,所述方法還包括根據(jù)所述USBKey的標(biāo)識(shí)信息進(jìn)行檢索,判斷是否存在所述USBKey的相關(guān)記錄,并且所述USBKey的狀態(tài)為未4吏用;當(dāng)判斷結(jié)果為是時(shí),為所述USBKey生成凄t字證書;當(dāng)判斷結(jié)果為否時(shí),結(jié)束操作。包括當(dāng)所述數(shù)字證書的狀態(tài)為有效時(shí),所述認(rèn)證中心將所述USBKey的狀態(tài)設(shè)置為允許使用的狀態(tài);當(dāng)所述數(shù)字證書的狀態(tài)為無(wú)效時(shí),所述認(rèn)證中心將所述USBKey的狀態(tài)設(shè)置為禁止使用的狀態(tài)。所述方法還包括所述認(rèn)證中心接收到狀態(tài)查詢請(qǐng)求,所述狀態(tài)查詢請(qǐng)求中攜帶所述USBKey的關(guān)鍵信息,所述關(guān)鍵信息至少包括所述USBKey標(biāo)識(shí)信息、與USBKey具有關(guān)聯(lián)關(guān)系的數(shù)字證書的標(biāo)識(shí)、USBKey用戶的身份信息中的一項(xiàng);所述認(rèn)證中心根據(jù)所述關(guān)鍵信息查詢所述USBKey的狀態(tài)和與所述USBKey相關(guān)聯(lián)的數(shù)字證書的信息,并返回查詢結(jié)果。所述方法還包括所述認(rèn)證中心接收到撤銷證書請(qǐng)求,將所述用戶使用的USBKey中的數(shù)字證書無(wú)效,并修改所述USBKey的狀態(tài)為禁止使用的狀態(tài)。所述方法還包括所述認(rèn)證中心接收到掛起證書請(qǐng)求,將所述用戶申請(qǐng)掛起的數(shù)字證書無(wú)效,并修改所述USBKey的狀態(tài)為禁止使用的狀態(tài)。所述方法還包括所述認(rèn)證中心4妾收所述USBKey發(fā)送的解掛證書請(qǐng)求,所述解掛證書請(qǐng)求中攜帶所述USBKey的關(guān)鍵信息和所述USBKey標(biāo)識(shí)信息的數(shù)字簽名,所述關(guān)鍵信息至少包括所述USBKey的標(biāo)識(shí)信息、與所述USBKey具有關(guān)聯(lián)關(guān)系的數(shù)字證書的標(biāo)識(shí)、所述USBKey的用戶的身份信息中的一項(xiàng);根據(jù)所述USBKey的關(guān)4建信息、所述USBKey的標(biāo)識(shí)信息的數(shù)字簽名、以及保存的所述USBKey的公鑰對(duì)所述USBKey進(jìn)行-驗(yàn)i正;當(dāng)所述驗(yàn)證均成功時(shí),所述認(rèn)證中心將所述用戶的數(shù)字證書有效,并修改所述USBKey的狀態(tài)為允許使用的狀態(tài);當(dāng)所述驗(yàn)證不成功時(shí),結(jié)束操作。所述方法還包括所述認(rèn)證中心接收所述USBKey發(fā)送的更新證書請(qǐng)求,所述更新證書請(qǐng)求中攜帶所述USBKey使用其原有私鑰產(chǎn)生的標(biāo)識(shí)信息的數(shù)字簽名、以及所述USBKey新生成的/>鑰;根據(jù)所述USBKey標(biāo)識(shí)信息的數(shù)字簽名、以及所述USBKey的原有公鑰對(duì)所述USBKey進(jìn)行-瞼證;當(dāng)所述驗(yàn)證成功時(shí),將所述USBKey原有的數(shù)字證書無(wú)效、保存接收到的所述USBKey新生成的/>鑰、為所述USBKey生成新的lt字i正書,并將所述新的數(shù)字證書與所述USBKey相關(guān)聯(lián),再將所述新的數(shù)字證書發(fā)送給所述USBKey;當(dāng)所述驗(yàn)證不成功時(shí),結(jié)束操作。所述方法還包括所述USBKey接收到所述數(shù)字證書,并對(duì)所述數(shù)字證書進(jìn)行保存;當(dāng)所述保存成功時(shí),結(jié)束操作;當(dāng)所述保存失敗時(shí),發(fā)送保存失敗消息給所述認(rèn)證中心,所述認(rèn)證中心將所述數(shù)字證書無(wú)效,并修改所述USBKey的狀態(tài)為禁止使用的狀態(tài)。本發(fā)明提供的技術(shù)方案帶來(lái)的有益效果是通過(guò)將對(duì)證書的管理和USBKey的管理相結(jié)合,確保了將數(shù)字證書下發(fā)到合法的USBKey中,增強(qiáng)了對(duì)數(shù)字證書以及USBKey設(shè)備的管理,為用戶的信息安全提供了保證。還進(jìn)一步提供了關(guān)聯(lián)查詢、撤銷證書、掛起證書、解掛證書、更新證書的方法,方便了用戶的使用。9圖l是本發(fā)明實(shí)施例1中提供的下發(fā)數(shù)字證書的方法流程圖;圖2是本發(fā)明實(shí)施例1中提供的下發(fā)數(shù)字證書的方法流程圖;圖3是本發(fā)明實(shí)施例1中提供的下發(fā)數(shù)字證書的方法流程圖;圖4是本發(fā)明實(shí)施例1中提供的下發(fā)數(shù)字證書的方法流程圖;圖5是本發(fā)明實(shí)施例1中提供的下發(fā)數(shù)字證書的方法流程圖;圖6是本發(fā)明實(shí)施例1中提供的下發(fā)數(shù)字證書的方法流程圖。具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。實(shí)施例1參見圖l,本實(shí)施例提供了一種下發(fā)數(shù)字證書的方法,該方法包括步驟101:將合法的USBKey的標(biāo)識(shí)信息在CA中進(jìn)行登記;其中,每個(gè)USBKey的標(biāo)識(shí)信息都是唯一的,該標(biāo)識(shí)信息被寫入U(xiǎn)SBKey后不能被修改,但可以被讀取。在本實(shí)施例中,標(biāo)識(shí)信息可以但不限于為USBKey的硬件序列號(hào)、可以唯一代表USBKey的字符串等。在CA中進(jìn)行登記的方法有很多方式,本實(shí)施例以銀行的網(wǎng)銀業(yè)務(wù)為例,當(dāng)銀行向網(wǎng)銀用戶提供USBKey時(shí),將USBKey的標(biāo)識(shí)信息進(jìn)行記錄,并提供給CA,這種登記方式可以確保在CA中進(jìn)行登記的USBKey均為銀行官方提供的合法USBKey,這種在CA中進(jìn)行登記的方法并不用以限制本實(shí)施例步驟101的登記方式。步驟102:CA將USBKey的使用狀態(tài)進(jìn)行設(shè)置;其中,USBKey的使用狀態(tài)可以但不限于包括"未使用"、"使用中"、"暫停使用"、"廢止"等。一般情況下,USBKey的初始使用狀態(tài)為"未使用"。以表1為例,但表1并不用以限制USBKey相關(guān)信息的設(shè)置形式表1<table>tableseeoriginaldocumentpage11</column></row><table>步驟103:USBKey在接收到申請(qǐng)數(shù)字證書的指令時(shí),根據(jù)內(nèi)置的密鑰生成算法產(chǎn)生一個(gè)密鑰對(duì);需要說(shuō)明的是,當(dāng)用戶希望為USBKey申請(qǐng)數(shù)字證書時(shí),可以通過(guò)多種方式向USBKey發(fā)送申請(qǐng)數(shù)字證書的指令,如用戶可以將USBKey與CA的終端機(jī)相連接,并通過(guò)在終端機(jī)上選擇相應(yīng)的選項(xiàng)為USBKey發(fā)送申請(qǐng)數(shù)字證書的指令。USBKey內(nèi)置的密鑰生成算法可以為非對(duì)稱算法,常用的非對(duì)稱算法包括RSA、DSA(DigitalSignatureAlgorithm,數(shù)字簽名算法)、ECC(EllipticCurveCryptosystems,橢圓曲線密碼體制)等,使用非對(duì)稱算法產(chǎn)生的密鑰對(duì)為私鑰和公鑰。步驟104:USBKey將其標(biāo)識(shí)信息進(jìn)行數(shù)字簽名;其中,USBKey可以使用步驟103中產(chǎn)生的私鑰對(duì)其標(biāo)識(shí)信息進(jìn)行數(shù)字簽名。步驟105:USBKey產(chǎn)生i正書請(qǐng)求發(fā)送給CA;其中,USBKey產(chǎn)生的證書請(qǐng)求中可以攜帶包括USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、步驟103中產(chǎn)生的公鑰;進(jìn)一步還可以包括用戶的身份信息等,當(dāng)然根據(jù)不同CA的策略,CA還可以通過(guò)其他方式獲得使用USBKey的用戶的身份信息。其中,用戶的身份信息可以但不限于包括用戶的姓名、用戶ID、電話號(hào)碼、家庭住址等相關(guān)信息。步驟106:CA接收到USBKey發(fā)送的證書請(qǐng)求,對(duì)申請(qǐng)證書的用戶進(jìn)行身份認(rèn)證;如果認(rèn)證成功,則執(zhí)行步驟107;如果認(rèn)證不成功,則執(zhí)行步驟115。CA在接收到USBKey發(fā)送的證書請(qǐng)求時(shí),對(duì)證書請(qǐng)求中攜帶的USBKey的標(biāo)識(shí)信息及其數(shù)字簽名,以及公鑰進(jìn)行保存。這里需要說(shuō)明的是根據(jù)用戶的身份信息對(duì)用戶進(jìn)行身份認(rèn)證的方法可以包括CA主動(dòng)向身份權(quán)威(如政府部門)或合作方(如銀行等)發(fā)出申請(qǐng),由身份權(quán)威或合作方將與該用戶有關(guān)的身份信息發(fā)送給CA,CA將身份權(quán)威或合作方發(fā)送的用戶的身份信息與其接收到的使用USBKey的用戶的身份信息進(jìn)行比對(duì),如果全部相同,則iU正成功;否則iU正不成功?;蛘?,CA主動(dòng)向身份權(quán)威或合作方發(fā)出申請(qǐng),在申請(qǐng)中附帶其接收到的使用USBKey的用戶的身份信息,由身份權(quán)威或合作方對(duì)用戶的身份信息進(jìn)行比對(duì),并將比對(duì)的結(jié)果返回給CA,如果全部相同,則認(rèn)證成功;否則認(rèn)證不成功。或者,CA預(yù)先保存身份權(quán)威或合作方的合法用戶的身Y分信息,并將接收到的使用USBKey的用戶的身份信息與預(yù)先保存的合法用戶的身份信息進(jìn)行比對(duì),如果全部相同,則認(rèn)證成功;否則認(rèn)證不成功。步驟107:CA對(duì)USBKey進(jìn)行驗(yàn)證;如果驗(yàn)證都成功,則執(zhí)行步驟108;如果驗(yàn)證不成功,則執(zhí)行步驟115。其中,具體的驗(yàn)證方法可以為CA使用接收到的證書請(qǐng)求中的公鑰對(duì)接收到的USBKey的標(biāo)識(shí)信息的數(shù)字簽名進(jìn)行解密運(yùn)算,然后將解密得到的結(jié)果與接收到的標(biāo)識(shí)信息進(jìn)行比較,如果相同,則說(shuō)明USBKey是合法的硬件設(shè)備,則-驗(yàn)證成功,否則-瞼證不成功;或者CA使用接收到的證書請(qǐng)求中的公鑰對(duì)接收到的USBKey的標(biāo)識(shí)信息的數(shù)字簽名進(jìn)行解密運(yùn)算,然后將解密結(jié)果進(jìn)行散列運(yùn)算生成消息摘要,并使用同樣的散列運(yùn)算對(duì)USBKey的標(biāo)識(shí)信息進(jìn)行運(yùn)算生成消息摘要,將解密結(jié)果的消息摘要與USBKey的標(biāo)識(shí)信息的消息摘要進(jìn)行比較,如果相同,則說(shuō)明USBKey是合法的硬件設(shè)備,則驗(yàn)證成功,否則驗(yàn)證不成功;其中,在對(duì)解密結(jié)果和USBKEY的標(biāo)識(shí)信息進(jìn)4亍散列運(yùn)算之前,還可以對(duì)需要進(jìn)行散列運(yùn)算的數(shù)據(jù)進(jìn)行變換。變換的方式有多種,如可以數(shù)據(jù)中的一部分進(jìn)行散列運(yùn)算,和/或按照預(yù)設(shè)的規(guī)則進(jìn)行位置調(diào)換和/或數(shù)值變換等方法。其中,比如USBKEY的標(biāo)識(shí)信息為1A2B3C4D,則可以直接對(duì)1A2B3C4D進(jìn)行12散列運(yùn)算提取消息摘要;如提取數(shù)據(jù)中的一部分進(jìn)行散列運(yùn)算,則可以對(duì)2B3C進(jìn)行散列運(yùn)算提取消息摘要,當(dāng)然提取除了可以連續(xù)提取其中一部分外,還可以不連續(xù)的進(jìn)行提?。贿€可以將數(shù)據(jù)進(jìn)行位置調(diào)換和/或凄t值變換等操作后再對(duì)其進(jìn)行散列運(yùn)算或提取其中一部分進(jìn)行散列運(yùn)算,比如USBKEY的標(biāo)識(shí)信息為1A2B3C4D,對(duì)其進(jìn)行位置調(diào)換和/或數(shù)值變換后得到關(guān)鍵信息的方法為其中,位置調(diào)換是指按照預(yù)設(shè)的規(guī)則調(diào)換上述信息中部分位或全部位的位置,假設(shè)位置調(diào)換規(guī)則為將上述信息進(jìn)行位置倒置,則為D4C3B2A1;其中,數(shù)值變換是指按照預(yù)設(shè)的規(guī)則替換上述數(shù)據(jù)中相應(yīng)位置的值,假設(shè)預(yù)先設(shè)定的規(guī)則為將1替換成9,2替換成8,3替換成7,4替換成6,其它不變,則為9A8B7C6D,此時(shí)可以對(duì)處理后的值進(jìn)行散列運(yùn)算,也可以提取其中一部分進(jìn)行散列運(yùn)算,比如提取9A8B或A86D作為進(jìn)行散列運(yùn)算。另夕卜,還可以同時(shí)使用位置調(diào)換和數(shù)值變換兩種方式,當(dāng)然,在實(shí)際應(yīng)用中,可以依據(jù)需要自己設(shè)計(jì)具體的變換方法,只要是可逆的變換即可;具體地,散列運(yùn)算的算法包括但不限于SHA-1、MD2、MD5、H-MAC;另外,如果使用H-MAC算法進(jìn)行散列運(yùn)算,則兩次計(jì)算使用的密鑰也是相同的。還需要進(jìn)一步說(shuō)明的是,本發(fā)明實(shí)施例以先進(jìn)行用戶的身份認(rèn)證、后進(jìn)行USBKey的-驗(yàn)證為例對(duì)本方法進(jìn)行說(shuō)明,但這并不用以限制這兩個(gè)步驟的先后順序,還可以先進(jìn)行USBKey的驗(yàn)證、后進(jìn)行用戶的身份認(rèn)證,或者USBKey的驗(yàn)證與用戶的身份認(rèn)證同時(shí)進(jìn)行。步驟108:CA根據(jù)接收到的USBKey的標(biāo)識(shí)信息,在其保存的登記信息中進(jìn)行檢索;具體的檢索方式可以為將接收到的USBKey的標(biāo)識(shí)信息作為檢索關(guān)鍵字查詢匹配的i己錄。如果在CA保存的登記信息中檢索到與該USBKey的標(biāo)識(shí)信息相匹配的記錄,且其對(duì)應(yīng)的使用狀態(tài)為"未使用",則執(zhí)行步驟109;否則,執(zhí)行步驟115。步驟109:CA為USBKey生成數(shù)字證書,并將生成的數(shù)字證書與USBKey的相關(guān)信息相關(guān)聯(lián);需要說(shuō)明的是,數(shù)字證書與USBKey之間的關(guān)聯(lián)可以理解為將數(shù)字證書的狀態(tài)與USBKey的狀態(tài)相關(guān)聯(lián)當(dāng)數(shù)字證書有效時(shí),USBKey的狀態(tài)為允許13使用的狀態(tài);當(dāng)數(shù)字證書無(wú)效時(shí),USBKey的狀態(tài)為禁止使用的狀態(tài)。數(shù)字證書無(wú)效時(shí)會(huì)被CA放入到黑名單當(dāng)中,但放入黑名單并不用于限制本發(fā)明處理證書無(wú)效的形式。其中,允許使用的狀態(tài)可以但不限於包括"使用中",禁止使用的狀態(tài)可以但不限於包括"未使用"、"暫停使用"、"廢止使用,,等。CA為USBKey生成的數(shù)字證書的相關(guān)信息可以如表2所示,但并不用以限制數(shù)字證書的保存形式和信息內(nèi)容。表2數(shù)字"i正書標(biāo)識(shí)頒發(fā)曰期廢止曰期是否有效A2009年6月10日2009年7月10曰是其中,將數(shù)字證書列入黑名單的情形可以包括很多。例如,當(dāng)用戶的數(shù)字證書仍然處于有效期,但卻被他人非法盜取時(shí),CA會(huì)根據(jù)用戶的要求將該數(shù)字證書列入黑名單。將數(shù)字證書與USBKey的相關(guān)信息相關(guān)聯(lián),具體的^L法可以包括在數(shù)字證書的相關(guān)信息中增加一項(xiàng)與USBKey相關(guān)的信息;或者,在USBKey的相關(guān)信息中增加一項(xiàng)與數(shù)字證書相關(guān)的信息;或者,將數(shù)字證書的相關(guān)信息與USBKey的相關(guān)信息合成在一起。以表1、表2為例,將數(shù)字證書與USBKey的相關(guān)信息相關(guān)聯(lián)可以包括如下幾種情形表3數(shù)字證書標(biāo)識(shí)頒發(fā)曰期廢止曰期是否有效對(duì)應(yīng)的USBKeyA2009年6月10曰2009年7月10曰是1A2B3C4D或者表4USBKey的標(biāo)識(shí)信息使用狀態(tài)數(shù)字證書標(biāo)識(shí)1A2B3C4D未使用A5A6B7C8D使用中B1F2G3E4H暫停使用C5G6E7R8S廢止D或者表5<table>tableseeoriginaldocumentpage15</column></row><table>步驟110:CA在其保存的登記信息中將該USBKey對(duì)應(yīng)的使用狀態(tài)設(shè)置為"使用中",如表6:表6<table>tableseeoriginaldocumentpage15</column></row><table>步驟111:CA向USBKey下發(fā)生成的數(shù)字證書;步驟112:USBKey接收到CA下發(fā)的數(shù)字證書,并將數(shù)字證書進(jìn)行保存;如杲保存成功,則結(jié)束操作;如果保存不成功,則執(zhí)行步驟113;步驟113:USBKey向CA發(fā)送證書保存失敗消息;在證書保存失敗消息中攜帶數(shù)字證書標(biāo)識(shí)、USBKey的標(biāo)識(shí)信息;步驟114:CA將證書保存失敗消息中的數(shù)字證書放入黑名單,并將相應(yīng)標(biāo)識(shí)信息的USBKey的使用狀態(tài)設(shè)置為"廢止";步驟115:提示錯(cuò)誤的詳細(xì)信息,結(jié)束操作。需要說(shuō)明的是,當(dāng)USBKey申請(qǐng)證書成功后,如果用戶在USBKey的使用過(guò)程中需要查詢USBKey的狀態(tài)以及與其相關(guān)聯(lián)的數(shù)字證書的狀態(tài),參見圖2,該方法可以進(jìn)一步包括步驟201:CA接收到狀態(tài)的查詢請(qǐng)求;在查詢請(qǐng)求中可以攜帶USBKey的關(guān)4建信息,USBKey的關(guān)鍵信息包括以下各項(xiàng)信息中的至少一項(xiàng)USBKey標(biāo)識(shí)信息、與USBKey具有關(guān)聯(lián)關(guān)系的數(shù)字證書的標(biāo)識(shí)、USBKey用戶的身份信息;查詢請(qǐng)求中還可以攜帶USBKey標(biāo)識(shí)信息的數(shù)字簽名。步驟202:CA對(duì)USBKey進(jìn)行—瞼證;如果驗(yàn)證成功,則執(zhí)行步驟203;如果一瞼證失敗,則結(jié)束操作。其中,具體的驗(yàn)證方法可以為CA根據(jù)USBKey的關(guān)鍵信息查詢得到該USBKey的標(biāo)識(shí)信息以及對(duì)應(yīng)的公鑰,并使用查詢到的公鑰對(duì)接收到的USBKey的標(biāo)識(shí)信息的數(shù)字簽名進(jìn)行解密運(yùn)算,然后將解密得到的結(jié)果與查詢到的標(biāo)識(shí)信息進(jìn)行比較,如果相同,則說(shuō)明USBKey是合法的硬件設(shè)備,則驗(yàn)證成功;否則-瞼證不成功。還需要進(jìn)一步說(shuō)明的是,在本發(fā)明實(shí)施例中執(zhí)行步驟203之前,CA還可以對(duì)用戶進(jìn)行身份認(rèn)證,具體的認(rèn)證方式可以參見步驟106,這里不做贅述。可以先進(jìn)行用戶的身份認(rèn)證、后進(jìn)行USBKey的驗(yàn)證,還可以先進(jìn)行USBKey的驗(yàn)證、后進(jìn)行用戶的身份認(rèn)證,或者USBKey的驗(yàn)證與用戶的身份認(rèn)證同時(shí)進(jìn)行。步驟203:CA根據(jù)USBKey的標(biāo)識(shí)信息,在保存的登記信息中查詢USBKey的使用狀態(tài);如果存在相應(yīng)的USBKey的記錄并且USBKey的狀態(tài)為"使用中",則執(zhí)行步驟204;如果沒有,則返回失敗信息,結(jié)束操作。步驟204:在關(guān)聯(lián)信息(如表3、4、5或6)中查詢與該USBKey相關(guān)聯(lián)的數(shù)字證書及其狀態(tài);如果存在關(guān)聯(lián)數(shù)字證書,則返回?cái)?shù)字證書信息;如果不存在,返回失敗信息,并結(jié)束操作。需要說(shuō)明的是,當(dāng)USBKey申請(qǐng)證書成功后,如果用戶在USBKey的使用過(guò)程中希望撤銷數(shù)字證書時(shí),參見圖3,該方法可以進(jìn)一步包括步驟301:CA接收到撤銷證書請(qǐng)求;其中,撤銷證書請(qǐng)求中可以包括數(shù)字證書標(biāo)識(shí)、或USBKey的標(biāo)識(shí)信息。步驟302:CA根據(jù)撤銷證書請(qǐng)求中攜帶的數(shù)字證書標(biāo)識(shí)或USBKey的標(biāo)識(shí)信息找到相應(yīng)的數(shù)字證書,并將該數(shù)字證書放入黑名單中,同時(shí)CA解除該數(shù)字證書與USBKey的關(guān)聯(lián)關(guān)系;其中,CA解除該數(shù)字證書與USBKey的關(guān)聯(lián)關(guān)系的方法可以但不限於包16括在CA保存的關(guān)聯(lián)信息中刪除USBKey中與該數(shù)字證書相關(guān)的全部?jī)?nèi)容。需要說(shuō)明的是,CA還可以在步驟302之前對(duì)用戶進(jìn)行身份認(rèn)證;如果認(rèn)證成功,則執(zhí)行步驟302;如果認(rèn)證不成功,則結(jié)束操作。其中,根據(jù)用戶的身份信息對(duì)用戶進(jìn)行身份認(rèn)證的方法可以參見步驟106的描述,這里不做贅述。步驟303:CA在登記的信息中查詢到USBKey的標(biāo)識(shí)信息,并將USBKey的使用狀態(tài)修改為"廢止"。還需要說(shuō)明的是,CA也可以主動(dòng)進(jìn)行證書撤銷的工作由于CA下發(fā)的數(shù)字證書是具有使用期限的,當(dāng)證書過(guò)期時(shí),CA會(huì)自動(dòng)將過(guò)期的證書放入黑名單,并將與該過(guò)期的證書相關(guān)聯(lián)的USBKey的狀態(tài)設(shè)置為"廢止"。需要說(shuō)明的是,當(dāng)USBKey申請(qǐng)證書成功后,如果用戶在USBKey的使用過(guò)程中希望將數(shù)字證書掛起(即暫停使用)時(shí),參見圖4,該方法可以進(jìn)一步包括步驟401:CA接收到掛起證書請(qǐng)求;其中,掛起證書請(qǐng)求中可以包括數(shù)字證書標(biāo)識(shí)、或USBKey的標(biāo)識(shí)信息。步驟402:CA根據(jù)接收到的掛起證書請(qǐng)求中攜帶的數(shù)字證書標(biāo)識(shí)或USBKey的標(biāo)識(shí)信息找到數(shù)字證書,并將該數(shù)字證書放入黑名單中;需要說(shuō)明的是,CA還可以在步驟402之前對(duì)用戶進(jìn)行身份認(rèn)證;如果認(rèn)證成功,則執(zhí)行步驟402;如果認(rèn)證不成功,則結(jié)束操作。其中,根據(jù)用戶的身份信息對(duì)用戶進(jìn)行身份認(rèn)證的方法可以參見步驟106的描述,這里不做贅述。步驟403:CA在關(guān)聯(lián):信息中查詢到USBKey的標(biāo)識(shí)信息,并將USBKey的使用狀態(tài)修改為"暫停使用"。需要說(shuō)明的是,當(dāng)USBKey掛起證書成功后,如果用戶在USBKey的使用過(guò)程中希望將掛起的數(shù)字證書解掛時(shí),參見圖5,該方法可以進(jìn)一步包括步驟501:USBKey根據(jù)接收到的解掛證書的指令后,向CA發(fā)送解掛證書請(qǐng)求;其中,解掛證書請(qǐng)求中可以攜帶USBKey標(biāo)識(shí)信息的數(shù)字簽名、USBKey的關(guān)鍵信息。步驟502:CA對(duì)申請(qǐng)解掛證書的用戶進(jìn)行身份認(rèn)證;如果認(rèn)證成功,則執(zhí)行步驟503;如果認(rèn)證不成功,則執(zhí)行步驟505。具體的認(rèn)證方式可以參見步驟106,這里不做贅述。步驟503:CA對(duì)USBKey進(jìn)行驗(yàn)證;如果驗(yàn)證成功,則執(zhí)行步驟504;如果驗(yàn)證失敗,則結(jié)束操作。具體的驗(yàn)證方式可以參見步驟107,這里不做贅述。其中,可以通過(guò)數(shù)字證書標(biāo)識(shí)在保存的關(guān)聯(lián)關(guān)系中查找到USBKey的標(biāo)識(shí)信息以及相應(yīng)的公鑰等。還需要進(jìn)一步說(shuō)明的是,在本發(fā)明實(shí)施例可以先進(jìn)行用戶的身份認(rèn)證、后進(jìn)行USBKey的驗(yàn)證,還可以先進(jìn)行USBKey的驗(yàn)證、后進(jìn)行用戶的身份認(rèn)證,或者USBKey的驗(yàn)證與用戶的身份認(rèn)證同時(shí)進(jìn)行。步驟504:CA將該數(shù)字證書從黑名單中移出;步驟505:CA在關(guān)聯(lián)信息中查詢到USBKey的標(biāo)識(shí)信息,并將USBKey的使用狀態(tài)修改為"使用中"。需要說(shuō)明的是,當(dāng)USBKey申請(qǐng)證書成功后,如果用戶在USBKey的使用過(guò)程中希望將數(shù)字證書進(jìn)行更新時(shí),參見圖6,該方法可以進(jìn)一步包括步驟601:USBKey根據(jù)接收到的更新證書的指令后,根據(jù)內(nèi)置的密鑰生成算法生成一個(gè)新的密鑰對(duì);其中,密鑰對(duì)包括7>鑰和私鑰步驟602:USBKey將其標(biāo)識(shí)信息進(jìn)行數(shù)字簽名;其中,USBKey使用其原有的私鑰對(duì)其標(biāo)識(shí)信息進(jìn)行數(shù)字簽名。這里不限制步驟601和步驟602之間的先后順序,可以同時(shí)進(jìn)行,也可以先進(jìn)行步驟601后進(jìn)行步驟602、或者先進(jìn)行步驟602后進(jìn)行步驟601。步驟603:USBKey產(chǎn)生更新證書請(qǐng)求發(fā)送給CA;18其中,USBKey產(chǎn)生的更新證書請(qǐng)求中包括步驟602中產(chǎn)生的USBKey標(biāo)識(shí)信息的數(shù)字簽名、步驟601中產(chǎn)生的公鑰;還可以包括USBKey的關(guān)4定信自步驟604:CA接收到USBKey發(fā)送的更新證書請(qǐng)求,CA對(duì)USBKey進(jìn)行驗(yàn)證;如果驗(yàn)證成功,則執(zhí)行步驟605;如果驗(yàn)證不成功,則結(jié)束操作。具體的驗(yàn)證方式可以參見步驟107,這里不做贅述。還需要進(jìn)一步說(shuō)明的是,在本發(fā)明實(shí)施例中CA還可以對(duì)用戶的身份信息進(jìn)行認(rèn)證,可以先進(jìn)行用戶的身份認(rèn)證、后進(jìn)行USBKey的驗(yàn)證,還可以先進(jìn)行USBKey的驗(yàn)證、后進(jìn)行用戶的身份認(rèn)證,或者USBKey的驗(yàn)證與用戶的身份認(rèn)證同時(shí)進(jìn)行。步驟605:CA生成數(shù)字證書,將舊的證書放入黑名單中,并解除舊的證書與USBKey之間的關(guān)聯(lián)關(guān)系,同時(shí)將新生成的數(shù)字證書與USBKey相關(guān)聯(lián);步驟606:CA向USBKey下發(fā)生成的數(shù)字i正書;步驟607:USBKey接收到CA下發(fā)的數(shù)字證書,并將數(shù)字證書進(jìn)行保存;如果保存成功,則結(jié)束才喿作;如果保存不成功,則執(zhí)行步驟608;步驟608:USBKey向CA發(fā)送證書保存失敗消息;在證書保存失敗消息中攜帶數(shù)字證書、USBKey的標(biāo)識(shí)信息;步驟609:CA將證書保存失敗消息中的數(shù)字證書放入黑名單,并將相應(yīng)標(biāo)識(shí)信息的USBKey的使用狀態(tài)設(shè)置為"廢止"。本發(fā)明實(shí)施例提供了一種下發(fā)數(shù)字證書的方法,將對(duì)證書的管理和USBKey的管理相結(jié)合,確保了將數(shù)字證書下發(fā)到合法的USBKey中,增強(qiáng)了對(duì)數(shù)字證書以及USBKey設(shè)備的管理,為用戶的信息安全提供了保證。還進(jìn)一步提高了關(guān)聯(lián)查詢、撤銷證書、掛起證書、解掛證書、更新證書的方法,方便了用戶的使用。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。權(quán)利要求1、一種下發(fā)數(shù)字證書的方法,其特征在于,所述方法包括認(rèn)證中心接收USBKey發(fā)送的證書請(qǐng)求,所述證書請(qǐng)求中攜帶所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、所述USBKey的公鑰;根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證;當(dāng)所述驗(yàn)證成功時(shí),保存所述USBKey的公鑰,并為所述USBKey生成數(shù)字證書,并將所述數(shù)字證書與所述USBKey相關(guān)聯(lián),再將所述數(shù)字證書發(fā)送給所述USBKey;當(dāng)所述驗(yàn)證不成功時(shí),結(jié)束操作。2、如權(quán)利要求1中所述的下發(fā)數(shù)字證書的方法,其特征在于,所述根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)i正的方法具體包括所述認(rèn)證中心使用接收到的所述USBKey的公鑰解密USBKey的標(biāo)識(shí)信息的數(shù)字簽名,將解密結(jié)果與所述USBKey的標(biāo)識(shí)信息進(jìn)行比對(duì);當(dāng)比對(duì)結(jié)果為相同時(shí),-驗(yàn)證成功;當(dāng)比對(duì)結(jié)果為不同時(shí),-驗(yàn)證失敗。3、如權(quán)利要求1中所述的下發(fā)數(shù)字證書的方法,其特征在于,所述根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證的方法具體包括所述認(rèn)證中心使用接收到的所述USBKey的公鑰解密USBKey的標(biāo)識(shí)信息的數(shù)字簽名,將解密結(jié)果進(jìn)行散列運(yùn)算生成消息摘要,并使用所述散列運(yùn)算對(duì)所述USBKey的標(biāo)識(shí)信息進(jìn)行運(yùn)算生成消息摘要,將所述解密結(jié)果的消息摘要與所述USBKey的標(biāo)識(shí)信息的消息摘要進(jìn)行比對(duì);當(dāng)比對(duì)結(jié)果為相同時(shí),-瞼"i正成功;當(dāng)比對(duì)結(jié)果為不同時(shí),-驗(yàn)"^正失敗。4、如權(quán)利要求1中所述的下發(fā)數(shù)字證書的方法,其特征在于,所述根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證的方法具體包括所述認(rèn)證中心使用接收到的所述USBKey的公鑰解密USBKey的標(biāo)識(shí)信息的數(shù)字簽名,將解密結(jié)果進(jìn)行變換和散列運(yùn)算生成消息摘要,對(duì)USBKey的標(biāo)識(shí)信息使用所述變換和散列運(yùn)算生成消息摘要,將所述解密結(jié)果的消息摘要與所述USBKey的標(biāo)識(shí)信息的消息摘要進(jìn)行比對(duì);當(dāng)比對(duì)結(jié)果為相同時(shí),驗(yàn)證成功;當(dāng)比對(duì)結(jié)果為不同時(shí),-瞼證失敗。5、如權(quán)利要求1中所述的下發(fā)數(shù)字證書的方法,其特征在于,當(dāng)所述驗(yàn)證成功時(shí),為所述USBKey生成數(shù)字證書之前,所述方法還包括根據(jù)所述USBKey的標(biāo)識(shí)信息進(jìn)行檢索,判斷是否存在所述USBKey的相關(guān)記錄,并且所述USBKey的狀態(tài)為未#_用;當(dāng)判斷結(jié)果為是時(shí),為所述USBKey生成數(shù)字證書;當(dāng)判斷結(jié)果為否時(shí),結(jié)束操作。6、如權(quán)利要求1所述的下發(fā)數(shù)字證書的方法,其特征在于,所述將所述數(shù)字證書與所述USBKey相關(guān)聯(lián),具體包括當(dāng)所述數(shù)字證書的狀態(tài)為有效時(shí),所述認(rèn)證中心將所述USBKey的狀態(tài)設(shè)置為允許使用的狀態(tài);當(dāng)所述數(shù)字證書的狀態(tài)為無(wú)效時(shí),所述認(rèn)證中心將所述USBKey的狀態(tài)設(shè)置為禁止使用的狀態(tài)。7、如權(quán)利要求1所述的下發(fā)數(shù)字證書的方法,其特征在于,所述方法還包括所述認(rèn)證中心接收到狀態(tài)查詢請(qǐng)求,所述狀態(tài)查詢請(qǐng)求中攜帶所述USBKey的關(guān)鍵信息,所述關(guān)鍵信息至少包括所迷USBKey標(biāo)識(shí)信息、與所述USBKey具有關(guān)聯(lián)關(guān)系的數(shù)字證書的標(biāo)識(shí)、所述USBKey的用戶的身份信息中的一項(xiàng);所述^人證中心才艮據(jù)所述關(guān)《建信息查詢所述USBKey的狀態(tài)和與所述USBKey相關(guān)聯(lián)的數(shù)字證書的信息,并返回查詢結(jié)果。8、如權(quán)利要求1所述的下發(fā)數(shù)字證書的方法,其特征在于,所述方法還包括所述認(rèn)證中心接收到撤銷證書請(qǐng)求,將所述用戶使用的USBKey中的數(shù)字證書無(wú)效,并修改所述USBKey的狀態(tài)為禁止使用的狀態(tài)。9、如權(quán)利要求1所述的下發(fā)數(shù)字證書的方法,其特征在于,所迷方法還包括所述認(rèn)證中心接收到掛起證書請(qǐng)求,將所述用戶申請(qǐng)掛起的數(shù)字證書無(wú)效,并修改所述USBKey的狀態(tài)為禁止使用的狀態(tài)。10、如權(quán)利要求9所述的下發(fā)數(shù)字證書的方法,其特征在于,所述方法還包括所述認(rèn)證中心接收所述USBKey發(fā)送的解掛證書請(qǐng)求,所述解掛證書請(qǐng)求中攜帶所述USBKey的關(guān)鍵信息和所述USBKey標(biāo)識(shí)信息的數(shù)字簽名,所述關(guān)鍵信息至少包括所述USBKey的標(biāo)識(shí)信息、與所述USBKey具有關(guān)聯(lián)關(guān)系的數(shù)字證書的標(biāo)識(shí)、所述USBKey的用戶的身4分信息中的一項(xiàng);根據(jù)所述USBKey的關(guān)4建信息、所述USBKey的標(biāo)識(shí)信息的數(shù)字簽名、以及保存的所述USBKey的/>鑰對(duì)所述USBKey進(jìn)ff-險(xiǎn)i正;當(dāng)所述驗(yàn)證均成功時(shí),所述認(rèn)證中心將所述用戶的數(shù)字證書有效,并修改所述USBKey的狀態(tài)為允許4吏用的狀態(tài);當(dāng)所述驗(yàn)證不成功時(shí),結(jié)束操作。11、如權(quán)利要求1所述的下發(fā)數(shù)字證書的方法,其特征在于,所述方法還包括所述認(rèn)證中心接收所述USBKey發(fā)送的更新證書請(qǐng)求,所述更新證書請(qǐng)求中攜帶所述USBKey使用其原有私鑰產(chǎn)生的標(biāo)識(shí)信息的數(shù)字簽名、以及所述USBKey新生成的/〉鑰;根據(jù)所述USBKey標(biāo)識(shí)信息的數(shù)字簽名、以及所述USBKey的原有7>鑰對(duì)所述USBKey進(jìn)4亍-瞼證;當(dāng)所述驗(yàn)證成功時(shí),將所述USBKey原有的數(shù)字證書無(wú)效、保存接收到的所述USBKey新生成的公鑰、為所述USBKey生成新的數(shù)字證書,并將所述新的數(shù)字證書與所述USBKey相關(guān)聯(lián),再將所述新的數(shù)字證書發(fā)送給所述USBKey;當(dāng)所述驗(yàn)證不成功時(shí),結(jié)束操作。12、如權(quán)利要求1中所述的下發(fā)數(shù)字證書的方法,其特征在于,所述方法還包括所述USBKey接收到所述數(shù)字證書,并對(duì)所述數(shù)字證書進(jìn)行保存;當(dāng)所述保存成功時(shí),結(jié)束4喿作;當(dāng)所述保存失敗時(shí),發(fā)送保存失敗消息給所迷認(rèn)證中心,所述認(rèn)證中心將所述數(shù)字證書無(wú)效,并修改所述USBKey的狀態(tài)為禁止使用的狀態(tài)。全文摘要本發(fā)明公開了一種下發(fā)數(shù)字證書的方法,屬于信息安全領(lǐng)域。該方法包括認(rèn)證中心接收USBKey發(fā)送的證書請(qǐng)求,所述證書請(qǐng)求中攜帶所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、所述USBKey的公鑰;根據(jù)所述USBKey的標(biāo)識(shí)信息及其數(shù)字簽名、以及所述USBKey的公鑰對(duì)所述USBKey進(jìn)行驗(yàn)證;當(dāng)所述驗(yàn)證成功時(shí),保存所述USBKey的公鑰,為所述USBKey生成數(shù)字證書,并將所述數(shù)字證書與所述USBKey相關(guān)聯(lián),再將所述數(shù)字證書發(fā)送給所述USBKey;當(dāng)所述驗(yàn)證不成功時(shí),結(jié)束操作。用以確保將數(shù)字證書下發(fā)給合法的USBKey。文檔編號(hào)H04L29/06GK101645889SQ200910087969公開日2010年2月10日申請(qǐng)日期2009年6月26日優(yōu)先權(quán)日2009年6月26日發(fā)明者于華章,舟陸申請(qǐng)人:北京飛天誠(chéng)信科技有限公司