專(zhuān)利名稱(chēng):一種dhcp安全通信方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其是一種DHCP (Dynamic HostConfiguration Protocol,動(dòng)態(tài)主機(jī)配置協(xié)議)安全通信方法、裝置以及系統(tǒng)。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)設(shè)備得到了大量應(yīng)用。由于網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)易于變化,很多網(wǎng)絡(luò)設(shè)備需要通過(guò)動(dòng)態(tài)獲取IP地址來(lái)接入網(wǎng)絡(luò)。在目前實(shí)現(xiàn)方案中,這些網(wǎng)絡(luò)設(shè)備很 多支持DHCP,由外部DHCP SERVER (服務(wù)器)分配動(dòng)態(tài)IP地址。但是DHCP本身并沒(méi)有考慮 任何安全措施,實(shí)際應(yīng)用中會(huì)存在比較多的安全隱患,使DHCP SERVER容易受到非法攻擊。在現(xiàn)有的一種解決方案中,網(wǎng)絡(luò)設(shè)備(即客戶端)向DHCP SERVER(即服務(wù)器端) 發(fā)起請(qǐng)求時(shí),在請(qǐng)求中攜帶自己的ID (身份),服務(wù)器端根據(jù)客戶端的ID來(lái)識(shí)別客戶端是否 可信,如果可信,則允許客戶端接入。由于客戶端的ID由客戶端自身提供,攻擊者可以很容 易地截取客戶端的身份信息,從而偽造身份對(duì)服務(wù)器端發(fā)起非法攻擊,導(dǎo)致網(wǎng)絡(luò)系統(tǒng)的安 全性較差。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例在于提供一種DHCP安全通信方法、裝置和系統(tǒng)。一方面,本發(fā)明實(shí)施例提供一種DHCP安全通信方法,該方法包括服務(wù)器端接收 客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器 端對(duì)該客戶端進(jìn)行認(rèn)證;服務(wù)器端生成服務(wù)器端消息,并進(jìn)行加密得到服務(wù)器端密文;月艮 務(wù)器端向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文;服務(wù)器端接收客戶端返回的 第二消息,第二消息包括服務(wù)器端消息,其中第二消息中的服務(wù)器端消息由客戶端對(duì)服務(wù) 器端密文解密后得到;服務(wù)器端驗(yàn)證第二消息中的服務(wù)器端消息和服務(wù)器端本地保存的服 務(wù)器端是否消息一致,若一致則服務(wù)器端確認(rèn)客戶端可信。一方面,本發(fā)明實(shí)施例提供還一種DHCP安全通信方法,該方法包括服務(wù)器端接 收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù) 器端對(duì)該客戶端進(jìn)行認(rèn)證;服務(wù)器端生成服務(wù)器端消息,并進(jìn)行加密得到服務(wù)器端密文; 服務(wù)器端向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文;服務(wù)器端接收客戶端返回 的第二消息,第二消息包括客戶端第二密文;其中客戶端第二密文由客戶端對(duì)服務(wù)器端消 息和客戶端消息的組合進(jìn)行加密得到,服務(wù)器端消息由客戶端對(duì)服務(wù)器端密文解密后得 到;服務(wù)器端解密客戶端第二密文得到服務(wù)器端消息;服務(wù)器端驗(yàn)證解密后得到的服務(wù)器 端消息和服務(wù)器端本地保存的服務(wù)器端消息是否一致,若一致則服務(wù)器端確認(rèn)客戶端可信。一方面,本發(fā)明實(shí)施例提供還一種DHCP安全通信方法,該方法包括客戶端向服 務(wù)器端發(fā)送第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端 對(duì)該客戶端進(jìn)行認(rèn)證;客戶端接收服務(wù)器端返回的第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文;客戶端解密所述服務(wù)器端密文得到服務(wù)器端消息,客戶端生成客戶端消息,以及對(duì)客戶端 消息進(jìn)行加密得到客戶端第一密文或者對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得 到客戶端第二密文;客戶端向服務(wù)器端發(fā)送第二消息,第二消息包括服務(wù)器端消息和客戶 端第一密文,或者第二消息包括客戶端第二密文;客戶端接收服務(wù)器端返回的第二響應(yīng),第 二響應(yīng)包括客戶端消息,其中客戶端消息由服務(wù)器端對(duì)客戶端第一密文或客戶端第二密文 解密后得到;客戶端驗(yàn)證接收到的客戶端消息與客戶端本地保存的客戶端消息是否一致; 若是,則客戶端確認(rèn)服務(wù)器端可信。另一方面,本發(fā)明實(shí)施例提供一種服務(wù)器端裝置,包括第一接收模塊,用于接收 客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器 端對(duì)該客戶端進(jìn)行認(rèn)證;生成模塊,用于在第一接收模塊接收到接入挑戰(zhàn)請(qǐng)求后生成服務(wù) 器端密文;第一發(fā)送模塊,用于向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括生成模塊生成的服務(wù) 器端密文;第二接收模塊,用于接 收客戶端返回的第二消息,第二消息包括客戶端對(duì)服務(wù)器 端密文進(jìn)行解密后得到的服務(wù)器端消息;驗(yàn)證模塊,用于驗(yàn)證第二消息中的服務(wù)器端消息 和服務(wù)器端本地保存的服務(wù)器端消息是否一致,在一致時(shí)確認(rèn)客戶端可信。另一方面,本發(fā)明實(shí)施例還提供一種服務(wù)器端裝置,包括第一接收模塊,用于接 收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù) 器端對(duì)該客戶端進(jìn)行認(rèn)證;生成模塊,用于在第一接收模塊接收到接入挑戰(zhàn)請(qǐng)求后生成服 務(wù)器端密文;第一發(fā)送模塊,用于向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括生成模塊生成的服 務(wù)器端密文;第二接收模塊,用于接收客戶端返回的第二消息,第二消息包括客戶端第二密 文;其中客戶端第二密文由客戶端對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到,月艮 務(wù)器端消息由客戶端對(duì)服務(wù)器端密文解密后得到;解密模塊,用于解密客戶端第二密文得 到服務(wù)器端消息;第二接收模塊服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息是否一 致,若一致時(shí)確認(rèn)客戶端可信。又一方面,本發(fā)明實(shí)施例還提供一種客戶端裝置,包括第一發(fā)送模塊,用于向服 務(wù)器端發(fā)送第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端 對(duì)該客戶端進(jìn)行認(rèn)證;第一接收模塊,用于接收服務(wù)器端返回的第一響應(yīng),第一響應(yīng)包括服 務(wù)器端密文;第一解密模塊,用于對(duì)服務(wù)器端密文進(jìn)行解密得到服務(wù)器端消息;生成模塊, 用于生成客戶端消息;加密模塊,用于對(duì)客戶端消息進(jìn)行加密得到客戶端第一密文或者對(duì) 服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到客戶端第二密文;第二發(fā)送模塊,用于向 服務(wù)器端發(fā)送第二消息,第二消息包括服務(wù)器端消息和客戶端第一密文,或者第二消息包 括客戶端第二密文;第二接收模塊,用于接收服務(wù)器端返回的第二響應(yīng),第二響應(yīng)包括客戶 端消息,其中第二響應(yīng)中的客戶端消息由服務(wù)器端對(duì)客戶端第一密文或客戶端第二密文解 密后得到;驗(yàn)證模塊,用于驗(yàn)證第二接收模塊接收到的客戶端消息與客戶端本地保存的客 戶端消息是否一致,在一致時(shí)確認(rèn)服務(wù)器端可信。再一方面,本發(fā)明實(shí)施例提供一種系統(tǒng),包括上述客戶端裝置以及服務(wù)器端裝置。本發(fā)明實(shí)施例中服務(wù)器端向客戶端發(fā)送加密后的服務(wù)器端消息,并驗(yàn)證客戶端返 回的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息是否一致,若一致,則確認(rèn)客戶端 可以正確解密,從而服務(wù)器端確認(rèn)客戶端可信。該方法可以有效驗(yàn)證客戶端的合法性,減少 或避免服務(wù)器端遭受的非法攻擊,提高網(wǎng)絡(luò)應(yīng)用的安全性。
圖1為本發(fā)明實(shí)施例提供的一種DHCP安全通信方法流程示意圖。圖2為本發(fā)明實(shí)施例提供的另一種DHCP安全通信方法流程示意圖。圖3為本發(fā)明實(shí)施例提供的另一種DHCP安全通信方法流程示意圖。圖4為本發(fā)明實(shí)施例提供的另一種DHCP安全通信方法流程示意圖。圖5為本發(fā)明實(shí)施例提供的一種服務(wù)器端裝置結(jié)構(gòu)示意圖。圖6為本發(fā)明實(shí)施例提供的另一種服務(wù)器端裝置結(jié)構(gòu)示意圖。圖7為本發(fā)明實(shí)施例提供的一種客戶端裝置結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例作具體說(shuō)明,顯然,下面所描述的實(shí)施例僅僅是本 發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。請(qǐng)參閱圖1,圖1為本發(fā)明實(shí)施例提供的一種DHCP安全通信方法。該方法主要包 括如下步驟。步驟102,服務(wù)器端接收客戶端發(fā)送的第一消息,其中第一消息包括接入挑戰(zhàn)請(qǐng) 求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證。步驟104,服務(wù)器端生成服務(wù)器端消息,并對(duì)服務(wù)器端消息進(jìn)行加密得到服務(wù)器端 密文。服務(wù)器端在接收到接入挑戰(zhàn)請(qǐng)求后,生成服務(wù)器密文用來(lái)驗(yàn)證客戶端是否可靠或 可信。在具體應(yīng)用時(shí),服務(wù)器端消息可以是隨機(jī)數(shù),對(duì)該隨機(jī)數(shù)進(jìn)行加密即可得到服務(wù)器端 密文。服務(wù)器端采用的加密算法可以為非對(duì)稱(chēng)算法或者對(duì)稱(chēng)算法。以非對(duì)稱(chēng)算法為例,考 慮到一個(gè)服務(wù)器端往往對(duì)應(yīng)多個(gè)客戶端,為了降低服務(wù)器端的工作量,可以采用服務(wù)器端 和該客戶端上一次認(rèn)證過(guò)程中生成的服務(wù)器端共享密鑰對(duì)該隨機(jī)數(shù)進(jìn)行加密。步驟106,服務(wù)器端向客戶端發(fā)送第一響應(yīng),其中第一響應(yīng)包括服務(wù)器端密文。步驟108,服務(wù)器端接收客戶端返回的第二消息,第二消息包括服務(wù)器端消息;其 中第二消息中的服務(wù)器端消息由客戶端對(duì)服務(wù)器端密文解密后得到。客戶端對(duì)服務(wù)器端密文解密時(shí),可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中 生成的客戶端私鑰來(lái)解密。進(jìn)一步地,第二消息中還可以包括客戶端第一密文,本實(shí)施例中客戶端第一密文 由客戶端對(duì)客戶端消息進(jìn)行加密后得到。客戶端消息也可以是一個(gè)隨機(jī)數(shù),在進(jìn)行加密時(shí), 可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生成的客戶端共享密鑰對(duì)該隨機(jī)數(shù)進(jìn)行 加密,得到客戶端第一密文。步驟110,服務(wù)器端驗(yàn)證接收到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端
消息一致。為驗(yàn)證客戶端是否可信,服務(wù)器端可以通過(guò)驗(yàn)證客戶端能否正確解密服務(wù)器端密 文來(lái)進(jìn)行。具體來(lái)說(shuō),服務(wù)器驗(yàn)證客戶端返回的服務(wù)器端消息(即第二消息中包括的服務(wù) 器端消息)是否與服務(wù)器端本地保存的服務(wù)器端消息一致。步驟112,若服務(wù)器端接收到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息一致,則服務(wù)器端確認(rèn)客戶端可信。在服務(wù)器端接收到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息一致時(shí),服務(wù)器端認(rèn)為客戶端可以正確解密服務(wù)器端密文,從而認(rèn)為客戶端是可信的。進(jìn)一步地,若第二消息中還可以包括客戶端第一密文,則服務(wù)器端還可以對(duì)客戶 端第一密文進(jìn)行解密得到客戶端消息,并發(fā)送第二響應(yīng)給客戶端,其中第二響應(yīng)包括該解 密后得到的客戶端消息。通過(guò)向客戶端發(fā)送客戶端消息可以起到由客戶端來(lái)驗(yàn)證服務(wù)器端 是否可信的作用。本實(shí)施例中服務(wù)器端向客戶端發(fā)送加密后的服務(wù)器端消息即服務(wù)器端密文,并驗(yàn) 證客戶端返回的服務(wù)器端消息和服務(wù)器端本地保存的客戶端消息是否一致,若一致,則確 認(rèn)客戶端可以正確解密,從而確認(rèn)客戶端可信。該方法可以有效驗(yàn)證客戶端的合法性,減少 或避免服務(wù)器端遭受的非法攻擊,提高網(wǎng)絡(luò)應(yīng)用的安全性需要指出的是,本發(fā)明實(shí)施例除應(yīng)用于因特網(wǎng)之外,還可以應(yīng)用于支持DHCP協(xié)議 和I P協(xié)議的通信網(wǎng)絡(luò)系統(tǒng),例如無(wú)線通信網(wǎng)絡(luò),其中客戶端具體可以是基站,服務(wù)器端具 體可以是基站控制器,或者是其它應(yīng)用方式,本發(fā)明實(shí)施例對(duì)此不作限定。請(qǐng)參閱圖2,圖2為本發(fā)明實(shí)施例提供的另一種DHCP安全通信方法。該方法主要 包括如下步驟。其中步驟202-206與步驟102-106大致相同,具體可參見(jiàn)上一實(shí)施例,此處不再詳 述。步驟208,服務(wù)器端接收客戶端返回的第二消息,第二消息包括客戶端第二密文; 其中客戶端第二密文由客戶端對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到,服務(wù)器 端消息由客戶端對(duì)服務(wù)器端密文解密后得到。服務(wù)器端消息、客戶端消息均可以是一個(gè)隨機(jī)數(shù),將服務(wù)器端消息和客戶端消息 組合后得到一個(gè)隨機(jī)數(shù)串,對(duì)該隨機(jī)數(shù)串進(jìn)行加密得到客戶端第二密文。如果采用的是非 對(duì)稱(chēng)算法,可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生成的客戶端共享密鑰對(duì)該隨 機(jī)數(shù)串進(jìn)行加密。步驟210,服務(wù)器端解密客戶端第二密文,得到服務(wù)器端消息。服務(wù)器端解密客戶端第二密文后,得到服務(wù)器端消息和客戶端消息的組合,例如 一個(gè)隨機(jī)數(shù)串,進(jìn)而可以根據(jù)該組合的結(jié)構(gòu)得到服務(wù)器端消息和客戶端消息。通常在一個(gè)消息中,會(huì)包含如下部分消息類(lèi)型,消息長(zhǎng)度和消息內(nèi)容。服務(wù)器端 消息和客戶端消息在進(jìn)行組合時(shí),一種組合結(jié)構(gòu)可以是服務(wù)器端消息類(lèi)型,服務(wù)器端消息 長(zhǎng)度,服務(wù)器端消息內(nèi)容,客戶端消息類(lèi)型,客戶端消息長(zhǎng)度,客戶端消息內(nèi)容?;蛘呖梢允?其它組合結(jié)構(gòu),例如將客戶端消息置于服務(wù)器端消息之前,本發(fā)明實(shí)施例對(duì)此不作限定。在進(jìn)行解密時(shí),還是以非對(duì)稱(chēng)算法為例進(jìn)行說(shuō)明,由于客戶端采用服務(wù)器端和該 客戶端上一次認(rèn)證過(guò)程中生成的客戶端共享密鑰對(duì)該隨機(jī)數(shù)串進(jìn)行加密,相應(yīng)地,服務(wù)器 端可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生成的服務(wù)器端私鑰對(duì)該隨機(jī)數(shù)串進(jìn) 行解密。步驟212,服務(wù)器端驗(yàn)證解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù) 器端消息是否一致。為驗(yàn)證客戶端是否可信,服務(wù)器端可以通過(guò)驗(yàn)證客戶端能否正確解密服務(wù)器端密文來(lái)進(jìn)行。具體來(lái)說(shuō),服務(wù)器解密客戶端返回的第二消息得到服務(wù)器端消息后,驗(yàn)證該解密 后得到的服務(wù)器端消息是否與服務(wù)器端本地保存的服務(wù)器端消息一致。步驟214,若服務(wù)器端解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器 端消息一致,則服務(wù)器端確認(rèn)客戶端可信。在服務(wù)器端解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息一 致時(shí),服務(wù)器端認(rèn)為客戶端可以正確解密服務(wù)器端密文,從而認(rèn)為客戶端是可信的。
本實(shí)施例中服務(wù)器端向客戶端發(fā)送加密后的服務(wù)器端消息即服務(wù)器端密文,并解 密客戶端返回的第二消息,通過(guò)比較解密得到的服務(wù)器端消息和服務(wù)器端本地保存的客戶 端消息是否一致,來(lái)確認(rèn)客戶端是否可以正確解密,從而確認(rèn)客戶端是否可信。該方法可以 有效驗(yàn)證客戶端的合法性,減少或避免服務(wù)器端遭受的非法攻擊,提高網(wǎng)絡(luò)應(yīng)用的安全性。請(qǐng)參閱圖3,圖3為本發(fā)明實(shí)施例提供的另一種DHCP安全通信方法。該方法主要 包括如下步驟。步驟302,客戶端向服務(wù)器端發(fā)送第一消息,其中第一消息包括接入挑戰(zhàn)請(qǐng)求,所 述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證。步驟304,客戶端接收服務(wù)器端返回的第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文。服務(wù)器端密文由服務(wù)器端對(duì)服務(wù)器端消息進(jìn)行加密得到。在具體應(yīng)用時(shí),服務(wù)器 端消息可以是隨機(jī)數(shù),對(duì)該隨機(jī)數(shù)進(jìn)行加密即可得到服務(wù)器端密文。服務(wù)器端采用的加密 算法可以為非對(duì)稱(chēng)算法或者對(duì)稱(chēng)算法。以非對(duì)稱(chēng)算法為例,考慮到一個(gè)服務(wù)器端往往對(duì)應(yīng) 多個(gè)客戶端,為了降低服務(wù)器端的工作量,可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程 中生成的服務(wù)器端共享密鑰對(duì)該隨機(jī)數(shù)進(jìn)行加密。步驟306,客戶端解密所述服務(wù)器端密文得到服務(wù)器端消息,并生成客戶端第一密 文或客戶端第二密文。客戶端生成客戶端消息,對(duì)客戶端消息進(jìn)行加密得到客戶端第一密文;或者客戶 端對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到客戶端第二密文。在具體應(yīng)用時(shí),客戶端消息可以是一個(gè)隨機(jī)數(shù)。對(duì)該隨機(jī)數(shù)進(jìn)行加密,得到客戶端 第一密文;或者將服務(wù)器端消息和客戶端消息組合后得到一個(gè)隨機(jī)數(shù)串,對(duì)該隨機(jī)數(shù)串進(jìn) 行加密得到客戶端第二密文,以非對(duì)稱(chēng)算法為例進(jìn)行說(shuō)明,在進(jìn)行加密時(shí),可以采用服務(wù)器 端和該客戶端上一次認(rèn)證過(guò)程中生成的客戶端共享密鑰進(jìn)行加密。步驟308,客戶端向服務(wù)器端發(fā)送第二消息,第二消息包括服務(wù)器端消息和客戶端 第一密文,或者第二消息包括客戶端第二密文。以非對(duì)稱(chēng)算法為例,在實(shí)際應(yīng)用時(shí),在步驟308之前,客戶端在本次認(rèn)證過(guò)程中還 可以重新生成一個(gè)客戶端私鑰和客戶端公鑰(即生成一個(gè)新的客戶端私鑰和一個(gè)新的客 戶端公鑰),具體算法可以參考現(xiàn)有技術(shù),此處不再詳述??蛻舳丝梢赃M(jìn)一步保存該重新生成的客戶端私鑰??蛻舳诉€可以在第二消息中攜帶該新的客戶端公鑰,以保證服務(wù)器端能夠在本次 認(rèn)證過(guò)程中根據(jù)該新的客戶端公鑰來(lái)生成一個(gè)新的服務(wù)器端共享密鑰。步驟310,客戶端接收服務(wù)器端返回的第二響應(yīng),第二響應(yīng)包括客戶端消息。服務(wù)器端在接收到第二消息后,若驗(yàn)證出第二消息中包含的服務(wù)器端消息和服務(wù) 器端本地保存的服務(wù)器端消息一致,會(huì)確認(rèn)客戶端可信。進(jìn)一步地,服務(wù)器端會(huì)對(duì)客戶端第一密文進(jìn)行解密得到服務(wù)器端消息;服務(wù)器端將對(duì)客戶端第一密文解密后得到的服務(wù)器端 消息發(fā)送給客戶端,以便客戶端可以來(lái)驗(yàn)證服務(wù)器端是否可信。或者服務(wù)器端在接到第二消息后,對(duì)客戶端第二密文解密得到服務(wù)器端消息和客 戶端消息,并驗(yàn)證出解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息一致 時(shí),會(huì)確認(rèn)客戶端可信。進(jìn)一步地,服務(wù)器端將對(duì)客戶端第二密文解密后得到的服務(wù)器端消 息發(fā)送給客戶端,以便客戶端可以來(lái)驗(yàn)證服務(wù)器端是否可信。步驟312,客戶端驗(yàn)證接收到的客戶端消息和客戶端本地保存的客戶端消息是否一致。步驟314,若客戶端接收到的客戶端消息和客戶端本地保存的客戶端消息一致,則 客戶端確認(rèn)服務(wù)器端可信。在客戶端接收到的客戶端消息和客戶端本地保存的客戶端消息一致時(shí),客戶端認(rèn) 為服務(wù)器端可以正確解密客戶端密文,從而認(rèn)為服務(wù)器端是可信的。在實(shí)際應(yīng)用時(shí),為了進(jìn)一步加強(qiáng)服務(wù)器端和客戶端之間的安全通信,步驟310中 的客戶端消息也可以是服務(wù)器端重新加密后的客戶端消息,服務(wù)器端在加密時(shí)可以利用上 一次認(rèn)證過(guò)程中生成的服務(wù)器端共享密鑰;相應(yīng)地,對(duì)客戶端而言,利用上一次認(rèn)證過(guò)程中 客戶端生成的私鑰來(lái)進(jìn)行解密?;蛘?,服務(wù)器端在加密時(shí)也可以利用本次認(rèn)證過(guò)程中生成 的服務(wù)器端共享密鑰,這時(shí)服務(wù)器端還需要進(jìn)一步將本次認(rèn)證過(guò)程中生成的新的服務(wù)器端 公鑰發(fā)給客戶端,客戶端基于該新的服務(wù)器端公鑰生成一個(gè)新的客戶端共享密鑰,即本次 認(rèn)證過(guò)程中生成的客戶端共享密鑰。此外,在步驟310中,第二響應(yīng)中還可以包括服務(wù)器端分配給客戶端的IP地址;則 在步驟314中客戶端確認(rèn)服務(wù)器端可信之后還可以包括客戶端獲取該IP地址,與服務(wù)器 端建立連接。本實(shí)施例中在服務(wù)器端通過(guò)對(duì)客戶端的認(rèn)證之后,進(jìn)一步由客戶端來(lái)對(duì)服務(wù)器端 進(jìn)行認(rèn)證,能夠進(jìn)一步加強(qiáng)服務(wù)器端和客戶端之間的安全通信。請(qǐng)參閱圖4,圖4為本發(fā)明實(shí)施例提供的另一種DHCP安全通信方法。該實(shí)施例中 采用的加密算法為非對(duì)稱(chēng)算法。該方法主要包括如下步驟。步驟402,客戶端向服務(wù)器端發(fā)送第一消息,其中第一消息包括接入挑戰(zhàn)請(qǐng)求,所 述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證。 考慮到和DHCP協(xié)議的兼容,本實(shí)施例中第一消息可以是DHCPDISC0VER/0PTI0N消 息。進(jìn)一步地,該DHCP DISCOVER/OPTION消息中還可以攜帶客戶端ID,時(shí)間戳。步驟404,服務(wù)器端生成服務(wù)器端消息并加密,以及生成服務(wù)器端第一信息摘要。本實(shí)施例中服務(wù)器端消息可以是隨機(jī)數(shù)s,對(duì)隨機(jī)數(shù)s進(jìn)行加密即可得到服務(wù)器 端密文。服務(wù)器端第一信息摘要可以用于防止服務(wù)器端密文被篡改??紤]到一個(gè)服務(wù)器端往往對(duì)應(yīng)多個(gè)客戶端,為了降低服務(wù)器端的工作量,可以采 用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生成的服務(wù)器端共享密鑰對(duì)隨機(jī)數(shù)s進(jìn)行加密。步驟406,服務(wù)器端向客戶端發(fā)送第一響應(yīng),其中第一響應(yīng)包括服務(wù)器端密文和服 務(wù)器端第一信息摘要。這里,第一響應(yīng)可以是DHCP OFFER/OPTION消息。步驟408,客戶端對(duì)服務(wù)器端密文進(jìn)行解密,得到服務(wù)器端消息??蛻舳松煽蛻舳讼?,對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到客戶端第二密文??蛻舳诉€生 成客戶端信息摘要。此外,客戶端還生成客戶端公鑰和客戶端私鑰。顯然,步驟408中所生成的客戶端公鑰和客戶端私鑰在本次認(rèn)證過(guò)程中生成的新 的客戶端公鑰和客戶端私鑰??蛻舳诵畔⒄梢杂糜诜乐箍蛻舳说诙芪谋淮鄹?。本實(shí)施例中客戶端消息可以是隨機(jī)數(shù)C,服務(wù)器端消息和客戶端消息的一種組合 為C-S,即將隨機(jī)數(shù)C和隨機(jī)數(shù)S進(jìn)行合并得到隨機(jī)數(shù)串C-S,對(duì)隨機(jī)數(shù)C-S進(jìn)行加密得到 客戶端第二密文,例如可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生成的客戶端共享 密鑰對(duì)該隨機(jī)數(shù)串C-S進(jìn)行加密。步驟410,客戶端向服務(wù)器端發(fā)送第二消息,第二消息包括客戶端第二密文,客戶 端公鑰和客戶端信息摘要。具體實(shí)現(xiàn)時(shí),第二消息可以是DHCP REQUEST/OPTION消息,該DHCPREQUEST/ OPTION消息攜帶客戶端公鑰、客戶端信息摘要以及加密后的隨機(jī)數(shù)串c-s。步驟412,服務(wù)器端解密客戶端第二密文,得到服務(wù)器端消息和客戶端消息,在該 解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息一致時(shí),確認(rèn)客戶端可
fn °具體地,在進(jìn)行解密時(shí),采用上一次服務(wù)器端和該客戶端認(rèn)證過(guò)程中生成的服務(wù) 器端私鑰對(duì)該隨機(jī)數(shù)串C-S進(jìn)行加密,得到隨機(jī)數(shù)C和隨機(jī)數(shù)S,若隨機(jī)數(shù)S沒(méi)有發(fā)生改變, 則確認(rèn)客戶端可信。服務(wù)器端還生成服務(wù)器端公鑰和服務(wù)器端私鑰,以及生成服務(wù)器端第二信息摘要。此外,服務(wù)器端根據(jù)客戶端公鑰生成服務(wù)器端共享密鑰;進(jìn)一步地,服務(wù)器端利用 該服務(wù)器端共享密鑰對(duì)客戶端消息例如隨機(jī)數(shù)c進(jìn)行加密。步驟414,服務(wù)器端向客戶端返回第二響應(yīng),第二響應(yīng)包括服務(wù)器端公鑰,加密后 的客戶端消息,以及服務(wù)器端第二信息摘要。服務(wù)器端第二信息摘要用于防止加密后的客戶端消息被篡改。具體地,第二響應(yīng)可以是DHCP ACK消息,該DHCP ACK消息攜帶服務(wù)器端公鑰,力口 密后的隨機(jī)數(shù)c,以及服務(wù)器端第二信息摘要。步驟416,客戶端進(jìn)行解密得到客戶端消息,在該解密后得到的客戶端消息和客戶 端本地保存的客戶端消息一致時(shí),確認(rèn)服務(wù)器端可信。具體地,在進(jìn)行解密時(shí),客戶端利用本次認(rèn)證過(guò)程中生成的客戶端私鑰(即步驟 408中生成的客戶端私鑰)進(jìn)行解密,得到隨機(jī)數(shù)c,若隨機(jī)數(shù)c沒(méi)有發(fā)生改變,則確認(rèn)服務(wù)
器端可信。本實(shí)施例中對(duì)服務(wù)器端來(lái)說(shuō),可以有效驗(yàn)證客戶端的合法性,對(duì)客戶端來(lái)說(shuō),可以 有效驗(yàn)證服務(wù)器端的合法性,從而保證客戶端和服務(wù)器端之間的安全通信,減少或避免服 務(wù)器端遭受的非法攻擊,提高網(wǎng)絡(luò)應(yīng)用的安全性。圖5為本發(fā)明實(shí)施例提供的一種服務(wù)器端裝置結(jié)構(gòu)示意圖。該裝置主要包括第一接收模塊502,生成模塊504,第一發(fā)送模塊506,第二接收模塊508以及驗(yàn)證模塊510。其中第一接收模塊502,用于接收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;生成模塊504,用于在第 一接收模塊502接收到接入挑戰(zhàn)請(qǐng)求后生成服務(wù)器端密文;第一發(fā)送模塊506,用于向客戶 端發(fā)送第一響應(yīng),第一響應(yīng)包括生成模塊504生成的服務(wù)器端密文;第二接收模塊508,用 于接收客戶端返回的第二消息,第二消息包括客戶端對(duì)服務(wù)器端密文進(jìn)行解密后得到的服 務(wù)器端消息;驗(yàn)證模塊510,用于驗(yàn)證第二消息中的服務(wù)器端消息和服務(wù)器端本地保存的 服務(wù)器端消息是否一致,在一致時(shí)確認(rèn)客戶端可信。其中生成模塊504在生成服務(wù)器端密文時(shí),生成服務(wù)器端消息并進(jìn)行加密得到服務(wù)器端密文,例如對(duì)非對(duì)稱(chēng)算法來(lái)說(shuō),可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生 成的服務(wù)器端共享密鑰對(duì)該隨機(jī)數(shù)進(jìn)行加密。若第二消息中還包括客戶端第一密文,則服務(wù)器端還可以包括解密模塊以及第二 發(fā)送模塊,其中解密模塊用于在驗(yàn)證模塊510確認(rèn)客戶端可信后,對(duì)客戶端第一密文進(jìn)行 解密得到客戶端消息,第二發(fā)送模塊用于發(fā)送第二響應(yīng)給客戶端,其中第二響應(yīng)包括客戶 端消息。本實(shí)施例中服務(wù)器端向客戶端發(fā)送加密后的服務(wù)器端消息即服務(wù)器端密文,并驗(yàn) 證客戶端返回的服務(wù)器端消息和服務(wù)器端本地保存的客戶端消息是否一致,若一致,則確 認(rèn)客戶端可以正確解密,從而確認(rèn)客戶端可信。該方法可以有效驗(yàn)證客戶端的合法性,減少 或避免服務(wù)器端遭受的非法攻擊,提高網(wǎng)絡(luò)應(yīng)用的安全性圖6為本發(fā)明實(shí)施例提供的另一種服務(wù)器端裝置結(jié)構(gòu)示意圖。該裝置主要包括 第一接收模塊602,生成模塊604,第一發(fā)送模塊606,第二接收模塊608,解密模塊610以及 驗(yàn)證模塊612。其中第一接收模塊602,用于接收客戶端發(fā)送的第一消息,第一消息包括接入挑 戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;生成模塊604,用于在 第一接收模塊接收到接入挑戰(zhàn)請(qǐng)求后生成服務(wù)器端密文;第一發(fā)送模塊606,用于向客戶 端發(fā)送第一響應(yīng),第一響應(yīng)包括生成模塊604生成的服務(wù)器端密文;第二接收模塊608,用 于接收客戶端返回的第二消息,第二消息包括客戶端第二密文;其中客戶端第二密文由客 戶端對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到,服務(wù)器端消息由客戶端對(duì)服務(wù)器 端密文解密后得到;解密模塊610,用于解密客戶端第二密文得到服務(wù)器端消息;驗(yàn)證模塊 612,用于驗(yàn)證解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息是否一致, 若一致時(shí)確認(rèn)客戶端可信。其中生成模塊602在生成服務(wù)器端密文時(shí),生成服務(wù)器端消息并進(jìn)行加密得到服 務(wù)器端密文,例如對(duì)非對(duì)稱(chēng)算法來(lái)說(shuō),可以采用服務(wù)器端和該客戶端上一次認(rèn)證過(guò)程中生 成的服務(wù)器端共享密鑰對(duì)該隨機(jī)數(shù)進(jìn)行加密。由于解密模塊610解密客戶端第二密文除得到服務(wù)器端消息外,還可以得到客戶 端消息,因而服務(wù)器端還可以進(jìn)一步包括第二發(fā)送模塊,用于發(fā)送第二響應(yīng)給客戶端,其中 第二響應(yīng)包括客戶端消息。本實(shí)施例中服務(wù)器端向客戶端發(fā)送加密后的服務(wù)器端消息即服務(wù)器端密文,并解 密客戶端返回的第二消息,通過(guò)比較解密得到的服務(wù)器端消息和服務(wù)器端本地保存的客戶 端消息是否一致,來(lái)確認(rèn)客戶端是否可以正確解密,從而確認(rèn)客戶端是否可信。該方法可以 有效驗(yàn)證客戶端的合法性,減少或避免服務(wù)器端遭受的非法攻擊,提高網(wǎng)絡(luò)應(yīng)用的安全性。
圖7為本發(fā)明實(shí)施例提供的一種客戶端裝置結(jié)構(gòu)示意圖。該裝置主要包括第一發(fā)送模塊702,第一接收模塊704,第一解密模塊706,生成模塊708,加密模塊710,第二發(fā)送 模塊712,第二接收模塊714,驗(yàn)證模塊716。其中,第一發(fā)送模塊702用于向服務(wù)器端發(fā)送第一消息,第一消息包括接入挑戰(zhàn) 請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;第一接收模塊704,用于 接收服務(wù)器端返回的第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文;第一解密模塊706,用于對(duì)服 務(wù)器端密文進(jìn)行解密得到服務(wù)器端消息;生成模塊708,用于生成客戶端消息;加密模塊 710,用于對(duì)客戶端消息進(jìn)行加密得到客戶端第一密文或者對(duì)服務(wù)器端消息和客戶端消息 的組合進(jìn)行加密得到客戶端第二密文;第二發(fā)送模塊712,用于向服務(wù)器端發(fā)送第二消息, 第二消息包括服務(wù)器端消息和客戶端第一密文,或者第二消息包括客戶端第二密文;第二 接收模塊714,用于接收服務(wù)器端返回的第二響應(yīng),第二響應(yīng)包括客戶端消息,其中客戶端 消息由服務(wù)器端對(duì)客戶端第一密文或客戶端第二密文解密后得到;驗(yàn)證模塊716,用于驗(yàn) 證接收到的客戶端消息與客戶端本地保存的客戶端消息是否一致,在一致時(shí)確認(rèn)服務(wù)器端 可信。進(jìn)一步地,若第二響應(yīng)中的客戶端消息為服務(wù)器端重新加密后的客戶端消息;則 所述客戶端裝置還包括第二解密模塊,用于對(duì)所述重新加密后的客戶端消息進(jìn)行解密。驗(yàn) 證模塊716用于確認(rèn)解密后得到的客戶端消息與客戶端本地保存的客戶端消息是否一致, 在一致時(shí)確認(rèn)服務(wù)器端可信。此外,若第二響應(yīng)中還包括服務(wù)器端分配給客戶端的IP地址,則客戶端裝置還可 以包括連接建立模塊,用于獲取服務(wù)器端分配給客戶端的IP地址,并與服務(wù)器端建立連 接。本實(shí)施例中在服務(wù)器端通過(guò)對(duì)客戶端的認(rèn)證之后,向客戶端返回客戶端消息,由 客戶端來(lái)驗(yàn)證該返回的客戶端消息是否保持不變,從而實(shí)現(xiàn)對(duì)服務(wù)器端的認(rèn)證,能夠進(jìn)一 步加強(qiáng)服務(wù)器端和客戶端之間的安全通信。此外,本發(fā)明實(shí)施例還提供了一種系統(tǒng),該系統(tǒng)包括有服務(wù)器端裝裝置和客戶端 裝置。其中,客戶端裝置或服務(wù)器端裝孩子具體實(shí)現(xiàn)方式可以參照上述實(shí)施例,此處不再詳 敘。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述所有實(shí)施例方法中的全部或部分步驟是 可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,該程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡 管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然 可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替 換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精 神和范圍。
權(quán)利要求
一種DHCP安全通信方法,其特征在于,包括服務(wù)器端接收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;服務(wù)器端生成服務(wù)器端消息,并進(jìn)行加密得到服務(wù)器端密文;服務(wù)器端向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文;服務(wù)器端接收客戶端返回的第二消息,第二消息包括服務(wù)器端消息,第二消息中的服務(wù)器端消息由客戶端對(duì)服務(wù)器端密文解密后得到;服務(wù)器端驗(yàn)證第二消息中的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息是否一致,若一致則服務(wù)器端確認(rèn)客戶端可信。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第二消息還包括客戶端第一密文,所 述方法還包括服務(wù)器端解密客戶端第一密文得到客戶端消息;服務(wù)器端發(fā)送第二響應(yīng)給客戶端,第二響應(yīng)包括客戶端消息。
3.—種DHCP安全通信方法,其特征在于,包括服務(wù)器端接收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng) 求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;服務(wù)器端生成服務(wù)器端消息,并進(jìn)行加密得到服務(wù)器端密文; 服務(wù)器端向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文; 服務(wù)器端接收客戶端返回的第二消息,第二消息包括客戶端第二密文;其中客戶端第 二密文由客戶端對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到,服務(wù)器端消息由客戶 端對(duì)服務(wù)器端密文解密后得到;服務(wù)器端解密客戶端第二密文得到服務(wù)器端消息;服務(wù)器端驗(yàn)證解密后得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息是否 一致,若一致則服務(wù)器端確認(rèn)客戶端可信。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,服務(wù)器端解密客戶端第二密文后還得到 客戶端消息,所述方法還包括服務(wù)器端發(fā)送第二響應(yīng)給客戶端,第二響應(yīng)包括客戶端消息。
5.一種DHCP安全通信方法,其特征在于,包括客戶端向服務(wù)器端發(fā)送第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入挑戰(zhàn)請(qǐng)求用 于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;客戶端接收服務(wù)器端返回的第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文; 客戶端解密所述服務(wù)器端密文得到服務(wù)器端消息,客戶端生成客戶端消息,以及對(duì)客 戶端消息進(jìn)行加密得到客戶端第一密文或者對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加 密得到客戶端第二密文;客戶端向服務(wù)器端發(fā)送第二消息,第二消息包括服務(wù)器端消息和客戶端第一密文,或 者第二消息包括客戶端第二密文;客戶端接收服務(wù)器端返回的第二響應(yīng),第二響應(yīng)包括客戶端消息,第二響應(yīng)中的客戶 端消息由服務(wù)器端對(duì)客戶端第一密文或客戶端第二密文解密后得到;客戶端驗(yàn)證接收到的客戶端消息與客戶端本地保存的客戶端消息是否一致;若是,則客戶端確認(rèn)服務(wù)器端可信。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,第二響應(yīng)中的客戶端消息為服務(wù)器端重 新加密后的客戶端消息;在所述驗(yàn)證之前所述方法還包括客戶端對(duì)重新加密后的客戶端消息進(jìn)行解密。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,第二響應(yīng)中還包括服務(wù)器端分配給客戶 端的IP地址;客戶端確認(rèn)服務(wù)器端可信之后所述方法還包括 客戶端獲取該IP地址,與服務(wù)器端建立連接。
8.一種服務(wù)器端裝置,其特征在于,包括第一接收模塊,用于接收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接 入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;生成模塊,用于在第一接收模塊接收到接入挑戰(zhàn)請(qǐng)求后生成服務(wù)器端密文; 第一發(fā)送模塊,用于向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括生成模塊生成的服務(wù)器端 密文;第二接收模塊,用于接收客戶端返回的第二消息,第二消息包括客戶端對(duì)服務(wù)器端密 文進(jìn)行解密后得到的服務(wù)器端消息;驗(yàn)證模塊,用于驗(yàn)證第二消息中的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端消息 是否一致,在一致時(shí)確認(rèn)客戶端可信。
9.根據(jù)權(quán)利要求8所述的服務(wù)器端裝置,其特征在于,若第二消息中還包括客戶端第 一密文,則服務(wù)器端裝置還包括解密模塊,用于在驗(yàn)證模塊確認(rèn)客戶端可信后,對(duì)客戶端第一密文進(jìn)行解密得到客戶 端消息;第二發(fā)送模塊,用于發(fā)送第二響應(yīng)給客戶端,其中第二響應(yīng)包括客戶端消息。
10.一種服務(wù)器端裝置,其特征在于,包括第一接收模塊,用于接收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接 入挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;生成模塊,用于在第一接收模塊接收到接入挑戰(zhàn)請(qǐng)求后生成服務(wù)器端密文; 第一發(fā)送模塊,用于向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括生成模塊生成的服務(wù)器端 密文;第二接收模塊,用于接收客戶端返回的第二消息,第二消息包括客戶端第二密文;其中 客戶端第二密文由客戶端對(duì)服務(wù)器端消息和客戶端消息的組合進(jìn)行加密得到,服務(wù)器端消 息由客戶端對(duì)服務(wù)器端密文解密后得到;解密模塊,用于解密客戶端第二密文得到服務(wù)器端消息;驗(yàn)證模塊,用于驗(yàn)證解密模塊解密得到的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器 端消息是否一致,若一致時(shí)確認(rèn)客戶端可信。
11.根據(jù)權(quán)利要求10所述的服務(wù)器端裝置,其特征在于,若第二消息中還包括客戶端 第一密文,則服務(wù)器端還包括第二發(fā)送模塊,用于發(fā)送第二響應(yīng)給客戶端,其中第二響應(yīng)包括客戶端消息,其中客戶端消息由解密模塊解密客戶端第二密文得到。
12.—種客戶端裝置,其特征在于,包括第一發(fā)送模塊,用于向服務(wù)器端發(fā)送第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,所述接入 挑戰(zhàn)請(qǐng)求用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;第一接收模塊,用于接收服務(wù)器端返回的第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文; 第一解密模塊,用于對(duì)服務(wù)器端密文進(jìn)行解密得到服務(wù)器端消息; 生成模塊,用于生成客戶端消息;加密模塊,用于對(duì)客戶端消息進(jìn)行加密得到客戶端第一密文或者對(duì)服務(wù)器端消息和客 戶端消息的組合進(jìn)行加密得到客戶端第二密文;第二發(fā)送模塊,用于向服務(wù)器端發(fā)送第二消息,第二消息包括服務(wù)器端消息和客戶端 第一密文,或者第二消息包括客戶端第二密文;第二接收模塊,用于接收服務(wù)器端返回的第二響應(yīng),第二響應(yīng)包括客戶端消息,第二響 應(yīng)中的客戶端消息由服務(wù)器端對(duì)客戶端第一密文或客戶端第二密文解密后得到;驗(yàn)證模塊,用于驗(yàn)證第二接收模塊接收到的客戶端消息與客戶端本地保存的客戶端消 息是否一致,在一致時(shí)確認(rèn)服務(wù)器端可信。
13.根據(jù)權(quán)利要求12所述的客戶端裝置,其特征在于,所述第二響應(yīng)中還包括服務(wù)器 端分配給客戶端的IP地址;所述客戶端裝置還包括連接建立模塊,用于獲取服務(wù)器端分配給客戶端的IP地址,并與服務(wù)器端建立連接。
14.根據(jù)權(quán)利要求12所述的客戶端裝置,其特征在于,第二響應(yīng)中的客戶端消息為服 務(wù)器端重新加密后的客戶端消息;所述客戶端裝置還包括第二解密模塊,用于對(duì)所述第二接收模塊接收到的重新加密后的客戶端消息進(jìn)行解密;所述驗(yàn)證模塊,用于驗(yàn)證第二解密模塊解密后得到的客戶端消息與客戶端本地保存的 客戶端消息是否一致,在一致時(shí)確認(rèn)服務(wù)器端可信。
15.一種系統(tǒng),包括服務(wù)器端裝置,以及如權(quán)利要求12-14中任意一項(xiàng)所述的客戶端裝置。
全文摘要
本發(fā)明實(shí)施例提供一種DHCP安全通信方法,包括服務(wù)器端接收客戶端發(fā)送的第一消息,第一消息包括接入挑戰(zhàn)請(qǐng)求,用于請(qǐng)求服務(wù)器端對(duì)該客戶端進(jìn)行認(rèn)證;服務(wù)器端生成服務(wù)器端消息,并進(jìn)行加密得到服務(wù)器端密文;服務(wù)器端向客戶端發(fā)送第一響應(yīng),第一響應(yīng)包括服務(wù)器端密文;服務(wù)器端接收客戶端返回的第二消息,第二消息包括服務(wù)器端消息,其中服務(wù)器端消息由客戶端對(duì)服務(wù)器端密文解密后得到;服務(wù)器端驗(yàn)證第二消息中的服務(wù)器端消息和服務(wù)器端本地保存的服務(wù)器端是否消息一致,若一致則服務(wù)器端確認(rèn)客戶端可信。此外,本發(fā)明實(shí)施例還提供一種服務(wù)器端裝置和客戶端裝置。
文檔編號(hào)H04L29/06GK101827106SQ201010166238
公開(kāi)日2010年9月8日 申請(qǐng)日期2010年4月29日 優(yōu)先權(quán)日2010年4月29日
發(fā)明者徐煒 申請(qǐng)人:華為技術(shù)有限公司