專利名稱:一種認(rèn)證方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP,DynamicHost Configuration Protocol, 特別涉及一種基于DHCP的認(rèn)證方法及系統(tǒng)。
背景技術(shù):
動(dòng)態(tài)主機(jī)設(shè)置協(xié)議(DHCP,Dynamic Host Configuration Protocol)是一個(gè)局域 網(wǎng)的網(wǎng)絡(luò)協(xié)議,使用用戶數(shù)據(jù)包協(xié)議(UDP)工作,可自動(dòng)將IP地址指派給登錄傳輸控制協(xié) 議/網(wǎng)間協(xié)議(TCP/IP)網(wǎng)絡(luò)的用戶端。DHCP協(xié)議是基于UDP層之上的應(yīng)用,服務(wù)器使用的 UDP端口號(hào)為67,客戶端使用的UDP端口號(hào)為68。DHCP中有一個(gè)可選項(xiàng)參數(shù)域(option),其是允許廠商定議選項(xiàng) (Vendor-SpecificArea),以提供更多的設(shè)定資訊(如網(wǎng)絡(luò)標(biāo)識(shí)(Netmask)、網(wǎng)關(guān) (Gateway)、地址解析服務(wù)器(DNS)等等)。其長(zhǎng)度可變,同時(shí)可攜帶多個(gè)選項(xiàng),每一選項(xiàng)的 第一個(gè)字節(jié)(byte)為選項(xiàng)編碼如43、60、90等,其后一個(gè)byte為該項(xiàng)資料長(zhǎng)度,最后為項(xiàng) 目?jī)?nèi)容。以基站作為DHCP客戶端為例,基站設(shè)備在開局時(shí)要求只需要硬件安裝人員,而不 需要專業(yè)的技術(shù)人員到現(xiàn)場(chǎng)進(jìn)行配置,或者用戶買回設(shè)備后即插即用,這就需要設(shè)備能自 動(dòng)發(fā)現(xiàn)和配置,比如自動(dòng)獲取IP地址、網(wǎng)管IP地址、業(yè)務(wù)通道上的關(guān)鍵設(shè)備的IP地址等, 而DHCP作為一種高效的IP地址分配方法通常被應(yīng)用于此,但是DHCP在設(shè)計(jì)時(shí)沒有考慮本 身的安全問(wèn)題,容易受到攻擊,存在嚴(yán)重的安全隱患。目前的安全解決方案是采用延遲認(rèn)證的方法來(lái)保證DHCP的安全,該方法通過(guò)定 義DHCP 0ption90提供了兩種功能DHCP對(duì)端身份認(rèn)證和DHCP消息的驗(yàn)證;在該延遲認(rèn)證 方法中客戶端與DHCP服務(wù)器共享一個(gè)密鑰。參見圖1,其是現(xiàn)有的DHCP采用延遲認(rèn)證的方法流程圖,本例中以基站(BS)作為 DHCP的客戶端(Client),來(lái)說(shuō)明其如何與DHCP的服務(wù)器(Server)端建立連接。步驟1,在DHCP客戶端廣播的DHCP發(fā)現(xiàn)(DHCP Discover)消息里攜帶認(rèn)證選項(xiàng) Option 90,用以通知服務(wù)器需要進(jìn)行認(rèn)證,同時(shí)攜帶客戶端身份標(biāo)識(shí)。這個(gè)身份標(biāo)識(shí)對(duì) DHCP服務(wù)器或者認(rèn)證服務(wù)器來(lái)說(shuō)應(yīng)該是唯一的,或者與其他信息字段組成一個(gè)唯一能標(biāo)識(shí) DHCP客戶端身份的標(biāo)識(shí),然后向其本地子網(wǎng)廣播該消息;其中,Option 90的含義是認(rèn)證資訊代碼即認(rèn)證選項(xiàng)編碼是90 ;還包括長(zhǎng)度 域,協(xié)議域、算法域,重放檢測(cè)Oteplay Detection)域和認(rèn)證信息域,其中,協(xié)議域定義 了選項(xiàng)中用于認(rèn)證的技術(shù);算法域中定義了專用的算法,如遠(yuǎn)端調(diào)用管理(RDM,Remote Deployment Manager),其是一種系統(tǒng)管理工具;延遲發(fā)現(xiàn)(R印lay Detection)域是針對(duì)每 一個(gè)RDM的;認(rèn)證信息也是針對(duì)每個(gè)協(xié)議的;如果協(xié)議域是0,認(rèn)證信息將保留一個(gè)簡(jiǎn)單的 配置標(biāo)識(shí),用于傳輸明文配置標(biāo)識(shí)或提供很弱的身份認(rèn)證。接收端通過(guò)匹配認(rèn)證,決定是否 接收消息;步驟2,網(wǎng)絡(luò)上的DHCP服務(wù)器(可能不止一個(gè))收到該消息后,如果判斷其可以提供服務(wù),則根據(jù)客戶端的標(biāo)識(shí)和共享密鑰計(jì)算出會(huì)話密鑰K,并用會(huì)話密鑰K計(jì)算該消息 的認(rèn)證碼,填充Option 90選項(xiàng),構(gòu)造DHCP提供(DHCP0FFER)消息;然后,DHCP服務(wù)器將 DHCP0FFER消息發(fā)送給DHCP客戶端;這里,會(huì)話密鑰K = MAC (MK, unique-id),其中MAC是 消息認(rèn)證碼(Messege Authentication Code),MK是主密鑰即服務(wù)器與客戶端共享的密鑰, unique-id代表唯一標(biāo)識(shí), 步驟3,DHCP客戶端收到DHCP0FFER消息后,使用其本地存儲(chǔ)的會(huì)話密鑰K,按要 求驗(yàn)證Option 90選項(xiàng)里的授權(quán)信息(Authentication Information)是否正確,如果驗(yàn)證 失敗,則根據(jù)其本地的安全策略進(jìn)行相應(yīng)的處理,如果DHCP客戶端收到多個(gè)DHCP0FFER,會(huì) 按照某種策略選擇一個(gè)DHCP服務(wù)器。然后DHCP客戶端構(gòu)造DHCP請(qǐng)求(DHCPREQUEST)消 息,并用會(huì)話密鑰K計(jì)算該消息的認(rèn)證碼,填充Option 90選項(xiàng);DHCP客戶端向選中的DHCP 服務(wù)器發(fā)送DHCPREQUEST消息,請(qǐng)求服務(wù); 步驟4,DHCP服務(wù)器收到DHCPREQUEST消息,然后再使用密鑰K驗(yàn)證該消息,如果 驗(yàn)證失敗,則直接丟棄該消息,回復(fù)DHCP失敗應(yīng)答(DHCPNAK)消息,否則構(gòu)造DHCP成功應(yīng) 答(DHCPACK)消息。不管是DHCPNAK還是DHCPACK都需攜帶Option 90選項(xiàng),并根據(jù)標(biāo)準(zhǔn) 里的要求填充它;DHCP服務(wù)器將DHCPNAK/DHCPNAK消息發(fā)送給DHCP客戶端,當(dāng)DHCP客戶 端收到DHCPNAK/DHCPNAK消息后,根據(jù)第3步的處理方式驗(yàn)證該消息。但是上述延遲認(rèn)證的方法雖然實(shí)現(xiàn)了 DHCP客戶端和DHCP服務(wù)器端的認(rèn)證,但還 至少存在如下的問(wèn)題1、不支持對(duì)DHCP DISCOVER消息的認(rèn)證,易出現(xiàn)DOS攻擊。2、預(yù)共享密鑰認(rèn)證方式容易被攻擊者竊取,同時(shí)在具體組網(wǎng)中,預(yù)共享密鑰對(duì)出 廠流程及網(wǎng)絡(luò)管理帶來(lái)很大影響。因此需要一種更完善的安全機(jī)制來(lái)保護(hù)DHCP實(shí)體間的交互。證書機(jī)制是目前應(yīng) 用廣泛、安全級(jí)別較高的認(rèn)證方式,目前現(xiàn)有技術(shù)中存在相關(guān)使用證書進(jìn)行認(rèn)證的方法,但 是在DHCP應(yīng)用中卻難以實(shí)現(xiàn)。主要原因是以太網(wǎng)最大可傳輸?shù)臄?shù)據(jù)包是1500字節(jié),而如 果使用DHCP消息攜帶證書的方法不可行,因?yàn)樽C書的長(zhǎng)度一般在lk-業(yè)字節(jié),并且廣播的 消息不支持分包。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例在于提供一種認(rèn)證方法及系統(tǒng),通過(guò)證書的方式對(duì)DHCP客戶端和 服務(wù)器端進(jìn)行認(rèn)證,從而既可以避免DOS攻擊,又可以避免使用預(yù)置的共享密鑰進(jìn)行認(rèn)證。本發(fā)明實(shí)施例提供了一種認(rèn)證方法,應(yīng)用于動(dòng)態(tài)主機(jī)設(shè)置協(xié)議DHCP中,所述方法 包括DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP發(fā)現(xiàn)DHCP DISCOVER消息,所述DHCP DISCOVER消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第一信息;DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取與所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字 證書公鑰對(duì)所述加密的第一信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所述DHCP客戶端完成 認(rèn)證;DHCP服務(wù)器向DHCP客戶端發(fā)送DHCP提供DHCP OFFER消息,所述DHCP OFFER消 息中包含加密的第二信息,以使所述DHCP客戶端對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證,
6若驗(yàn)證成功,則對(duì)所述DHCP服務(wù)器完成認(rèn)證。本發(fā)明實(shí)施例還提供了一種認(rèn)證系統(tǒng),應(yīng)用于使用動(dòng)態(tài)主機(jī)設(shè)置協(xié)議DHCP的 DHCP服務(wù)器和DHCP客戶端之間,所述系統(tǒng)包括DHCP服務(wù)器;所述DHCP服務(wù)器分別與認(rèn)證 服務(wù)器和DHCP客戶端通信,其中,所述認(rèn)證服務(wù)器,用于存儲(chǔ)各DHCP客戶端對(duì)應(yīng)的數(shù)字證書;所述DHCP服務(wù)器,用于接收來(lái)自DHCP客戶端的DHCP發(fā)現(xiàn)DHCPDISC0VER消息,所 述DHCP DISCOVER消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第一信息;從認(rèn)證服務(wù)器上 獲取與所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字證書公鑰對(duì)所述加密的第一信息進(jìn)行 解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所述DHCP客戶端完成認(rèn)證;向DHCP客戶端發(fā)送DHCP提供 DHCP OFFER消息,所述DHCP OFFER消息中包含加密的第二信息;所述DHCP客戶端,用于對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則 對(duì)所述DHCP服務(wù)器完成認(rèn)證。應(yīng)用本發(fā)明實(shí)施例提供的認(rèn)證方法和認(rèn)證系統(tǒng),通過(guò)證書的方式對(duì)DHCP客戶端 和服務(wù)器端進(jìn)行認(rèn)證,既避免了 DOS攻擊,又避免了使用預(yù)置的共享密鑰進(jìn)行認(rèn)證。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。圖1是現(xiàn)有的DHCP采用延遲認(rèn)證的方法流程圖;圖2是根據(jù)本發(fā)明實(shí)施例的一種認(rèn)證方法流程圖;圖3是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的流程示意圖;圖4是根據(jù)本發(fā)明另一個(gè)具體實(shí)施例的流程示意圖;圖5是根據(jù)本發(fā)明又一個(gè)具體實(shí)施例的流程示意圖;圖6是根據(jù)本發(fā)明實(shí)施例的一種認(rèn)證系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;?本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明的技術(shù)方案,可以應(yīng)用于各種通信系統(tǒng),例如全球移動(dòng)通信系統(tǒng)(GSM, Global System for Mobile communications),石馬分多址(CDMA,Code Division Multiple Access)系統(tǒng),寬帶碼分多址(WCDMA,Wideband Code Division Multiple Access Wireless),通用分組無(wú)線業(yè)務(wù)(GPRS,General Packet Radio Service),長(zhǎng)期演進(jìn)(LTE, Long Term Evolution)等。此外,本文中結(jié)合用戶設(shè)備(UE,User Equipment)和/或基站來(lái)描述各種方面。 用戶設(shè)備可以是指向用戶提供語(yǔ)音和/或數(shù)據(jù)連通性的設(shè)備。用戶設(shè)備可連接至諸如膝上計(jì)算機(jī)或臺(tái)式計(jì)算機(jī)等計(jì)算設(shè)備,或者其他通信設(shè)備,例如,個(gè)人數(shù)字助理(PDA,Personal Digital Assistant)等自含式設(shè)備。無(wú)線終端也可以稱為系統(tǒng)、訂戶單元(Subscriber Unit)、訂戶站(Subscriber Mation),移動(dòng)站(Mobile Mation)、移動(dòng)臺(tái)(Mobile)、遠(yuǎn)程 站(Remote Station)、接入點(diǎn)(Access Point)、遠(yuǎn)程終端(Remote Terminal)、接入終端 (Access Terminal)、用戶終端(User Terminal)、用戶代理(User Agent)、用戶設(shè)備(User Device)、或用戶裝備(User Equipment) 0用戶設(shè)備可以是訂戶站、無(wú)線設(shè)備、蜂窩電話、 個(gè)人通信業(yè)務(wù)(PCS,Personal Communication Service)電話、無(wú)繩電話、會(huì)話發(fā)起協(xié)議 (SIP)話機(jī)、無(wú)線本地環(huán)路(WLL,Wireless Local Loop)站、個(gè)人數(shù)字助理(PDA,Personal Digital Assistant)、具有無(wú)線連接功能的手持式設(shè)備、或連接到無(wú)線調(diào)制解調(diào)器的其他 處理設(shè)備。基站(例如,接入點(diǎn))可以是指接入網(wǎng)中在空中接口上通過(guò)一個(gè)或多個(gè)扇區(qū)與 無(wú)線終端通信的設(shè)備?;究捎糜趯⑹盏降目罩袔cIP分組進(jìn)行相互轉(zhuǎn)換,作為無(wú)線終 端與接入網(wǎng)的其余部分之間的路由器,其中接入網(wǎng)的其余部分可包括網(wǎng)際協(xié)議(IP)網(wǎng) 絡(luò)?;具€可協(xié)調(diào)對(duì)空中接口的屬性管理。例如,可以是GSM或CDMA中的基站(BTS,Base Transceiver Station),也可以是WCDMA中的基站(NodeB),還可以是LTE中的演進(jìn)型基站 (eNB 或 e-NodeB,evolutional Node B),本發(fā)明并不限定。各種方面將以可包括一個(gè)或多個(gè)設(shè)備、組件、模塊、或單元等的系統(tǒng)的形式來(lái)描 述。應(yīng)該理解或領(lǐng)會(huì),各種系統(tǒng)可包括另加的設(shè)備、組件、模塊、和/或單元等,和/或可以 并不包括結(jié)合附圖所討論的設(shè)備、組件、模塊、單元等的全部。在本發(fā)明的另一方面,也可以 使用這些辦法的組合。另外,本文中術(shù)語(yǔ)“和/或”,僅僅是一種描述關(guān)聯(lián)對(duì)象的關(guān)聯(lián)關(guān)系,表示可以存在 三種關(guān)系,例如,A和/或B,可以表示單獨(dú)存在A,同時(shí)存在A和B,單獨(dú)存在B這三種情 況。另外,本文中符號(hào)“/”,一般表示前后關(guān)聯(lián)對(duì)象是一種“或”的關(guān)系。參見圖2,其是根據(jù)本發(fā)明實(shí)施例的一種認(rèn)證方法流程圖,本實(shí)施例應(yīng)用于動(dòng)態(tài)主 機(jī)設(shè)置協(xié)議(DHCP)中,所述認(rèn)證方法可以如下所述。201,DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP發(fā)現(xiàn)(DHCP DISCOVER)消息,所述 DHCP DISCOVER消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第一信息。202,DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取與DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字 證書公鑰對(duì)所述加密的第一信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所述DHCP客戶端完成 認(rèn)證。這里,DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取與DHCP客戶端對(duì)應(yīng)的數(shù)字證書的步驟可 以包括DHCP服務(wù)器根據(jù)預(yù)先配置的認(rèn)證服務(wù)器地址,通過(guò)已建立的DHCP服務(wù)器和認(rèn)證 服務(wù)器之間的安全通道,從所述認(rèn)證服務(wù)器上獲取所述數(shù)字證書;其中,所述DHCP服務(wù)器和認(rèn)證服務(wù)器之間的安全通道在DHCP服務(wù)器接收到來(lái)自 DHCP客戶端的DHCP發(fā)現(xiàn)DHCP DISCOVER消息之前或之后建立。其中,預(yù)先配置的認(rèn)證服務(wù)器地址為出廠時(shí)設(shè)定的固定地址,或者,預(yù)先配置的認(rèn) 證服務(wù)器地址為DHCP DISCOVER消息中攜帶的統(tǒng)一資源定位符(URL,Universal Resource Locator)。
8
上述通過(guò)已建立的DHCP服務(wù)器和認(rèn)證服務(wù)器之間的安全通道,從所述認(rèn)證服務(wù) 器上獲取所述數(shù)字證書的步驟包括DHCP服務(wù)器通過(guò)已建立的安全通道將DHCP客戶端的設(shè)備標(biāo)識(shí)發(fā)送給認(rèn)證服務(wù) 器,認(rèn)證服務(wù)器根據(jù)所述設(shè)備標(biāo)識(shí)驗(yàn)證所述DHCP客戶端合法后,通過(guò)已建立的安全通道將 所述DHCP客戶端的數(shù)字證書下發(fā)給DHCP服務(wù)器;DHCP服務(wù)器從接收到的信息中獲得所述DHCP客戶端的數(shù)字證書。203,DHCP服務(wù)器向DHCP客戶端發(fā)送DHCP提供DHCP OFFER消息,所述DHCP OFFER 消息中包含加密的第二信息,以使所述DHCP客戶端對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn) 證,若驗(yàn)證成功,則對(duì)所述DHCP服務(wù)器完成認(rèn)證。在步驟203中,所述加密的第二信息可以為使用客戶端所對(duì)應(yīng)的數(shù)字證書公鑰簽 名的信息;此時(shí),DHCP客戶端使用自身的私鑰對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證;或 者,所述加密的第二信息為使用DHCP服務(wù)器的私鑰簽名的信息;此時(shí),所述DHCP客戶端使 用DHCP服務(wù)器的公鑰對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證。至此,通過(guò)證書的方式在DHCP客戶端和DHCP服務(wù)器之間實(shí)現(xiàn)了互認(rèn)證,既保證了 DHCP DISCOVER消息的安全,避免了 DOS攻擊,又因可以使用公私密鑰而可以避免使用預(yù)置 的共享密鑰進(jìn)行認(rèn)證,從而更進(jìn)一步的保證了 DHCP的安全。再有,本發(fā)明實(shí)施例中的DHCP 服務(wù)器通過(guò)從認(rèn)證服務(wù)器獲取DHCP的客戶端的數(shù)字證書,避免使用DHCP消息攜帶證書,使 得在DHCP服務(wù)器與客戶端之間使用證書成為可能。需要說(shuō)明的是,為了使用DHCP協(xié)議完成IP地址的自動(dòng)分配,還可以使用公私鑰對(duì) 后續(xù)的消息進(jìn)行完整性保護(hù),這樣,在一個(gè)實(shí)施例中圖1所示流程還可以包括DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCP REQUEST消息,所述DHCP REQUEST消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第三信息;DHCP服務(wù)器應(yīng)用所述公鑰對(duì)所述加密的第三信息解密并驗(yàn)證成功后,根據(jù)所述 DHCP REQUEST消息中的信息進(jìn)行操作處理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn)DHCP ACK消息,所述DHCP ACK消息中包括加密的第四信息,以使所述DHCP客戶端對(duì)所述加密的 第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,所述DHCP客戶端根據(jù)所述DHCPACK消息中的信息 完成操作處理。需要說(shuō)明的是,上述加密的第四信息為使用客戶端所對(duì)應(yīng)的數(shù)字證書公鑰簽名的 信息;此時(shí),所述DHCP客戶端使用自身的私鑰對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證;或 者,上述加密的第四信息為使用DHCP服務(wù)器的私鑰簽名的信息;此時(shí),DHCP客戶端使用 DHCP服務(wù)器的公鑰對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證。這樣,DHCP客戶端和DHCP服務(wù)器之間使用公私鑰完成了后續(xù)的相互確認(rèn)操作,避 免了使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,進(jìn)一步保證了 DHCP客戶端和服務(wù)器之間交互信息的安全。需要說(shuō)明的是,為了使用DHCP協(xié)議完成IP地址的自動(dòng)分配,還可以使用共同協(xié)商 出的第一共享密鑰對(duì)后續(xù)的消息進(jìn)行完整性保護(hù),這樣,在另一個(gè)實(shí)施例中,圖1所示流程 還可以包括DHCP服務(wù)器接收到的DHCP DISCOVER消息中還包括第一公共值;DHCP服務(wù)器向DHCP客戶端發(fā)送的DHCP OFFER消息中還包括第二公共值;所述DHCP服務(wù)器和DHCP客戶端分別根據(jù)所述第一公共值和第二公共值計(jì)算出第一共享密鑰;DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCP REQUEST消息,所述DHCP REQUEST消息中包含應(yīng)用第一共享密鑰加密的第三信息;DHCP服務(wù)器應(yīng)用所述第一共享密鑰對(duì)所述加密的第三信息解密并驗(yàn)證成功后,根 據(jù)所述DHCP REQUEST消息中的信息進(jìn)行操作處理,之后,向所述DHCP客戶端發(fā)送DHCP確 認(rèn)DHCP ACK消息,所述DHCP ACK消息中包括應(yīng)用所述第一共享密鑰加密的第四信息,以使 所述DHCP客戶端對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,所述DHCP客戶端根 據(jù)所述DHCP ACK消息中的信息完成操作處理。需要說(shuō)明的是,上述各實(shí)施例中所涉及到的第一信息可以為DHCP客戶端唯一標(biāo) 識(shí)或DHCP DISCOVER消息本身;加密后的第一信息放入DHCP DISCOVER的0ption90字段中; 所涉及到的第二信息可以為DHCP OFFER消息本身;加密后的第二信息放入DHCP OFFER消 息的0ption90字段中;所涉及到的第三信息為DHCP REQUEST消息本身,加密后的第三信息 放入DHCP REQUEST消息的0ption90字段中;所涉及到的第四信息為DHCP ACK消息本身, 所述加密后的第四信息放入DHCP ACK消息的0ption90字段中。這樣,DHCP客戶端和DHCP服務(wù)器之間不僅使用公私鑰完成相互的認(rèn)證,在后續(xù)的 相互確認(rèn)操作中使用協(xié)商出的第一共享密鑰,避免了使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,進(jìn)一 步保證了 DHCP客戶端和服務(wù)器之間交互信息的安全。下面結(jié)合具體實(shí)施例對(duì)本發(fā)明再做詳細(xì)說(shuō)明。在以下實(shí)施例中,DHCP客戶端,DHCP 服務(wù)器以及證書服務(wù)器都進(jìn)行了出廠配置。其中DHCP客戶端上的出廠配置信息是設(shè)備標(biāo) 識(shí)(ID)、DHCP客戶端的證書以及廠商根證書或證書鏈,以及與證書中包含公鑰所對(duì)應(yīng)的私 鑰;DHCP服務(wù)器的出廠配置是服務(wù)器證書和廠商根證書;在證書服務(wù)器中的出廠配置有證 書服務(wù)器的證書,廠商的CA證書、DHCP客戶端ID對(duì)應(yīng)的證書列表,即在證書服務(wù)器中維護(hù) 了 DHCP客戶端的黑白名單列表。其中證書服務(wù)器可根據(jù)本地策略選定如,F(xiàn)TP服務(wù)器等。 在以下實(shí)施例中,以基站作為DHCP客戶端。參見圖3,其是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的流程示意圖。本實(shí)施例中,與DHCP服 務(wù)器交互的認(rèn)證服務(wù)器地址預(yù)設(shè)固設(shè)在DHCP服務(wù)器的出廠設(shè)置中,該流程可以如下所述。1,基站向DHCP服務(wù)器發(fā)送DHCP Di scover消息,其中攜帶了包含基站電子序列號(hào) (ESN, ELECTRONIC SERIAL NUMBER)的0ption60和包含了使用基站的私鑰計(jì)算的基站ESN 號(hào)摘要的值的0ption90,摘要計(jì)算使用的算法在0ption90中的算法域標(biāo)識(shí)。這里,基站ESN號(hào)即為前述第一信息。2,DHCP服務(wù)器接收到DHCP Discover消息后,可以獲得位于0ption60中基站ID 即基站ESN號(hào)。DHCP服務(wù)器與證書服務(wù)器之間認(rèn)證并建立安全通道如SSL連接,用于安全 的向證書服務(wù)器提供基站的ESN以及安全的下載基站證書。DHCP服務(wù)器和認(rèn)證服務(wù)器之間的安全通道可以在DHCP服務(wù)器接收到來(lái)自基站的 DHCP DISCOVER消息之前建立(如步驟0所述)或之后建立(如步驟2所示)。需要說(shuō)明的是,當(dāng)DHCP服務(wù)器和認(rèn)證服務(wù)器之間建立起安全通道后,該DHCP服務(wù) 器說(shuō)明是已經(jīng)被認(rèn)證的合法的DHCP服務(wù)器。具體的,DHCP服務(wù)器和認(rèn)證服務(wù)器之間的驗(yàn) 證可以使用出廠預(yù)設(shè)的廠商CA證書、DHCP服務(wù)器證書或證書服務(wù)器證書之一進(jìn)行驗(yàn)證。需要說(shuō)明的是,DHCP服務(wù)器和認(rèn)證服務(wù)器之間建立安全通道的具體過(guò)程與現(xiàn)有的
10技術(shù)方案完全相同,這里不再贅述。需要說(shuō)明的是,在本實(shí)施例中,并不限定安全通道的具體承載協(xié)議,如,可以是基 于SSL的連接,也可以是基于其他安全協(xié)議的連接。3,通過(guò)已建立的安全通道如SSL連接,DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取基站證 書;該步驟可以具體為DHCP服務(wù)器通過(guò)已建立的安全通道將DHCP客戶端的設(shè)備標(biāo)識(shí)如ESN發(fā)送給認(rèn)證 服務(wù)器;證書服務(wù)器通過(guò)查詢自身保存的黑白名單確認(rèn)該ESN是否合法,若合法,則再通過(guò) 基站ID對(duì)應(yīng)的證書列表,獲得該基站所對(duì)應(yīng)的數(shù)字證書,之后,通過(guò)已建立的安全通道將 該基站的數(shù)字證書下發(fā)給DHCP服務(wù)器;DHCP服務(wù)器從接收到的信息中獲得所述DHCP客戶端的數(shù)字證書。這樣,該基站的數(shù)字證書是在安全通道的保護(hù)下從認(rèn)證服務(wù)器獲得的。4,DHCP服務(wù)器驗(yàn)證接收到的基站證書,驗(yàn)證通過(guò)后獲取基站證書的公鑰。這里,可以通過(guò)DHCP服務(wù)器和證書服務(wù)器內(nèi)出廠預(yù)設(shè)的廠商CA證書進(jìn)行驗(yàn)證。5,DHCP服務(wù)器使用基站的公鑰驗(yàn)證私鑰簽名,即解密0ption90中摘要值,與 OptionBO中包含的基站的ESN號(hào)進(jìn)行對(duì)比,如果匹配,則說(shuō)明基站確實(shí)擁有與該證書匹配 的私鑰;至此,DHCP服務(wù)器通過(guò)數(shù)字證書完成了對(duì)基站的認(rèn)證。 6,DHCP服務(wù)器對(duì)DHCP OFFER消息進(jìn)行數(shù)字簽名,該DHCP OFFER消息中包含了 Option 43的內(nèi)容或其它選項(xiàng)的內(nèi)容,將包含所述DHCP OFFER消息數(shù)字簽名的DHCP OFFER
消息發(fā)送至基站。其中,上述DHCP OFFER消息相當(dāng)于前述的第二信息,DHCP OFFER消息進(jìn)行數(shù)字簽 名后的信息放置在DHCP OFFER消息的0ption90字段中。這里,DHCP服務(wù)器對(duì)DHCP OFFER消息進(jìn)行數(shù)字簽名的方式有多種方式一使用基站的公鑰對(duì)DHCP OFFER消息進(jìn)行數(shù)字簽名;方式二 使用DHCP服務(wù)器的私鑰對(duì)DHCP OFFER消息進(jìn)行數(shù)字簽名。當(dāng)采用方式二時(shí),又可以分為以下幾種情況A、所下發(fā)的DHCP OFFER消息中除了包括對(duì)DHCP OFFER消息的簽名,還包括DHCP 服務(wù)器的數(shù)字證書;B、所下發(fā)的DHCP OFFER消息中除了包括對(duì)DHCP OFFER消息的簽名,還包括DHCP 服務(wù)器的公鑰和DHCP服務(wù)器所對(duì)應(yīng)數(shù)字證書的URL ;C、所下發(fā)的DHCP OFFER消息中除了包括對(duì)DHCP OFFER消息的簽名,還包括DHCP 服務(wù)器的所對(duì)應(yīng)數(shù)字證書的URL和DHCP服務(wù)器的標(biāo)識(shí)(ID)。需要說(shuō)明的是,通常,上述方式二的A情況適用于單播發(fā)送DHCP OFFER消息,除此 之外的其他情況適用于廣播或多播發(fā)送DHCP OFFER消息。 7,基站接收到DHCP OFFER消息后,對(duì)DHCP OFFER消息的簽名進(jìn)行驗(yàn)證。由于步驟6中,對(duì)DHCP OFFER消息進(jìn)行數(shù)字簽名的方式不同,因此,這里驗(yàn)證的方 式也相應(yīng)的不同如果步驟6中采用方式一,則本步驟中,基站使用自己的私鑰完成對(duì)DHCP0FFER消 息的驗(yàn)證,如驗(yàn)證成功,則說(shuō)明DHCP服務(wù)器是經(jīng)過(guò)證書服務(wù)器的驗(yàn)證合法的DHCP服務(wù)器,并獲得了基站的證書,此時(shí)基站對(duì)DHCP服務(wù)器完成了認(rèn)證。如果步驟6中采用方式二的A情況,則本步驟中,基站從接收到的DHCP0FFER消息 中獲得DHCP服務(wù)器的數(shù)字證書,再用所獲得的數(shù)字證書對(duì)簽名進(jìn)行驗(yàn)證。如驗(yàn)證成功,則 說(shuō)明DHCP服務(wù)器是經(jīng)過(guò)證書服務(wù)器的驗(yàn)證合法的DHCP服務(wù)器,并獲得了 DHCP服務(wù)器的數(shù) 字證書,此時(shí)基站對(duì)DHCP服務(wù)器完成了認(rèn)證。需要說(shuō)明的是,在基站從接收到的DHCP OFFER消息中獲得DHCP服務(wù)器的數(shù)字證 書后,可以先對(duì)該DHCP的數(shù)字證書進(jìn)行本身的真實(shí)性、合法性進(jìn)行驗(yàn)證,驗(yàn)證成功后,再應(yīng) 用所獲得的數(shù)字證書對(duì)簽名進(jìn)行驗(yàn)證。這里,并不對(duì)數(shù)字證書驗(yàn)證的過(guò)程進(jìn)行限定,任何能 夠?qū)?shù)字證書進(jìn)行驗(yàn)證的方法都可以應(yīng)用于本發(fā)明實(shí)施例中。如果步驟6中采用方式二的B情況,則本步驟中,基站暫時(shí)信任DHCP服務(wù)器是 合法的,先從接收到的DHCP OFFER消息獲取DHCP服務(wù)器的公鑰以完成對(duì)接收到的DHCP OFFER消息的驗(yàn)證,從而獲得DHCP服務(wù)器分配的IP地址;之后,基站從接收到的消息中獲 得的DHCP服務(wù)器所對(duì)應(yīng)數(shù)字證書的URL,使用DHCP服務(wù)器分配的IP地址獲取該URL對(duì) 應(yīng)的數(shù)字證書;使用從消息中獲得的公鑰與通過(guò)URL獲得的數(shù)字證書中所對(duì)應(yīng)的公鑰進(jìn)行 匹配,若兩者一致則通過(guò)對(duì)服務(wù)器的驗(yàn)證。此時(shí)基站獲得了 DHCP服務(wù)器的數(shù)字證書,并對(duì) DHCP服務(wù)器完成了認(rèn)證。如果步驟6中采用方式二的C情況,則本步驟中,基站默認(rèn)接收到的DHCP0FFER 消息是通過(guò)驗(yàn)證的,從而獲得DHCP服務(wù)器分配的IP地址;之后,基站從接收到的消息中獲 得的DHCP服務(wù)器所對(duì)應(yīng)數(shù)字證書的URL,使用DHCP服務(wù)器分配的IP地址通過(guò)該URL獲得 DHCP服務(wù)器的數(shù)字證書;或者,基站從接收到的消息中獲得的DHCP服務(wù)器ID,再根據(jù)本地 預(yù)先配置的證書服務(wù)器地址獲得DHCP服務(wù)器的數(shù)字證書,對(duì)所獲得的DHCP服務(wù)器的數(shù)字 證書進(jìn)行驗(yàn)證,驗(yàn)證成功后,再應(yīng)用所獲得的數(shù)字證書對(duì)DHCP OFFER消息的簽名進(jìn)行驗(yàn)證。 此時(shí)基站獲得了 DHCP服務(wù)器的數(shù)字證書,并對(duì)DHCP服務(wù)器完成了認(rèn)證。這里,并不對(duì)數(shù)字 證書驗(yàn)證的過(guò)程進(jìn)行限定,任何能夠?qū)?shù)字證書進(jìn)行驗(yàn)證的方法都可以應(yīng)用于本發(fā)明實(shí)施 例中。至此,基站與DHCP服務(wù)器之間相互完成了基于證書的認(rèn)證。隨后,基站發(fā)送DHCP Request消息給證書服務(wù)器,該消息中攜帶了 0ption43,以 及使用自己的私鑰計(jì)算的DHCP Request消息的簽名包含在0ption90中,用于向DHCP服務(wù) 器進(jìn)行確認(rèn)。這里,DHCP Request消息相當(dāng)于前述的第三信息,該加密后的第三信息放置在 DHCP Request 消息的 0ption90 字段中。8,DHCP服務(wù)器接收到DHCP Request消息后,使用基站的公鑰進(jìn)行驗(yàn)證消息的完 整性。驗(yàn)證通過(guò),則發(fā)送DHCP ACK消息?;臼褂门c第7步相同的方法驗(yàn)證ACK消息。這里,DHCP ACK消息相當(dāng)于前述的第四信息,該加密后的第四信息即對(duì)放置在 DHCP ACK消息的0ption90字段中。至此,通過(guò)DHCP協(xié)議完成了 IP地址的自動(dòng)分配。需要說(shuō)明的是,在上述實(shí)施例中,0ption90中密鑰標(biāo)識(shí)域可以設(shè)置為0,以表示使 用公私鑰對(duì)DHCP Request消息和DHCP ACK消息進(jìn)行認(rèn)證,而不是使用現(xiàn)有的預(yù)置共享密 鑰進(jìn)行認(rèn)證。
應(yīng)用上述實(shí)施例,作為DHCP客戶端的基站和DHCP服務(wù)器之間使用公私鑰完成了 相互認(rèn)證,避免了 DOS攻擊,而且,本實(shí)施例中還使用公私鑰對(duì)后續(xù)操作進(jìn)行保護(hù),避免了 使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,進(jìn)一步保證了 DHCP客戶端和服務(wù)器之間交互信息的安全。參見圖4,其是根據(jù)本發(fā)明另一個(gè)具體實(shí)施例的流程示意圖。本實(shí)施例中,與DHCP 服務(wù)器交互的認(rèn)證服務(wù)器地址是通過(guò)URL獲得的,而不是預(yù)先固設(shè)在DHCP服務(wù)器的出廠設(shè) 置中,該流程具體包括1,基站向DHCP服務(wù)器發(fā)送DHCP Discover消息,其中攜帶了包含基站ESN號(hào)的 0ption60、攜帶了證書服務(wù)器的URL信息的Option 98以及包含了使用基站的私鑰計(jì)算 的DHCP消息簽名的0ption90,摘要計(jì)算使用的算法在0ption90中的算法域標(biāo)識(shí)。其中 0ption98用于使得DHCP服務(wù)器尋找到證書服務(wù)器,與實(shí)施例一不同的是,在實(shí)施例一中, 固定配置了證書服務(wù)器的地址。2,DHCP服務(wù)器接收到DHCP Discover消息后,可以從0ption98獲得URL地址,從 0ption90獲得加密的ESN,從0ption60中獲得ESN,DHCP服務(wù)器根據(jù)URL地址獲取認(rèn)證服 務(wù)器的地址,之后,DHCP服務(wù)器與證書服務(wù)器之間認(rèn)證并建立SSL連接,用于安全的向證書 服務(wù)器提供基站的ESN以及安全的下載基站證書。DHCP服務(wù)器和認(rèn)證服務(wù)器之間的安全通道可以在DHCP服務(wù)器接收到來(lái)自基站的 DHCP DISCOVER消息之前建立(如步驟0所述)或之后建立(如步驟2所示)。需要說(shuō)明的是,當(dāng)DHCP服務(wù)器和認(rèn)證服務(wù)器之間建立起安全通道后,該DHCP服務(wù) 器說(shuō)明是已經(jīng)被認(rèn)證的合法的DHCP服務(wù)器。具體的,DHCP服務(wù)器和認(rèn)證服務(wù)器之間的驗(yàn) 證可以使用出廠預(yù)設(shè)的廠商CA證書、DHCP服務(wù)器證書或證書服務(wù)器證書之一進(jìn)行驗(yàn)證。需要說(shuō)明的是,DHCP服務(wù)器和認(rèn)證服務(wù)器之間建立安全通道的具體過(guò)程與現(xiàn)有的 技術(shù)方案完全相同,這里不再贅述。需要說(shuō)明的是,在本實(shí)施例中,并不限定安全通道的具體承載協(xié)議,如,可以是基 于SSL的連接,也可以是基于其他安全協(xié)議的連接。3-8,與圖3所示實(shí)施例的步驟完全相同,此處不再贅述。應(yīng)用上述實(shí)施例,作為DHCP客戶端的基站和DHCP服務(wù)器之間使用公私鑰完成了 相互認(rèn)證,避免了 DOS攻擊,而且,本實(shí)施例中還使用公私鑰對(duì)后續(xù)操作進(jìn)行保護(hù),避免了 使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,進(jìn)一步保證了 DHCP客戶端和服務(wù)器之間交互信息的安全。參見圖5,其是根據(jù)本發(fā)明又一個(gè)具體實(shí)施例的流程示意圖。本實(shí)施例中,與DHCP 服務(wù)器交互的認(rèn)證服務(wù)器地址是預(yù)先固設(shè)在DHCP服務(wù)器的出廠設(shè)置中,且,基站和DHCP服 務(wù)器通過(guò)公私鑰又協(xié)商出一第一共享密鑰,后續(xù)操作即DHCP Request消息和DHCP ACK消 息使用該協(xié)商出的第一共享密碼進(jìn)行加密,該流程具體包括1,基站向DHCP服務(wù)器發(fā)送DHCP Discover消息,其中攜帶了包含基站ESN的 OptionBO和包含了使用基站的私鑰計(jì)算的基站ESN號(hào)摘要的值的0ption90,摘要計(jì)算使用 的算法在0ption90中的算法域標(biāo)識(shí)。0ption90中密鑰ID攜帶DH密鑰交換算法所使用的 第一公共值,或者通過(guò)擴(kuò)展0ptiOn90來(lái)攜帶該第一公共值。這里,基站ESN號(hào)即為前述第一信息。當(dāng)然,也可以使用基站的私鑰對(duì)DHCP Discover消息進(jìn)行前面,具體與對(duì)ESN號(hào)計(jì)算摘要值類似,不再重復(fù)說(shuō)明。2-5,與圖3所示實(shí)施例完全相同,不再贅述。
6,DHCP服務(wù)器對(duì)DHCP OFFER消息進(jìn)行數(shù)字簽名,該DHCP OFFER消息中包含了 Option 43的內(nèi)容或其它選項(xiàng)的內(nèi)容,以及同樣在0ption90中以步驟1中所述的兩種可能 方式攜帶的用于DH交換的第二公共值。其中,上述DHCP OFFER消息相當(dāng)于前述的第二信息,DHCP OFFER消息進(jìn)行數(shù)字簽 名后的信息放置在DHCP OFFER消息的0ption90字段中。7,基站接收到DHCP OFFER消息后,使用自己的私鑰完成對(duì)DHCP0FFER消息的驗(yàn) 證,如驗(yàn)證成功,則說(shuō)明DHCP服務(wù)器是經(jīng)過(guò)證書服務(wù)器的驗(yàn)證合法的DHCP服務(wù)器,并獲得 了基站的證書,此時(shí)基站對(duì)DHCP服務(wù)器完成了認(rèn)證。即此時(shí)基站與DHCP服務(wù)器之間相互 完成了基于證書的認(rèn)證。并且,基站通過(guò)自身產(chǎn)生的第一公共值和從DHCP服務(wù)器獲得的第二公共值,計(jì)算 出DHCP客戶端和DHCP服務(wù)器之間的第一共享密鑰。隨后,基站發(fā)送DHCP Request消息給證書服務(wù)器,該消息中攜帶了 0ption43 或其它選項(xiàng)的內(nèi)容,以及使用上述第一共享密鑰計(jì)算DHCP Request消息的簽名包含在 0ption90中,用于向DHCP服務(wù)器進(jìn)行確認(rèn)。需要說(shuō)明的是,本實(shí)施例中,0ption90中密鑰ID可全設(shè)置為1,表明使用DH交換 方式產(chǎn)生的第一共享密鑰進(jìn)行保護(hù)。這里,DHCP Request消息相當(dāng)于前述的第三信息,該加密后的第三信息放置在 DHCP Request 消息的 0ption90 字段中。8,DHCP服務(wù)器接收到DHCP Request消息后,使用第一共享密鑰進(jìn)行驗(yàn)證消息的 完整性。驗(yàn)證通過(guò),則發(fā)送DHCP ACK消息?;臼褂门c第7步相同的方法驗(yàn)證ACK消息。這里,DHCP ACK消息相當(dāng)于前述的第四信息,該加密后的第四信息放置在DHCP ACK消息的0ption90字段中。至此,通過(guò)DHCP協(xié)議完成了 IP地址的自動(dòng)分配。需要說(shuō)明的是,在圖5所示實(shí)施例中,與DHCP服務(wù)器交互的認(rèn)證服務(wù)器地址可以 是通過(guò)URL獲得的,在此,并不對(duì)獲得認(rèn)證服務(wù)器地址的方式進(jìn)行限定。應(yīng)用上述實(shí)施例,作為DHCP客戶端的基站和DHCP服務(wù)器之間使用公私鑰完成了 相互認(rèn)證,避免了 DOS攻擊,而且,本實(shí)施例中還可以使用協(xié)商出的第一共享密鑰對(duì)后續(xù)操 作進(jìn)行保護(hù),避免了使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,進(jìn)一步保證了 DHCP客戶端和服務(wù)器之 間交互信息的安全。本發(fā)明實(shí)施例還提供了一種認(rèn)證系統(tǒng),應(yīng)用于使用動(dòng)態(tài)主機(jī)設(shè)置協(xié)議DHCP的 DHCP服務(wù)器和DHCP客戶端之間,具體參見圖6,該可以系統(tǒng)包括DHCP服務(wù)器602,所述 DHCP服務(wù)器602分別與認(rèn)證服務(wù)器601和DHCP客戶端603通信。其中,認(rèn)證服務(wù)器601,用于存儲(chǔ)各DHCP客戶端對(duì)應(yīng)的數(shù)字證書;DHCP服務(wù)器602,用于接收來(lái)自DHCP客戶端的DHCP發(fā)現(xiàn)DHCPDISC0VER消息,所 述DHCP DISCOVER消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第一信息;從認(rèn)證服務(wù)器上 獲取與所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字證書公鑰對(duì)所述加密的第一信息進(jìn)行 解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所述DHCP客戶端完成認(rèn)證;向DHCP客戶端發(fā)送DHCP提供 DHCP OFFER消息,所述DHCP OFFER消息中包含加密的第二信息;DHCP客戶端603,用于對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)
14完成認(rèn)證。其中,上述DHCP服務(wù)器602,還用于接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCP REQUEST消息,所述DHCP REQUEST消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第三信息; 應(yīng)用所述公鑰對(duì)所述加密的第三信息解密并驗(yàn)證成功后,根據(jù)所述DHCP REQUEST消息中的 信息進(jìn)行操作處理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn)DHCP ACK消息,所述DHCP ACK 消息中包括加密的第四信息,上述DHCP客戶端603,還用于對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成 功,所述DHCP客戶端根據(jù)所述DHCP ACK消息中的信息完成操作處理。其中,上述DHCP服務(wù)器602接收到的DHCP DISCOVER消息中還包括第一公共值; 上述DHCP服務(wù)器向DHCP客戶端發(fā)送的DHCP OFFER消息中還包括第二公共值;DHCP服務(wù) 器和DHCP客戶端分別根據(jù)所述第一公共值和第二公共值計(jì)算出第一共享密鑰;上述DHCP服務(wù)器602,還用于接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCPREQUEST消 息,所述DHCP REQUEST消息中包含應(yīng)用第一共享密鑰加密的第三信息;應(yīng)用所述第一共享 密鑰對(duì)所述加密的第三信息解密并驗(yàn)證成功后,根據(jù)所述DHCP REQUEST消息中的信息進(jìn)行 操作處理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn)DHCP ACK消息,所述DHCP ACK消息中 包括應(yīng)用所述第一共享密鑰加密的第四信息;上述DHCP客戶端603,還用于對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成 功,DHCP客戶端根據(jù)所述DHCP ACK消息中的信息完成操作處理。其中,上述第一信息為DHCP客戶端唯一標(biāo)識(shí)或DHCP DISCOVER消息本身;上述加 密后的第一信息放入DHCP DISCOVER的0ption90字段中;第二信息為DHCP OFFER消息本 身;加密后的第二信息放入DHCP OFFER消息的0ption90字段中;第三信息為DHCP REQUEST 消息本身,加密后的第三信息放入DHCP REQUEST消息的0ption90字段中;第四信息為DHCP ACK消息本身,加密后的第四信息放入DHCP ACK消息的0ption90字段中。應(yīng)用本發(fā)明實(shí)施例提供的認(rèn)證系統(tǒng),通過(guò)證書的方式在DHCP客戶端和DHCP服務(wù) 器之間實(shí)現(xiàn)了互認(rèn)證,既保證了 DHCP DISCOVER消息的安全,避免了 DOS攻擊,又因可以使 用公私密鑰而可以避免使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,從而更進(jìn)一步的保證了 DHCP的安 全。再有,本發(fā)明實(shí)施例中的DHCP服務(wù)器通過(guò)從認(rèn)證服務(wù)器獲取DHCP的客戶端的數(shù)字證 書,避免使用DHCP消息攜帶證書,使得在DHCP服務(wù)器與客戶端之間使用證書成為可能。DHCP客戶端和DHCP服務(wù)器之間使用公私鑰或協(xié)商出的第一共享密鑰完成了后續(xù) 的相互確認(rèn)操作,避免了使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,進(jìn)一步保證了 DHCP客戶端和服務(wù) 器之間交互信息的安全。對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān) 之處參見方法實(shí)施例的部分說(shuō)明即可。需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí) 體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存 在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵 蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要 素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備 所固有的要素。在沒有更多限制的情況下,由語(yǔ)句“包括一個(gè)......”限定的要素,并不排
15除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng), 裝置和單元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以 通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的 劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件 可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或 討論的相互之間的耦合或直接耦合或通信連接可以是通過(guò)一些接口,裝置或單元的間接耦 合或通信連接,可以是電性,機(jī)械或其它的形式。所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開的,作為單元顯 示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè) 網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目 的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以 是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單 元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用 時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì) 上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形 式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算 機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法 的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程 序代碼的介質(zhì)。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在 本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍 內(nèi)。
權(quán)利要求
1.一種認(rèn)證方法,應(yīng)用于動(dòng)態(tài)主機(jī)設(shè)置協(xié)議DHCP中,其特征在于,DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP發(fā)現(xiàn)DHCP DISCOVER消息,所述DHCP DISCOVER消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第一信息;DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取與所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字證書 公鑰對(duì)所述加密的第一信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所述DHCP客戶端完成認(rèn) 證;DHCP服務(wù)器向DHCP客戶端發(fā)送DHCP提供DHCP OFFER消息,所述DHCP OFFER消息中 包含加密的第二信息,以使所述DHCP客戶端對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證,若驗(yàn) 證成功,則對(duì)所述DHCP服務(wù)器完成認(rèn)證。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取與 所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書的步驟包括DHCP服務(wù)器根據(jù)預(yù)先配置的認(rèn)證服務(wù)器地址,通過(guò)已建立的DHCP服務(wù)器和認(rèn)證服務(wù) 器之間的安全通道,從所述認(rèn)證服務(wù)器上獲取所述數(shù)字證書。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述預(yù)先配置的認(rèn)證服務(wù)器地址為出廠 時(shí)設(shè)定的固定地址,或者,所述預(yù)先配置的認(rèn)證服務(wù)器地址為DHCP DISCOVER消息中攜帶的 認(rèn)證服務(wù)器所對(duì)應(yīng)的統(tǒng)一資源定位符URL。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,通過(guò)已建立的DHCP服務(wù)器和認(rèn)證服務(wù)器 之間的安全通道,從所述認(rèn)證服務(wù)器上獲取所述數(shù)字證書的步驟包括DHCP服務(wù)器通過(guò)已建立的安全通道將DHCP客戶端的設(shè)備標(biāo)識(shí)發(fā)送給認(rèn)證服務(wù)器,認(rèn) 證服務(wù)器根據(jù)所述設(shè)備標(biāo)識(shí)驗(yàn)證所述DHCP客戶端合法后,通過(guò)已建立的安全通道將所述 DHCP客戶端的數(shù)字證書下發(fā)給DHCP服務(wù)器;DHCP服務(wù)器從接收到的信息中獲得所述DHCP客戶端的數(shù)字證書。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述加密的第二信息為使用客戶端所對(duì)應(yīng)的數(shù)字證書公鑰簽名的信息;所述DHCP客戶端使用自身的私鑰對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于, 所述加密的第二信息為使用DHCP服務(wù)器的私鑰簽名的信息;所述DHCP客戶端使用DHCP服務(wù)器的公鑰對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCP REQUEST消息,所述DHCP REQUEST 消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第三信息;DHCP服務(wù)器應(yīng)用所述公鑰對(duì)所述加密的第三信息解密并驗(yàn)證成功后,根據(jù)所述DHCP REQUEST消息中的信息進(jìn)行操作處理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn)DHCP ACK消 息,所述DHCP ACK消息中包括加密的第四信息,以使所述DHCP客戶端對(duì)所述加密的第四信 息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,所述DHCP客戶端根據(jù)所述DHCPACK消息中的信息完成操 作處理。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述加密的第四信息為使用客戶端所對(duì)應(yīng)的數(shù)字證書公鑰簽名的信息;所述DHCP客戶端使用自身的私鑰對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證;或者,所述加密的第四信息為使用DHCP服務(wù)器的私鑰簽名的信息;所述DHCP客戶端使用DHCP服務(wù)器的公鑰對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括 DHCP服務(wù)器接收到的DHCP DISCOVER消息中還包括第一公共值;DHCP服務(wù)器向DHCP客戶端發(fā)送的DHCP OFFER消息中還包括第二公共值;所述DHCP服 務(wù)器和DHCP客戶端分別根據(jù)所述第一公共值和第二公共值計(jì)算出第一共享密鑰;DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCP REQUEST消息,所述DHCP REQUEST 消息中包含應(yīng)用第一共享密鑰加密的第三信息;DHCP服務(wù)器應(yīng)用所述第一共享密鑰對(duì)所述加密的第三信息解密并驗(yàn)證成功后,根據(jù) 所述DHCP REQUEST消息中的信息進(jìn)行操作處理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn) DHCP ACK消息,所述DHCP ACK消息中包括應(yīng)用所述第一共享密鑰加密的第四信息,以使所 述DHCP客戶端對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,所述DHCP客戶端根據(jù) 所述DHCP ACK消息中的信息完成操作處理。
10.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一信息為DHCP客戶端唯一標(biāo)識(shí)或DHCP DISCOVER消息本身; 所述第二信息為DHCP OFFER消息本身。
11.根據(jù)權(quán)利要求8或9所述的方法,其特征在于, 所述第三信息為DHCP REQUEST消息本身;所述第四信息為DHCP ACK消息本身。
12.—種認(rèn)證系統(tǒng),應(yīng)用于使用動(dòng)態(tài)主機(jī)設(shè)置協(xié)議DHCP的DHCP服務(wù)器和DHCP客戶 端之間,其特征在于,所述系統(tǒng)包括=DHCP服務(wù)器;所述DHCP服務(wù)器分別與認(rèn)證服務(wù)器和 DHCP客戶端通信,其中,所述認(rèn)證服務(wù)器,用于存儲(chǔ)各DHCP客戶端對(duì)應(yīng)的數(shù)字證書;所述DHCP服務(wù)器,用于接收來(lái)自DHCP客戶端的DHCP發(fā)現(xiàn)DHCPDISC0VER消息,所述 DHCP DISCOVER消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第一信息;從認(rèn)證服務(wù)器上獲 取與所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字證書公鑰對(duì)所述加密的第一信息進(jìn)行解 密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所述DHCP客戶端完成認(rèn)證;向DHCP客戶端發(fā)送DHCP提供DHCP OFFER消息,所述DHCP OFFER消息中包含加密的第二信息;所述DHCP客戶端,用于對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)所 述DHCP服務(wù)器完成認(rèn)證。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述DHCP服務(wù)器,還用于接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCPREQUEST消息,所述 DHCP REQUEST消息中包含應(yīng)用所述DHCP客戶端私鑰加密的第三信息;應(yīng)用所述公鑰對(duì)所 述加密的第三信息解密并驗(yàn)證成功后,根據(jù)所述DHCP REQUEST消息中的信息進(jìn)行操作處 理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn)DHCP ACK消息,所述DHCP ACK消息中包括加 密的第四信息,所述DHCP客戶端,還用于對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,所述 DHCP客戶端根據(jù)所述DHCP ACK消息中的信息完成操作處理。
14.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述DHCP服務(wù)器接收到的DHCP DISCOVER消息中還包括第一公共值; 所述DHCP服務(wù)器向DHCP客戶端發(fā)送的DHCP OFFER消息中還包括第二公共值;所述 DHCP服務(wù)器和DHCP客戶端分別根據(jù)所述第一公共值和第二公共值計(jì)算出第一共享密鑰; 所述DHCP服務(wù)器,還用于接收來(lái)自DHCP客戶端的DHCP請(qǐng)求DHCPREQUEST消息,所述 DHCP REQUEST消息中包含應(yīng)用第一共享密鑰加密的第三信息;應(yīng)用所述第一共享密鑰對(duì)所 述加密的第三信息解密并驗(yàn)證成功后,根據(jù)所述DHCP REQUEST消息中的信息進(jìn)行操作處 理,之后,向所述DHCP客戶端發(fā)送DHCP確認(rèn)DHCP ACK消息,所述DHCP ACK消息中包括應(yīng) 用所述第一共享密鑰加密的第四信息,所述DHCP客戶端,還用于對(duì)所述加密的第四信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,所述 DHCP客戶端根據(jù)所述DHCP ACK消息中的信息完成操作處理。
15.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述第一信息為DHCP客戶端唯一標(biāo)識(shí)或DHCP DISCOVER消息本身; 所述第二信息為DHCP OFFER消息本身; 所述第三信息為DHCP REQUEST消息本身; 所述第四信息為DHCP ACK消息本身。
全文摘要
本發(fā)明實(shí)施例提供了一種認(rèn)證方法及系統(tǒng),應(yīng)用于DHCP中,其中,該方法包括DHCP服務(wù)器接收來(lái)自DHCP客戶端的DHCP DISCOVER消息,該消息中包含應(yīng)用DHCP客戶端私鑰加密的第一信息;DHCP服務(wù)器從認(rèn)證服務(wù)器上獲取與所述DHCP客戶端對(duì)應(yīng)的數(shù)字證書,應(yīng)用數(shù)字證書公鑰對(duì)加密的第一信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)DHCP客戶端完成認(rèn)證;DHCP服務(wù)器向DHCP客戶端發(fā)送DHCP OFFER消息,該消息中包含加密的第二信息,以使DHCP客戶端對(duì)所述加密的第二信息進(jìn)行解密并驗(yàn)證,若驗(yàn)證成功,則對(duì)DHCP服務(wù)器完成認(rèn)證。應(yīng)用本發(fā)明實(shí)施例,避免了DOS攻擊,而且避免使用預(yù)置的共享密鑰進(jìn)行認(rèn)證,從而更進(jìn)一步的保證了DHCP的安全。
文檔編號(hào)H04L29/06GK102123157SQ20111007056
公開日2011年7月13日 申請(qǐng)日期2011年3月23日 優(yōu)先權(quán)日2011年3月3日
發(fā)明者畢曉宇, 熊鶯, 王江勝, 陳佳佳, 陳璟 申請(qǐng)人:上海華為技術(shù)有限公司