本發(fā)明涉及工業(yè)信息安全領(lǐng)域,更具體地,涉及一種SCADA系統(tǒng)及其RTU控制器雙向身份認(rèn)證的方法及系統(tǒng)。
背景技術(shù):
SCADA(Supervisory Control And Data Acquisition,數(shù)據(jù)采集與監(jiān)視控制)系統(tǒng),其通過RTU(Remote Terminal Unit,遠(yuǎn)程終端單元)實(shí)現(xiàn)對(duì)遠(yuǎn)程現(xiàn)場(chǎng)信號(hào)、工業(yè)設(shè)備的監(jiān)測(cè)和控制。
在SCADA系統(tǒng)與其RTU之間進(jìn)行通訊,以及RTU與其他RTU之間進(jìn)行通訊時(shí),為了使通訊雙方建立有效的安全訪問控制機(jī)制,避免無法進(jìn)行身份識(shí)別和通訊數(shù)據(jù)未加密所導(dǎo)致的安全風(fēng)險(xiǎn)。在SCADA系統(tǒng)與其RTU之間進(jìn)行通訊,以及RTU與其他RTU之間進(jìn)行通訊時(shí),發(fā)起端與響應(yīng)端需要進(jìn)行身份認(rèn)證和通訊數(shù)據(jù)加密。
現(xiàn)有的RTU控制器及其與SCADA系統(tǒng)通信方法中,基于SSL通訊協(xié)議提供了一種雙向身份認(rèn)證的方法,提供密鑰協(xié)商功能,但SSL通訊協(xié)議不提供密鑰更新功能,安全性較差。SSL協(xié)議基于TCP協(xié)議,因此難以應(yīng)用于非TCP協(xié)議的應(yīng)用場(chǎng)合。另一方面,SSL協(xié)議以及TCP/IP協(xié)議棧難以移植到資源有限的RTU控制器中。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明提供了一種SCADA系統(tǒng)及其RTU控制器雙向身份認(rèn)證的方法及系統(tǒng),不依賴任何現(xiàn)有通訊協(xié)議,在身份認(rèn)證期間進(jìn)行會(huì)話密鑰協(xié)商,身份認(rèn)證過程簡(jiǎn)單高效,安全性高。
具體技術(shù)方案如下:
一種雙向身份認(rèn)證方法,應(yīng)用于發(fā)起端,所述方法包括:
在預(yù)設(shè)周期內(nèi)向響應(yīng)端或證書服務(wù)器請(qǐng)求響應(yīng)端的數(shù)字證書;
接收所述響應(yīng)端的數(shù)字證書,并對(duì)所述響應(yīng)端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述響應(yīng)端的數(shù)字證書可信,從所述響應(yīng)端的數(shù)字證書中提取所述響應(yīng)端公鑰;
生成發(fā)起端隨機(jī)數(shù)并存儲(chǔ),用所述響應(yīng)端公鑰加密攜帶有所述發(fā)起端隨機(jī)數(shù)與發(fā)起端設(shè)備信息的認(rèn)證挑戰(zhàn)信息,并將所述認(rèn)證挑戰(zhàn)信息發(fā)送到所述響應(yīng)端;
接收并使用私鑰解密所述響應(yīng)端發(fā)送的響應(yīng)端身份認(rèn)證信息,獲取發(fā)起端隨機(jī)數(shù)、響應(yīng)端隨機(jī)數(shù)和會(huì)話密鑰;
判斷獲取的發(fā)起端隨機(jī)數(shù)與存儲(chǔ)的所述發(fā)起端隨機(jī)數(shù)是否一致,若一致,判定響應(yīng)端身份認(rèn)證成功;
用所述會(huì)話密鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)的發(fā)起端身份認(rèn)證信息,并將所述發(fā)起端身份認(rèn)證信息發(fā)送到所述響應(yīng)端,使所述響應(yīng)端判斷發(fā)起端身份認(rèn)證是否成功。
優(yōu)選的,所述數(shù)字證書為公鑰證書,所述公鑰證書包括公鑰信息,所述對(duì)所述響應(yīng)端的數(shù)字證書進(jìn)行可信性識(shí)別,包括:對(duì)公鑰證書的簽名、設(shè)備信息和有效期進(jìn)行驗(yàn)證。
優(yōu)選的,當(dāng)所述響應(yīng)端身份認(rèn)證成功或失敗后,所述發(fā)起端隨機(jī)數(shù)失效;當(dāng)所述發(fā)起端身份認(rèn)證成功或失敗后,所述響應(yīng)端隨機(jī)數(shù)失效。
優(yōu)選的,所述方法還包括:
在所述預(yù)設(shè)周期結(jié)束后,所述發(fā)起端再次發(fā)起雙向身份認(rèn)證。
一種發(fā)起端,包括:
請(qǐng)求單元,用于在預(yù)設(shè)周期內(nèi)向響應(yīng)端或證書服務(wù)器請(qǐng)求響應(yīng)端的數(shù)字證書;
可信性識(shí)別單元,用于接收所述響應(yīng)端的數(shù)字證書,并對(duì)所述響應(yīng)端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述響應(yīng)端的數(shù)字證書可信,從所述響應(yīng)端的數(shù)字證書中提取所述響應(yīng)端公鑰;
第一加密單元,用于生成發(fā)起端隨機(jī)數(shù)并存儲(chǔ),用所述響應(yīng)端公鑰加密攜帶有所述發(fā)起端隨機(jī)數(shù)與發(fā)起端設(shè)備信息的認(rèn)證挑戰(zhàn)信息,并將所述認(rèn)證挑戰(zhàn)信息發(fā)送到所述響應(yīng)端;
解密單元,用于接收并使用私鑰解密所述響應(yīng)端發(fā)送的響應(yīng)端身份認(rèn)證信息,獲取發(fā)起端隨機(jī)數(shù)、響應(yīng)端隨機(jī)數(shù)和會(huì)話密鑰;
判斷單元,用于判斷獲取的發(fā)起端隨機(jī)數(shù)與存儲(chǔ)的所述發(fā)起端隨機(jī)數(shù)是否一致,若一致,判定響應(yīng)端身份認(rèn)證成功;
第二加密單元,用于用所述會(huì)話密鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)的發(fā)起端身份認(rèn)證信息,并將所述發(fā)起端身份認(rèn)證信息發(fā)送到所述響應(yīng)端,使所述響應(yīng)端判斷發(fā)起端身份認(rèn)證是否成功。
一種雙向身份認(rèn)證方法,應(yīng)用于響應(yīng)端,所述方法包括:
在預(yù)設(shè)周期內(nèi)接收并使用私鑰解密發(fā)起端發(fā)送的認(rèn)證挑戰(zhàn)信息,獲取并存儲(chǔ)所述認(rèn)證挑戰(zhàn)信息中的發(fā)起端隨機(jī)數(shù)和發(fā)起端設(shè)備信息;
根據(jù)所述發(fā)起端的設(shè)備信息向所述發(fā)起端或證書服務(wù)器請(qǐng)求所述發(fā)起端的數(shù)字證書;
接收所述發(fā)起端的數(shù)字證書,并對(duì)所述發(fā)起端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述發(fā)起端的數(shù)字證書可信,從所述發(fā)起端的數(shù)字證書中提取所述發(fā)起端公鑰;
生成響應(yīng)端隨機(jī)數(shù),并生成另一組隨機(jī)數(shù)作為會(huì)話密鑰,將所述響應(yīng)端隨機(jī)數(shù)和所述會(huì)話密鑰進(jìn)行存儲(chǔ);
用所述發(fā)起端公鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)、會(huì)話密鑰和所述發(fā)起端隨機(jī)數(shù)的響應(yīng)端身份認(rèn)證信息,并將所述響應(yīng)端身份認(rèn)證信息發(fā)送到所述發(fā)起端;
當(dāng)所述響應(yīng)端身份認(rèn)證成功后,接收并用所述會(huì)話密鑰解密發(fā)起端身份認(rèn)證信息,獲取響應(yīng)端隨機(jī)數(shù);
判斷獲取的響應(yīng)端隨機(jī)數(shù)與存儲(chǔ)的所述響應(yīng)端隨機(jī)數(shù)是否一致,若一致,判定發(fā)起端身份認(rèn)證成功。
一種響應(yīng)端,包括:
第一解密單元,用于在預(yù)設(shè)周期內(nèi)接收并使用私鑰解密發(fā)起端發(fā)送的認(rèn)證挑戰(zhàn)信息,獲取并存儲(chǔ)所述認(rèn)證挑戰(zhàn)信息中的發(fā)起端隨機(jī)數(shù)和發(fā)起端設(shè)備信息;
請(qǐng)求單元,用于根據(jù)所述發(fā)起端的設(shè)備信息向所述發(fā)起端或證書服務(wù)器請(qǐng)求所述發(fā)起端的數(shù)字證書;
可信性識(shí)別單元,用于接收所述發(fā)起端的數(shù)字證書,并對(duì)所述發(fā)起端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述發(fā)起端的數(shù)字證書可信,從所述發(fā)起端的數(shù)字證書中提取所述發(fā)起端公鑰;
生成單元,用于生成響應(yīng)端隨機(jī)數(shù),并生成另一組隨機(jī)數(shù)作為會(huì)話密鑰,將所述響應(yīng)端隨機(jī)數(shù)和所述會(huì)話密鑰進(jìn)行存儲(chǔ);
加密單元,用于用所述發(fā)起端公鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)、會(huì)話密鑰和所述發(fā)起端隨機(jī)數(shù)的響應(yīng)端身份認(rèn)證信息,并將所述響應(yīng)端身份認(rèn)證信息發(fā)送到所述發(fā)起端;
第二解密單元,用于當(dāng)所述響應(yīng)端身份認(rèn)證成功后,接收并用所述會(huì)話密鑰解密發(fā)起端身份認(rèn)證信息,獲取響應(yīng)端隨機(jī)數(shù);
判斷單元,用于判斷獲取的響應(yīng)端隨機(jī)數(shù)與存儲(chǔ)的所述響應(yīng)端隨機(jī)數(shù)是否一致,若一致,判定發(fā)起端身份認(rèn)證成功。
一種雙向身份認(rèn)證系統(tǒng),包括:上述發(fā)起端和上述響應(yīng)端,所述發(fā)起端與所述響應(yīng)端之間通信連接。
優(yōu)選的,所述系統(tǒng)還包括證書服務(wù)器。
相對(duì)于現(xiàn)有技術(shù),本發(fā)明的有益效果如下:
本發(fā)明提供的一種SCADA系統(tǒng)及其RTU控制器雙向身份認(rèn)證的方法及系統(tǒng),不依賴于任何現(xiàn)有的通訊協(xié)議,基于公鑰加密,結(jié)合公鑰證書的可信性識(shí)別和隨機(jī)數(shù)技術(shù),實(shí)現(xiàn)SCADA系統(tǒng)與其RTU控制器,以及RTU控制器與其他RTU控制器的雙向身份認(rèn)證,其身份認(rèn)證信息加密后傳輸,保證了第三方無法探測(cè)其身份認(rèn)證信息,身份認(rèn)證信息中加入隨機(jī)數(shù)防止信息重放,有效地進(jìn)行身份鑒別。本發(fā)明還實(shí)現(xiàn)了密鑰管理功能,在進(jìn)行雙向身份認(rèn)證的同時(shí)進(jìn)行會(huì)話密鑰協(xié)商,解決了身份認(rèn)證后傳輸數(shù)據(jù)加密的問題,同時(shí),通過周期性地進(jìn)行身份認(rèn)證以更新會(huì)話密鑰,提高了系統(tǒng)的安全性。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例公開的一種雙向身份認(rèn)證方法流程圖;
圖2為本發(fā)明實(shí)施例公開的一種發(fā)起端結(jié)構(gòu)示意圖;
圖3為本發(fā)明實(shí)施例公開的一種雙向身份認(rèn)證方法流程圖;
圖4為本發(fā)明實(shí)施例公開的一種響應(yīng)端結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例公開的一種雙向身份認(rèn)證系統(tǒng)結(jié)構(gòu)示意圖;
圖6為本發(fā)明實(shí)施例公開的一種雙向身份認(rèn)證系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施端式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請(qǐng)參閱圖1,本實(shí)施例公開了一種雙向身份認(rèn)證方法,應(yīng)用于發(fā)起端,以SCADA系統(tǒng)為發(fā)起端,RTU控制器為響應(yīng)端為例,包括以下步驟:
S101:在預(yù)設(shè)周期內(nèi)向響應(yīng)端或證書服務(wù)器請(qǐng)求響應(yīng)端的數(shù)字證書;
需要說明的是,預(yù)設(shè)周期可以根據(jù)實(shí)際需要進(jìn)行設(shè)定,在預(yù)設(shè)周期內(nèi)SCADA系統(tǒng)與其RTU控制器之間只需進(jìn)行一次雙向身份認(rèn)證,預(yù)設(shè)周期結(jié)束后,會(huì)話密鑰失效,SCADA系統(tǒng)再次發(fā)起與其RTU控制器之間的雙向身份認(rèn)證,實(shí)現(xiàn)會(huì)話密鑰的定期更新以提高系統(tǒng)安全性。
還需要說明的是,SCADA系統(tǒng)的數(shù)字證書可以存儲(chǔ)在證書服務(wù)器中,也可以存儲(chǔ)在SCADA系統(tǒng)中,RTU控制器的數(shù)字證書可以存儲(chǔ)在證書服務(wù)器中,也可以存儲(chǔ)在RTU控制器中。
S102:接收所述響應(yīng)端的數(shù)字證書,并對(duì)所述響應(yīng)端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述響應(yīng)端的數(shù)字證書可信,從所述響應(yīng)端的數(shù)字證書中提取所述響應(yīng)端公鑰;
具體的,所述數(shù)字證書為公鑰證書,所述公鑰證書包括公鑰信息,所述對(duì)所述響應(yīng)端的數(shù)字證書進(jìn)行可信性識(shí)別,包括:對(duì)公鑰證書的簽名、設(shè)備信息和有效期進(jìn)行驗(yàn)證。
S103:生成發(fā)起端隨機(jī)數(shù)并存儲(chǔ),用所述響應(yīng)端公鑰加密攜帶有所述發(fā)起端隨機(jī)數(shù)與發(fā)起端設(shè)備信息的認(rèn)證挑戰(zhàn)信息,并將所述認(rèn)證挑戰(zhàn)信息發(fā)送到所述響應(yīng)端;
具體的,RTU控制器接收并使用私鑰解密SCADA系統(tǒng)發(fā)送的認(rèn)證挑戰(zhàn)信息,獲取并存儲(chǔ)所述認(rèn)證挑戰(zhàn)信息中的SCADA系統(tǒng)隨機(jī)數(shù)和SCADA系統(tǒng)的設(shè)備信息;RTU控制器根據(jù)所述SCADA系統(tǒng)的設(shè)備信息向所述SCADA系統(tǒng)或證書服務(wù)器請(qǐng)求所述SCADA系統(tǒng)的數(shù)字證書;RTU控制器接收所述SCADA系統(tǒng)的數(shù)字證書,并對(duì)所述SCADA系統(tǒng)的數(shù)字證書進(jìn)行可信性識(shí)別,若所述SCADA系統(tǒng)的數(shù)字證書可信,從所述SCADA系統(tǒng)的數(shù)字證書中提取所述SCADA系統(tǒng)公鑰;RTU控制器生成RTU控制器隨機(jī)數(shù),并生成另一組隨機(jī)數(shù)作為會(huì)話密鑰,將所述RTU控制器隨機(jī)數(shù)和所述會(huì)話密鑰進(jìn)行存儲(chǔ);RTU控制器用所述SCADA系統(tǒng)公鑰加密攜帶有所述RTU控制器隨機(jī)數(shù)、會(huì)話密鑰和所述SCADA系統(tǒng)隨機(jī)數(shù)的RTU控制器身份認(rèn)證信息,并將所述RTU控制器身份認(rèn)證信息發(fā)送到所述SCADA系統(tǒng)。
需要說明的是,當(dāng)RTU控制器身份認(rèn)證成功或失敗后,SCADA系統(tǒng)隨機(jī)數(shù)失效,有效地防止重放、偽裝攻擊,提高了系統(tǒng)的安全性。
可以理解的是,在上述過程中,同時(shí)完成了會(huì)話密鑰的分發(fā),并在以下身份驗(yàn)證的過程中同時(shí)完成會(huì)話密鑰的驗(yàn)證,提高了系統(tǒng)的效率。
S104:接收并使用私鑰解密所述響應(yīng)端發(fā)送的響應(yīng)端身份認(rèn)證信息,獲取發(fā)起端隨機(jī)數(shù)、響應(yīng)端隨機(jī)數(shù)和會(huì)話密鑰;
S105:判斷獲取的發(fā)起端隨機(jī)數(shù)與存儲(chǔ)的所述發(fā)起端隨機(jī)數(shù)是否一致,若一致,判定響應(yīng)端身份認(rèn)證成功;
可以理解的是,若獲取的SCADA系統(tǒng)隨機(jī)數(shù)與存儲(chǔ)的所述SCADA系統(tǒng)隨機(jī)數(shù)不一致時(shí),RTU控制器的身份認(rèn)證失敗。
S106:用所述會(huì)話密鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)的發(fā)起端身份認(rèn)證信息,并將所述發(fā)起端身份認(rèn)證信息發(fā)送到所述響應(yīng)端,使所述響應(yīng)端判斷發(fā)起端身份認(rèn)證是否成功。
具體的,RTU控制器接收并用所述會(huì)話密鑰解密SCADA系統(tǒng)身份認(rèn)證信息,獲取RTU控制器隨機(jī)數(shù);RTU控制器判斷獲取的RTU控制器隨機(jī)數(shù)與存儲(chǔ)的所述RTU控制器隨機(jī)數(shù)是否一致,若一致,判定SCADA系統(tǒng)身份認(rèn)證成功。
可以理解的是,當(dāng)RTU控制器判斷獲取的RTU控制器隨機(jī)數(shù)與存儲(chǔ)的所述RTU控制器隨機(jī)數(shù)是不一致時(shí),SCADA系統(tǒng)身份認(rèn)證失敗。
基于上述實(shí)施例公開的雙向身份認(rèn)證方法,本實(shí)施例對(duì)應(yīng)公開了一種發(fā)起端,請(qǐng)參閱圖2,具體包括:
請(qǐng)求單元101,用于在預(yù)設(shè)周期內(nèi)向響應(yīng)端或證書服務(wù)器請(qǐng)求響應(yīng)端的數(shù)字證書;
可信性識(shí)別單元102,用于接收所述響應(yīng)端的數(shù)字證書,并對(duì)所述響應(yīng)端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述響應(yīng)端的數(shù)字證書可信,從所述響應(yīng)端的數(shù)字證書中提取所述響應(yīng)端公鑰;
第一加密單元103,用于生成發(fā)起端隨機(jī)數(shù)并存儲(chǔ),用所述響應(yīng)端公鑰加密攜帶有所述發(fā)起端隨機(jī)數(shù)與發(fā)起端設(shè)備信息的認(rèn)證挑戰(zhàn)信息,并將所述認(rèn)證挑戰(zhàn)信息發(fā)送到所述響應(yīng)端;
解密單元104,用于接收并使用私鑰解密所述響應(yīng)端發(fā)送的響應(yīng)端身份認(rèn)證信息,獲取發(fā)起端隨機(jī)數(shù)、響應(yīng)端隨機(jī)數(shù)和會(huì)話密鑰;
判斷單元105,用于判斷獲取的發(fā)起端隨機(jī)數(shù)與存儲(chǔ)的所述發(fā)起端隨機(jī)數(shù)是否一致,若一致,判定響應(yīng)端身份認(rèn)證成功;
第二加密單元106,用于用所述會(huì)話密鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)的發(fā)起端身份認(rèn)證信息,并將所述發(fā)起端身份認(rèn)證信息發(fā)送到所述響應(yīng)端,使所述響應(yīng)端判斷發(fā)起端身份認(rèn)證是否成功。
請(qǐng)參閱圖3,本實(shí)施例公開了一種雙向身份認(rèn)證方法,應(yīng)用于響應(yīng)端,具體包括以下步驟:
S201:在預(yù)設(shè)周期內(nèi)接收并使用私鑰解密發(fā)起端發(fā)送的認(rèn)證挑戰(zhàn)信息,獲取并存儲(chǔ)所述認(rèn)證挑戰(zhàn)信息中的發(fā)起端隨機(jī)數(shù)和發(fā)起端設(shè)備信息;
S202:根據(jù)所述發(fā)起端的設(shè)備信息向所述發(fā)起端或證書服務(wù)器請(qǐng)求所述發(fā)起端的數(shù)字證書;
S203:接收所述發(fā)起端的數(shù)字證書,并對(duì)所述發(fā)起端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述發(fā)起端的數(shù)字證書可信,從所述發(fā)起端的數(shù)字證書中提取所述發(fā)起端公鑰;
S204:生成響應(yīng)端隨機(jī)數(shù),并生成另一組隨機(jī)數(shù)作為會(huì)話密鑰,將所述響應(yīng)端隨機(jī)數(shù)和所述會(huì)話密鑰進(jìn)行存儲(chǔ);
S205:用所述發(fā)起端公鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)、會(huì)話密鑰和所述發(fā)起端隨機(jī)數(shù)的響應(yīng)端身份認(rèn)證信息,并將所述響應(yīng)端身份認(rèn)證信息發(fā)送到所述發(fā)起端;
S206:當(dāng)所述響應(yīng)端身份認(rèn)證成功后,接收并用所述會(huì)話密鑰解密發(fā)起端身份認(rèn)證信息,獲取響應(yīng)端隨機(jī)數(shù);
S207:判斷獲取的響應(yīng)端隨機(jī)數(shù)與存儲(chǔ)的所述響應(yīng)端隨機(jī)數(shù)是否一致,若一致,判定發(fā)起端身份認(rèn)證成功。
以上步驟以SCADA系統(tǒng)為發(fā)起端,RTU控制器為響應(yīng)端為例,具體說明請(qǐng)參閱圖1對(duì)應(yīng)的實(shí)施例,在此不再贅述。
基于上述實(shí)施例公開的雙向身份認(rèn)證方法,本實(shí)施例對(duì)應(yīng)公開了一種響應(yīng)端,請(qǐng)參閱圖4,具體包括:
第一解密單元201,用于在預(yù)設(shè)周期內(nèi)接收并使用私鑰解密發(fā)起端發(fā)送的認(rèn)證挑戰(zhàn)信息,獲取并存儲(chǔ)所述認(rèn)證挑戰(zhàn)信息中的發(fā)起端隨機(jī)數(shù)和發(fā)起端設(shè)備信息;
請(qǐng)求單元202,用于根據(jù)所述發(fā)起端的設(shè)備信息向所述發(fā)起端或證書服務(wù)器請(qǐng)求所述發(fā)起端的數(shù)字證書;
可信性識(shí)別單元203,用于接收所述發(fā)起端的數(shù)字證書,并對(duì)所述發(fā)起端的數(shù)字證書進(jìn)行可信性識(shí)別,若所述發(fā)起端的數(shù)字證書可信,從所述發(fā)起端的數(shù)字證書中提取所述發(fā)起端公鑰;
生成單元204,用于生成響應(yīng)端隨機(jī)數(shù),并生成另一組隨機(jī)數(shù)作為會(huì)話密鑰,將所述響應(yīng)端隨機(jī)數(shù)和所述會(huì)話密鑰進(jìn)行存儲(chǔ);
加密單元205,用于用所述發(fā)起端公鑰加密攜帶有所述響應(yīng)端隨機(jī)數(shù)、會(huì)話密鑰和所述發(fā)起端隨機(jī)數(shù)的響應(yīng)端身份認(rèn)證信息,并將所述響應(yīng)端身份認(rèn)證信息發(fā)送到所述發(fā)起端;
第二解密單元206,用于當(dāng)所述響應(yīng)端身份認(rèn)證成功后,接收并用所述會(huì)話密鑰解密發(fā)起端身份認(rèn)證信息,獲取響應(yīng)端隨機(jī)數(shù);
判斷單元207,用于判斷獲取的響應(yīng)端隨機(jī)數(shù)與存儲(chǔ)的所述響應(yīng)端隨機(jī)數(shù)是否一致,若一致,判定發(fā)起端身份認(rèn)證成功。
基于上述實(shí)施例公開的發(fā)起端和響應(yīng)端,本實(shí)施例公開了一種雙向身份認(rèn)證系統(tǒng),請(qǐng)參閱圖5,包括:
上述實(shí)施例公開的發(fā)起端301和上述實(shí)施例公開的響應(yīng)端302,所述發(fā)起端和所述響應(yīng)端通信連接。
請(qǐng)參閱圖6,所述雙向身份認(rèn)證系統(tǒng)還包括證書服務(wù)器303,在雙向身份認(rèn)證過程中,發(fā)起端301向證書服務(wù)器303請(qǐng)求響應(yīng)端302的數(shù)字證書,并接收來自證書服務(wù)器303反饋的響應(yīng)端302的數(shù)字證書;響應(yīng)端302向證書服務(wù)器303請(qǐng)求發(fā)起端301的數(shù)字證書,并接收來自證書服務(wù)器303反饋的發(fā)起端301的數(shù)字證書。
對(duì)所公開的實(shí)施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。