欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種認(rèn)證方法、系統(tǒng)、客戶(hù)端設(shè)備和服務(wù)器的制作方法

文檔序號(hào):7695230閱讀:199來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種認(rèn)證方法、系統(tǒng)、客戶(hù)端設(shè)備和服務(wù)器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,特別涉及一種認(rèn)證方法、系統(tǒng)、客戶(hù)端設(shè)備和服務(wù)器。
背景技術(shù)
-SSL (Secure Socket Layer,安全套接層)協(xié)議是介于TCP (Transmission Control Protocol, 傳輸控制協(xié)議)/IP (Internet Protocal,網(wǎng)際協(xié)議)傳輸層與應(yīng)用層之間的一種安全協(xié)議,最 初的SSL協(xié)議主要用在網(wǎng)頁(yè)瀏覽器中來(lái)保護(hù)HTTP (HyperText Transfer Protocol,超文本傳送 協(xié)議)的交互,隨著網(wǎng)絡(luò)安全要求的逐漸增加,提出了TLS (Transport Layer Security傳輸層 安全)協(xié)議。TLS協(xié)議的大部分功能基于SSL3版本。
現(xiàn)有技術(shù)中有一種基于SSL/TLS協(xié)議的通信方法,下面簡(jiǎn)單介紹一下客戶(hù)端與服務(wù)端通 信的過(guò)程
客戶(hù)端與服務(wù)端首先建立SSL連接,并協(xié)商使用的加密套件和壓縮算法;
然后,服務(wù)端向客戶(hù)端發(fā)送自己的數(shù)字證書(shū),這個(gè)證書(shū)有兩個(gè)作用,其一就是讓客戶(hù)端 對(duì)服務(wù)端的身份進(jìn)行認(rèn)證,其二就是證書(shū)里包含有服務(wù)端的公鑰,讓客戶(hù)端對(duì)用來(lái)產(chǎn)生以后 數(shù)據(jù)加密密鑰的信息進(jìn)行加密;
此時(shí),服務(wù)端向客戶(hù)端證明了自己的身份,雙方商定好了數(shù)據(jù)加密套件和數(shù)據(jù)壓縮算法, 客戶(hù)端也獲得了對(duì)用來(lái)產(chǎn)生以后數(shù)據(jù)加密密鑰的信息進(jìn)行加密的密鑰;
客戶(hù)端向服務(wù)端產(chǎn)生以后數(shù)據(jù)加密密鑰的信息,并向服務(wù)端發(fā)送確認(rèn)的數(shù)據(jù)加密算法和 哈希消息認(rèn)證碼算法,通知服務(wù)端以后就用新產(chǎn)生的密鑰和協(xié)商好的各種算法對(duì)數(shù)據(jù)進(jìn)行加 密;
最后,客戶(hù)端與服務(wù)端相互發(fā)送應(yīng)用數(shù)據(jù),其中可能包括客戶(hù)端發(fā)給服務(wù)端的用戶(hù)名和 密碼;數(shù)據(jù)傳送結(jié)束后,關(guān)閉連接,同時(shí)起到防止終端攻擊的作用。
在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問(wèn)題 上述通信過(guò)程中服務(wù)端對(duì)客戶(hù)端不做認(rèn)證或只做用戶(hù)名/密碼方式的認(rèn)證,容易遭受中間 人攻擊。中間人通過(guò)截獲服務(wù)端的數(shù)字證書(shū),獲取服務(wù)端公鑰,然后偽造服務(wù)端公鑰,充當(dāng) 客戶(hù)端和服務(wù)端的雙重身份,獲取服務(wù)端和客戶(hù)端的通信內(nèi)容。

發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種認(rèn)證方法、系統(tǒng)、客戶(hù)端設(shè)備和服務(wù)器,以增加通信的安全性。 所述技術(shù)方案如下
本發(fā)明實(shí)施例提供了一種認(rèn)證方法,所述方法包括
第一通信方接收第一通信方的連接請(qǐng)求,將自身的公鑰發(fā)送給所述第一通信方;
接收所述第一通信方發(fā)送的用戶(hù)信息,所述用戶(hù)信息包括所述第一通信方根據(jù)與所述第 二通信方的共享秘密和所述公鑰生成的第一認(rèn)證信息;
在本地獲取與所述第一通信方的共亨秘密,根據(jù)與所述第一通信方的共享秘密和自身的 公鑰生成第二認(rèn)證信息;
判斷所述第二認(rèn)證信息和所述第一認(rèn)證信息是否一致,如果是,確認(rèn)所述第一通信方合法。
一種認(rèn)證系統(tǒng),所述系統(tǒng)包括第一通信方和第—通信方;其中,
所述第一通信方,用于向第二通信方發(fā)起連接請(qǐng)求,接收所述第二通信方的公鑰,根據(jù) 與所述第二通信方的共享秘密和公鑰生成第一認(rèn)證信息,向所述第二通信方發(fā)送攜帶所述第 一認(rèn)證信息的用戶(hù)信息;
所述第二通信方,用于接收所述第一通信方的連接請(qǐng)求,將自身公鑰發(fā)送給所述第一通 信方;以及接收所述第一通信方的用戶(hù)信息,在木地獲取與所述第一通信方的共享秘密,根 據(jù)所獲取的共享秘密和自身公鑰生成第二認(rèn)證信息,判斷第二認(rèn)證信息與所述第一認(rèn)證信息 是否一致,如果是,確認(rèn)所述第一通信方合法。
一種客戶(hù)端設(shè)備,所述設(shè)備包括
連接發(fā)起模塊,用于向服務(wù)器發(fā)送連接請(qǐng)求;
接收模塊,用于接收所述服務(wù)器返回的公鑰;
認(rèn)證信息生成模塊,用于根據(jù)與所述服務(wù)器的共享秘密和所述接收模塊收到的公鑰生成 認(rèn)證信息;
發(fā)送模塊,用于向所述服務(wù)器發(fā)送用戶(hù)信息,所述用戶(hù)信息包括所述認(rèn)證信息生成模塊 生成的認(rèn)證信息。
一種服務(wù)器,所述服務(wù)器包括 —接收與發(fā)送模塊,用于接收客戶(hù)端的連接請(qǐng)求,將自身公鑰發(fā)送給所述客戶(hù)端;以及接 收所述客戶(hù)端發(fā)送的用戶(hù)信息,所述用戶(hù)信息包括所述客戶(hù)端根據(jù)與所述服務(wù)器的共享秘密和所述公鑰生成的第 一認(rèn)證信息;
第二認(rèn)證信息生成模塊,用于所述接收與發(fā)送模塊收到所述客戶(hù)端的用戶(hù)信息后,在本 地獲取與所述客戶(hù)端的共享秘密,根據(jù)所獲取的共享秘密和自身公鑰生成第二認(rèn)證信息;
認(rèn)證模塊,用于判斷所述第二認(rèn)證信息生成模塊生成的第二認(rèn)證信息和所述接收與發(fā)送 模塊接收的第一認(rèn)證信息是否一致,如果是,確認(rèn)所述客戶(hù)端合法。
本發(fā)明實(shí)施例中的第一通信方和第二通信方通過(guò)使用第二通信方的公鑰和二者的共享秘 密生成認(rèn)證信息,使第二通信方能夠根據(jù)認(rèn)證信息確認(rèn)客戶(hù)端的身份是否合法,有效地防御 中間人攻擊,增強(qiáng)了系統(tǒng)的安全性。


—為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù) 描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一 些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這 些附圖獲得其他的附圖。
圖1是本發(fā)明實(shí)施例1提供的一種認(rèn)證方法流程圖2是本發(fā)明實(shí)施例1提供的一種改進(jìn)的SSL/TLS協(xié)議信令交互圖3是本發(fā)明實(shí)施例2提供的種認(rèn)證系統(tǒng)結(jié)構(gòu)圖4是本發(fā)明實(shí)施例3提供的一種客戶(hù)端設(shè)備結(jié)構(gòu)圖5是本發(fā)明實(shí)施例4提供的一種服務(wù)器結(jié)構(gòu)圖。
具體實(shí)施例方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描 述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明 中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例, 都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實(shí)施例通過(guò)判斷第二通信方生成的第二認(rèn)證信息與接收的第一通信方的第一認(rèn)證 信息是否一致,確認(rèn)第一通信方的合法性,從而有效地防御中間人攻擊。
實(shí)施例1
參見(jiàn)圖1,本實(shí)施例提供了一種認(rèn)證方法,該方法以客戶(hù)端作為第一通信方,以服務(wù)端 作為第二通信方,以?xún)?nèi)容審計(jì)設(shè)備進(jìn)行內(nèi)容審計(jì)為例進(jìn)行說(shuō)明,該方法包括201:服務(wù)端接收客戶(hù)端的連接請(qǐng)求,將自身的公鑰發(fā)送給該客戶(hù)端;
202:接收該客戶(hù)端發(fā)送的用戶(hù)信息,該用戶(hù)信息包括該客戶(hù)端根據(jù)與服務(wù)端的共享秘密 和該公鑰生成的第一認(rèn)證信息;
203:在本地獲取與該客戶(hù)端的共享秘密,根據(jù)該共享秘密和自身的公鑰生成第二認(rèn)證信
息;
204:判斷該第二認(rèn)證信息和該第一認(rèn)證信息是否一致,如果是,確認(rèn)該客戶(hù)端合法。 其中,共享秘密可以是客戶(hù)注冊(cè)時(shí)使用'的注冊(cè)密碼,也可以是服務(wù)端下發(fā)給該客戶(hù)端的 口令卡、智能卡等物理實(shí)體中的秘密信息。
其中,201中的公鑰可以通過(guò)下述方式發(fā)送給客戶(hù)端
服務(wù)端根據(jù)自身的公鑰生成數(shù)字證書(shū),將該數(shù)字證書(shū)發(fā)送給該客戶(hù)端。
上述方法中的生成第一認(rèn)證信息和第二認(rèn)證信息時(shí)采用相同的算法生成,該算法可以預(yù) 先協(xié)商確定,也可以使用固定的某一算法,例如哈希算法。
該用戶(hù)信息還可以包括該客戶(hù)端的用戶(hù)標(biāo)識(shí)(例如用戶(hù)名),用以通知服務(wù)端該用戶(hù)信息 對(duì)應(yīng)的為哪一個(gè)具體的客戶(hù),使服務(wù)端能夠根據(jù)該用戶(hù)標(biāo)識(shí)在本地獲取對(duì)應(yīng)的共享秘密。
當(dāng)確認(rèn)客戶(hù)端為合法用戶(hù)后,可以與該用戶(hù)協(xié)商數(shù)據(jù)傳輸時(shí)使用的密鑰信息,根據(jù)協(xié)商
所確定的密鑰信息與客戶(hù)端進(jìn)行通信。
上述認(rèn)證方法,還可以應(yīng)用到SSL/TLS安全協(xié)議中,可以有效地防御中間人攻擊。參見(jiàn)
圖2,具體步驟如下
301:客戶(hù)端發(fā)送ClientHello消息,通知服務(wù)端要求建立SSL連接,同時(shí)通知服務(wù)端它 支持的SSL版本以及它能夠使用的加密套件和壓縮算法;
302:服務(wù)端收到ClientHello消息后,向客戶(hù)端返回ServerHello消息,通知客戶(hù)端它從 客戶(hù)端所支持的加密套件和壓縮算法中各選擇了哪種;
303:服務(wù)端向客戶(hù)端發(fā)送自己的數(shù)字證書(shū),這個(gè)證書(shū)有三個(gè)作用,其一就是讓客戶(hù)端對(duì) 服務(wù)端的身份進(jìn)行認(rèn)證,其二就是證書(shū)里包含有服務(wù)端公鑰,讓客戶(hù)端對(duì)用來(lái)產(chǎn)生以后數(shù)據(jù) 加密密鑰的信息進(jìn)行加密,其三就是使客戶(hù)端能夠使用該公鑰和與服務(wù)端的共享秘密一起做 哈希值,實(shí)現(xiàn)對(duì)客戶(hù)端的身份認(rèn)證;
304:服務(wù)端向客戶(hù)端發(fā)送ServerHelloDone消息,表示服務(wù)端響應(yīng)消息的結(jié)束;
此時(shí),服務(wù)端向客戶(hù)端證明了自己的身份,雙方商定好了數(shù)據(jù)加密套件和數(shù)據(jù)壓縮算法, 客戶(hù)端也獲得了對(duì)用來(lái)產(chǎn)生以后數(shù)據(jù)加密密鑰的信息進(jìn)行加密的密鑰;
305:客戶(hù)端接收服務(wù)端返回的數(shù)字證書(shū),并將數(shù)字證書(shū)中的公鑰建立全局變量存儲(chǔ),同時(shí)客戶(hù)端向服務(wù)端發(fā)送ClientKeyExchange消息,該消息攜帶用來(lái)產(chǎn)生以后數(shù)據(jù)加密密鑰的信 息;
306:客戶(hù)端向服務(wù)端發(fā)送ChangeCipherSpec消息,該消息攜帶確認(rèn)的數(shù)據(jù)加密算法和 哈希消息認(rèn)證碼算法,通知服務(wù)端以后就用新產(chǎn)生的密鑰和協(xié)商好的各種算法對(duì)數(shù)據(jù)進(jìn)行加 密;
307:客戶(hù)端向服務(wù)端發(fā)送Finished消息,表示客戶(hù)端一方握手的結(jié)束;
308:服務(wù)端收到Finished消息后,回應(yīng)的ChangeCipherSpec消息,確認(rèn)協(xié)商的各種算
法;
309:服務(wù)端發(fā)送Finished消息,表示服務(wù)端一方握手的結(jié)束確認(rèn);
310:客戶(hù)端對(duì)上述建立全局變量存儲(chǔ)的服務(wù)端公鑰和與服務(wù)端的共享秘密進(jìn)行哈希運(yùn)算
生成第-認(rèn)證信息,將含有該第一認(rèn)證信息和自身用戶(hù)標(biāo)識(shí)的用戶(hù)信息發(fā)送給服務(wù)端;
該服務(wù)端接收該客戶(hù)端發(fā)送的用戶(hù)信息,利用該用戶(hù)信息中的用戶(hù)標(biāo)識(shí)在本地獲取與客
戶(hù)端的共享秘密,再根據(jù)自身的公鑰與該共享秘密進(jìn)行哈希運(yùn)算生成第二認(rèn)證信息,判斷該
第二認(rèn)證信息與接收的該用戶(hù)信息中的第一認(rèn)證信息是否一致,如果是,則確認(rèn)客戶(hù)端合法,
再進(jìn)行數(shù)據(jù)傳輸;
當(dāng)共享秘密為客戶(hù)端的用戶(hù)注冊(cè)時(shí)的注冊(cè)密碼時(shí),服務(wù)端會(huì)將每個(gè)用戶(hù)注冊(cè)時(shí)使用的密 碼預(yù)先保存在一個(gè)數(shù)據(jù)庫(kù)中,根據(jù)用戶(hù)的標(biāo)識(shí)査找到對(duì)應(yīng)的注冊(cè)密碼,即對(duì)應(yīng)的共享秘密;
當(dāng)共享秘密為服務(wù)端下發(fā)給該客戶(hù)端的口令卡、智能卡等物理實(shí)體中的秘密信息時(shí),服 務(wù)端將會(huì)在下發(fā)口令卡、智能卡等物理實(shí)體時(shí),將其上的秘密信息與客戶(hù)端的對(duì)應(yīng)關(guān)系保存 在數(shù)據(jù)庫(kù)中,以便需要時(shí),從數(shù)據(jù)庫(kù)中獲取對(duì)應(yīng)的共享秘密。
311:服務(wù)端對(duì)認(rèn)證的結(jié)果發(fā)送確認(rèn)信息; .312:雙方完成握手后,客戶(hù)端與服務(wù)端發(fā)送application data,即客戶(hù)端與服務(wù)端相互發(fā) 送應(yīng)用數(shù)據(jù);
313:數(shù)據(jù)傳送結(jié)束后,雙方相互發(fā)送CloseNotify消息,關(guān)閉連接,同時(shí)起到防止終端 攻擊的作用。
本實(shí)施例通過(guò)判斷服務(wù)端生成的第二認(rèn)證信息與接收的客戶(hù)端第一認(rèn)證信息是否一致, 來(lái)確認(rèn)客戶(hù)端的合法性,能夠有效地防御中間人攻擊。因?yàn)榧词怪虚g人插入到客戶(hù)端和服務(wù) 端的通信過(guò)程中,由于中間人將含有自身公鑰的偽數(shù)字證書(shū)發(fā)給了客戶(hù)端,客戶(hù)端對(duì)偽數(shù)字 證書(shū)中的公鑰和與服務(wù)端的共享秘密進(jìn)行哈希運(yùn)算,將生成的第一認(rèn)證信息發(fā)送給服務(wù)端, 由于中間人不知道該共享秘密,因此無(wú)法偽造該第一認(rèn)證信息,服務(wù)端根據(jù)自身的公鑰和本地獲取的與客戶(hù)端的共享秘密進(jìn)行哈希運(yùn)算,生成第二認(rèn)證信息,若該第二認(rèn)證信息與接收 到的第一認(rèn)證信息不一致,則發(fā)送給該客戶(hù)端的數(shù)字證書(shū)被修改過(guò),也即該通信過(guò)程遭遇了 中間人攻擊,該服務(wù)器將中斷后續(xù)數(shù)據(jù)傳輸。這樣的改進(jìn)簡(jiǎn)單易行,客戶(hù)端和服務(wù)端只多做 了一次哈希運(yùn)算,在開(kāi)銷(xiāo)很小的情況下,就達(dá)到了較好的認(rèn)證效果,有效地防御了中間人攻擊。
實(shí)施例2
參見(jiàn)圖3,本發(fā)明實(shí)施例還提供了一種認(rèn)證系統(tǒng),該系統(tǒng)包括第一通信方401和第二通 信方402;其中,
第一通信方401,用于向第二通信方402發(fā)起連接請(qǐng)求,接收該第二通信方402的公鑰, 根據(jù)與第二通信方402的共享秘密和公鑰生成第一認(rèn)證信息,向第二通信方402發(fā)送攜帶第 一認(rèn)證信息的用戶(hù)信息;
.第二通信方402,用于接收第一通信方401連接請(qǐng)求,將fi身公鑰發(fā)送給第一通信方401; 以及接收第一通信方401的用戶(hù)信息,在本地獲取與第一通信方401的共享秘密,根據(jù)所獲 取的共享秘密和自身公鑰生成第二認(rèn)證信息,判斷第二認(rèn)證信息與第一認(rèn)證信息是否一致, 如果是,確認(rèn)第一通信方合法。
進(jìn)一步地,第一通信方401包括
算法協(xié)商模塊,用于與第二通信方402通過(guò)協(xié)商并確定哈希算法; 連接發(fā)起模塊,用于向第二通信方402發(fā)送連接請(qǐng)求,接收第二通信方402的公鑰; 信息牛成模塊,用于使用算法協(xié)商模塊確定的哈希算法對(duì)第二通信方402的公鑰和與第 二通信方402的共享秘密進(jìn)行運(yùn)算,生成第一認(rèn)證信息;
發(fā)送模塊,用于向第二通信方402發(fā)送攜帶信息生成模塊生成的第一認(rèn)證信息的用戶(hù)信
息;
第二通信方402還用于使用確定的哈希算法對(duì)共享秘密和自身公鑰進(jìn)行運(yùn)算,生成第二 認(rèn)證信息。
第二通信方402還包括
信息協(xié)商模塊,用于與第一通信方40L協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù) 據(jù)加密算法;
通信模塊,用于使用信息協(xié)商模塊確定后的協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù)加密 算法與第一通信方401進(jìn)行通信。其中,本實(shí)施例中的第一通信方可以為客戶(hù)端,第二通信方可以為服務(wù)端。 本實(shí)施例提供的系統(tǒng)通過(guò)判斷第二通信方402生成的第二認(rèn)證信息與第一通信方401生 成的第一認(rèn)證信息是否一致,就能夠確認(rèn)發(fā)送給第一通信方401的公鑰是否被修改,如果一 致,則該公鑰未被修改,第一通信方401合法,進(jìn)而防止中間人攻擊,增強(qiáng)了系統(tǒng)的安全性。
實(shí)施例3
參見(jiàn)圖4,本發(fā)明實(shí)施例還提供了一種客戶(hù)端設(shè)備,該設(shè)備包括 連接發(fā)起模塊501,用于向服務(wù)器發(fā)送連接請(qǐng)求; 接收模塊502,用于接收服務(wù)器返回的公鑰;
認(rèn)證信息生成模塊503,用于根據(jù)接收模塊502收到的公鑰和與上述服務(wù)器的共享秘密 生成認(rèn)證信息;
發(fā)送模塊504,用于向服務(wù)器發(fā)送用戶(hù)信息,用戶(hù)信息包括認(rèn)證信息生成模塊503生成 的認(rèn)證信息。
進(jìn)一步地,該客戶(hù)端設(shè)備還包括
算法協(xié)商模塊,用于與服務(wù)器協(xié)商并確定哈希算法;
相應(yīng)地,認(rèn)證信息生成模塊503具體用于使用算法協(xié)商模塊確定的哈希算法對(duì)與服務(wù)器 的共享秘密和接收模塊收到的公鑰進(jìn)行運(yùn)算,生成認(rèn)證信息。 為了增強(qiáng)通信的安全性,該客戶(hù)端設(shè)備還包括-
通信信息確定模塊,用于與服務(wù)器協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù)加 密算法;
通信模塊,用于使用通信信息確定模塊確定后的協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù) 加密算法與服務(wù)器進(jìn)行通信。
本實(shí)施例提供的客戶(hù)端設(shè)備通過(guò)接收服務(wù)器的公鑰,并根據(jù)該公鑰和與服務(wù)器的共享秘 密生成的認(rèn)證信息發(fā)送給服務(wù)器,使服務(wù)器能夠根據(jù)其公鑰和本地獲取的與該客戶(hù)端設(shè)備的 共享秘密生成新的認(rèn)證信息,對(duì)比兩個(gè)認(rèn)證信息是否一致,實(shí)現(xiàn)對(duì)該客戶(hù)端的認(rèn)證,防止了 中間人的攻擊,增強(qiáng)了系統(tǒng)的安全性。
實(shí)施例4
參見(jiàn)圖5,本發(fā)明實(shí)施例還提供了一種服務(wù)器,包括
接收與發(fā)送模塊601,用于接收客戶(hù)端的連接請(qǐng)求,將自身公鑰發(fā)送給客戶(hù)端;以及接收客戶(hù)端發(fā)送的用戶(hù)信息,用戶(hù)信息包括客戶(hù)端根據(jù)與該服務(wù)器的共享秘密和公鑰生成的第 一認(rèn)證信息;
第二認(rèn)證信息生成模塊602,用于接收與發(fā)送模塊601收到客戶(hù)端的用戶(hù)信息后,在本
地獲取與該客戶(hù)端的共享秘密,根據(jù)獲取的共享秘密和自身公鑰生成第二認(rèn)證信息;
認(rèn)證模塊603,用于判斷第二認(rèn)證信息生成模塊602生成的第二認(rèn)證信息和接收與發(fā)送 模塊接收的第一認(rèn)證信息是否一致,如果是,確認(rèn)客戶(hù)端合法。
進(jìn)一步地,該服務(wù)器還包括
算法協(xié)商模塊,用于與客戶(hù)端協(xié)商并確定哈希算法; 相應(yīng)地,第二認(rèn)證信息生成模塊602具體包括
獲取單元,用于接收與發(fā)送模塊601收'到客戶(hù)端的用戶(hù)信息后,在本地獲取與該客戶(hù)端 的共享秘密;
第二認(rèn)證信息生成單元,用于使用算法協(xié)商模塊確定的哈希算法對(duì)獲取單元獲取的共享 秘密和自身公鑰進(jìn)行運(yùn)算,生成第二認(rèn)證信息。 為了增強(qiáng)通信的安全性,該服務(wù)器還包括
通信信息確定模塊,用于與客戶(hù)端協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù)加 密算法;
通信模塊,用于使用通信信息確定模塊確定后的協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù) 加密算法與客戶(hù)端進(jìn)行通信。
本實(shí)施提供的服務(wù)器接收到客戶(hù)端設(shè)備的用戶(hù)信息(包括第一認(rèn)證信息)后,在本地獲 取與該客戶(hù)端的共享秘密,根據(jù)該共享秘密和自身公鑰生成第二認(rèn)證信息,判斷第二認(rèn)證信 息與第一認(rèn)證信息是否一致,如果是,確認(rèn)客戶(hù)端合法,進(jìn)而防止了中間人的攻擊,增強(qiáng)了 系統(tǒng)的安全性。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì) 算攀程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程 序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤(pán)、
只讀存儲(chǔ)記憶體(Read-Only Memory, ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory, RAM)等。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之 內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種認(rèn)證方法,其特征在于,所述方法包括第二通信方接收第一通信方的連接請(qǐng)求,將自身的公鑰發(fā)送給所述第一通信方;接收所述第一通信方發(fā)送的用戶(hù)信息,所述用戶(hù)信息包括所述第一通信方根據(jù)與所述第二通信方的共享秘密和所述公鑰生成的第一認(rèn)證信息;在本地獲取與所述第一通信方的共享秘密,根據(jù)與所述第一通信方的共享秘密和自身的公鑰生成第二認(rèn)證信息;判斷所述第二認(rèn)證信息和所述第一認(rèn)證信息是否一致,如果是,確認(rèn)所述第一通信方合法。
2. 如權(quán)利要求1所述的認(rèn)證方法,其特征在于,所述將自身公鑰發(fā)送給所述第一通信方 包括所述第二通信方根據(jù)自身公鑰生成數(shù)字證書(shū),將所述數(shù)字證書(shū)發(fā)送給所述第一通信方。
3. 如權(quán)利要求1所述的認(rèn)證方法,其特征在于,所述用戶(hù)信息還包括所述第一通信方的用戶(hù)標(biāo)識(shí);相應(yīng)地,所述第二通信方根據(jù)所述用戶(hù)標(biāo)識(shí)在本地獲取與所述第一通信方的共享秘密。
4. 如權(quán)利要求1所述的認(rèn)證方法,其特征在于,所述接收所述第一通信方發(fā)送的用戶(hù)信息之前包括所述第一通信方與所述第二通信方通過(guò)協(xié)商并確定哈希算法;所述第一通信方使用確定的哈希算法對(duì)所述第二通信方的公鑰和與所述第二通信方的共 享秘密進(jìn)行運(yùn)算,生成第一認(rèn)證信息,向所述第二通信方發(fā)送攜帶所述第一認(rèn)證信息的用戶(hù) 信息;相應(yīng)地,所述根據(jù)與所述第一通信方的共享秘密和自身公鑰生成第二認(rèn)證信息包括所述第二通信方使用確定的哈希算法對(duì)所述共享秘密和自身公鑰進(jìn)行運(yùn)算,生成第二認(rèn)證信息。
5. 如權(quán)利要求1所述的認(rèn)證方法,其特征在于,所述確認(rèn)所述第一通信方合法之后還包括所述第二通信方與所述第一通信方協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù)加 密算法;所述第二通信方和所述第一通信方使用確定后的協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù) 加密算法進(jìn)行通信。
6.,巾認(rèn)證系統(tǒng),其特征在于,所述系統(tǒng)包括第一通信方和第二通信方;其中, 所述第一通信方,用于向第二通信方發(fā)起迮接請(qǐng)求,接收所述第二通信方的公鑰,根據(jù)與所述第二通信方的共亨秘密和公鑰生成第一認(rèn)證信息,向所述第二通信方發(fā)送攜帶所述第一認(rèn)證信息的用戶(hù)信息;所述第二通信方,用于接收所述第一通信方的連接請(qǐng)求,將自身公鑰發(fā)送給所述第一通信方;以及接收所述第一通信方的用戶(hù)信息,在本地獲取與所述第一通信方的共享秘密,根據(jù)所獲取的共享秘密和自身公鑰生成第二認(rèn)證信息,判斷第二認(rèn)證信息與所述第一認(rèn)證信息是否一致,如果是,確認(rèn)所述第一通信方合法。
7.如權(quán)利要求6所述的認(rèn)證系統(tǒng),其特征在于,所述第一通信方包括 算法協(xié)商模塊,用于與所述第二通信方通過(guò)協(xié)商并確定哈希算法; 連接發(fā)起模塊,用于向所述第二通信方發(fā)送連接請(qǐng)求,接收所述第二通信方的公鑰; 信息生成模塊,用于使用所述算法協(xié)商模塊確定的哈希算法對(duì)所述第二通信方的公鑰和與所述第二通信方的共享秘密進(jìn)行運(yùn)算,生成第一認(rèn)證信息;發(fā)送模塊,用于向所述第二通信方發(fā)送攜帶所述信息生成模塊生成的第一認(rèn)證信息的用戶(hù)信息;所述第二通信方還用于使用確定的哈希算法對(duì)所述共享秘密和自身公鑰進(jìn)行運(yùn)算,生成 第二認(rèn)證信息。
8.如權(quán)利要求6所述的認(rèn)證系統(tǒng),其特征在于,所述第二通信方還包括 信息協(xié)商模塊,用于與所述第一通信方協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù) 據(jù)加密算法;通信模塊,用于使用所述信息協(xié)商模塊確定后的協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù) 加密算法與所述第一通信方進(jìn)行通信。
9. 一種客戶(hù)端設(shè)備,其特征在于,所述設(shè)備包括 連接發(fā)起模塊,用于向服務(wù)器發(fā)送連接請(qǐng)求; 接收模塊,用于接收所述服務(wù)器返回的公鑰;認(rèn)證信息生成模塊,用于根據(jù)與所述服務(wù)器的共享秘密和所述接收模塊收到的公鑰生成 認(rèn)證信息;發(fā)送模塊,用于向所述服務(wù)器發(fā)送用戶(hù)信息,所述用戶(hù)信息包括所述認(rèn)證信息生成模塊 生成的認(rèn)證信息。
10. 如權(quán)利要求9所述的客戶(hù)端設(shè)備,其特征在于,所述客戶(hù)端設(shè)備還包括-算法協(xié)商模塊,用于與所述服務(wù)器協(xié)商并確定哈希算法;相應(yīng)地,所述認(rèn)證信息生成模塊具體用于使用所述算法協(xié)商模塊確定的哈希算法對(duì)所述 共享秘密和所述接收模塊收到的公鑰進(jìn)行運(yùn)算,生成認(rèn)證信息。
11. 如權(quán)利要求9所述的客廣端設(shè)備,其特征在于,所述客戶(hù)端設(shè)備還包括 通信信息確定模塊,用于與所述服務(wù)器協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù)據(jù)加密算法;通信模塊,用于使用所述通信信息確定模塊確定后的協(xié)議版本、加密套件、壓縮算法和 數(shù)據(jù)加密算法與所述服務(wù)器進(jìn)行通信。
12. —種服務(wù)器,其特征在于,所述服務(wù)器包括接收與發(fā)送模塊,用于接收客戶(hù)端的連接請(qǐng)求,將自身公鑰發(fā)送給所述客戶(hù)端;以及接 收所述客戶(hù)端發(fā)送的用戶(hù)信息,所述用戶(hù)信息包括所述客戶(hù)端根據(jù)與所述服務(wù)器的共享秘密 和所述公鑰生成的第一認(rèn)證信息;第二認(rèn)證信息生成模塊,用于所述接收與發(fā)送模塊收到所述客戶(hù)端的用戶(hù)信息后,在本 地獲取與所述客戶(hù)端的共享秘密,根據(jù)所獲取的共享秘密和自身公鑰生成第二認(rèn)證信息;認(rèn)證模塊,用于判斷所述第二認(rèn)證信息生成模塊生成的第二認(rèn)證信息和所述接收與發(fā)送 模塊接收的第一認(rèn)證信息是否一致,如果是,確認(rèn)所述客戶(hù)端合法。
13. 如權(quán)利要求12所述的服務(wù)器,其特征在于,所述服務(wù)器還包括算法協(xié)商模塊,用于與所述客戶(hù)端協(xié)商并確定哈希算法; 相應(yīng)地,所述第二認(rèn)證信息生成模塊具體包括獲取單元,用于所述接收與發(fā)送模塊收到所述客戶(hù)端的用戶(hù)信息后,在本地獲取與所述 客戶(hù)端的共享秘密;第二認(rèn)證信息生成單元,用于使用所述算法協(xié)商模塊確定的哈希算法對(duì)所述獲取單元獲 取的共享秘密和自身公鑰進(jìn)行運(yùn)算,生成第二認(rèn)證信息。
14.如權(quán)利要求12所述的服務(wù)器,其特征在于,所述服務(wù)器還包括通信信息確定模塊,用于與所述客戶(hù)端協(xié)商并確定協(xié)議版本、加密套件、壓縮算法和數(shù) 據(jù)加密算法;通信模塊,用于使用所述通信信息確定模塊確定后的協(xié)議版本、加密套件、壓縮算法和 數(shù)據(jù)加密算法與所述客戶(hù)端進(jìn)行通信。
全文摘要
本發(fā)明公開(kāi)了一種認(rèn)證方法、系統(tǒng)、客戶(hù)端設(shè)備和服務(wù)器,屬于通信領(lǐng)域。所述方法包括第二通信方接收第一通信方的連接請(qǐng)求,將自身的公鑰發(fā)送給所述第一通信方;接收所述第一通信方發(fā)送的用戶(hù)信息,所述用戶(hù)信息包括所述第一通信方根據(jù)與所述第二通信方的共享秘密和所述公鑰生成的第一認(rèn)證信息;在本地查找預(yù)存的所述第一通信方的共享秘密,根據(jù)所述共享秘密和自身的公鑰生成第二認(rèn)證信息;判斷所述第二認(rèn)證信息和所述第一認(rèn)證信息是否一致,如果是,確認(rèn)所述第一通信方合法。所述系統(tǒng)包括第一通信方和第二通信方。本發(fā)明通過(guò)比較認(rèn)證信息能夠確認(rèn)第一通信方的身份是否合法,有效地防御中間人攻擊。
文檔編號(hào)H04L9/32GK101299667SQ200810114430
公開(kāi)日2008年11月5日 申請(qǐng)日期2008年6月5日 優(yōu)先權(quán)日2008年6月5日
發(fā)明者亮 任 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
天峨县| 渝中区| 忻城县| 台安县| 商南县| 游戏| 海淀区| 阿拉尔市| 西华县| 赣榆县| 曲沃县| 高尔夫| 义马市| 河西区| 龙州县| 沁源县| 卢氏县| 民乐县| 曲周县| 兴仁县| 上虞市| 三台县| 滦南县| 来宾市| 平阳县| 塘沽区| 宾阳县| 巴彦县| 民丰县| 英吉沙县| 六盘水市| 泗阳县| 中方县| 华亭县| 泸水县| 抚顺市| 平舆县| 阿克苏市| 齐河县| 内丘县| 双峰县|