專利名稱:一種用于身份認(rèn)證的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于身份認(rèn)證的裝置和方法。
背景技術(shù):
無線網(wǎng)狀網(wǎng)(Wireless Mesh Network =WMN)是一種自我管理和自我配置的多跳網(wǎng) 絡(luò),其擁有許多優(yōu)點,例如前期的低投入、大的系統(tǒng)容量、維護(hù)的簡單性和高可靠性等。802. 11網(wǎng)狀網(wǎng)是無線網(wǎng)狀網(wǎng)的一種,具有802. 11無線局域網(wǎng)和網(wǎng)格的特征,使用 一組無線路由器來在一定區(qū)域內(nèi)提供無線覆蓋。圖1示出了現(xiàn)有的802. 11網(wǎng)狀網(wǎng)的結(jié)構(gòu) 示意圖,如圖1所示,在802. 11網(wǎng)狀網(wǎng)中布置有一組無線路由器,由于這些無線路由器相互 之間可以通過無線方式進(jìn)行通信,所以位于各個無線路由器的無線覆蓋范圍內(nèi)的終端可以 通過這些無線路由器而連接到互聯(lián)網(wǎng),或者位于不同無線路由器的無線覆蓋范圍內(nèi)的各個 終端可以通過這些無線路由器進(jìn)行通信。眾所周知,802. 11無線局域網(wǎng)的無線通信面臨著安全挑戰(zhàn),例如容易受到諸如竊 聽等這樣的被動攻擊和諸如篡改信息和DOS攻擊等這樣的主動攻擊。然而,與802. 11無線 局域網(wǎng)的無線通信相比,802. 11網(wǎng)狀網(wǎng)的多跳通信所面臨的安全挑戰(zhàn)更加嚴(yán)重。與802. 11無線局域網(wǎng)的終端相比,802. 11網(wǎng)狀網(wǎng)中的任何一個終端能夠在網(wǎng)絡(luò) 中自由移動并且經(jīng)由任何無線路由器接入互聯(lián)網(wǎng)或者與網(wǎng)絡(luò)中其它終端進(jìn)行通信,因此, 在802. 11網(wǎng)狀網(wǎng)中,為了確保安全,在終端之間的身份認(rèn)證以及在終端與無線路由器之間 的身份認(rèn)證需要特別注意。
發(fā)明內(nèi)容
考慮到現(xiàn)有技術(shù)的上述問題,本發(fā)明的實施例提供一種用于身份認(rèn)證的裝置和方 法,利用該裝置和方法,能夠在終端之間或者在終端與無線路由器之間安全地進(jìn)行身份認(rèn) 證。按照本發(fā)明的一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)?shù)谝唤K端與第二 終端進(jìn)行身份認(rèn)證時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述第一 終端接收到所述第二終端發(fā)送的第二數(shù)值、所述第二終端的身份標(biāo)識和其私鑰被使用來產(chǎn) 生所述第二終端的私鑰的第二無線路由器的身份標(biāo)識時,至少利用所述第一終端的私鑰、 所述第二數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)和所述第二無線路由器的公鑰根據(jù)指定等式來 計算第三數(shù)值;獲取模塊,用于根據(jù)所接收的所述第二無線路由器的身份標(biāo)識來獲取所述 第二無線路由器的公鑰;加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第三數(shù) 值以得到第一加密值;以及,通信模塊,用于向所述第二終端發(fā)送所述第一數(shù)值、其私鑰被 使用來產(chǎn)生所述第一終端的私鑰的第一無線路由器的身份標(biāo)識和所述第一終端的身份標(biāo) 識,以及向所述第二終端發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點 并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限域中的一個元素,所述第 一終端的私鑰是利用所述第一無線路由器的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線路由器的私鑰和所述公共參數(shù)計算的,以及所 述第一無線路由器的私鑰和所述第二無線路由器的私鑰分別是小于所述階的整數(shù),所述指 定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)?shù)诙K端接收 到第一終端發(fā)送的第一數(shù)值、其私鑰被使用來產(chǎn)生所述第一終端的私鑰的第一無線路由器 的身份標(biāo)識和所述第一終端的身份標(biāo)識時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù) 值,以及當(dāng)所述第二終端接收到所述第一終端發(fā)送的第一加密值時,在所述第一無線路由 器的數(shù)字證書是有效的情況下,至少利用所述第一終端的身份標(biāo)識、所述第一數(shù)值、所述公 共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和所述第二終端的私鑰根據(jù)指定等式來 計算第四數(shù)值;通信模塊,用于向所述第一終端發(fā)送所述計算的第二數(shù)值、所述第二終端的 身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身份標(biāo)識;獲取 模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無線路由器的公 鑰和數(shù)字證書;檢查模塊,用 于檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效 的;加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密 值;比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及,確定模塊, 用于當(dāng)比較結(jié)果為肯定時,確定所述第一終端的身份是真的,其中,所述公共參數(shù)是橢圓曲 線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限域中的一個 元素,所述第一終端的私鑰是利用所述第一無線路由器的私鑰和所述第一終端的身份標(biāo)識 計算的,所述第二終端的私鑰是由所述第二無線路由器的私鑰和所述第二終端的身份標(biāo)識 計算的,以及所述第一無線路由器的私鑰和所述第二無線路由器的私鑰分別是小于所述階 的整數(shù),所述指定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)終端與第二無線 路由器進(jìn)行身份認(rèn)證時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述終 端接收到所述第二無線路由器發(fā)送的第二數(shù)值和所述第二無線路由器的公鑰時,至少利用 所述終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)和所述第二無線路由器的公鑰 根據(jù)指定等式來計算第三數(shù)值;加密模塊,用于利用所述終端的身份標(biāo)識來加密所述第三 數(shù)值以得到第一加密值;以及,通信模塊,用于向所述第二無線路由器發(fā)送所述第一數(shù)值、 所述第一終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身 份標(biāo)識,以及向所述第二無線路由器發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線 上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限域中的一個元 素,所述終端的私鑰是利用所述第一無線路由器的私鑰和所述終端的身份標(biāo)識計算的,所 述第二無線路由器的公鑰是利用所述第二無線路由器的私鑰和所述公共參數(shù)計算的,以及 所述第二無線路由器的私鑰是小于所述階的整數(shù),所述指定等式的離散對數(shù)問題是難解 的。按照本發(fā)明的一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)?shù)诙o線路由 器接收到一個終端發(fā)送的第一數(shù)值、所述終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述終端 的私鑰的第一無線路由器的身份標(biāo)識時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù) 值,以及當(dāng)所述第二無線路由器接收到所述終端發(fā)送的第一加密值時,在所述第一無線路 由器的數(shù)字證書是有效的情況下,至少利用所述終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和所述第二無線路由器的私鑰根據(jù)指定等 式來計算第四數(shù)值;通信模塊,用于向所述終端發(fā)送所述第二數(shù)值和所述第二無線路由器 的公鑰;獲取模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無 線路由器的公鑰和數(shù)字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù)字證 書是否是有效的;加密模塊,用于利用所述終端的身份標(biāo)識來加密所述第四數(shù)值以得到計 算的加密值;比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及,確 定模塊,用于當(dāng)比較結(jié)果為肯定時,確定所述終端的身份是真的,其中,所述公共參數(shù)是橢 圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限域中的 一個元素,所述終端的私 鑰是利用所述第一無線路由器的私鑰和所述終端的身份標(biāo)識計算 的,以及所述第一無線路由器的私鑰和所述第二無線路由器的私鑰分別是小于所述階的整 數(shù),所述指定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種用于身份認(rèn)證的方法,包括步驟當(dāng)?shù)谝唤K端與第二終端進(jìn)行 身份認(rèn)證時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第一數(shù)值并向所述第二終端發(fā)送所述 計算的第一數(shù)值、所述第一終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第一終端的私鑰的 第一無線路由器的身份標(biāo)識;當(dāng)所述第一終端接收到所述第二終端發(fā)送的第二數(shù)值、所述 第二終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身 份標(biāo)識時,根據(jù)所接收的所述第二無線路由器的身份標(biāo)識來獲取所述第二無線路由器的公 鑰;至少利用所述第一終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)和所獲取的 所述第二無線路由器的公鑰,根據(jù)指定等式來計算第三數(shù)值;利用所述第一終端的身份標(biāo) 識來加密所述第三數(shù)值以得到第一加密值;以及,向所述第二終端發(fā)送所述第一加密值,其 中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述 橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器的私鑰 和所述第一終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線路由 器的私鑰和所述公共參數(shù)計算的,以及所述第一無線路由器的私鑰和所述第二無線路由器 的私鑰分別是小于所述階的整數(shù),所述指定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種用于身份認(rèn)證的方法,包括步驟當(dāng)?shù)诙K端接收到第一終端 發(fā)送的第一數(shù)值、所述第一終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第一終端的私鑰的 第一無線路由器的身份標(biāo)識時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值并向所述 第一終端發(fā)送所述計算的第二數(shù)值、所述第二終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述 第二終端的私鑰的第二無線路由器的身份標(biāo)識;當(dāng)所述第二終端接收到所述第一終端發(fā)送 的第一加密值時,根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來所述第一無線路由器的 數(shù)字證書并檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的;當(dāng)檢查結(jié)果為肯 定時,至少利用所述第一終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述 第一無線路由器的公鑰和所述第二終端的私鑰,根據(jù)指定等式來計算第四數(shù)值;利用所述 第一終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值;比較所述第一加密值和所 述計算的加密值是否相同;以及,當(dāng)比較結(jié)果為肯定時,確定所述第一終端的身份是真的, 其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所 述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器的私 鑰和所述第一終端的身份標(biāo)識計算的,所述第二終端的私鑰是由第二無線路由器的私鑰和所述第二終端的身份標(biāo)識計算的,以及所述第一無線路由器的私鑰和所述第二無線路由器 的私鑰分別是小于所述階的整數(shù),所述指定等式的離散對數(shù)問題是難解的。 按照本發(fā)明的一種用于身份認(rèn)證的方法,包括步驟當(dāng)終端與第二無線路由器進(jìn) 行身份認(rèn)證時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第一數(shù)值并向所述第二無線路由器 發(fā)送所述計算的第一數(shù)值、所述終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述終端的私鑰的 第一無線路由器的身份標(biāo)識;當(dāng)所述終端接收到所述第二無線路由器發(fā)送的第二數(shù)值和 所述第二無線路由器的公鑰時,至少利用所述終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、 所述隨機(jī)數(shù)和所述第二無線路由器的公鑰,根據(jù)指定等式來計算第三數(shù)值;利用所述終端 的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以及,所述第二無線路由器發(fā)送所述 第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī) 數(shù)是形成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由 器的私鑰和所述終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線 路由器的私鑰和所述公共參數(shù)計算的,以及所述第二無線路由器的私鑰是小于所述階的整 數(shù),所述指定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種用于身份認(rèn)證的方法,包括步驟當(dāng)?shù)诙o線路由器接收到一 個終端發(fā)送的第一數(shù)值、所述終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述終端的私鑰的第 一無線路由器的身份標(biāo)識時,利用一個公共參數(shù)和一.個隨機(jī)數(shù)來計算第二數(shù)值并向所述 終端發(fā)送所述計算的第二數(shù)值和所述第二無線路由器的公鑰;當(dāng)所述第二無線路由器接收 到所述終端發(fā)送的第一加密值時,根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所 述第一無線路由器的公鑰和數(shù)字證書;檢查所獲取的所述第一無線路由器的數(shù)字證書是否 是有效的;當(dāng)檢查結(jié)果為肯定時,至少利用所述終端的身份標(biāo)識、所述第一數(shù)值、所述公共 參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和所述第二無線路由器的私鑰根據(jù)指定等 式來計算第四數(shù)值;利用所述終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值; 比較所述第一加密值和所述計算的加密值是否相同;以及,當(dāng)比較結(jié)果為肯定時,確定所述 終端的身份是真的,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所 述隨機(jī)數(shù)是形成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無 線路由器的私鑰和所述終端的身份標(biāo)識計算的,以及所述第一無線路由器的私鑰和所述第 三無線路由器的私鑰分別是小于所述階的整數(shù),所述指定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種第一終端,包括存儲器,用于存儲公共參數(shù)、所述第一終端的 身份標(biāo)識和私鑰、以及其私鑰被使用來產(chǎn)生所述第一終端的私鑰的第一無線路由器的身份 標(biāo)識;計算模塊,用于當(dāng)所述第一終端與第二終端進(jìn)行身份認(rèn)證時,利用所存儲的公共參 數(shù)和一個隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述第一終端接收到所述第二終端發(fā)送的第二數(shù) 值、所述第二終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由 器的身份標(biāo)識時,至少利用所存儲的所述第一終端的私鑰和所述公共參數(shù)、所述第二數(shù)值、 所述隨機(jī)數(shù)和所述第二無線路由器的公鑰根據(jù)指定等式來計算第三數(shù)值;獲取模塊,用于 根據(jù)所接收的所述第二無線路由器的身份標(biāo)識來獲取所述第二無線路由器的公鑰;加密模 塊,用于利用所述第一終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以及,通信 模塊,用于向所述第二終端發(fā)送所述第一數(shù)值、所存儲的所述第一無線路由器的身份標(biāo)識 和所述第一終端的身份標(biāo)識,以及向所述第二終端發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限 域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器的私鑰和所述第一終端 的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線路由器的私鑰和所述 公共參數(shù)計算的,以及所述第一無線路由器的私鑰和所述第二無線路由器的私鑰分別是小 于所述階的整數(shù),所述指定等式的離散對數(shù)問題是難解的。
按照本發(fā)明的一種第二終端,包括存儲器,用于存儲公共參數(shù)、所述第二終端的 私鑰和標(biāo)識、以及其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身份標(biāo) 識;計算模塊,用于當(dāng)所述第二終端接收到第一終端發(fā)送的第一數(shù)值、其私鑰被使用來產(chǎn)生 所述第一終端的私鑰的第一無線路由器的身份標(biāo)識和所述第一終端的身份標(biāo)識時,利用所 述存儲的公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值,以及當(dāng)所述第二終端接收到所述第一終 端發(fā)送的第一加密值時,在所述第一無線路由器的數(shù)字證書是有效的情況下,至少利用所 述第一終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器 的公鑰和所述第二終端的私鑰根據(jù)指定等式來計算第四數(shù)值;通信模塊,用于向所述第一 終端發(fā)送所述計算的第二數(shù)值、所存儲的所述第二終端的身份標(biāo)識和所述第二無線路由器 的身份標(biāo)識;獲取模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第 一無線路由器的公鑰和數(shù)字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù) 字證書是否是有效的;加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第四數(shù)值 以得到計算的加密值;比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同; 以及,確定模塊,用于當(dāng)比較結(jié)果為肯定時,確定所述第一終端的身份是真的,其中,所述公 共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的 有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器的私鑰和所述第一 終端的身份標(biāo)識計算的,所述第二終端的私鑰是由所述第二無線路由器的私鑰和所述第二 終端的身份標(biāo)識計算的,以及所述第一無線路由器的私鑰和所述第二無線路由器的私鑰分 別是小于所述階的整數(shù),所述指定等式的離散對數(shù)問題是難解的。按照本發(fā)明的一種終端,包括存儲器,用于存儲公共參數(shù)、所述終端的身份標(biāo)識 和私鑰、以及其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識;計算模 塊,用于當(dāng)所述終端與第二無線路由器進(jìn)行身份認(rèn)證時,利用所述存儲的公共參數(shù)和一個 隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述終端接收到所述第二無線路由器發(fā)送的第二數(shù)值和所 述第二無線路由器的公鑰時,至少利用所述終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所 述隨機(jī)數(shù)和所述第二無線路由器的公鑰根據(jù)指定等式來計算第三數(shù)值;加密模塊,用于利 用所述終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以及,通信模塊,用于向所 述第二無線路由器發(fā)送所述第一數(shù)值、所存儲的所述第一終端的身份標(biāo)識和所述第一無線 路由器的身份標(biāo)識,以及向所述第二無線路由器發(fā)送所述第一加密值,其中,所述公共參數(shù) 是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限域 中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私鑰和所述終端的身份標(biāo)識 計算的,所述第二無線路由器的公鑰是利用所述第二無線路由器的私鑰和所述公共參數(shù)計 算的,以及所述第二無線路由器的私鑰是小于所述階的整數(shù),所述指定等式的離散對數(shù)問 題是難解的。按照本發(fā)明的一種第二無線路由器,包括存儲器,用于存儲公共參數(shù)以及所述第二無線路由器的私鑰和公鑰;計算模塊,用于當(dāng)所述第二無線路由器接收到一個終端發(fā)送 的第一數(shù)值、所述終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由 器的身份標(biāo)識時,利用所述存儲的公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值,以及當(dāng)所述第 二無線路由器接收到所述終端發(fā)送的第一加密值時,在所述第一無線路由器的數(shù)字證書是 有效的情況下,至少利用所述終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、 所述第一無線路由器的公鑰和所述第二無線路由器的私鑰根據(jù)指定等式來計算第四數(shù)值; 通信模塊,用于向所述終端發(fā)送所述第二數(shù)值和所述第二無線路由器的公鑰;獲取模塊,用 于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無線路由器的公鑰和數(shù) 字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的;力口 密模塊,用于利用所述終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值;比較模 塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及,確定模塊,用于當(dāng)比較 結(jié)果為肯定時,確定所述終端的身份是真的,其中,所述公共參數(shù)是橢圓曲線上的一個點并 且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形成所述橢圓曲線的有限域中的一個元素,所述終端 的私鑰是利用所述第一無線路由器的私鑰和所述終端的身份標(biāo)識計算的,以及所述第一無 線路由器的私鑰和所述第二無線路由器的私鑰分別是小于所述階的整數(shù),所述指定等式的 離散對數(shù)問題是難解的。
本發(fā)明的上述目的和其它目的、特征及優(yōu)點將通過以下結(jié)合附圖的詳細(xì)描述將變 得更加顯而易見。其中圖1示出了現(xiàn)有的802. 11網(wǎng)狀網(wǎng)的結(jié)構(gòu)示意圖;圖2是示出按照本發(fā)明一個實施例的終端的結(jié)構(gòu)示意圖;圖3是示出按照本發(fā)明一個實施例的無線路由器的結(jié)構(gòu)示意圖;圖4示出了按照本本發(fā)明一個實施例的終端和無線路由器之間進(jìn)行身份認(rèn)證的 方法的流程圖;以及圖5示出了按照本發(fā)明一個實施例的在兩個終端之間進(jìn)行身份認(rèn)證的方法的流 程圖。
具體實施例方式下面,將詳細(xì)描述本發(fā)明的各個實施例。按照本發(fā)明的一個實施例,基于身份標(biāo)識的公鑰密碼術(shù)和常規(guī)的證書管理方法被 使用以向802. 11網(wǎng)狀網(wǎng)中的終端提供身份認(rèn)證和安全保護(hù)。首先,802. 11網(wǎng)狀網(wǎng)中的每一 個無線路由器被授予數(shù)字證書。然后,每一個無線路由器使用被授予的數(shù)字證書,為屬于其 管轄的各個終端產(chǎn)生基于身份標(biāo)識的公鑰和私鑰。這樣,當(dāng)終端與無線路由器進(jìn)行接入認(rèn) 證或者終端之間進(jìn)行相互認(rèn)證時,終端就能夠使用它們的基于身份標(biāo)識的公鑰和私鑰來進(jìn) 行身份認(rèn)證和會話密鑰協(xié)商,從而終端就能利用所協(xié)商的會話密鑰來保護(hù)通信信息。假設(shè)Fq是一個有限域(q是素數(shù)),以及E(Fq)是基于該有限域Fq所生成的橢圓 曲線,那么該橢圓曲線E(Fq)的乘法群的離散對數(shù)問題是難解的。選擇該橢圓曲線E(Fq)上 的一個其階為素數(shù)N的基點,作為公共參數(shù)P,其中,公共參數(shù)P的階為N,在這里,優(yōu)先選擇階N為大素數(shù)的基點作為公共參數(shù)P。在得到公共參數(shù)P及其階N之后,就可以生成各個無線路由器AP的公私密鑰對, 其中,無線路由器AP的私鑰s是集合[1,N-1]中的任意一個元素,即私鑰s是小于N的正 整數(shù),而無線路由器AP的公鑰為sP,無線路由器AP的數(shù)字證書是CertAP。在設(shè)置了無線路由器AP的公私密鑰對和數(shù)字證書后,就可以產(chǎn)生屬于無線路由 器AP管轄的各個終端的基于身份標(biāo)識的公鑰和私鑰,其中,終端的公鑰是該終端的身份標(biāo) 識Q,而終端的私鑰為sQ,也就是說終端的私鑰是利用作為其管轄者的無線路由器的私鑰 來計算得到的。在此,介紹下面將要使用的雙線性映射函數(shù) 。雙線性映射函數(shù) 是G1XG1到G2的 一個雙線性映射,G1和G2分別是具有相同階q的加法群和乘法群,在這兩個群上離散對數(shù) 問題都是難解的。通常,G1是有限域上的橢圓曲線的有理點群的子集,G2是有限域的乘法 子集,以及雙線性映射函數(shù) 由橢圓曲線上的威爾對(Weil Pairing)派生得到。圖2是示出按照本發(fā)明一個實施例的終端的結(jié)構(gòu)示意圖。如圖2所示,終端可以 包括存儲器110和身份認(rèn)證裝置120。其中,存儲器110用于存儲公共參數(shù)P、該終端的私鑰和身份標(biāo)識(公鑰)以及其 私鑰被使用來生成該終端的私鑰的無線路由器(即該終端的管轄無線路由器)的身份標(biāo) 識。身份認(rèn)證裝置120用于當(dāng)該終端移動到一個無線路由器的無線覆蓋范圍而接入 該無線路由器時,與該無線路由器進(jìn)行身份認(rèn)證,以及當(dāng)該終端想與另一終端進(jìn)行通信時, 與該另一終端進(jìn)行身份認(rèn)證。圖3是示出按照本發(fā)明一個實施例的無線路由器的結(jié)構(gòu)示意圖。如圖3所示,無 線路由器可以包括存儲器210和身份認(rèn)證裝置220。其中,存儲器210用于存儲公共參數(shù)P以及該無線路由器的私鑰、公鑰和數(shù)字證 書。身份認(rèn)證裝置220用于當(dāng)一個終端移動到該無線路由器的無線覆蓋范圍而接入 該無線路由器時,與該終端進(jìn)行身份認(rèn)證。下面,以終端A和無線路由器AP2為例,詳細(xì)描述按照本發(fā)明一個實施例的當(dāng)終端 想接入無線路由器時進(jìn)行身份認(rèn)證的方法。圖4示出了按照本實施例的終端和無線路由器 之間進(jìn)行身份認(rèn)證的方法的流程圖。在這里,假設(shè)終端A的管轄無線路由器是AP1,無線路由器AP1的私鑰、公鑰和數(shù) 字 證書分別是Sl、S1P和,終端A的私鑰和身份標(biāo)識分別是S1Qa和Qa,以及無線路由器 AP2的私鑰、公鑰和數(shù)字證書分別是s2、S2P和Cert^2。如圖4所示,當(dāng)終端A想與無線路由器AP2進(jìn)行身份認(rèn)證時,終端A的身份認(rèn)證 裝置120使用一個隨機(jī)數(shù)rA和存儲器110所存儲的公共參數(shù)P來計算第一數(shù)值rAP (步驟 S400)。其中,隨機(jī)數(shù)1^是有限域Fq中的一個元素。終端A的身份認(rèn)證裝置120把所計算的第一數(shù)值rAP、終端A的存儲器110所存儲 的終端A的身份標(biāo)識Qa和終端A的管轄無線路由器的身份標(biāo)識(即無線路由器AP1的身份 標(biāo)識)發(fā)送給無線路由器AP2 (步驟S405)。在無線路由器AP2收到來自終端A的第一數(shù)值rAP、終端A的身份標(biāo)識Qa和終端A的管轄無線路由器的身份標(biāo)識后,無線路由器AP2的身份認(rèn)證裝置220使用一個隨機(jī)數(shù)r2 和存儲器210所存儲的公共參數(shù)P來計算第二數(shù)值r2P (步驟S410)。其中,隨機(jī)數(shù)r2是有 限域Fq中的一個元素。無線路由器AP2的身份認(rèn)證裝置220把所計算的第二數(shù)值r2P、無線路由器AP2 的存儲器210所存儲的無線路由器AP2的公鑰S2P和數(shù)字證書發(fā)送給終端A(步驟 S415)。 在終端A收到來自無線路由器AP2的第二數(shù)值r2P以及無線路由器AP2的公鑰S2P 和數(shù)字證書C〃^>2后,終端A的身份認(rèn)證裝置120利用第二數(shù)值r2P、無線路由器AP2的公 鑰s2P、隨機(jī)數(shù)rA以及存儲器110所存儲的終端A的私鑰S1Qa和公共參數(shù)P,按照第一等式
K=i(s] QA,r2P)e{ s, Qa^s2 P)e(r2 P ,P) 來計算第三數(shù)值K1 (步驟S42O)。在本實施 例中,在終端A和無線路由器AP2成功地進(jìn)行身份認(rèn)證后,第三數(shù)值K1被用作終端A與無線 路由器AP2進(jìn)行通信的會話密鑰。由于該第一等式是由雙線性映射函數(shù)構(gòu)造而得,而雙 線性映射函數(shù)的離散對數(shù)問題是難解的,所以該第一等式的離散對數(shù)問題也是難解的, 換言之,即使第三方知道了第二數(shù)值r2P、無線路由器AP2的公鑰s2P、第三數(shù)值K1和該第一 等式的具體形式,也不能根據(jù)第二數(shù)值r2P、無線路由器AP2的公鑰S2P和第三數(shù)值K1利用 該第一等式來推導(dǎo)出隨機(jī)數(shù)rA、終端A的私鑰S1Qa和公共參數(shù)P,從而確保隨機(jī)數(shù)!^和終端 A的私鑰S1Qa不會泄露給第三方知道。而且,該第一等式被構(gòu)造為使得無線路由器AP2能夠 利用無線路由器AP2的私鑰S2、公共參數(shù)P、第一數(shù)值!^、用于生成第二數(shù)值r2P的隨機(jī)數(shù) r2、作為終端A的管轄無線路由器的無線路由器AP1的公鑰和終端A的身份標(biāo)識Qa來計算 出與第三數(shù)值K1相等的數(shù)值。終端A的身份認(rèn)證裝置120利用存儲器110所存儲的終端A的身份標(biāo)識(公鑰)Qa 來加密第三數(shù)值K1,即對第三數(shù)值K1進(jìn)行散列計算,得到第一加密值h (KijQa)(步驟S425)。 在這里,h()表示對第三數(shù)值K進(jìn)行加密所使用的散列函數(shù)。終端A的身份認(rèn)證裝置120把第一加密值h (K1, Qa)發(fā)送給無線路由器AP2 (步驟 S430)。在無線路由器AP2收到來自終端A的第一加密值h(K1, Qa)后,無線路由器AP2的 身份認(rèn)證裝置220從之前所接收的終端A的管轄無線路由器的身份標(biāo)識所表示的無線路由 器,即無線路由器AP1,獲取終端A的管轄無線路由器的公鑰和數(shù)字證書,即無線路由器AP1 的公鑰S1P和數(shù)字證書(步驟S435)。無線路由器AP2的身份認(rèn)證裝置220檢查所獲取的終端A的管轄無線路由器的數(shù) 字證書,即無線路由器AP1的數(shù)字證書Ca、,是否是有效的(步驟S440)。如果步驟S440的檢查結(jié)果為否,即無線路由器AP1的數(shù)字證書Cert圳不是有效的, 則身份認(rèn)證失敗,流程結(jié)束。如果步驟S440的檢查結(jié)果為是,即無線路由器AP1的數(shù)字證書是有效 的,則無線路由器AP2的身份認(rèn)證裝置220利用所接收的終端A的身份標(biāo)識Qa和第一 數(shù)值rAP、所獲取的作為終端A的管轄無線路由器的無線路由器AP1的公鑰SlP、隨機(jī) 數(shù)巧和存儲器210所存儲的公共參數(shù)P和無線路由器AP2的私鑰s2,按照第二等式 夂2 = (仏丨P ) 4 (仏,尸)N ( G尸,P )。來計算第四數(shù)值K2 (步驟S445)。在本實施例中,在終端A和無線路由器AP2成功地進(jìn)行身份認(rèn)證后,第四數(shù)值K2被用作無線路由器AP2 與終端A進(jìn)行通信的會話密鑰。由于該第二等式是由雙線性映射函數(shù) ()構(gòu)造而得,而雙線 性映射函數(shù)的離散對數(shù)問題是難解的,所以該第二等式的離散對數(shù)問題也是難解的,換 言之,即使第三方知道了終端A的身份標(biāo)識Qa、第一數(shù)值rAP、無線路由器AP1的公鑰S1P和 該第二等式的具體形式,也不能根據(jù)終端A的身份標(biāo)識Qa、第一數(shù)值rAP和無線路由器AP1 的公鑰S1P利用該第二等式來推導(dǎo)出隨機(jī)數(shù)r2、公共參數(shù)P和無線路由器AP2的私鑰S2,從 而確保不公開的隨機(jī)數(shù)r2和無線路由器AP2的私鑰S2不會泄露給第三方知道。而且,該第 二等式被構(gòu)造為使得終端A能夠利用終端A的私鑰S1Qa、公共參數(shù)P、用于生成第一數(shù)值rAP 的隨機(jī)數(shù)!^、第二數(shù)值r2P和無線路由器AP2的公鑰來計算出與第四數(shù)值K2相等的數(shù)值(即 第三數(shù)值K1)。無線路由器AP2的身份認(rèn)證裝置220利用所接收的終端A的身份標(biāo)識Qa來加密第 四數(shù)值κ2,即對第四數(shù)值K2進(jìn)行散列計算,得到計算的加密值h (K2, Qa)(步驟S450)。無線路由器AP2的身份認(rèn)證裝置220比較該計算的加密值h(K2,QA)和所接收的第 一加密值Ii(Ua)是否相同(步驟S455)。事實上,因為火 2 = e (Qa , S] P ) r^ e (Qa , ^ P ) sl H^a P , P )“
=e (Qa , P 谷(Qa , P ” ■、、Π P , P ) ν ^ e (s, Qa , r2 P )
H^ QA,s2P)i(r2P,P)q=K、,所以,在正常情況下,該計算的加密值h(K2,Qa)和所接收 的第一加密值Ii(I^Qa)是相同的。當(dāng)步驟S455的比較結(jié)果為否,即該計算的加密值h(K2,QA)和所接收的第一加密值 h(Ki;QA)不相同,則身份認(rèn)證失敗,流程結(jié)束。當(dāng)步驟S455的比較結(jié)果為是,即該計算的加密值h(K2,QA)和所接收的第一加密值 h (K1, Qa)相同,則無線路由器AP2的身份認(rèn)證裝置220確定終端A的身份是真的,并且知道 終端A已經(jīng)生成了會話密鑰(步驟S460)。在確定終端A的身份是真的后,無線路由器AP2的身份認(rèn)證裝置220使用存儲器 210所存儲的無線路由器AP2的公鑰S2P來加密第四數(shù)值K2,即對第四數(shù)值K2進(jìn)行散列計 算,得到第二加密值h (K2,s2P)(步驟S465)。無線路由器AP2的身份認(rèn)證裝置220向終端A發(fā)送所計算的第二加密值h (K2, S2P) (步驟 S470)。在終端A接收到來自無線路由器AP2的第二加密值h(K2,s2P)后,終端A的身份 認(rèn)證裝置120檢查之前所獲取的無線路由器AP2的數(shù)字證書Ce^47l2是否是有效的(步驟 S475)。如果步驟S475的檢查結(jié)果為否,即無線路由器AP2的數(shù)字證書Cer^^不是有效的, 則身份認(rèn)證失敗,流程結(jié)束。如果步驟S475的檢查結(jié)果為是,即無線路由器AP2的數(shù)字證書是有效的,則 終端A的身份認(rèn)證裝置120使用之前所接收的無線路由器AP2的公鑰S2P來加密之前所計算 的第三數(shù)值K1,即對第三數(shù)值K1進(jìn)行散列計算,得到計算的加密值h (K1, s2P)(步驟S480)。終端A的身份認(rèn)證裝置120比較該計算的的加密值h (K1, S2P)和所接收的第二加 密值h(K2,S2P)是否相同(步驟S485)。
如果步驟S485的檢查結(jié)果為否,即該計算的的加密值!!(K1, S2P)和所接收的第二 加密值h(K2,s2P)不相同,則身份認(rèn)證失敗,流程結(jié)束。如果步驟S485的檢查結(jié)果為是,即該計算的的加密值h (K1, S2P)和所接收的第二 加密值h(K2,s2P)相同,則終端A的身份認(rèn)證裝置120確定無線路由器AP2W身份是真的, 并且知道無線路由器AP2已經(jīng)生成了會話密鑰(步驟S490)。
這樣,在終端A和無線路由器AP2成功地進(jìn)行身份認(rèn)證后,終端A就可以接入無線 路由器AP2,并且在終端A和無線路由器AP2進(jìn)行通信的過程中,終端A和無線路由器AP2可 以利用所生成的會話密鑰來加密和解密相互傳送的信息和數(shù)據(jù)。下面,以終端A和終端B為例,詳細(xì)描述按照本發(fā)明一個實施例的兩個終端之間進(jìn) 行身份認(rèn)證的方法。圖5示出了按照本實施例的在兩個終端之間進(jìn)行身份認(rèn)證的方法的流 程圖。在這里,假設(shè)終端A的管轄無線路由器是AP1和終端B的管轄無線路由器是AP2, 無線路由器AP1的私鑰、公鑰和數(shù)字證書分別是Sl、S1P和,終端A的私鑰和身份標(biāo)識 分別是S1Qa和Qa,無線路由器AP2的私鑰、公鑰和數(shù)字證書分別是s2、S2P和,以及終 端B的私鑰和身份標(biāo)識分別是S2Qb和Qb。如圖5所示,當(dāng)終端A想與終端B進(jìn)行身份認(rèn)證時,終端A的身份認(rèn)證裝置120使 用一個隨機(jī)數(shù)rA和終端A的的存儲器110所存儲的公共參數(shù)P來計算第一數(shù)值rAP (步驟 S500)。其中,隨機(jī)數(shù)1^是有限域Fq中的一個元素。終端A的身份認(rèn)證裝置120把所計算的第一數(shù)值rAP、終端A的存儲器110所存儲 的終端A的身份標(biāo)識Qa和終端A的管轄無線路由器的身份標(biāo)識(即無線路由器AP1的身份 標(biāo)識)發(fā)送給終端B (步驟S505)。在終端B收到來自終端A的第一數(shù)值rAP、終端A的身份標(biāo)識Qa和終端A的管轄 無線路由器的身份標(biāo)識(即無線路由器AP1的身份標(biāo)識)后,終端B的身份認(rèn)證裝置120 使用一個隨機(jī)數(shù)巧和終端B的存儲器110所存儲的公共參數(shù)P來計算第二數(shù)值rBP (步驟 S510)。其中,隨機(jī)數(shù)巧是有限域Fq中的一個元素。終端B的身份認(rèn)證裝置120把所計算的第二數(shù)值rBP、終端B的存儲器110所存儲 的終端B的身份標(biāo)識Qb和終端B的管轄無線路由器的身份標(biāo)識(即無線路由器AP2的身份 標(biāo)識)發(fā)送給終端A (步驟S515)。在終端A收到來自終端B的第二數(shù)值rBP、終端B的身份標(biāo)識Qb和終端B的管轄 無線路由器的身份標(biāo)識(即無線路由器AP2的身份標(biāo)識)后,終端A的身份認(rèn)證裝置120 從所接收的終端B的管轄無線路由器的身份標(biāo)識所表示的無線路由器,即無線路由器AP2, 獲取終端B的管轄無線路由器的公鑰和數(shù)字證書,即無線路由器AP2的公鑰S2P和數(shù)字證書 CertAPi (步驟 S52O)。然后,終端A的身份認(rèn)證裝置120利用隨機(jī)數(shù)rA、所接收的第二數(shù)值 rBP、所獲取的作為終端B的管轄無線路由器的無線路由器AP2的公鑰s2P、以及 終端A的存儲器110所存儲的終端A的私鑰s工Qa和公共參數(shù)P,按照第三等式 K^e{sxQA,rBP)e{QB,s2P)^ e{rBP,P)。來計算第三數(shù)值 K/ (步驟 S525)。在本實 施例中,在終端A和終端B成功地進(jìn)行身份認(rèn)證后,第三數(shù)值K/被用作終端A與終端B進(jìn) 行通信的會話密鑰。由于該第三等式是由雙線性映射函數(shù)構(gòu)造而得,而雙線性映射函數(shù)的離散對數(shù)問題是難解的,所以該第三等式的離散對數(shù)問題也是難解的,換言之,即使 第三方知道了第二數(shù)值!^、作為終端B的管轄無線路由器的無線路由器AP2的公鑰s2P、終 端B的身份標(biāo)識Qb、第三數(shù)值K/和該第三等式的具體形式,也不能根據(jù)第二數(shù)值rBP、無線 路由器AP2的公鑰s2P、終端B的身份標(biāo)識Qb和第三數(shù)值K/利用該第三等式來推導(dǎo)出隨機(jī) 數(shù)rA、終端A的私鑰S1Qa和公共參數(shù)P,從而確保隨機(jī)數(shù)rA和終端A的私鑰S1Qa不會泄露 給第三方知道。而且,該第三等式被構(gòu)造為使得終端B能夠利用終端B的私鑰S2Qb、公共參 數(shù)P、第一數(shù)值rAP、用于生成第二數(shù)值rBP的隨機(jī)數(shù)rB、作為終端A的管轄無線路由器的無 線路由器AP1的公鑰S1P和終端A的身份標(biāo)識Qa來計算出與第三數(shù)值K/相等的數(shù)值。 終端A的身份認(rèn)證裝置120利用終端A的存儲器110所存儲的終端A的身份標(biāo)識 Qa來加密第三數(shù)值K/,即對第三數(shù)值K/進(jìn)行散列計算,得到第一加密值h(K/,Qa)(步驟 S530)。在這里,h()表示對第三數(shù)值K/進(jìn)行加密所使用的散列函數(shù)。終端A的身份認(rèn)證裝置120把第一加密值h (K/, Qa)發(fā)送給終端B (步驟S535)。在終端B收到來自終端A的第一加密值h(K/,Qa)后,終端B的身份認(rèn)證裝置120 從之前所接收的終端A的管轄無線路由器的身份標(biāo)識所表示的無線路由器,即無線路由器 AP1,獲取終端A的管轄無線路由器的公鑰和數(shù)字證書,即無線路由器AP1的公鑰S1P和數(shù)字 證書Cert^ (步驟S540)。終端B的身份認(rèn)證裝置120檢查所獲取的作為終端A的管轄無線路由器的無線路 由器AP1的數(shù)字證書Ce〃鄧是否是有效的(步驟S545)。如果步驟S545的檢查結(jié)果為否,即無線路由器AP1的數(shù)字證書不是有效的, 則身份認(rèn)證失敗,流程結(jié)束。如果步驟S545的檢查結(jié)果為是,即無線路由器AP1的數(shù)字證書C 〃^^是有 效的,則終端B的身份認(rèn)證裝置120利用所接收的終端A的身份標(biāo)識Qa和第一數(shù) 值!^、所獲取的作為終端A的管轄無線路由器的無線路由器AP1的公鑰SlP、隨機(jī) 數(shù)r2和終端B的存儲器110所存儲的公共參數(shù)P和終端B的私鑰S2Qb,按照第四等式 K2^e(s2QB,rAP)e(QA, &尸:TK^ P, P”來計算第四數(shù)值K/(步驟S55O)。在本實 施例中,在終端A和終端B成功地進(jìn)行身份認(rèn)證后,第四數(shù)值K/被用作終端B與終端A進(jìn) 行通信的會話密鑰。由于該第四等式是由雙線性映射函數(shù)構(gòu)造而得,而雙線性映射函數(shù)
的離散對數(shù)問題是難解的,所以該第四等式的離散對數(shù)問題也是難解的,換言之,即使 第三方知道了第一數(shù)值#、作為終端A的管轄無線路由器的無線路由器AP1的公鑰SlP、終 端A的身份標(biāo)識Qa、第四數(shù)值K/和該第四等式的具體形式,也不能根據(jù)第一數(shù)值rAP、無線 路由器AP1的公鑰SlP、終端A的身份標(biāo)識Qa和第四數(shù)值K/利用該第四等式來推導(dǎo)出隨機(jī) 數(shù)rB、終端B的私鑰S2Qb和公共參數(shù)P,從而確保隨機(jī)數(shù)rB和終端B的私鑰S2Qb不會泄露 給第三方知道。而且,該第四等式被構(gòu)造為使得終端A能夠利用終端A的私鑰S1Qa、公共參 數(shù)P、第二數(shù)值rBP、用于生成第一數(shù)值rAP的隨機(jī)數(shù)rA、作為終端B的管轄無線路由器的無 線路由器AP2的公鑰S2P和終端B的身份標(biāo)識Qb來計算出與第四數(shù)值K/相等的數(shù)值(即 第三數(shù)值K/)。終端B的身份認(rèn)證裝置120利用所接收的終端A的身份標(biāo)識Qa來加密第四數(shù)值 K/,即對第四數(shù)值K/進(jìn)行散列計算,得到計算的加密值h(K/,Qa)(步驟S555)。
終端B的身份認(rèn)證裝置120比較該計算的加密值h(K/,Qa)和所接收的第一加密 值h(K/,Qa)是否相同(步驟S560)。
事實上,仏‘=e{ S2 Qb , rA P ) e ( Qa , s, P ) r^ e { rA P , P ) r ‘= HQb,P)"2 ΓΛ HQA,P)rB S' e(rA P, rB P) =e{s, QA,rBP)e{QB,s2 P)^Μ。廣=足/,所以,在正常情況下,該計算的加密值h(K/,QA)和所接收的第一加密值 h(K/,QA)是相同的。
如果步驟S560的比較結(jié)果為否,即該計算的加密值h(K/,Qa)和所接收的第一加 密值h(K/,Qa)不相同,則身份認(rèn)證失敗,流程結(jié)束。
如果步驟S560的比較結(jié)果為是,即該計算的加密值h(K/,Qa)和所接收的第一加 密值h(K/,Qa)不相同,則終端B的身份認(rèn)證裝置120確定終端A的身份是真的,并且知道 終端A已經(jīng)生成了會話密鑰(步驟S565)。
在確定終端A的身份是真的后,終端B的身份認(rèn)證裝置120從終端B的存儲器110 所存儲的終端B的身份標(biāo)識%來加密第四數(shù)值K/,即對第四數(shù)值K/進(jìn)行散列計算,得到第 二加密值 h (K/, Qb)(步驟 S570)。
終端B的身份認(rèn)證裝置120向終端A發(fā)送所計算的第二加密值h(K/,Qb)(步驟 S575)。
在終端A接收到來自終端B的第二加密值h(K/,Qb)后,終端A的身份認(rèn)證裝置 120檢查之前所獲取的作為終端B的管轄無線路由器的無線路由器AP2的數(shù)字證書Cert^2是 否是有效的(步驟S580)。
如果步驟S580的檢查結(jié)果為否,即無線路由器AP2的數(shù)字證書CerQ2不是有效的, 則身份認(rèn)證失敗,流程結(jié)束。
如果步驟S580的檢查結(jié)果為是,即無線路由器AP2的數(shù)字證書CerQ2是有效的,則 終端A的身份認(rèn)證裝置120使用之前所接收的終端B的身份標(biāo)識( 來加密之前所計算的 第三數(shù)值K/,即對第三數(shù)值K/進(jìn)行散列計算,得到計算的加密值h (K/, Qb)(步驟S585)。
終端A的身份認(rèn)證裝置120比較該計算的的加密值h(K/,Qb)和所接收的第二加 密值h (K/, Qb)是否相同(步驟S590)。
如果步驟S590的檢查結(jié)果為否,即該計算的的加密值h(K/,Qb)和所接收的第二 加密值h(K/,Qb)不相同,則身份認(rèn)證失敗,流程結(jié)束。
如果步驟S590的檢查結(jié)果為是,即該計算的的加密值h(K/,Qb)和所接收的第二 加密值h(K/,Qb)相同,則終端A的身份認(rèn)證裝置120確定終端B的身份是真的,并且知道 終端B已經(jīng)生成了會話密鑰(步驟S595)。
這樣,在終端A和終端B成功地進(jìn)行身份認(rèn)證后,在終端A和終端B之間就可以通 信了,并且在終端A和終端B進(jìn)行通信的過程中,終端A和終端B可以利用所生成的會話密 鑰來加密和解密相互傳送的信息和數(shù)據(jù)。其它變型
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,雖然在上面的實施例中,終端的管轄無線路由器的公 鑰和數(shù)字證書是從終端的管轄無線路由器的身份標(biāo)識所表示的無線路由器中獲取的,然 而,本發(fā)明并不局限于此。在本發(fā)明的其他一些實施例中,也可以把無線路由器的公鑰和數(shù) 字證書與無線路由器的身份標(biāo)識相對應(yīng)地保存在證書管理機(jī)構(gòu)中,然后,當(dāng)一個終端或無線路由器需要獲取另一終端的管轄無線路由器的公鑰和數(shù)字證書時,該終端或無線路由器 通過該另一終端的管轄無線路由器的身份標(biāo)識從證書管理機(jī)構(gòu)中獲取該另一終端的管轄 無線路由器的公鑰和數(shù)字證書。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,雖然在上面的實施例中,身份認(rèn)證是雙方相互認(rèn)證, 即不但無線路由器AP2認(rèn)證終端A的身份,而且終端A也認(rèn)證無線路由器AP2的身份,以 及不但終端B認(rèn)證終端A的身份,而且終端A也認(rèn)證終端B的身份,然而,本發(fā)明并不局限 于此。在本發(fā)明的其他一些實施例中,身份認(rèn)證也可以只是單方認(rèn)證,即只是無線路由器 AP2認(rèn)證終端A的身份,終端A不認(rèn)證無線路由器AP2的身份,以及只終端B認(rèn)證終端A的 身份,終端A不認(rèn)證終端B的身份。
在身份認(rèn)證是單方認(rèn)證的情況下,圖4所示的實施例可以省略步驟S465-S490,并 且無線路由器AP2不需將其數(shù)字證書Ce^1P2發(fā)送給終端A,圖5所示的實施例可以省略步驟 S570-S595,并且終端A不需獲取終端B的管轄無線路由器的數(shù)字證書。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,圖4的步驟S425所使用的散列函數(shù)h()和圖4的步驟 S450所使用的散列函數(shù)h()是相同的,圖4的步驟S465所使用的散列函數(shù)h()和圖4的步 驟S480所使用的散列函數(shù)h()是相同的,圖4的步驟S425和S450所使用的散列函數(shù)h() 與圖4的步驟S465和S480所使用的散列函數(shù)h()可以相同也可以不相同。同理,圖5的 步驟S530所使用的散列函數(shù)h()和圖5的步驟S555所使用的散列函數(shù)h()是相同的,圖5 的步驟S570所使用的散列函數(shù)h()和圖5的步驟S585所使用的散列函數(shù)h()是相同的, 圖5的步驟S530和S555所使用的散列函數(shù)h()與圖5的步驟S570和S585所使用的散列 函數(shù)h()可以相同也可以不相同。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明用于計算第三數(shù)值的等式不局限 于上面的實施例所公開的第一和第三等式以及用于計算第四數(shù)值的等式并 不局限于上面的實施例所公開的第二和第四等式。例如,第一等式還可以是 K=e(S] QA,P)e{s, QA,r2P)e(S] QA,s2 P)e(r2 P ,Ρ)"4,第二等式還可以是 K2 = e{QA,s,P)e{QA,S]P)^ (么,& P ) (。P ,戶)。,第三等式還可以是 Κ/ = Η QA,P)e(s] Qa,rB P)e(QB,s2 P” e(rBP,P)^,以及第四等式還可以是 K2' = HQa, s]P)e(s2QB,rAP)e(QA, S1 Ρ、 Α P ’Ρ、\
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,雖然在上面的實施例中,在終端A和無線路由器AP2 以及終端A和終端B進(jìn)行身份認(rèn)證的過程就協(xié)商會話密鑰,即身份認(rèn)證過程中所使用的第 三數(shù)值和第四數(shù)值就是身份認(rèn)證成功后通信時所使用的會話密鑰,然而本發(fā)明并不局限于 此。在本發(fā)明的其他一些實施例中,也可以在終端A和無線路由器AP2以及終端A和終端 B成功地進(jìn)行身份認(rèn)證之后才協(xié)商會話密鑰,也就是說,身份認(rèn)證過程中所使用的第三數(shù)值 和第四數(shù)值不用作身份認(rèn)證成功后通信時所使用的會話密鑰,身份認(rèn)證成功后通信時所使 用的會話密鑰在終端A和無線路由器AP2以及終端A和終端B在成功地進(jìn)行身份認(rèn)證之后, 由終端A和無線路由器AP2以及終端A和終端B進(jìn)行協(xié)商而得。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,上面的各個實施例所披露的身份認(rèn)證裝置120和220 可以利用軟件、硬件或者軟硬件結(jié)合的方式來實現(xiàn)。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明的各個實施例可以在沒有偏離發(fā)明實質(zhì)的情況21下做出各種變型和改變,并且這些變型和改變都應(yīng)該屬于本發(fā)明的保護(hù)范圍,因此,本發(fā)明 的保護(hù)范圍由所附的權(quán)利要求書來定義。
權(quán)利要求
1.一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)?shù)谝唤K端與第二終端進(jìn)行身份認(rèn)證時,利用一個公共參數(shù)和一個隨 機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述第一終端接收到所述第二終端發(fā)送的第二數(shù)值、所述第 二終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身份 標(biāo)識時,至少利用所述第一終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)和所述 第二無線路由器的公鑰根據(jù)指定等式來計算第三數(shù)值;獲取模塊,用于根據(jù)所接收的所述第二無線路由器的身份標(biāo)識來獲取所述第二無線路 由器的公鑰;加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密 值;以及通信模塊,用于向所述第二終端發(fā)送所述第一數(shù)值、其私鑰被使用來產(chǎn)生所述第一終 端的私鑰的第一無線路由器的身份標(biāo)識和所述第一終端的身份標(biāo)識,以及向所述第二終端 發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器 的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無 線路由器的私鑰和所述公共參數(shù)計算的,所述第一無線路由器的私鑰和所述第二無線路由 器的私鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
2.如權(quán)利要求1所述的裝置,其中,所述裝置還包括比較模塊、檢查模塊和確定模塊,其中所述通信模塊還用于接收所述第二終端發(fā)送的第二加密值,所述獲取模塊還用于根據(jù)所接收的所述第二無線路由器的身份標(biāo)識來獲取所述第二 無線路由器的數(shù)字證書,所述檢查模塊用于檢查所獲取的所述第二無線路由器的數(shù)字證書是否是有效的,所述加密模塊還用于當(dāng)檢查結(jié)果表明所述第二無線路由器的數(shù)字證書是有效的時,利 用所述第二終端的身份標(biāo)識來加密所述第三數(shù)值以得到計算的加密值,所述比較模塊用于比較所述計算的加密值和所述第二加密值是否相同,以及所述確定模塊用于當(dāng)比較結(jié)果為肯定時,確定所述第二終端的身份是真的。
3.如權(quán)利要求1所述的裝置,其中所述指定等式是廣―“ Qa,rB P)e{QB,s2尸廣e(rB P,P)r",其中,是雙線性映射函數(shù),S1Qa是所述第一終端的私鑰,S1是所述第一無線路由器的 私鑰,Qa是所述第一終端的身份標(biāo)識,rBP是所述第二數(shù)值,Qb所述第二終端的身份標(biāo)識,S2P 是所述第二無線路由器的公鑰,S2是所述第二無線路由器的私鑰,rA是所述隨機(jī)數(shù),以及P 是所述公共參數(shù)。
4.一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)?shù)诙K端接收到第一終端發(fā)送的第一數(shù)值、其私鑰被使用來產(chǎn)生所 述第一終端的私鑰的第一無線路由器的身份標(biāo)識和所述第一終端的身份標(biāo)識時,利用一個 公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值,以及當(dāng)所述第二終端接收到所述第一終端發(fā)送的 第一加密值時,在所述第一無線路由器的數(shù)字證書是有效的情況下,至少利用所述第一終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和 所述第二終端的私鑰根據(jù)指定等式來計算第四數(shù)值;通信模塊,用于向所述第一終端發(fā)送所述計算的第二數(shù)值、所述第二終端的身份標(biāo)識 和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身份標(biāo)識;獲取模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無線路 由器的公鑰和數(shù)字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的; 加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值; 比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及 確定模塊,用于當(dāng)比較結(jié)果為肯定時,確定所述第一終端的身份是真的, 其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器 的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二終端的私鑰是由所述第二無線路由器 的私鑰和所述第二終端的身份標(biāo)識計算的,所述第一無線路由器的私鑰和所述第二無線路 由器的私鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
5.如權(quán)利要求4所述的裝置,其中,所述加密模塊還用于當(dāng)所述第一終端的身份被確定是真的時,利用所述第二終端的身 份標(biāo)識來加密所述第四數(shù)值以得到第二加密值,以及所述通信模塊還用于向所述第一終端發(fā)送所述第二加密值。
6.如權(quán)利要求4所述的裝置,其中所述指定等式是廣( 込力(么,S)P)rB e{rAP,P)^,其中,是雙線性映射函數(shù),S2Qb是所述第二終端的私鑰,S2是所述第二無線路由器的 私鑰,Qb是所述第二終端的身份標(biāo)識,rAP是所述第一數(shù)值,Qa所述第一終端的身份標(biāo)識,S1P 是所述第一無線路由器的公鑰,S1是所述第一無線路由器的私鑰,rB是所述隨機(jī)數(shù),以及P 是所述公共參數(shù)。
7.一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)終端與第二無線路由器進(jìn)行身份認(rèn)證時,利用一個公共參數(shù)和一個 隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述終端接收到所述第二無線路由器發(fā)送的第二數(shù)值和所 述第二無線路由器的公鑰時,至少利用所述終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所 述隨機(jī)數(shù)和所述第二無線路由器的公鑰根據(jù)指定等式來計算第三數(shù)值;加密模塊,用于利用所述終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以及通信模塊,用于向所述第二無線路由器發(fā)送所述第一數(shù)值、所述第一終端的身份標(biāo)識 和其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識,以及向所述第二無 線路由器發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私 鑰和所述終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線路由器的私鑰和所述公共參數(shù)計算的,所述第二無線路由器的私鑰是小于所述階的整數(shù),以及所 述指定等式的離散對數(shù)問題是難解的。
8.如權(quán)利要求7所述的裝置,其中,所述裝置還包括比較模塊、檢查模塊和確定模塊,其中所述通信模塊還用于接收所述第二無線路由器發(fā)送的第二加密值和所述第二無線路 由器的數(shù)字證書,所述檢查模塊用于檢查所接收的所述第二無線路由器的數(shù)字證書是否是有效的, 所述加密模塊還用于當(dāng)檢查結(jié)果表明所述第二無線路由器的數(shù)字證書是有效的時,利 用所述第二無線路由器的公鑰來加密所述第三數(shù)值以得到計算的加密值,所述比較模塊用于比較所述計算的加密值和所述第二加密值是否相同,以及 所述確定模塊用于當(dāng)比較結(jié)果表明所述計算的加密值和所述第二加密值相同時,確定 所述第二無線路由器的身份是真的。
9.如權(quán)利要求7所述的裝置,其中所述指定等式是尤QA,r2P)e(S] Qa, S2 P (r2 P , P )““, 其中,是雙線性映射函數(shù),S1Qa是所述終端的私鑰,S1是所述第一無線路由器的私 鑰,Qa是所述終端的身份標(biāo)識,r2P是所述第二數(shù)值,S2P是所述第二無線路由器的公鑰,S2 所述第二無線路由器的私鑰,rA是所述隨機(jī)數(shù),以及P是所述公共參數(shù)。
10.一種用于身份認(rèn)證的裝置,包括計算模塊,用于當(dāng)?shù)诙o線路由器接收到一個終端發(fā)送的第一數(shù)值、所述終端的身份 標(biāo)識和其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識時,利用一個公 共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值,以及當(dāng)所述第二無線路由器接收到所述終端發(fā)送的 第一加密值時,在所述第一無線路由器的數(shù)字證書是有效的情況下,至少利用所述終端的 身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和所述 第二無線路由器的私鑰根據(jù)指定等式來計算第四數(shù)值;通信模塊,用于向所述終端發(fā)送所述第二數(shù)值和所述第二無線路由器的公鑰; 獲取模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無線路 由器的公鑰和數(shù)字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的; 加密模塊,用于利用所述終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值; 比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及 確定模塊,用于當(dāng)比較結(jié)果為肯定時,確定所述終端的身份是真的, 其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私 鑰和所述終端的身份標(biāo)識計算的,所述第一無線路由器的私鑰和所述第二無線路由器的私 鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
11.如權(quán)利要求10所述的裝置,其中,所述加密模塊還用于當(dāng)所述終端的身份被確定是真的時,利用所述第三無線路由器的 公鑰來加密所述第四數(shù)值以得到第二加密值,以及所述通信模塊還用于向所述終端發(fā)送所述第二無線路由器的數(shù)字證書和所述第二加密值。
12.如權(quán)利要求10所述的裝置,其中所述指定等式是 Π (么A P” e(QA,S]P)·^ e(rAP,Pr,其中,是雙線性映射函數(shù),Qa是所述終端的身份標(biāo)識,S1P是所述第一無線路由器的 公鑰,S1是所述第一無線路由器的私鑰,rAP是所述第一數(shù)值,S2所述第二無線路由器的私 鑰,r2是所述隨機(jī)數(shù),以及P是所述公共參數(shù)。
13.一種用于身份認(rèn)證的方法,包括步驟當(dāng)?shù)谝唤K端與第二終端進(jìn)行身份認(rèn)證時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第一 數(shù)值并向所述第二終端發(fā)送所述計算的第一數(shù)值、所述第一終端的身份標(biāo)識和其私鑰被使 用來產(chǎn)生所述第一終端的私鑰的第一無線路由器的身份標(biāo)識;當(dāng)所述第一終端接收到所述第二終端發(fā)送的第二數(shù)值、所述第二終端的身份標(biāo)識和其 私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身份標(biāo)識時,根據(jù)所接收的所 述第二無線路由器的身份標(biāo)識來獲取所述第二無線路由器的公鑰;至少利用所述第一終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)和所獲取的 所述第二無線路由器的公鑰,根據(jù)指定等式來計算第三數(shù)值;利用所述第一終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以及 向所述第二終端發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器 的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無 線路由器的私鑰和所述公共參數(shù)計算的,所述第一無線路由器的私鑰和所述第二無線路由 器的私鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
14.一種用于身份認(rèn)證的方法,包括步驟當(dāng)?shù)诙K端接收到第一終端發(fā)送的第一數(shù)值、所述第一終端的身份標(biāo)識和其私鑰被使 用來產(chǎn)生所述第一終端的私鑰的第一無線路由器的身份標(biāo)識時,利用一個公共參數(shù)和一個 隨機(jī)數(shù)來計算第二數(shù)值并向所述第一終端發(fā)送所述計算的第二數(shù)值、所述第二終端的身份 標(biāo)識和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由器的身份標(biāo)識;當(dāng)所述第二終端接收到所述第一終端發(fā)送的第一加密值時,根據(jù)所接收的所述第一無 線路由器的身份標(biāo)識來所述第一無線路由器的數(shù)字證書并檢查所獲取的所述第一無線路 由器的數(shù)字證書是否是有效的;當(dāng)檢查結(jié)果為肯定時,至少利用所述第一終端的身份標(biāo)識、所述第一數(shù)值、所述公共參 數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和所述第二終端的私鑰,根據(jù)指定等式來計算 第四數(shù)值;利用所述第一終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值; 比較所述第一加密值和所述計算的加密值是否相同;以及 當(dāng)比較結(jié)果為肯定時,確定所述第一終端的身份是真的,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器 的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二終端的私鑰是由第二無線路由器的私鑰和所述第二終端的身份標(biāo)識計算的,所述第一無線路由器的私鑰和所述第二無線路由器 的私鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
15.一種用于身份認(rèn)證的方法,包括步驟當(dāng)終端與第二無線路由器進(jìn)行身份認(rèn)證時,利用一個公共參數(shù)和一個隨機(jī)數(shù)來計算第 一數(shù)值并向所述第二無線路由器發(fā)送所述計算的第一數(shù)值、所述終端的身份標(biāo)識和其私鑰 被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識;當(dāng)所述終端接收到所述第二無線路由器發(fā)送的第二數(shù)值和所述第二無線路由器的公 鑰時,至少利用所述終端的私鑰、所述第二數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)和所述第二無 線路由器的公鑰,根據(jù)指定等式來計算第三數(shù)值;利用所述終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以及 所述第二無線路由器發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私 鑰和所述終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線路由器 的私鑰和所述公共參數(shù)計算的,所述第二無線路由器的私鑰是小于所述階的整數(shù),以及所 述指定等式的離散對數(shù)問題是難解的。
16.一種用于身份認(rèn)證的方法,包括步驟當(dāng)?shù)诙o線路由器接收到一個終端發(fā)送的第一數(shù)值、所述終端的身份標(biāo)識和其私鑰被 使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識時,利用一個公共參數(shù)和一個隨 機(jī)數(shù)來計算第二數(shù)值并向所述終端發(fā)送所述計算的第二數(shù)值和所述第二無線路由器的公 鑰;當(dāng)所述第二無線路由器接收到所述終端發(fā)送的第一加密值時,根據(jù)所接收的所述第一 無線路由器的身份標(biāo)識來獲取所述第一無線路由器的公鑰和數(shù)字證書; 檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的; 當(dāng)檢查結(jié)果為肯定時,至少利用所述終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、 所述隨機(jī)數(shù)、所述第一無線路由器的公鑰和所述第二無線路由器的私鑰根據(jù)指定等式來計 算第四數(shù)值;利用所述終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值; 比較所述第一加密值和所述計算的加密值是否相同;以及 當(dāng)比較結(jié)果為肯定時,確定所述終端的身份是真的,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私 鑰和所述終端的身份標(biāo)識計算的,所述第一無線路由器的私鑰和所述第三無線路由器的私 鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
17.一種第一終端,包括存儲器,用于存儲公共參數(shù)、所述第一終端的身份標(biāo)識和私鑰、以及其私鑰被使用來產(chǎn) 生所述第一終端的私鑰的第一無線路由器的身份標(biāo)識;計算模塊,用于當(dāng)所述第一終端與第二終端進(jìn)行身份認(rèn)證時,利用所存儲的公共參數(shù) 和一個隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述第一終端接收到所述第二終端發(fā)送的第二數(shù)值、所述第二終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生所述第二終端的私鑰的第二無線路由 器的身份標(biāo)識時,至少利用所存儲的所述第一終端的私鑰和所述公共參數(shù)、所述第二數(shù)值、 所述隨機(jī)數(shù)和所述第二無線路由器的公鑰根據(jù)指定等式來計算第三數(shù)值;獲取模塊,用于根據(jù)所接收的所述第二無線路由器的身份標(biāo)識來獲取所述第二無線路 由器的公鑰;加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密 值;以及通信模塊,用于向所述第二終端發(fā)送所述第一數(shù)值、所存儲的所述第一無線路由器的 身份標(biāo)識和所述第一終端的身份標(biāo)識,以及向所述第二終端發(fā)送所述第一加密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器 的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無 線路由器的私鑰和所述公共參數(shù)計算的,所述第一無線路由器的私鑰和所述第二無線路由 器的私鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
18.一種第二終端,包括存儲器,用于存儲公共參數(shù)、所述第二終端的私鑰和標(biāo)識、以及其私鑰被使用來產(chǎn)生所 述第二終端的私鑰的第二無線路由器的身份標(biāo)識;計算模塊,用于當(dāng)所述第二終端接收到第一終端發(fā)送的第一數(shù)值、其私鑰被使用來產(chǎn) 生所述第一終端的私鑰的第一無線路由器的身份標(biāo)識和所述第一終端的身份標(biāo)識時,利用 所述存儲的公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值,以及當(dāng)所述第二終端接收到所述第一 終端發(fā)送的第一加密值時,在所述第一無線路由器的數(shù)字證書是有效的情況下,至少利用 所述第一終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由 器的公鑰和所述第二終端的私鑰根據(jù)指定等式來計算第四數(shù)值;通信模塊,用于向所述第一終端發(fā)送所述計算的第二數(shù)值、所存儲的所述第二終端的身份標(biāo)識和所述第二無線路由器的身份標(biāo)識;獲取模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無線路 由器的公鑰和數(shù)字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的; 加密模塊,用于利用所述第一終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值;比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及 確定模塊,用于當(dāng)比較結(jié)果為肯定時,確定所述第一終端的身份是真的, 其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述第一終端的私鑰是利用所述第一無線路由器 的私鑰和所述第一終端的身份標(biāo)識計算的,所述第二終端的私鑰是由所述第二無線路由器 的私鑰和所述第二終端的身份標(biāo)識計算的,所述第一無線路由器的私鑰和所述第二無線路 由器的私鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
19.一種終端,包括存儲器,用于存儲公共參數(shù)、所述終端的身份標(biāo)識和私鑰、以及其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識;計算模塊,用于當(dāng)所述終端與第二無線路由器進(jìn)行身份認(rèn)證時,利用所述存儲的公共 參數(shù)和一個隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)所述終端接收到所述第二無線路由器發(fā)送的第 二數(shù)值和所述第二無線路由器的公鑰時,至少利用所述終端的私鑰、所述第二數(shù)值、所述公 共參數(shù)、所述隨機(jī)數(shù)和所述第二無線路由器的公鑰根據(jù)指定等式來計算第三數(shù)值;加密模塊,用于利用所述終端的身份標(biāo)識來加密所述第三數(shù)值以得到第一加密值;以 及通信模塊,用于向所述第二無線路由器發(fā)送所述第一數(shù)值、所存儲的所述第一終端的 身份標(biāo)識和所述第一無線路由器的身份標(biāo)識,以及向所述第二無線路由器發(fā)送所述第一加 密值,其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私 鑰和所述終端的身份標(biāo)識計算的,所述第二無線路由器的公鑰是利用所述第二無線路由器 的私鑰和所述公共參數(shù)計算的,所述第二無線路由器的私鑰是小于所述階的整數(shù),以及所 述指定等式的離散對數(shù)問題是難解的。
20. —種第二無線路由器,包括存儲器,用于存儲公共參數(shù)以及所述第二無線路由器的私鑰和公鑰; 計算模塊,用于當(dāng)所述第二無線路由器接收到一個終端發(fā)送的第一數(shù)值、所述終端的 身份標(biāo)識和其私鑰被使用來產(chǎn)生所述終端的私鑰的第一無線路由器的身份標(biāo)識時,利用所 述存儲的公共參數(shù)和一個隨機(jī)數(shù)來計算第二數(shù)值,以及當(dāng)所述第二無線路由器接收到所述 終端發(fā)送的第一加密值時,在所述第一無線路由器的數(shù)字證書是有效的情況下,至少利用 所述終端的身份標(biāo)識、所述第一數(shù)值、所述公共參數(shù)、所述隨機(jī)數(shù)、所述第一無線路由器的 公鑰和所述第二無線路由器的私鑰根據(jù)指定等式來計算第四數(shù)值;通信模塊,用于向所述終端發(fā)送所述第二數(shù)值和所述第二無線路由器的公鑰; 獲取模塊,用于根據(jù)所接收的所述第一無線路由器的身份標(biāo)識來獲取所述第一無線路 由器的公鑰和數(shù)字證書;檢查模塊,用于檢查所獲取的所述第一無線路由器的數(shù)字證書是否是有效的; 加密模塊,用于利用所述終端的身份標(biāo)識來加密所述第四數(shù)值以得到計算的加密值; 比較模塊,用于比較所述第一加密值和所述計算的加密值是否相同;以及 確定模塊,用于當(dāng)比較結(jié)果為肯定時,確定所述終端的身份是真的, 其中,所述公共參數(shù)是橢圓曲線上的一個點并且具有屬于素數(shù)的階,所述隨機(jī)數(shù)是形 成所述橢圓曲線的有限域中的一個元素,所述終端的私鑰是利用所述第一無線路由器的私 鑰和所述終端的身份標(biāo)識計算的,所述第一無線路由器的私鑰和所述第二無線路由器的私 鑰分別是小于所述階的整數(shù),以及所述指定等式的離散對數(shù)問題是難解的。
全文摘要
本發(fā)明涉及一種用于身份認(rèn)證的裝置和方法,其中,該裝置包括計算模塊,用于當(dāng)終端與第二無線路由器進(jìn)行身份認(rèn)證時,利用公共參數(shù)和隨機(jī)數(shù)來計算第一數(shù)值,以及當(dāng)終端收到第二無線路由器發(fā)送的第二數(shù)值和第二無線路由器的公鑰時,至少利用終端的私鑰、第二數(shù)值、公共參數(shù)、隨機(jī)數(shù)和第二無線路由器的公鑰根據(jù)指定等式計算第三數(shù)值;加密模塊,用于利用終端的身份標(biāo)識加密第三數(shù)值以得到第一加密值;以及,通信模塊,用于向第二無線路由器發(fā)送第一數(shù)值、第一終端的身份標(biāo)識和其私鑰被使用來產(chǎn)生終端的私鑰的第一無線路由器的身份標(biāo)識,以及向第二無線路由器發(fā)送第一加密值。利用該裝置和方法,能夠在終端之間或者在終端與無線路由器之間安全地進(jìn)行身份認(rèn)證。
文檔編號H04L9/30GK102036235SQ200910177250
公開日2011年4月27日 申請日期2009年9月28日 優(yōu)先權(quán)日2009年9月28日
發(fā)明者張勝 申請人:西門子(中國)有限公司