專利名稱:用于用戶認(rèn)證的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對訪問服務(wù)器的用戶進(jìn)^i人證的方法和設(shè)備。具體地,本 發(fā)明涉及對使用通信終端通過電信網(wǎng)訪問服務(wù)器的用戶進(jìn)^fti人證的方法、 計(jì)算機(jī)程序產(chǎn)品,和訪問計(jì)算機(jī)化的服務(wù)器。
背景技術(shù):
互聯(lián)網(wǎng)上對登錄機(jī)制的墓改攻擊增")^速。比如銀行等機(jī)構(gòu)推出了雙 因數(shù)認(rèn)證設(shè)備,有些甚至包括高速和甚至更高成本的詢問-響應(yīng)機(jī)制。中 間人(MITM)攻擊對所有基于SSL/TLS的在線應(yīng)用,例如互聯(lián)網(wǎng)銀行業(yè), 造成嚴(yán)重威脅,該問題的一般答案是如原始的安全套接字層(SSL)協(xié)議 (US 5, 657, 390 )或傳輸層安全(TLS)協(xié)議標(biāo)準(zhǔn)(Dieks, T.和C. Allen, "The TLS Protocol Version 1. 0,,, Request for Comments 2246, 1999年1月) 所要求的、使用基于相互認(rèn)證的客戶端證書。但是,在公司勢力的緊密控 制范圍之外,此方法并未得到其i殳計(jì)者預(yù)期的廣泛接受。US 4, 405, 829, US 4, 720, 860, US 4, 885, 778和US 4, 856, 062涉及一 種被廣泛認(rèn)知的認(rèn)證令牌設(shè)備一一安全I(xiàn)D令牌。此令牌設(shè)備提M壯的 用戶認(rèn)證。但是,它不防止實(shí)時(shí)操作的MITM攻擊。專利申請US 2004/0064687中描述的是防止通過在線第三方,即"身 ^^C供者",進(jìn)行MITM攻擊的方法。所描述的方法既不需要改變SSL/TLS 協(xié)議,也不需要推出完全公共密鑰^ 設(shè)施(PKI)。然而,它需要更^ 戶端并使其包括身份提供者的硬編碼證書。US 2002/107798 Al描述了一種對安全設(shè)備進(jìn)行智能卡認(rèn)證的方法。 所描述的方法基于在協(xié)議啟動之前芯片卡擁有安全設(shè)備的公共密鑰,且 (客戶端)應(yīng)用僅限于使用該公共密鑰的假設(shè)。但是這些假設(shè)通常不能成 立。發(fā)明內(nèi)容本發(fā)明的目的是提供對使用通信終端通過電信網(wǎng)訪問服務(wù)器的用戶 進(jìn)行認(rèn)證的方法和設(shè)備。具體地,本發(fā)明的目的是提供防止實(shí)時(shí)操作的MITM攻擊的用戶認(rèn)證方法和設(shè)備。本發(fā)明的另一目的是4^供對使用由安全 會話建立協(xié)議建立的安全會話、通過電信網(wǎng)訪問服務(wù)器的用戶進(jìn)#^人證的 方法和設(shè)備訪問。根據(jù)本發(fā)明,這些目的通過獨(dú)立權(quán)利要求的特征來實(shí)現(xiàn)。另外,另外 的有利實(shí)施例根據(jù)從屬權(quán)利要求和說明書得出。根據(jù)本發(fā)明,上述目的具體實(shí)現(xiàn)為,為了對使用通信終端通過電信網(wǎng) 訪問服務(wù)器的用戶進(jìn)^i人證,接收來自用戶的個(gè)人識別碼;根據(jù)通信終端 和服務(wù)器之間交換的安全會話建立協(xié)議報(bào)文生成數(shù)據(jù)集;利用個(gè)人識別 碼,基于數(shù)據(jù)集生成交易認(rèn)證號;交易認(rèn)證號從通信終端傳送到服務(wù)器; 并且,在服務(wù)器中,基于與通信終端交換的安全會話建立協(xié)議報(bào)文來mt 該交易認(rèn)證號(以及由此的用戶)。例如,根據(jù)所交換的安全會話建立協(xié) 議報(bào)文,數(shù)據(jù)集在通信終端中被生成為hash值。必須強(qiáng)調(diào)的是,此處描 述的交易認(rèn)證號在本發(fā)明的上下文中被用作^^認(rèn)證號或^^認(rèn)證碼。在 一些實(shí)施例中,交易認(rèn)證號由數(shù)字?jǐn)?shù)據(jù)集,即數(shù)字交易認(rèn)證號表示?;?個(gè)人識別碼以及在通信終端和服務(wù)器之間交換的安全會話建立協(xié)議報(bào)文 生成交易認(rèn)證號,使面向知曉(session-aware)的用戶認(rèn)證能夠有效保 護(hù)在線用戶不被實(shí)時(shí)中間人攻擊。在實(shí)施例中,在與通信終端關(guān)聯(lián)和/或在通信終端內(nèi)的認(rèn)證模塊中, 從數(shù)據(jù)集生成i人證基礎(chǔ)號,利用個(gè)人識別碼,從i人證基礎(chǔ)號生成交易認(rèn)證 號。例如,認(rèn)證基礎(chǔ)號在與通信終端關(guān)聯(lián)的認(rèn)"^塊中生成。而且,在服 務(wù)器中,從所交換的安全會話建立協(xié)議報(bào)文生成認(rèn)證基礎(chǔ)號,且利用個(gè)人 識別碼和服務(wù)器中生成的認(rèn)證基礎(chǔ)號在服務(wù)器中對交易認(rèn)證號進(jìn)行驗(yàn)證。在優(yōu)選實(shí)施例中,認(rèn)證基礎(chǔ)號和個(gè)人識別碼(由用戶)輸入到未連接 到通信終端的詢問/響應(yīng)(C/R)令牌設(shè)備中?;谠搃人證基礎(chǔ)號和個(gè)人識別 碼,在詢問/響應(yīng)令牌設(shè)備中生成交易認(rèn)證號作為令牌響應(yīng)值。在將交易 認(rèn)證號傳送給服務(wù)器之前,(由用戶)將該交易認(rèn)證號,即令牌響應(yīng)值輸 入到通信終端中。在實(shí)施例中,通過生成隨機(jī)數(shù),從數(shù)據(jù)集選#^選數(shù)字(該數(shù)字由隨 機(jī)數(shù)的位數(shù)決定),以及由被選數(shù)字和隨機(jī)數(shù)位數(shù)構(gòu)成認(rèn)證基礎(chǔ)號,從而 從數(shù)據(jù)集生成i人證^fife號。在實(shí)施例中,利用與認(rèn)^塊關(guān)聯(lián)的密鑰對中的私鑰,從數(shù)據(jù)集生成 數(shù)字簽名。在認(rèn)M塊中,利用與認(rèn)4塊關(guān)聯(lián)的令牌密鑰,從數(shù)據(jù)集生成認(rèn)證基礎(chǔ)號;從認(rèn)證基礎(chǔ)號生成交易認(rèn)證號;個(gè)人識別碼被用于生成數(shù) 字簽名或生成交易認(rèn)證號;數(shù)字簽名從通信終端傳送到服務(wù)器;在服務(wù)器 中,利用密鑰對中的〃》嘲來mt數(shù)字簽名;交易i人證號從通信終端傳送到 服務(wù)器;在服務(wù)器中,利用用于加密數(shù)據(jù)集的令牌密鑰,從接收自通信終 端的數(shù)據(jù)集生成認(rèn)證^l號;以及,在服務(wù)器中,利用服務(wù)器中生成的認(rèn) 證基礎(chǔ)號來驗(yàn)汪交易認(rèn)證號。在實(shí)施例中,從認(rèn)證基礎(chǔ)號和個(gè)人識別碼生成交易認(rèn)證號。該交易認(rèn) 證號和用戶標(biāo)識符從通信終端傳送到服務(wù)器。在服務(wù)器中利用服務(wù)器中生 成的認(rèn)證基礎(chǔ)號以及分配給用戶標(biāo)識符的個(gè)人識別碼來驗(yàn)證交易i人證號。在實(shí)施例中,認(rèn)M塊被實(shí)現(xiàn)為可移除地連接到通信終端的認(rèn)證令牌 設(shè)備。數(shù)據(jù)集從通信終端通過設(shè)備接口傳遞到認(rèn)^塊,該接口將認(rèn)^ 塊連接到通信終端。如果可行,在認(rèn)i^塊中存儲密鑰對和令牌密鑰,而 且從^人ii^塊通過i殳備接口將數(shù)字簽名傳遞到通信終端。在另 一實(shí)施例中,令牌標(biāo)識符和交易認(rèn)證號一起從通信終端傳送到服 務(wù)器,并且在服務(wù)器中基于令牌標(biāo)識符確定令牌密鑰。主密鑰存儲在服務(wù) 器中,并且在服務(wù)器中利用用于加密令牌標(biāo)識符的主密鑰,從令牌標(biāo)識符 生成令牌密鑰。在實(shí)施例中,認(rèn)證基礎(chǔ)號從認(rèn)ii^塊傳遞到通信終端。在通信終端中 接收來自用戶的個(gè)人識別碼,并且在通信終端中從認(rèn)證基礎(chǔ)號和個(gè)人識別 碼生成交易認(rèn)證號。在另一實(shí)施例中,在認(rèn)iiMt塊中接收來自用戶的個(gè)人識別碼。在認(rèn)證 模塊中從認(rèn)證基礎(chǔ)號和個(gè)人識別碼生成交易認(rèn)證號,而且交易認(rèn)證號從認(rèn)證模塊傳遞到通信終端。在另一實(shí)施例中,個(gè)人識別碼和來自用戶的生物測定標(biāo)識符一起^L接 收。利用服務(wù)器中生成的認(rèn)證基礎(chǔ)號和服務(wù)器中存儲的生物測定標(biāo)識符, 以及分配給用戶標(biāo)識符的個(gè)人識別碼,在服務(wù)器中驗(yàn)證交易認(rèn)證號。在另一實(shí)施例中,認(rèn)證基礎(chǔ)號由認(rèn)^塊顯示。交易認(rèn)證號由用戶根 據(jù)個(gè)人識別碼和認(rèn)M塊顯示的認(rèn)證基礎(chǔ)號來生成,并輸入通信終端。在又另一實(shí)施例中,交易認(rèn)證號在服務(wù)器中成功JIHE之后,在服務(wù)器 中對數(shù)據(jù)集應(yīng)用公共函數(shù)并使用令牌密鑰加密,而從數(shù)據(jù)集生成月艮務(wù)器i^證碼。服務(wù)器認(rèn)證碼W艮務(wù)器傳送到通信終端。在認(rèn)ii^塊中對數(shù)據(jù)集應(yīng) 用公共函數(shù)并使用令牌密鑰加密,而從數(shù)據(jù)集生成服務(wù)器認(rèn)證碼。認(rèn)i^ 塊基于在認(rèn)證模塊中生成的服務(wù)器認(rèn)證碼來驗(yàn)證來自服務(wù)器的服務(wù)器認(rèn) 證碼。在實(shí)施例中,^U艮務(wù)器接收的服務(wù)器認(rèn)證碼和在認(rèn)M塊中生成的 服務(wù)器認(rèn)證碼由認(rèn)證模塊顯示,供用戶進(jìn)行視覺驗(yàn)證。在附加實(shí)施例中,用戶針對認(rèn)證模塊選擇多個(gè)可能機(jī)構(gòu)范圍中的一 個(gè)。用戶所選擇的機(jī)構(gòu)范圍使認(rèn)ii^塊使用包括多個(gè)令牌密鑰的令牌密鑰 集中的一個(gè)特定于機(jī)構(gòu)的令牌密鑰來生成認(rèn)證基礎(chǔ)號。服務(wù)器與特定^J 關(guān)聯(lián),并使用特定于機(jī)構(gòu)的令牌密鑰來生成認(rèn)證基礎(chǔ)號。服務(wù)器使用特定 機(jī)構(gòu)個(gè)人識別碼來驗(yàn)證交易認(rèn)證號。所建i義的用戶i人證方法不需要必須以 一種或另 一種方式同步的時(shí)鐘。 作為替代,它采用從通信終端和服務(wù)器間交換的安全會話建立協(xié)議報(bào)文 (如SSL/TLS)(的hash值)導(dǎo)出的現(xiàn)時(shí)(nonce)來確保交易認(rèn)證號的傳播。另外,在用戶^f吏用特定可傳遞的令牌期間,如果在通信終端上例如通 過瀏覽器的預(yù)填表特性,存儲用戶標(biāo)識符以及4^牌標(biāo)識符,則所建i義方法 的安全性不會被顯著破壞。尤其是,如果通信終端是共享工作站,這可能 會導(dǎo)致其他方或可能的對手學(xué)到這兩個(gè)值,但所提議的方法對此有抵抗 力。幾乎普遍存在的客戶側(cè)SSL/TLS實(shí)現(xiàn)方式的基礎(chǔ)不必被改變。對于大 多數(shù)實(shí)施例,客戶端應(yīng)用程序,如使用SSL/TLS棧的網(wǎng)頁瀏覽器不必被改 變。與今天廣泛采用的雙因數(shù)方案相比,操作經(jīng)認(rèn)證的安全會話引導(dǎo) (bootstra卯ing )對于對安全性一無所知的最終用戶不再復(fù)雜。不需要最終用戶注冊或其它昂貴過程,就可實(shí)現(xiàn)防MITM的方法。運(yùn) 行雙因數(shù)方案的機(jī)構(gòu)必須僅替換最終用戶在使用的設(shè)備(但他們所使用的 PIN或口*持不變),或者修改該設(shè)備中使用的算法和協(xié)議(與已知的固 件更新相似),并適應(yīng)其自身的服務(wù)器^J設(shè)施以與所建議的方法協(xié)同工 作。根據(jù)發(fā)明的另 一 目標(biāo),針對使用通信終端通過電信網(wǎng)訪問服務(wù)器來改 變個(gè)人識別碼的用戶,從用戶接收舊的個(gè)人識別碼和新的個(gè)人識別碼;從 通信終端和服務(wù)器間交換的安全會活建立協(xié)議報(bào)文生成數(shù)據(jù)集;在與通信 終端關(guān)聯(lián)的認(rèn)i^塊中,利用與iU^塊關(guān)聯(lián)的令牌密鑰從數(shù)據(jù)集生成認(rèn)證基礎(chǔ)號;從個(gè)人識別碼、舊的個(gè)人識別碼和新的個(gè)人識別碼生成識別改 變碼;將識別改變碼從通信終端傳送到服務(wù)器;在服務(wù)器中,利用令牌密 鑰,從所交換的安全會話建立協(xié)議報(bào)文生成認(rèn)證基礎(chǔ)碼;以及,在服務(wù)器 中,利用舊的個(gè)人識別碼和服務(wù)器中生成的認(rèn)證基礎(chǔ)號,從識別改變碼導(dǎo) 出新的個(gè)人識別碼,。在對使用通信終端通過電信網(wǎng)訪問服務(wù)器的用戶進(jìn)行認(rèn)證的另 一 實(shí) 施例中,在與通信終端關(guān)聯(lián)的認(rèn)證模塊中,根據(jù)個(gè)人識別碼以;ML通信終 端和服務(wù)器之間交換的安全會話建立協(xié)議報(bào)文,將交易認(rèn)證號生成為鍵控 的密碼摘JHi,用作與服務(wù)器共享的密鑰。鍵控密碼摘要值作為交易認(rèn)證 號從通信終端傳送到服務(wù)器。在服務(wù)器中,利用存儲在服務(wù)器中的個(gè)人識 別碼來生成鍵控密碼摘要值。隨后,在服務(wù)器中,基于從通信終端接收的 鍵控密碼摘要值和在服務(wù)器中生成的鍵控密碼摘要值的比較,來驗(yàn)證交易 認(rèn)證號以及由此的用戶真實(shí)性。例如,個(gè)人識別碼或與認(rèn)i^塊相關(guān)聯(lián)的 令牌密鑰被用作密鑰。利用鍵控密碼摘要函數(shù),即偽隨機(jī)函數(shù)比如加密 hash函數(shù)來生成鍵控密碼摘刻t。在替選實(shí)施例中,從數(shù)據(jù)集生成查找索 引,在碼表(例如密鑰列表)中,使用查找索引確定被選碼。該被選碼用 作(hash )密鑰,服務(wù)器利用該服務(wù)器中存儲的碼表中的被選碼作為(hash)值來生成鍵控密碼摘要值。在子實(shí)施例中,服務(wù)器記錄被通信終端使用的 先前選擇的碼。并且,在服務(wù)器確定被選碼先前已被通信終端使用的情況 下,服務(wù)器重新JL^與通信終端的會話建立。在對使用通信終端通過電信網(wǎng)訪問服務(wù)器的用戶進(jìn)行認(rèn)證的另 一 實(shí) 施例中,在與通信終端關(guān)聯(lián)的認(rèn)iM^塊中,通過使用公鑰來加密數(shù)據(jù)集、 個(gè)人識別碼、以及現(xiàn)時(shí),將訪問交易i^證號生成為密碼。該密碼作為交易 認(rèn)證號^Jt信終端傳送到服務(wù)器。在服務(wù)器中,通過使用私鑰解密該密碼 來確定數(shù)據(jù)集和個(gè)人識別碼。隨后,基于所接收的數(shù)據(jù)集和在服務(wù)器中從 安全會話建立協(xié)議」報(bào)文生成的數(shù)據(jù)集的比較,以瓦基于所述個(gè)人識別碼和 存儲在服務(wù)器中的個(gè)人識別碼的比較,在服務(wù)器中驗(yàn)證解密的交易認(rèn)證號 以及用戶的真實(shí)性。在實(shí)施例中,從數(shù)據(jù)集生成查找索引,并且在碼表(例如密鑰列表) 中,使用查找索引確定被選碼。該被選碼另外用于生成密碼。服務(wù)器利用 私鑰從該密碼確定被選碼。同樣通過比較該被選碼和由服務(wù)器根據(jù)該服務(wù) 器中存儲的碼表來確定的被選碼,#驗(yàn)交易認(rèn)證號以及由此的用戶真實(shí) 性。在子實(shí)施例中,服務(wù)器記錄通信終端使用的被選碼。并且,在服務(wù)器確定被選碼先前已被通信終端使用的情況下,服務(wù)器重新發(fā)起與通信終端 的會活建立。根據(jù)本發(fā)明的另外目的,為了對使用通信終端通過電信網(wǎng)訪問服務(wù)器 的用戶進(jìn)^"^人證,從通信終端和服務(wù)器間交換的安全會話建立協(xié)議凈艮文生成數(shù)據(jù)集;在通信終端中,從數(shù)據(jù)集、個(gè)人識別碼以及一個(gè)或兩個(gè)現(xiàn)時(shí)生 成認(rèn)證密碼。預(yù)定義的公鑰用來加密。在多機(jī)構(gòu)情況下,該密鑰屬于服務(wù) 器或認(rèn)證服務(wù)器。作為結(jié)果的密碼在規(guī)則協(xié)議才艮文內(nèi)不透明地vMJt信終端 傳送到服務(wù)器;在服務(wù)器中,數(shù)據(jù)集從所交換的安全會話建立協(xié)議報(bào)文生 成;以及,在服務(wù)器中,利用對應(yīng)的私鑰解密所述密碼。比較^J!艮務(wù)器數(shù) 據(jù)庫獲取的個(gè)人識別碼和從所述密碼解密的個(gè)人識別碼,并將解密的數(shù)據(jù) 集和服務(wù)器計(jì)算出的進(jìn)行比較。如果用戶期望從服務(wù)器對用戶進(jìn)行認(rèn)證, 則再從所述密碼解密出第二個(gè)現(xiàn)時(shí)并發(fā)回用戶。此方法同樣可用來改變個(gè) 人識別碼。根據(jù)本發(fā)明的另外目的,為了對使用通信終端通過電信網(wǎng)訪問服務(wù)器 的用戶進(jìn)^iUi,從通信終端和服務(wù)器之間交換的安全^"建立協(xié)議凈艮文 生成數(shù)據(jù)集;在通信終端中,從服務(wù)器接收索引,或索引被創(chuàng)建用iM^帶 外分發(fā)的碼表(如密鑰列表)查找短密鑰。該短密鑰和個(gè)人識別碼被輸入通 信終端,并且基于數(shù)據(jù)集、個(gè)人識別碼、短密鑰和多達(dá)兩個(gè)現(xiàn)時(shí)來生成認(rèn) 證符一一其為密碼或鍵控密碼摘要值。該認(rèn)證符從通信終端傳送到服務(wù) 器;在服務(wù)器中,從所交換的安全會話建立協(xié)議報(bào)文生成數(shù)據(jù)集;并且, 在服務(wù)器中,利用服務(wù)器中生成的數(shù)據(jù)集、服務(wù)器數(shù)據(jù)庫中的個(gè)人識別碼 和短密鑰,通過解密或使用鍵控密碼摘要函數(shù)(例如加密hash函奶來驗(yàn) 證該認(rèn)證符。類似的,短密鑰也可以用在已經(jīng)描述過的其它實(shí)施例中。
將通過示例參考附圖詳細(xì)解釋本發(fā)明。圖l顯示了示意性描述計(jì)算機(jī)化服務(wù)器的示范配置的框圖,該服務(wù)器 設(shè)置有用戶認(rèn)iiE^塊,并且通過電信網(wǎng)連接到具有認(rèn)i^塊的移動終端。圖2顯示了示意性描述iUit^塊的示范配置的框圖。圖3顯示了示意性描述作為認(rèn)證令牌設(shè)備的認(rèn)iM^塊的示范實(shí)施方式 的框圖。圖4顯示了描述根據(jù)本發(fā)明的實(shí)施例而執(zhí)行的步棵序列的示例的流程圖,其中本發(fā)明的該實(shí)施例用于對使用通信終端("在通信終端輸入PIN-U 以及在終端上建立TAN")通過電信網(wǎng)訪問服務(wù)器的用戶進(jìn)^i人證。圖5顯示了說明根據(jù)用于("在設(shè)備上輸入PIN-U以及在設(shè)備上建立 TAN")認(rèn)證用戶的本發(fā)明的另 一實(shí)施例而執(zhí)行的步驟序列的示例的流程 圖。圖6顯示了說明根據(jù)用于認(rèn)證用戶("由用戶腦力建立TAN")的本發(fā)明 的又一 實(shí)施例而執(zhí)行的步驟序列的示例的流程圖。圖7顯示了說明根據(jù)用于認(rèn)證用戶("軟令牌,,)的本發(fā)明的又一實(shí)施例 而執(zhí)行的步驟序列的示例的流程圖。圖8顯示了說明才艮據(jù)本發(fā)明的實(shí)施例而執(zhí)行的附加步驟序列的示例的 流程圖,其中本發(fā)明的實(shí)施例用于對被用戶使用通信終端("設(shè)備上的服務(wù) 器認(rèn)證碼")通過電信網(wǎng)所訪問的服務(wù)器進(jìn)^i人證。圖9顯示了根據(jù)用于("通過軟令牌設(shè)備得到的服務(wù)器認(rèn)證碼")認(rèn)證服 務(wù)器的本發(fā)明的另 一 實(shí)施例而執(zhí)行的附加步驟系列的示例的流程圖。。圖10顯示了根據(jù)用于("基于標(biāo)準(zhǔn)設(shè)備接口的詢問響應(yīng)")認(rèn)證用戶的 本發(fā)明的另 一實(shí)施例而執(zhí)行的步驟序列的示例的流程圖。
具體實(shí)施方式
在圖1中,參考標(biāo)號1指為通過電信網(wǎng)3與計(jì)算機(jī)化服務(wù)器4交換數(shù) 據(jù)而配置的通信終端。通信終端l包括,但不限于固定個(gè)人計(jì)算機(jī)(PC)、 移動膝上計(jì)算機(jī)、移動無線電話和/或移動個(gè)人數(shù)字助理(PDA)。每個(gè)通信 終端1都具有顯示器11和數(shù)據(jù)輸入裝置12,比如鍵盤和定點(diǎn)設(shè)備(例如 計(jì)算機(jī)鼠標(biāo)、跟蹤球等)。通信終端1包括客戶端應(yīng)用程序,優(yōu)選是瀏覽 器(例如Microsoft Internet Explorer或Mozil la Firefox),以便通過 用安全會話建立協(xié)議比如SSL/TLS來建立的安全會話、經(jīng)由電信網(wǎng)3訪問 服務(wù)器4上駐留的在線應(yīng)用。另外,通信終端1包括認(rèn)M塊2,這在后 面參考圖2和3詳細(xì)描述。電信網(wǎng)3包括固定網(wǎng)絡(luò)和無線網(wǎng)絡(luò)。例如,電信網(wǎng)3包括局域網(wǎng)(LAN)、 綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)、互聯(lián)網(wǎng)、全球移動通信系統(tǒng)(GSM)、通用移動通 信系統(tǒng)(UMTS)或者其它基于陸地或衛(wèi)星的移動無線電話系統(tǒng),和/或無線 局域網(wǎng)(WLAN)。計(jì)算機(jī)化服務(wù)器4包括一個(gè)或多個(gè)計(jì)算機(jī),每個(gè)計(jì)算機(jī)有一個(gè)或多個(gè) 處理器、程序和數(shù)據(jù)內(nèi)存,以及操作系統(tǒng)和可以通過利用安全會話建立協(xié) 議,如SSL/TLS,建立的安全會話訪問電信終端1的在線應(yīng)用。例如,服 務(wù)器4是Apache httpd或Jakarta Tomcat服務(wù)器。另外,服務(wù)器4包括 用戶認(rèn)i^塊40和數(shù)據(jù)庫41。優(yōu)選地,用戶認(rèn)iiE^塊40和數(shù)據(jù)庫41被 實(shí)現(xiàn)為程序軟件模塊。數(shù)據(jù)庫41可包括例如,主密鑰(MK)42;多個(gè)用 戶數(shù)據(jù)集400,每個(gè)包含用戶標(biāo)識符(ID—U)43;個(gè)人識別碼(PIN-U) 44;以及可能的對稱令牌密鑰(K-T) 45。個(gè)人識別碼(PIN-U) 44是用戶和服務(wù)器4 之間共享的密鑰,而且可包括生物測定數(shù)據(jù)(生物測定標(biāo)識符)。而且,數(shù)據(jù)庫41可包括公鑰(k) 46。包括公鑰(k) 46的證書還可以是用戶數(shù)據(jù)集400 的用戶特定部分,即在特定用戶4吏用特殊令牌的時(shí)間期間,其序列號(SN-T) 可暫時(shí)地被指定為ID_U。用戶將能選擇服務(wù)器是否記住最后的SN-T-ID_U 關(guān)聯(lián)。這樣做會提供方便,即使用戶將令牌插入各不同通信終端。另一方 面,這種情況下釋放令牌可以將ID_U透露給該令牌的下一個(gè)用戶。不會 威脅認(rèn)證,但會影響與服務(wù)器相關(guān)的用戶私密性。如圖2所述,每個(gè)認(rèn)iE^塊2包括幾個(gè)功能模塊證書模塊25、認(rèn)證 號生成器26、顯示模塊27、以及可能的服務(wù)器認(rèn)M塊28和/或選擇模 塊29。另外,認(rèn)i^塊2可包括帶非對稱密鑰對(k,k"(-l))201的內(nèi)存模 塊,該非對稱密鑰對包括私鑰(kA(-l))和公共密鑰(k),優(yōu)選被整體保護(hù)。 為了識別,認(rèn)ii^塊2可以與公知的令牌標(biāo)識符SN_T相關(guān)聯(lián)。優(yōu)選地, 認(rèn)M塊2是非個(gè)人的而且兼容PKSC#11或MS-CAPI (微軟加密應(yīng)用編程接 口)或其它標(biāo)準(zhǔn)設(shè)備接口。在實(shí)施例中,認(rèn)M塊2包括帶令牌標(biāo)識符203 的內(nèi)存模塊。令牌標(biāo)識符例如通過瀏覽器的預(yù)填表特性也可以存儲在通信 終端1上。另外,認(rèn)4塊2包括帶令牌密鑰(K_T) 202的安全內(nèi)存模塊, 或者在非最適合優(yōu)情況下包括帶主密鑰(MK) 204的內(nèi)存模塊。密鑰對k和 kA{-1}對于所有認(rèn)i^塊2可以是相同的(令牌可以非個(gè)人的原因),然 而令牌密鑰K一T是唯一的,并且是特定于認(rèn)ii^塊2的。利用主密鑰MK, 可從令牌標(biāo)識符SN—T根據(jù)下式生成令牌密鑰K-T:K_T=E_ {MK} (SN—T)因此,不需要集中存儲所有令牌密鑰。作為替代,知道主密鑰的任何 人可從令牌標(biāo)識符來動態(tài)生成令牌密鑰。主密鑰通常只由服務(wù)器4擁有和 掌握。主密鑰,確切地說是令牌密鑰以不可輸出方式保存在防篡改的密鑰 存儲器。建議令牌私鑰k"(-1}也絲在同一安全存儲器中,但是,根據(jù)所建議的方法,后者泄露給公眾仍然可以不危害已發(fā)的認(rèn)^塊2的總體及 其功能。優(yōu)選地,功能模塊被實(shí)現(xiàn)為程序軟件模塊。軟件模塊的計(jì)算M序代 碼是計(jì)算M序產(chǎn)品的一部分,優(yōu)選存儲在計(jì)算機(jī)可讀介質(zhì)中,該介質(zhì)可 以在可插入通信終端1的數(shù)據(jù)載體上,集成在通信終端l的內(nèi)存中,或者 如圖3所示,在集成到認(rèn)證令牌設(shè)備20的內(nèi)存中,該認(rèn)證令牌設(shè)備20連 接到通信終端1。在實(shí)施例中,認(rèn)^塊2被實(shí)現(xiàn)為兼容PKSCH1的可能的非個(gè)人認(rèn)證 令牌設(shè)備20 。認(rèn)證模塊2因此是安全硬件令牌,其通過標(biāo)準(zhǔn)接口如 cryptoki (RSA安全公司的"PKCS#11:密碼令牌接口標(biāo)準(zhǔn),,)或者微軟的 CryptoAPI (http: //msdn. microsoft, com/1ibrary/default. asp url=/li brary/en-us/seccrypto/security/cryptography一cryptoapi一and -capicom.asp)參與安全會話建立協(xié)議,例如參與SSL/TLS握手。如圖3 所示,除了上面認(rèn)^塊2的內(nèi)容中描述的功能模塊和內(nèi)存模塊外,認(rèn)證 令牌模塊20包括設(shè)備接口 21、數(shù)據(jù)輸入鍵23或者傳感器24形式的數(shù)據(jù) 輸入裝置,以及可能的顯示器22??蛇x地,傳感器24被配置用于生物測 定數(shù)據(jù)(生物測定標(biāo)識符)的輸入,且包括例如指紋閱讀器。設(shè)備接口 21 被配置用于將i人證令牌i殳備20可移除地連接到通信終端1。設(shè)備接口 21 可以是基于接觸的,包括例如USB接口 (通用串行總線接口),或者無接觸 的,包括例如藍(lán)牙或者紅外接口。認(rèn)證模塊2也可以分為離線設(shè)備(C/R 或一次口令(0TP))和通信終端1中的某個(gè)軟件模塊,用來給客戶端應(yīng)用 軟件補(bǔ)充如從數(shù)據(jù)集中隨M取比特或認(rèn)證基礎(chǔ)號的功能。在以下段落中,參考圖4、 5、 6、 7、 8、 9和10描述的是執(zhí)行所建議 的用戶i^證方法的可能的次序,以及用戶i人M塊40和功能模塊的功能 性。基本的假設(shè)是用戶M設(shè)備不必運(yùn)行可信賴的計(jì)算機(jī)基礎(chǔ)。但是,必 須假定特別的SSL/TLS實(shí)現(xiàn)不被如可執(zhí)行的特^T木馬破壞,從而正確操 作。雖然不預(yù)期最終用戶特別了解信息技術(shù),例如不預(yù)期能夠可靠^查 受SSL/TLS保護(hù)的會話中的服務(wù)器證書的有效性。類似地,也不預(yù)期能可 靠區(qū)分"UBS. C0M"和"U8S. C0M"。為訪問服務(wù)器4中駐留的在線應(yīng)用,用戶因此在他的通信終端1上操 作客戶端應(yīng)用程序。作為安全會活建立協(xié)議例如SSL/TLS握手協(xié)議的一部 分,服務(wù)器4使用公鑰證書對其自身進(jìn)^i人證,假定但不進(jìn)一步陳述用戶 正確地IHE此證書是真的屬于預(yù)期的站點(diǎn)。如圖4所示,在步驟Sl中,例如通過根據(jù)SSL/TLS向服務(wù)器4發(fā)送 "ClientHello,,報(bào)文,通信終端1根據(jù)安全會話建立協(xié)i^L^起與服務(wù)器4 的安全會話建立。在步驟S2中,根據(jù)安全M建立協(xié)議,例如通過根據(jù)SSL/TLS向通 信終端發(fā)送"ServerHello,,報(bào)文,服務(wù)器4響應(yīng)步驟Sl的發(fā)起報(bào)文。在步驟S3中,作為安全會話建立協(xié)議的一部分,服務(wù)器4向通信終 端1發(fā)送證書請求或者"Finished"報(bào)文,例如根據(jù)SSL/TLS的 "CertificateRequest"或"Finished"報(bào)文。在步驟S4中,根據(jù)安全會話建立協(xié)議,通信終端1的數(shù)據(jù)集生成模 塊基于先前與服務(wù)器4交換的安全會話建立協(xié)議才艮文構(gòu)建數(shù)據(jù)集。例如, 根據(jù)SSL/TLS,通過應(yīng)用hash函數(shù),數(shù)據(jù)集生成模塊從先前的安全會話建 立協(xié)議報(bào)文來構(gòu)建數(shù)據(jù)集(所交換的安全會話建立協(xié)議報(bào)文可能比明確列 在這的多)。在步驟S5中,步驟S4中生成的數(shù)據(jù)集(例如hash和今后指定為"hash" 的)分別傳遞給認(rèn)證模塊2或認(rèn)證令牌設(shè)備20。例如4吏用通信終端1和/ 或認(rèn)證令牌設(shè)備20中的共享內(nèi)存區(qū)域,通過設(shè)備接口 21可以實(shí)現(xiàn)在通信 終端1和iUi^塊2或認(rèn)證令牌設(shè)備20之間分別傳遞信息。在步驟S6中,證書模塊25通過使用帶密鑰對201的內(nèi)存模塊的私鑰 1^{-1}對步驟S5中接收的數(shù)據(jù)集進(jìn)行密碼簽名來生成電子簽名。在變量 中,被嵌入到包含公共簽名校驗(yàn)密鑰(k) 46的簽名中的簽名證書包括所 使用的特定令牌的序列號SN_T。在步驟S7中,步驟S6中生成的電子簽名傳遞給通信終端1。在步驟S8中,通信終端1對步驟S3中接收的證書請求準(zhǔn)備響應(yīng),例 如根據(jù)SSL/TLS的"Certif icateVerify"報(bào)文,包括在步驟S4中生成的 數(shù)據(jù)集和在步驟S6中生成的電子簽名。在步驟S9中,在步驟S8中準(zhǔn)備的安全會話建立協(xié)議報(bào)文被通信終端 1傳送給服務(wù)器4。在步驟S10中,利用>2^ (k) 46,服務(wù)器4基于在步驟S9中接收到 的數(shù)據(jù)集來m^在步驟S9中接收的電子簽名。由于認(rèn)M塊2是非個(gè)人 的事實(shí),因?yàn)閗1-l)通常對所有令牌是相同的,"CertificateVerify"報(bào) 文并非真的對客戶端應(yīng)用進(jìn)W^證,而是僅確??蛻舳藨?yīng)用使用令牌來建 立到服務(wù)器的安全會話,并捕獲數(shù)據(jù)集為以后使用。如果步驟S4中生成的數(shù)據(jù)集是基于"Finished,,報(bào)文,則不需要步驟S5-S9,而且在步驟SIO 中,服務(wù)器4只捕獲數(shù)據(jù)集(hash)為以后使用。如果有能夠檢查 "Finished,,報(bào)文的內(nèi)容或者已加密的"Finished"報(bào)文的客戶端擴(kuò)充或插 件或外部"監(jiān)聽器",則使用此方法。優(yōu)選地,這種擴(kuò)充較小而且獨(dú)立于 平臺,因此在客戶端應(yīng)用的內(nèi)部或者甚至在制造時(shí)集成在客戶端應(yīng)用中。在步驟Sll中,認(rèn)證號生成器26從步驟S5中接收的數(shù)據(jù)集(hash)生 成認(rèn)證基礎(chǔ)號N_T。使用與認(rèn)iiE^塊2關(guān)聯(lián)的令牌密鑰K_T,從數(shù)據(jù)集生 成i^證基礎(chǔ)號N_T:N_T=E_ {K—T} (hash)優(yōu)選地,N_T縮短到個(gè)人識別碼PIN_U的定義的長度(在一實(shí)施例中 通過截短它來實(shí)現(xiàn))。在步驟S12中,服務(wù)器4的用戶認(rèn)4塊40向通信終端請求交易認(rèn) 證號(TAN)。在如步驟S6中公鑰46在特定令牌(token-specific)公鑰 證書中的情況下,用戶標(biāo)識符ID_U可連同請求一同傳送,例如反映與給 定令牌SN-T—起使用的最近的ID_U,即由于已經(jīng)在HTML表單域中預(yù)填充 ID_U,從而不需要由用戶輸入,而只需要在該令牌被另一個(gè)用戶4吏用的情 況下校正ID_U即可。在步驟S13中,將步驟Sll中生成的認(rèn)證基礎(chǔ)號N-T傳遞給通信終端1。在步驟S14中,通信終端1的控制模塊請求并接收來自用戶的個(gè)人識 別碼PIN—U。根據(jù)該實(shí)施例,利用數(shù)據(jù)輸入裝置12或針對生物測定數(shù)據(jù)(生 物測定標(biāo)識符)的傳感器,例如指紋閱讀器(例如對不同的手指印記分配 不同數(shù)字或字符),來輸入個(gè)人識別碼PIN-U。在步驟S15中,通信終端1的控制模塊根據(jù)在步驟S14中接收的個(gè)人 識別碼PIN-U和在步驟Sll中生成的認(rèn)證基礎(chǔ)號N—T,例如使用在某種程 度上對用戶透明的偽隨機(jī)函數(shù)PRF,來生成交易認(rèn)證號TAN:TAN = PRF- {PIN-U} (N-T)作為子實(shí)施例,通信終端1可以接收該P(yáng)IN,并且S15可在非個(gè)人的 認(rèn)證令牌設(shè)備20上執(zhí)行,然后TAN被返回給通信終端1。在這種情況下,作為子實(shí)施例,生成"CertificateVerify"報(bào)文的步 驟和生成交易認(rèn)證號TAN的步驟可以進(jìn)行不同的分組如果用來創(chuàng)建數(shù)據(jù)集(hash)的函數(shù)h滿足加密hash函數(shù)的特性,則例如HMAC構(gòu)造 (Krawczyk,H. 等人的 "HMAC: Keyed-Hashing for Message Authentication" ,Request for comments 2104, 1997年2月)則可用來 實(shí)現(xiàn)hash函數(shù)h: PIN畫U將成為數(shù)據(jù)集(hash,)的Certif icateVerify 計(jì)算的自變量。在此實(shí)施例中,認(rèn)證基礎(chǔ)號N-T,成為交易認(rèn)證號TAN=N_T,。 對于此實(shí)施例,基本上,由于獲得數(shù)據(jù)集(hash,)以及hash函數(shù)h的除 一個(gè)之外的4^輸入,即PIN-U,重建PIN-U是不可行的。HMAC是滿足這 個(gè)的一個(gè)函數(shù)。HMAC還可用作偽隨機(jī)函數(shù)PRF,且用來生成交易i^證號TAN:TAN=HMAC_{PIN_U}(U-T)=h (K+opad II h(K+ipad II N_T))。在此情況下,以某種唯一和特定方式(例如#>據(jù)PKCS#5 )從PIN_U導(dǎo) 出K。符號+指模2加,ll指串連接。0pad和ipad是常數(shù)值。特別當(dāng)用戶 自己不必計(jì)算TAN時(shí),除了僅十進(jìn)制數(shù)字
之外的其它字母表更可取。交易認(rèn)證號TAN只對一個(gè)安全(SSL/TLS)會話有效。在步驟S16中,為響應(yīng)步驟S12中接收的請求,通信終端l向服務(wù)器 4傳送生成的TAN、所確認(rèn)的或由用戶新輸入的用戶標(biāo)識符ID-U、以及由 用戶輸入的令牌標(biāo)識符SN-T,除非包含k的令牌證書還包括SN-T(如S6 中可選的)。例如,SN-T從帶令牌標(biāo)識符203的內(nèi)存模塊讀出,或者從與 瀏覽器關(guān)聯(lián)的通信終端1中的內(nèi)存讀出。在步驟S17中,服務(wù)器4的用戶認(rèn)ii^塊40確定在數(shù)據(jù)庫40中個(gè)人 識別碼(PIN-U) 44被分配給步驟S16中接收用戶標(biāo)識符ID_U。在步驟S18中,利用與認(rèn)M塊2關(guān)聯(lián)的令牌密鑰K-T,用戶認(rèn)iiE^ 塊40從步驟Sl0中接收的數(shù)據(jù)集(hash)生成認(rèn)證基礎(chǔ)號N_T。在實(shí)施例中, 利用主密鑰(MK)42,從步驟S16中接收的令牌標(biāo)識符SN-T生成令牌密鑰 K-T。然而,如果令牌密鑰(K-T) 45存儲在服務(wù)器4上,就不需要用MK重 新計(jì)算,而是可以完全隨M擇。如果令牌標(biāo)識符SN_T是在安全會話建 立協(xié)議期間交換的令牌的客戶端證書的一部分,例如,客戶端證書為步驟 S3和S9之間的"Client certificate"報(bào)文,則在步驟S16中,不用將 SN-T從通信終端1傳送到服務(wù)器4。在步驟S19中,用戶認(rèn)iii^塊40根據(jù)步驟S17中確定的個(gè)人識別碼 PIN_U和步驟S18中生成的認(rèn)證基礎(chǔ)號N_T來生成交易認(rèn)證號TAN。在步驟S20中,通過與步驟S19中生成的交易認(rèn)證號比較,用戶認(rèn)證模塊40來驗(yàn)證步驟S16中接收的交易認(rèn)證號。如果驗(yàn)證結(jié)果是肯定的, 則通信終端1可以訪問服務(wù)器4,或者在實(shí)施例中,服務(wù)器繼續(xù)后面參考 圖8所描述的步驟S41。如圖5所示,在替選實(shí)施例中,包括步驟S13、 S14和S15的方框A, 由包括步驟S21、 S22、 S23和S24的方框B代替。在步驟S21中,分別通過認(rèn)證令牌設(shè)備20或認(rèn)M塊2的數(shù)據(jù)輸入 裝置23或傳感器24,從用戶接收個(gè)人識別碼PIN-U。在步驟S22中,如在步驟S15的上下文中所描述的,證書模塊25根 據(jù)步驟S21中接收的個(gè)人識別碼PIN—U和步驟S11中生成的認(rèn)證基礎(chǔ)號N一T 來生成交易認(rèn)證號TAN。因此,在步驟S15的上下文中所描述的子實(shí)施例 也適用于圖5所示的實(shí)施例。在步驟S23中,將在步驟S22中生成的交易i^證號TAN傳遞給通信終 端1。在步驟S24中,交易認(rèn)證號TAN在通信終端1中接收,且可能在顯示 器11中顯示。隨后,通信終端1繼續(xù)上面的步驟S16。如圖6所示,在替選實(shí)施例中,包括步驟S13、 S14和S15的方框A 由包括步驟S31和S32的方框C代替。在步驟S31中,顯示模塊27在顯示器22上顯示步驟Sll中生成的認(rèn) 證絲號N一T。在步驟S32中,通信終端1的控制模塊從用戶接收交易認(rèn)證號TAN。 在步驟S32中輸入的交易i^證號被用戶定義為顯示器22上顯示的認(rèn)證基 礎(chǔ)號N_T和用戶個(gè)人識別碼PIN-U的組合TAN=f (N-T,PIN-U)通常,有許多可能性來定義適當(dāng)?shù)暮瘮?shù)f。在1993年5月、IEEE出 版社的研究安全和私密的IEEE專題學(xué)才艮中Molva,R.和G.Tsudik的 "Authentication Method with Impersonal Token Cards"中,建議使 用模10求其自變量的和。此建議是合適的,但有許多其他函數(shù)同樣工作 得很好。按照Swivel,PINsafe的另一方法是,例如顯示長度為10的N-T 且使用數(shù)字PIN中的數(shù)字來挑選。隨后,通信終端1繼續(xù)上述步驟S16。在圖7所示的實(shí)施例中,認(rèn)iiM^塊2專門通過通信終端1中的程序軟 件模塊來實(shí)施。與圖4所示的實(shí)施例相比,根據(jù)圖7的實(shí)施例不包括步驟S5、 S7和13,因?yàn)橥ㄐ沤K端1和通信終端1外部的認(rèn)ii^塊(令牌設(shè)備 20)沒有數(shù)據(jù)交換。通信終端1和認(rèn)iii^塊2之間使用軟件接口或通信終 端i中的共享內(nèi)存區(qū)域進(jìn)行信息交換。否則,如上面參考圖4的描述來執(zhí) 行步驟S1、 S2、 S3、 S4、 S6、 S8、 S9、 SIO、 Sll、 S12、 S14、 S16、 S17、 S18、 S19和S20。如圖8所示,在步驟S41中,服務(wù)器4從步驟S9中接收的數(shù)據(jù)集(hash) 生成服務(wù)器認(rèn)證碼。通it)^數(shù)據(jù)集(hash)應(yīng)用公共函數(shù)g以及使用步驟S18 中確定的令牌密鑰K-T來加密,從而生成服務(wù)器認(rèn)證碼A_T:A_T-E-{K-T} (g(hash))。A-T的構(gòu)it^本上與i人證基礎(chǔ)號N—T的構(gòu)^目同。唯一的區(qū)別是數(shù)據(jù) 集(hash)在用令牌密鑰K-T加密之前,要應(yīng)用廣泛認(rèn)知的函數(shù)g。函數(shù) g又不需要復(fù)雜。它可以像計(jì)算hash值的余數(shù)一樣簡單。此服務(wù)器認(rèn)證的 本質(zhì)是可能看到數(shù)據(jù)集(hash)和認(rèn)證基礎(chǔ)號N_T兩者的對手不能構(gòu)造A_T, 因?yàn)榱钆泼荑€K-T是保密的以及加密函數(shù)E-的特性(在一個(gè)實(shí)施例中,其 可以^1對稱密碼如3 — DES )。在步驟S42中,步驟S42中生成的服務(wù)器認(rèn)^被傳送到通信終端1。在步驟S43中,步驟S42中接收的服務(wù)器認(rèn)^被通信終端1顯示在 顯示器11上。在步驟S44中,服務(wù)器iUi^塊28通過將公共函數(shù)(g)應(yīng)用于步驟 S5中接收的數(shù)據(jù)集并使用與認(rèn)i^塊2關(guān)聯(lián)的令牌密鑰K_T來加密,而從 該數(shù)據(jù)集(hash)生成服務(wù)器認(rèn)證碼。在步驟S45中,顯示模塊27在顯示器22上顯示步驟S44中生成的服 務(wù)器認(rèn)證碼。在步驟S46中,通過與顯示器22上顯示的服務(wù)器認(rèn)證碼比較,用戶 來驗(yàn)證顯示器ll上顯示的服務(wù)器認(rèn)證碼,從而對服務(wù)器4進(jìn)^i人證。在如圖9所示的實(shí)施例中,認(rèn)iiE^塊2專門通過通信終端1中的程序 軟件模塊來實(shí)現(xiàn)。與圖8所示的實(shí)施例相比,在才艮據(jù)圖9的實(shí)施例中,在 步驟S47中,顯示模塊27在顯示器11上顯示步驟S44中生成的服務(wù)器認(rèn) 證碼。此外,在步驟S48中,通過與服務(wù)器認(rèn)ii^塊28的月1務(wù)器認(rèn)糾 比較,用戶#驗(yàn)顯示器11上來自服務(wù)器4的服務(wù)器認(rèn)證碼,從而對服 務(wù)器4進(jìn)^i人證。至此所建議的認(rèn)g塊2可用來對單一機(jī)構(gòu)(使用單一個(gè)人識別碼) 來認(rèn)證用戶。在另一實(shí)施例中,認(rèn)iit^塊2被配置用于多個(gè)機(jī)構(gòu),即用于 對多個(gè)機(jī)構(gòu)的服務(wù)器認(rèn)證用戶。用于實(shí)現(xiàn)多^認(rèn)M塊的優(yōu)選方法是用 特定于機(jī)構(gòu)的主密鑰MK_I組來代替主密鑰MK,以及用特定于機(jī)構(gòu)的令牌 密鑰K_ (IT)組來代替令牌密鑰K_T,其中K_ (IT)指認(rèn)證模塊與機(jī)構(gòu)I共享 的令牌密鑰。每個(gè)服務(wù)器4與特定機(jī)構(gòu)相關(guān)聯(lián),且使用特定于機(jī)構(gòu)的令牌 密鑰來生成認(rèn)證基礎(chǔ)號。與單一^設(shè)置類似,令牌密鑰K_ {IT}可根據(jù)下 式動態(tài)生成K_{IT}=E_{MK_I} (SN一T)這個(gè)密鑰然后用來為認(rèn)證基礎(chǔ)號和交易認(rèn)證號生成特定機(jī)構(gòu)值N-{IT}= E-汰-(IT" (hash),和TAN=f (N_{IT},PIN_{IU})。作為結(jié)果的TAN然后可被用戶用來認(rèn)證(服務(wù)器4的)機(jī)構(gòu)I。個(gè)人 識別碼PIN—UU)不僅是特定用戶的,而且是特定機(jī)構(gòu)的。因此,通過已存 儲包括多個(gè)特定于機(jī)構(gòu)的令牌密鑰的令牌密鑰集或者已存儲多個(gè)特定于 機(jī)構(gòu)的令牌標(biāo)識符的令牌標(biāo)識符集和用于動態(tài)生成特定于機(jī)構(gòu)的令牌密 鑰的主密鑰組,多^認(rèn)M塊與多個(gè)特定于機(jī)構(gòu)的令牌密鑰相關(guān)聯(lián)。選 擇模塊29被設(shè)計(jì)為使用戶分別選擇多個(gè)可能機(jī)構(gòu)范圍中之一來用于認(rèn)證 模塊2或者認(rèn)證令牌設(shè)備20。針對用戶選擇的機(jī)構(gòu)范圍,認(rèn)證模塊2使用 一個(gè)相應(yīng)的特定于機(jī)構(gòu)的令牌密鑰來生成認(rèn)證基礎(chǔ)號。例如選擇模塊29 在顯示器22或11上給用戶呈現(xiàn)所支持的機(jī)構(gòu)列表,且通過數(shù)據(jù)輸入裝置 23或12來接收用戶選擇。在替選實(shí)施例中,將數(shù)據(jù)輸入裝置23或12的 特定密鑰分配給特定機(jī)構(gòu)。在認(rèn)證模塊2未安全持有多個(gè)K_ {IT}而只支持一個(gè)的另一實(shí)施例中, 加入在線全部發(fā)行機(jī)構(gòu)(AS)。這增加了機(jī)構(gòu)組成為i人iit^塊2的發(fā)行組的 一部分的靈活性。認(rèn)證模塊2創(chuàng)建現(xiàn)時(shí)R-T。用戶必須從認(rèn)證模塊2的顯 示中拷貝兩個(gè)值,即代替SN-T,生成TAN—AS且需要在用戶認(rèn)證階段期間 當(dāng)SSL/TLS會話成功建立《,后被輸入TAN-I-f(R-T,PIN-U一I)TAN—AS=E_MK(R_T,Hash, ID_I),其中ID—I是短標(biāo)識符串,如對"Institution XYZ"是"XYZ"。機(jī)構(gòu)I關(guān)注兩個(gè)值,對單獨(dú)一個(gè)值不能做什么。機(jī)構(gòu)I將TAN—AS轉(zhuǎn) 發(fā)給發(fā)行機(jī)構(gòu)AS并接收回復(fù)的R-T和Hash,假定AS和I之間的關(guān)系是經(jīng) 相互i人證的和保密的。除非為犯罪目的,發(fā)行機(jī)構(gòu)AS決不會看到TAN—I,因此發(fā)行機(jī)構(gòu)AS 可確定PIN-U-I是沒有風(fēng)險(xiǎn)的。然而,在該實(shí)施例中建議只選擇之前討論 的健壯加密hash函數(shù)f。類似地,此方法防止機(jī)構(gòu)I一l...I-n試圖知道彼此用戶的PIN。此實(shí)施例大大簡化了新機(jī)構(gòu)的增加?;旧希郊拥腎D_I-n串可被 簡單地加到認(rèn)M塊2。如果認(rèn)ii^塊2充滿了假的ID-I串,這成為可用 性問題但不真的破壞所建議方法的安全性。在實(shí)施例中,認(rèn)ii^塊2或認(rèn)證令牌設(shè)備20,分別被用來補(bǔ)充一次口 令(OTP)系統(tǒng)(例如Lamport式的OTP (Lamport,L. "Password Authentication with Insecure Communication" ,ACM通信,巻24, 1981, 第770—772頁)或安全I(xiàn)D令牌(http: 〃www. rsasecurity. com/))。在這 種情況下,用戶采用OTP作為步驟S15的PRF或者f的輸入(代替PIN-U )。 OTP通常包括PIN_U。任何其它的都保持基本上不變。作為協(xié)議中的小修" 改,這允許使用已在使用的雙因數(shù)安全元素的軟件變量,如RSA的SecurID。在另一實(shí)施例中,在認(rèn)證令牌設(shè)備20激活前加入生物測定認(rèn)證步驟。 這意味著令牌在單獨(dú)的過程中私人化,而且如果生物測定匹配,該令牌才 開始服務(wù)該令牌的至少"臨時(shí)"所有者。在另 一實(shí)施例中,如果用戶的生物測定特性B-U不用來如前所述輸入 PIN-U,則生物測定數(shù)據(jù)被包含在認(rèn)證基礎(chǔ)號N_T的計(jì)算中。同樣,該實(shí) 施例中的服務(wù)器緊鄰PIN-U存儲B_U,因此認(rèn)iit^塊2就本身而言保持完 全可轉(zhuǎn)移。N_T,,=E_僅一T) (hash, B一U)必須指出圖4、 5、 6、 7、 8和9中所示不同步驟的順序是可行的,沒 有偏離本發(fā)明的范圍。用于改變個(gè)人識別碼的實(shí)施例從最終用戶教育的觀點(diǎn),有個(gè)簡單的行為準(zhǔn)則是重要的。對所描述的 所有實(shí)施例,這當(dāng)然是"決不要把你當(dāng)前的或新的個(gè)人識別碼輸入到網(wǎng)頁瀏覽器!"對于包括附加硬件的實(shí)施例,比如如圖5用于輸入個(gè)人識別碼 的模塊,該準(zhǔn)則甚至是"決不JH吏用你的主鍵盤將PIN輸入到屏幕!"。 然而優(yōu)選地,對于用戶必須使其有可能周期性地、主動地改變他的個(gè)人識 別碼PIN-U。例如,為了改變個(gè)人識別碼PIN-U,另一安全會話被建立,基本上執(zhí) 行如上所i^目同的步驟。具體地,如圖4、 5或7所示,在步驟Sl到S10 之后,在步驟Sll中生成認(rèn)證基礎(chǔ)號N—T。在步驟S14或步驟S21中分別響應(yīng)涉及改變個(gè)人識別碼PIN-U的用戶 或服務(wù)器指令,舊的個(gè)人識別碼PINold—U和新的個(gè)人識別碼PINnew-U分 別在通信終端l、認(rèn)證令牌設(shè)備20或者認(rèn)M塊2從用戶接收。優(yōu)選地, 為避免輸入錯(cuò)誤,新的個(gè)人識別碼PINnew-U通過兩次輸入來確認(rèn)。分別在步驟S15或S22中,不是生成交易認(rèn)證號TAN,而是生成識別 改變碼(PCC)?;旧希糜谟?jì)算PCC的PRF必須使個(gè)人識別碼可恢復(fù)。 例如異或(XOR)函數(shù)具有這個(gè)特性。然后針對適當(dāng)選擇的函數(shù)f。, PCC由PCC- f。 (N-T, PINold-U, PINnew—U)計(jì)算。例如,如果f代表按位的模10加法,f??啥x為f。 (N隱T, PINold畫U, PINnew—U)=f(f(N_T, PINold-U) , PINnew—U)。例如,如果N—T-123, PINold_U=345,以及PINnew-U=781,則f(N一T, PINold-U) =468且f(f(N隱T, PINold一U), PINnew_U)=149。接著,在步驟S16、 S23、 S24中,識別改變碼(PCC),而不是交易認(rèn)證 號TAN被傳送給服務(wù)器4。如上所述執(zhí)行步驟S17和S18。因此在步驟S19 和S20中,當(dāng)確保(通過lHiEPINold-U)真的是合法用戶更改了個(gè)人識別 碼PIN-U,而不是例如利用未鎖定終端(其中正在進(jìn)行的^"未被合法用戶 注意)的某人更改時(shí),服務(wù)器4不是發(fā)遮交易認(rèn)證號TAN,而是從用戶提 交的PCC中導(dǎo)出PINnew-U。在針對f。給出的示例中,給出了對盲置換攻擊 沒有防護(hù)會導(dǎo)致業(yè)務(wù)拒絕。然而,在當(dāng)前主要的會話建立協(xié)議(SSL/TLS) 的上下文中,補(bǔ)充才艮文完整性保護(hù)將防止這種攻擊。在另 一實(shí)施例中,改變個(gè)人識別碼PIN-U用三個(gè)安全會話建立來實(shí)現(xiàn)。第一,用戶必須重新提供PINold—U;第二,用戶給出PINnew-U;第 三,用戶再次給出PINnew—U以避免輸入4^。如果PIN更改AJ!良務(wù)器發(fā)起的,為了用信號通知這個(gè)協(xié)議的狀態(tài),服務(wù)器可以通告假的"DistinguishedName certificate畫authorities",如 "http: 〃www. rfc. net/rfc2246. html#s7. 4. 4"——針對這三個(gè)步驟中的 每個(gè)的另一權(quán)威所描述的.類似地,令牌需要有四個(gè)不同證書,即一個(gè)用 于常規(guī)認(rèn)證,三個(gè)用于該實(shí)施例。可替選地,當(dāng)計(jì)算認(rèn)證^5*號N-T時(shí),認(rèn)證令牌設(shè)備20或者認(rèn)iiE^ 塊2分別包括步驟標(biāo)識符。因此,分別在認(rèn)證令牌設(shè)備20或認(rèn)it^塊2 上需要的不同證書的數(shù)量可以被減少。如果個(gè)人識別碼的改變是客戶端發(fā)起的,則服務(wù)器應(yīng)至少提供兩個(gè) CA, 一個(gè)用于常規(guī)認(rèn)證, 一個(gè)用于改變個(gè)人識別碼的步驟l。具有無加密認(rèn)^塊的實(shí)施例在另一實(shí)施例中,認(rèn)證令牌設(shè)備20或者認(rèn)ii^塊2都不必為加密配置。在本實(shí)施例中,認(rèn)證基礎(chǔ)號N-T通過加密hash函數(shù)比如HMAC使用令 牌密鑰K-T作為密鑰來計(jì)算,這以很少量的計(jì)算開銷提供了同樣的安全性。 在本實(shí)施例中同樣需要共享密鑰和安全存儲器。例如,如在步驟S15上下 文中描述的子實(shí)施例所描述的,加密hash(CH)可用來代替步驟Sll中使用 的加密N—T=CH-僅陽T) (hash)。 它還適用于如在步驟S41或S44中的加密用法。具有替代的交易認(rèn)證號(TAN)的實(shí)施例在本實(shí)施例中,在步驟S4后,以先前在步驟S14或S21上下文中所 描述的方式(圖4)輸入個(gè)人識別碼PIN-U。隨后,鍵控加密摘^Hi,比 如加密hash,從個(gè)人識別碼和在通信終端和服務(wù)器4之間交換的安全M 建立協(xié)議報(bào)文生成。對于協(xié)議流,但不是為安全目的,在此步驟還包括序 列號SN-T可能會有用。利用鍵控加密摘要函數(shù),例如將與服務(wù)器4共享 的密鑰用作(hash)密鑰的所謂的"鍵控hash函數(shù)",來生成鍵控加密摘要 值。依賴于本實(shí)施例,用作(hash)密鑰的是令牌密鑰K-T、個(gè)人識別碼PIN-U 或者作為在安全會話建立協(xié)議中建立會話的基礎(chǔ)的預(yù)主密鑰。具體地,如 果個(gè)人識別碼PIN-U是適當(dāng)選擇的密鑰,則個(gè)人識別碼PIN_U可用作(hash)密鑰。因此,認(rèn)證令牌設(shè)備20從具有其自己的令牌密鑰K_T或私有簽名 密鑰k-1或兩者中解除,使得認(rèn)證模塊2或認(rèn)證令牌設(shè)備20分別只是"受 托觀察者"。服務(wù)器4將立即檢測任何應(yīng)用級指令,比如"送大量的錢給 xyz人"是否來自經(jīng)認(rèn)證的SSL^內(nèi)。例如,在步驟S5中,通信終端1從其與服務(wù)器4交換的安全會話建 立協(xié)議報(bào)文生成的數(shù)據(jù)集(hash),以及個(gè)人識別碼PIN-U分別被傳遞結(jié)4人 證模塊2或認(rèn)證令牌設(shè)備20。在步驟S6中,證書模塊25從數(shù)據(jù)集(hash) 和個(gè)人識別碼PIN-U生成加密hash。在步驟S6中生成電子簽名是可選的。 在步驟S7中,(帶或不帶電子簽名的)加密hash被傳遞給通信終端1。在 該子實(shí)施例中,PIN-U也可以在步驟S6中只由用戶直接輸入到認(rèn)證令牌設(shè) 備20中。可替選地,在步驟S4中從個(gè)人識別碼PIN-U以及從通信終端1和服 務(wù)器4之間交換的安全會話建立協(xié)議報(bào)文生成加密hash。因此,由于所有 必要的步驟在步驟S4中被執(zhí)行而省略步驟S5到S7。在步驟S8中,通信終端1對在步驟S3中接收的證書請求準(zhǔn)備響應(yīng), 例如根據(jù)SSL/TLS的"Certif icateVerify"報(bào)文,包括分別在步驟S6或 S4中生成的加密hash,以及由用戶確i^的或新輸入的用戶標(biāo)識符ID一U。在步驟S10中,服務(wù)器4使用存儲在服務(wù)器4中的用戶的個(gè)人識別碼, 來生成加密hash,并且基于在服務(wù)器4中生成的加密hash和在步驟S9中 從通信終端1接收的加密hash的比較來4HE用戶的真實(shí)性。例如,如果 驗(yàn)證結(jié)果是肯定的,通信終端l可以訪問服務(wù)器4。因此,加密hash作為 用于上述交易認(rèn)證號TAN的可替選的數(shù)據(jù)元素被生成、交換和驗(yàn)汪。如果服務(wù)器4針對用戶已被認(rèn)證,則服務(wù)器4繼續(xù)步驟S41。然而, 在進(jìn)一步的子實(shí)施例中,服務(wù)器認(rèn)證碼A_T在步驟S4-S6之后立即顯示。具有外部詢問/響應(yīng)i殳備的實(shí)施例在本優(yōu)選實(shí)施例中,如圖7和10所示,認(rèn)M塊2專門用通信終端1 中的程序軟件模塊來實(shí)現(xiàn)。步驟S1、 S2、 S3、 S4、 S6、 S8、 S9、 S10和S11 基本上如上面參考圖4所述的來執(zhí)行。作為步驟S11的一部分,在顯示器 11上顯示認(rèn)證基礎(chǔ)號N_T。在子實(shí)施例中,認(rèn)iiE^塊2僅充當(dāng)受托觀察者, 認(rèn)證基礎(chǔ)號(N-T",)被生成為數(shù)據(jù)集的短派生數(shù)(例如6或8位數(shù)字),該 數(shù)據(jù)集從協(xié)議報(bào)文,例如從常規(guī)CertificateVerify報(bào)文生成?;旧希J(rèn)證基礎(chǔ)號N-T可以是不能被MITM以可利用方式來確定的任何其它M 相關(guān)的標(biāo)識符,例如會話密鑰的短摘要和服務(wù)器公鑰可能是計(jì)算認(rèn)證^ftfe 號N-T作為安全會話標(biāo)識符來抗MITM攻擊的另一方式。"Finished"報(bào)文 或者加密的"Finished"報(bào)文,或者外部可觀察到的握手報(bào)文的整個(gè)序列 的hash是構(gòu)成該^相關(guān)標(biāo)識符(分別為N_T或N_T,")的其它候選,下 面更詳細(xì)地描述。因此,在本實(shí)施例中,利用令牌密鑰K-T來構(gòu)造N—T是 可選的。類似地,私有簽名密鑰k-l同也可以是可選的。隨后,如圖10所示,在步驟S51中,用戶將認(rèn)證絲號N-T (作為客 戶側(cè)生成的詢問)和他的個(gè)人識別碼PIN-U (例如作為碼或生物測定lt據(jù)) 輸入到未連接到通信終端1的傳統(tǒng)C/R令牌設(shè)備5中。在步驟S52中,響 應(yīng)步驟S51中輸入的值,C/R令牌設(shè)備5基于其自身邏輯生成并顯示令牌 響應(yīng)值。在步驟S53中,代替步驟S14和S15,用戶將來自C/R令牌^:備 5的令牌響應(yīng)值作為交易認(rèn)證號輸入到通信終端1中。在步驟S54中,為響應(yīng)在步驟S12中接收的請求,通信終端l將先前 作為交易認(rèn)證號TAN輸入的令牌響應(yīng)值傳送給服務(wù)器4。基本上,服務(wù)器4分別如上面參考圖4或7所述來執(zhí)行步驟S17到S20; 然而,對應(yīng)于C/R令牌設(shè)備5的邏輯,服務(wù)器4生成并JIHE令牌響應(yīng)值來 作為交易認(rèn)證號TAN。如果交易認(rèn)證號,即令牌響應(yīng)值的IHE結(jié)果是肯定 的,則通信終端1可以訪問服務(wù)器4,或者,在實(shí)施例中,服務(wù)器4分別 如圖8或9所示繼續(xù)步驟S41。例如,C/R令牌設(shè)備5基于在數(shù)百萬銀行和信用卡上流通著的EMV芯 片 (Europay International, MasterCard International 和 Visa International)(見http: 〃爾.emvco. com)。由EMV芯片生成的某些令 牌響應(yīng)值不包括個(gè)人識別碼PIN_U。作為每個(gè)MasterCard芯片認(rèn)證程序 (CAP)的卡ICC與月良務(wù)器(發(fā)行者)共享密鑰,該密鑰具有與先前K_T類 似的角色。在正確輸入個(gè)人識別碼PIN-U和詢問(認(rèn)證基礎(chǔ)號N-T)后, 將會創(chuàng)建除其它以外(比如CVV)還包含詢問以及正確個(gè)人識別碼PIN-U 已被呈現(xiàn)的權(quán)威確認(rèn)的密碼(通常用3DES)。典型地,未被連接的帶數(shù)字 鍵區(qū)的閱讀器用來輸入i人證基缺號N_T和個(gè)人識別碼PIN_U,并且令牌響 應(yīng)值顯示在未被連接的閱讀器的顯示器上。在認(rèn)證基礎(chǔ)號N-T,"被縮短到4 或6位數(shù)字的情況下,例如,MITM能與客戶端在終端上建立第二欺詐^" 的可能性明顯增大,因?yàn)樵摽蛻舳说亩涛?據(jù)集(hash)決定的對認(rèn)證基礎(chǔ)號 N-T,,,的輸入與在服務(wù)器和MITM之間打開的主欺詐會話有沖突。MITM多半可以離線!Hi是否發(fā)現(xiàn)沖突,沒有任何一方注意到該無沖突的推測。為了防止這樣的攻擊,"縮短"算法絕不能是簡單hash算法或?qū)ITM完全了 解的單向摘要函數(shù),而是需要有進(jìn)一步的特性?;旧?,當(dāng)使用C/R設(shè)備 5時(shí),要求離線推測"會話知曉(session awareness )" 對于MITM是沒 有吸引力的,如同要求離線推測個(gè)人識別碼PIN-U對于任何其它類型的攻 擊缺乏吸引力一樣。這意味著在縮短的hash中找沖突必須不再是離線可 發(fā)汪的,而應(yīng)該需要與在線權(quán)威,即限制推測數(shù)量的服務(wù)器交互。C/R令 牌i殳備5的對稱密鑰(具有比用戶可預(yù)期的更高平均信息量,來記為密碼) 用來通過加密對MITM隱藏偽隨M擇器。逸基本上強(qiáng)迫MITM在全部36 字節(jié)長的hash (數(shù)據(jù)集)上找沖突,這幾乎不可行的。因此,在實(shí)施例中,作為步驟S11的一部分,在客戶側(cè),i人ii^漠塊2, 例如作為客戶端應(yīng)用的一部分(例如瀏覽器),生成短隨機(jī)數(shù),如4位數(shù) 字,后面稱為"隨機(jī)選取數(shù)字"。該隨機(jī)數(shù)用來從協(xié)議報(bào)文,例如從TLS 握手的"CertificateVerify"或"Finished"報(bào)文的36字節(jié)hash,生成 的數(shù)據(jù)集中選擇任意比特,例如該任意比特表示另一4位數(shù)字。隨后,例 如,后4位數(shù)字和"隨M取數(shù)字"作為8位數(shù)字的縮短的認(rèn)證基礎(chǔ)號N_T", 在顯示器ll上顯示給用戶。在步驟S51中,如上參考圖10所述,用戶將 這個(gè)認(rèn)證基礎(chǔ)號N-T",(作為客戶側(cè)生成的詢問)和他的個(gè)人識別碼PIN-U 輸入到C/R令牌設(shè)備5中。步驟S52到S54與如上面圖10的上下文中所 述的保持相同。由于所述"隨機(jī)選取數(shù)字,,對MITM是未知的,C/R令牌設(shè)備5上的算 法是適合的,其使得"隨機(jī)選擇數(shù)字"以加密形式發(fā)送到服務(wù)器4。這意 味著由C/R令牌設(shè)備5生成的作為交易認(rèn)證號的令牌響應(yīng)值包括加密形式 的"隨機(jī)選取數(shù)字"。因此,服務(wù)器4被配置為從其所接收的響應(yīng)恢復(fù)"隨 機(jī)選取數(shù)字"。例如,利用3DES(或另一個(gè)具有例如64比特塊長的加密系 統(tǒng)),響應(yīng)是64比特。例如,對于響應(yīng),允許32個(gè)字符的包括文字和數(shù) 字的字符集,因此響應(yīng)將為13個(gè)字符長。因此,用戶必須從C/R令牌i殳 備5拷貝13個(gè)包括文字和數(shù)字的字符到客戶端應(yīng)用,例如瀏覽器表單域 中。從可用性的立場,根據(jù)用戶常規(guī)輸入19位信用卡號碼(包括CVV), 輸入用于詢問的8位數(shù)字,加上用于響應(yīng)的13個(gè)字符被認(rèn)為是可接受的。 這個(gè)方法的安全性相對于詢問和響應(yīng)的長度而增加或者減小。在服務(wù)器側(cè),步驟S18被改變成利用令牌密鑰K-T來解密"隨機(jī)選取數(shù)字",然后用來從數(shù)據(jù)集(hash)選取縮短的輸入以計(jì)算縮短的認(rèn)證基 礎(chǔ)號N-T,"。任何其他的保持與以前一樣。作為另一實(shí)施例,除由用戶輸入鍵盤之外,通過例如與 http: 〃axsionics. ch上描述的圖形閃爍的其他方法將認(rèn)證基礎(chǔ)號N-T輸 入設(shè)備。重要的增強(qiáng)是閃爍-詢問,通常完全由服務(wù)器創(chuàng)建,需要通過一 些客戶側(cè)生成的安全會話標(biāo)識符來修正。由于這種閃爍方法的實(shí)現(xiàn)優(yōu)選具 有某個(gè)客戶側(cè)的有效部件,比如瀏覽器(java)插件、Flash或者javascript, 在某些實(shí)施例中,這可以用來獲取例如服務(wù)器公鑰和會話密鑰摘要或其它 類型的安全會話標(biāo)識符,且將其包括到閃爍圖像生成,即相關(guān)協(xié)議的詢問 中。優(yōu)選對該有效部件進(jìn)行簽名,因?yàn)榉駝tMITM容易侵入其更改版本, 從而可能會呈現(xiàn)MITM的認(rèn)證基礎(chǔ)號N_T,而不是真正在客戶端通信終端1 中建立的認(rèn)證基礎(chǔ)號N_T。在另一子實(shí)施例中("在握手期間無客戶端證書認(rèn)證"),通信終端1 的客戶端應(yīng)用軟件模塊,例如瀏覽器,設(shè)置有認(rèn)證號生成器26,其配置為 通過只讀訪問安全會話建立協(xié)議?;蛘呱踔镣ㄟ^作為"外來者"能夠嗅探 /捕獲協(xié)議報(bào)文,來計(jì)算認(rèn)證基礎(chǔ)號N-T"作為安全會話標(biāo)識符,抵抗MITM 攻擊。這樣,在該子實(shí)施例中,不需要執(zhí)行客戶端證書認(rèn)證,例如,不需 要執(zhí)行用于單向安全會洽的步驟S3-S10,并且不再需J^牌設(shè)備驅(qū)動器比 如MS-CAP I或PKCSll。在步驟Sll中,上述認(rèn)證號生成器26被配置來計(jì)算認(rèn)證基礎(chǔ)號N_Tiv 作為安全會話標(biāo)識符,抵抗MITM攻擊,概述如下a) 基于數(shù)據(jù)集(hash)生成認(rèn)證基礎(chǔ)號N_Tiv,該數(shù)據(jù)集基于在通信終端 1和服務(wù)器4之間交換的安全會話建立協(xié)議報(bào)文,所述報(bào)文不會被 MITM知道(例如,由于在被加密作為輸入前具有預(yù)主密鑰);或b) 認(rèn)證基礎(chǔ)號N—r從已知的輸入數(shù)據(jù)和密鑰生成,雖然在本實(shí)施例中, 應(yīng)該避免在客戶端應(yīng)用中需J^牌密鑰K-T;或c) 認(rèn)證基礎(chǔ)號N—r基于MITM也全部知道的輸入數(shù)據(jù)生成,但是通過 它們到安全會話建立協(xié)議的邏輯連接,確保了對MITM的抵抗。在本 實(shí)施例中,使用服務(wù)器的公鑰和確保新鮮度的東西(現(xiàn)時(shí)或時(shí)間戳) 就足夠了。例如,加密的預(yù)主密鑰的hash,即MITM可觀察到的才艮 文,可以作為這樣的現(xiàn)時(shí)。此時(shí),重要的是,C/R令牌設(shè)備的邏輯確保,通過掌握詢問和觀察響應(yīng),MITM不能(離線)設(shè)置PIN推 測攻擊。例如,認(rèn)證號生成器26被配置為在客戶端應(yīng)用顯示該抗MITM的安全 ^人證基礎(chǔ)號N_Tiv (詢問)。例如,當(dāng)用戶在定義區(qū)域上,例如在瀏覽器中 顯示的鎖上移動鼠標(biāo)指針時(shí),i^證號生成器26佳:詢問在該定義區(qū)域內(nèi)例 如在瀏覽器右下方對用戶可見。如上所述,用戶將認(rèn)證基礎(chǔ)號N_Tiv (作為詢問)和他的個(gè)人識別碼 PIN-U輸入到C/R令牌設(shè)備,方法按如上所述的進(jìn)行。在客戶側(cè)沒有密鑰只有現(xiàn)時(shí)的實(shí)施例如Request for Comments 2246中所描述的,任意響應(yīng)而不是PKCS1 編碼簽名有可能使CertificateVerify報(bào)文結(jié)構(gòu)過栽。這有可能使令牌不 再需^4^牌密碼K_T。在本實(shí)施例中,與上述"具有可替選交易認(rèn)證號(TAN) 的實(shí)施例"相似,在步驟S6中,認(rèn)證模塊2或認(rèn)證令牌設(shè)備20通過利用 公鑰k-S(現(xiàn)時(shí),為"一次性使用的數(shù)")來加密hash (數(shù)據(jù)集)、個(gè)人識 別碼PIN-U和附加的一個(gè)或兩個(gè)真實(shí)的隨M時(shí)N-Tt(和N-Ta)來分別生 成密碼。公鑰k_S必須依次分別預(yù)安W認(rèn)證模塊2或認(rèn)證令牌設(shè)備20 上,以防止MITM欺騙系統(tǒng)使用他自己的密鑰k-MITM。在多機(jī)構(gòu)情況下, 公鑰k_S屬于服務(wù)器4或認(rèn)證服務(wù)器AS (認(rèn)證服務(wù)器與公鑰k_AS關(guān)聯(lián))。 可選地,所述密碼的輸入值在用公鑰k一(A)S加密前,用密鑰k-l簽名。 類似地,作為S15的每個(gè)子實(shí)施例,在加密前可應(yīng)用加密hash函數(shù)(HMAC)。在步驟S7-S9中,并非如大部分"安全會話建立協(xié)議"所需要的傳送 "電子簽名",而是將所述這個(gè)密碼作為非結(jié)構(gòu)化的數(shù)據(jù)傳送,沒有協(xié)議 規(guī)范強(qiáng)加的任何限制。在其他協(xié)議部分也在認(rèn)證令牌設(shè)備20上而不在通 信終端l的客戶端應(yīng)用中執(zhí)行的實(shí)施方式中,例如生成會話密鑰,其它協(xié) i義才艮文比如"ClientKeyExchange"才艮文可用來傳送密碼。在步驟S10中,服務(wù)器4解密該密碼。這會向服務(wù)器提供現(xiàn)時(shí)N-Tt、 個(gè)人識別碼PIN-U以及可能的現(xiàn)時(shí)N_Ta?,F(xiàn)時(shí)N-Tt是個(gè)"丟棄"現(xiàn)時(shí), 作為調(diào)味加入來防止pin推測攻擊。在步驟Sl 0中,服務(wù)器4還生成如在步驟S4上下文中所描述的"hash"。步驟S11-S17是不需要的。在步驟S18-S20中,認(rèn)ii^塊40不再生成認(rèn)證^ftll號N_T和交易認(rèn) 證號TAN,而是僅僅比較hash和在步驟S10中解密的PIN_U。從所述密碼 導(dǎo)出的hash與服務(wù)器4中生成的hash相比較,并且個(gè)人識別碼PIN-U與 存儲在數(shù)據(jù)庫41中的個(gè)人識別碼相比較。如果加密hash函數(shù)在S6中使 用,在比較前這些值首先也需要在服務(wù)器側(cè)進(jìn)行加密hash運(yùn)算。所有其 它的保持相等。這樣所述密碼或加密hash作為用于上述交易認(rèn)證號TAN 的可替選數(shù)據(jù)元素分別生成、交換和發(fā)汪。如果服務(wù)器4還對用戶認(rèn)證服務(wù)器4,服務(wù)器僅僅向用戶顯示從所述 密碼解密的現(xiàn)時(shí)N-Ta,來代替步驟S41到S43的計(jì)算。步驟S44-S46的比 較保持不變;計(jì)算是不需要的,僅在顯示器22上簡單地顯示現(xiàn)時(shí)N-Ta。作為本實(shí)施例的補(bǔ)充,還可實(shí)現(xiàn)改變個(gè)人識別碼PIN-U的協(xié)議。新的 個(gè)人識別碼PIN—U僅是S6中的密碼的另一輸入。盡管事實(shí)上安全會話建立協(xié)議標(biāo)準(zhǔn)沒有針對其協(xié)議字段規(guī)定固定字 段長度, 一些客戶端應(yīng)用實(shí)現(xiàn)可以嚴(yán)格地限制所分配的例如用于 "CertificateVerify"報(bào)文的內(nèi)存。在這種情況下,需要關(guān)注空間優(yōu)化 7>鑰密碼系統(tǒng),比如橢圓曲線密碼系統(tǒng)。本實(shí)施例還有一子實(shí)施例,其中個(gè)人識別碼PIN-U由用戶計(jì)算。為此, 在步驟S6中,個(gè)人識別碼PIN-U被省略。如步驟S31所述將現(xiàn)時(shí)N—Tt顯 示給用戶。如步驟S32所述計(jì)算交易認(rèn)證號TAN。用于從上述認(rèn)證基礎(chǔ)號 N-T和個(gè)人識別號PIN-U生成交易認(rèn)證號TAN的其它變量可被類似地應(yīng)用 到認(rèn)證^fife號N-T.具有短(可能單獨(dú)使用的)密鑰的具體實(shí)施例碼(或密鑰)表如印痕跡列表(scratch-list)或索引的印痕列表(如 "iTAN"、"索引的印痕列表"、"訪問卡")被金融機(jī)構(gòu)廣泛使用,但它們 易受中間人的攻擊。上面的"在客戶端沒有密鑰只有現(xiàn)時(shí)的實(shí)施例"可被 擴(kuò)展以實(shí)現(xiàn)"雙因素"認(rèn)證級別步驟S6a(在圖4、 5、 6和7中被表示為步驟S6):如果訪問卡有比如100個(gè)條目,即典型的4-6個(gè)數(shù)字字符(K-SSU)的短"密鑰",則在步 驟S4中生成的數(shù)據(jù)集(先前握手才艮文的hash)被壓縮直到它可以作為訪 問卡的密鑰表上的查找索引。在步驟S6b (在圖4、 5、 6和7中^示為步驟S6)中,被壓縮的值 (典型的2字符長)(例如被iUit^塊2或認(rèn)證令牌設(shè)備20)作為索引顯示。有可替選的方法將查找索引傳遞給客戶端應(yīng)用程序。例如,上述 "DistinguishedName certificate—authorities"歹'J表作為"隱藏信道,,可表示讓認(rèn)^塊2或認(rèn)證令牌模塊20分別知道步驟S6b中顯示什么索引的另一方法。在步驟S6c(在圖4、 5、 6和7中被表示為步驟S6)中,除了先前在 步驟S6中輸入的值之外,還輸入通過會話導(dǎo)出的查找索引來查找的密鑰 K_SSU。由于現(xiàn)時(shí)N-Tt的高度隨機(jī)性,密鑰K—SSU可用幾次。如果客戶端 應(yīng)用不允許在安全會話建立協(xié)議報(bào)文(具體是CertificateVerify報(bào)文) 中傳輸超出正常報(bào)文長度的密碼,還有另一基于"沒有交易認(rèn)證號(TAN) 的實(shí)施例"的實(shí)施例,以上內(nèi)&逸過下面步驟擴(kuò)展步驟S6a如上所述保持不變。因?yàn)楝F(xiàn)時(shí)N—Tt的隨機(jī)性不可用,這樣 的密鑰K-SSU只能用 一次。在步驟S6b,(代替步驟S6b)中,服務(wù)器4記 錄迄今為止使用的所有查找。如果有沖突,服務(wù)器4觸發(fā)重新握手,其被 重復(fù)直到到達(dá)一個(gè)未使用的索引。在這種情況下,"DistinguishedName certificate—authorities"方法可能更有效。在某一4吏用級別之后,新 訪問卡被帶外分發(fā)。在步驟S6c,(代替步驟S6c)中,在沒有現(xiàn)時(shí)的情況下生成加密hash, 并且使用密鑰K-SSU來代替密鑰K-T。然后,隨后的步驟保持不變直到步 驟S15。在步驟S15中,因?yàn)槊荑€K-SSU是短的,因此重要的是加密hash 函fcl這樣的有效加密hash N_SSU=CH_ {K—SSU} (hash, PIN-U)不能僅僅 由一對個(gè)人識別碼PIN-U和密鑰K-SSU獲得,而是被很多對個(gè)人識別碼 PIN-U和密鑰K-SSU獲得,直到個(gè)人識別碼PIN-U和密鑰K-SSU兩者的組 合"密鑰空間"的尺寸。通過這個(gè),攻擊者在推測攻擊中將不會知道他是 否已發(fā)現(xiàn)正確的個(gè)人識別碼PIN_U,而不得不總是向服務(wù)器4給出加密 hash N_SSU來驗(yàn)汪其推測。還因?yàn)閔ash典型地是40字節(jié)長,推測字典 (guessing dictionaries)需比這個(gè)組合的密鑰長很多,另外將會話綁 定到認(rèn)證,這里hash作為"調(diào)味"。如果該密鑰空間有足夠的平均信息量,使得推測攻擊占用比典型的服務(wù)器側(cè)登陸超時(shí)時(shí)間更長,那么這可以作為 一個(gè)低端解決方案。為防止對個(gè)人識別碼PIN-U的密鑰記錄攻擊,將個(gè)人識別碼PIN-U和 密鑰K—SSU的組合輸入終端,來代替單獨(dú)地將其輸入終端。類似地,密鑰K-SSU可用于上逸基于交易i^證號TAN的主要的和其它 的實(shí)施例。
權(quán)利要求
1.一種對使用通信終端通過電信網(wǎng)訪問服務(wù)器的用戶進(jìn)行認(rèn)證的方法,所述方法包括從所述用戶接收個(gè)人識別碼;從所述通信終端和所述服務(wù)器之間交換的安全會話建立協(xié)議報(bào)文生成數(shù)據(jù)集;使用所述個(gè)人識別碼,基于所述數(shù)據(jù)集生成交易認(rèn)證號;將所述交易認(rèn)證號從所述通信終端傳送到所述服務(wù)器;以及在所述服務(wù)器中基于與所述通信終端交換的所述安全會話建立協(xié)議報(bào)文驗(yàn)證所述交易認(rèn)證號。
2. 根據(jù)權(quán)利要求1所述的方法,其中所述方法還包括,在與所述通 信終端關(guān)聯(lián)的認(rèn)ii^塊中,從所述數(shù)據(jù)集生成認(rèn)證基礎(chǔ)號;其中使用所述 個(gè)人識別碼,從所述認(rèn)證基礎(chǔ)號生成所述交易認(rèn)證號;其中所述方法還包 括,在所述服務(wù)器中,從被交換的所述安全會話建立協(xié)議報(bào)文生成認(rèn)證基 礎(chǔ)號;其中所述交易認(rèn)證號在所述服務(wù)器中使用在所iii艮務(wù)器中生成的所 述認(rèn)證J^號來IHE。
3. 根據(jù)權(quán)利要求2所述的方法,其中所述方法還包括,將所述認(rèn)證 基礎(chǔ)號和所述個(gè)人識別碼輸入到未連接到所述通信終端的詢問/響應(yīng)令牌 設(shè)備;其中在所述詢問/響應(yīng)令牌設(shè)備中,基于所述認(rèn)證基礎(chǔ)號和所述個(gè) 人識別碼生成所述交易認(rèn)證號作為令牌響應(yīng)值;其中所述方法還包括,在 將所述交易認(rèn)證號傳送給所述服務(wù)器之前,將所述交易認(rèn)證號輸入進(jìn)所述 通信終端。
4. 根據(jù)權(quán)利要求2或3所述的方法,其中從所述數(shù)據(jù)集生成所述認(rèn) 證基礎(chǔ)號包括生成隨機(jī)數(shù),從所述數(shù)據(jù)集選#^選數(shù)字,所述數(shù)字由所述 隨機(jī)數(shù)的位數(shù)確定,以及根據(jù)所述被選數(shù)字和所述隨機(jī)數(shù)的位數(shù)構(gòu)成所述
5. 根據(jù)權(quán)利要求1所述的方法,其中在與所述通信終端關(guān)聯(lián)的認(rèn)證 模塊中,利用與所述服務(wù)器共享的密鑰作為密鑰,從所述個(gè)人識別碼以及 在所述通信終端和所述服務(wù)器之間交換的所述安全會話建立協(xié)議報(bào)文生 成所述交易認(rèn)證號作為鍵控加密摘要值;其中所述方法還包括,使用存儲 在所述服務(wù)器中的個(gè)人識別碼在所服務(wù)器中生成鍵控加密摘要值;其中所述交易認(rèn)證號在所述服務(wù)器中基于從所述通信終端接收的所述鍵控加密摘JHi和所述服務(wù)器中生成的所述鍵控加密摘*1的比較來mt。
6. 根據(jù)權(quán)利要求5所述的方法,將所述個(gè)人識別碼以及與所述認(rèn)證模塊關(guān)聯(lián)的令牌密鑰中之一用作所述密鑰。
7. 根據(jù)權(quán)利要求5所述的方法,其中所述方法還包括,從所述數(shù)據(jù)集生成查找索引;其中所述方法還包括使用所述查找索引在碼表中確定被 選碼;其中所述被選碼用作所述密鑰;以及其中所述服務(wù)器將來自存儲在 所i^i艮務(wù)器中的碼表的被選碼用作所述密鑰,生成所述鍵控加密摘要值。
8. 根據(jù)權(quán)利要求7所述的方法,其中所述服務(wù)器記錄所述通信終端 使用的被選碼;以及其中對于所述服務(wù)器確定被選碼先前已被所述通信終 端使用的情形,所述服務(wù)器重新發(fā)起與所述通信終端的會活建立。
9. 根據(jù)權(quán)利要求1所述的方法,其中通過使用公鑰加密所述數(shù)據(jù)集、 所述個(gè)人識別碼和至少一個(gè)現(xiàn)時(shí),在與所述通信終端關(guān)聯(lián)的認(rèn)iJE^塊中生 成所述交易認(rèn)證號作為密碼;其中所述方法還包括,在所^J3艮務(wù)器中通過 使用私鑰解密所述密碼來確定所接收的數(shù)據(jù)集和所接收的個(gè)人識別碼;以 及其中,基于所接收的數(shù)據(jù)集與在所述服務(wù)器中從所交換的所述安全M 建立協(xié)議報(bào)文生成的數(shù)據(jù)集的比較、以及基于所接收的個(gè)人識別碼與存儲 在所述服務(wù)器中的個(gè)人識別碼的比較,在所述服務(wù)器中驗(yàn)證所述交易認(rèn)證 號。
10. 根據(jù)權(quán)利要求9所述的方法,其中所述方法還包括,從所述數(shù)據(jù) 集生成查找索引,JW吏用所述查找索引在碼表中確定被選碼;其中所述被 選碼用來生成所述密碼;其中所述服務(wù)器使用所述私鑰,從所述密碼確定 所接收的被選碼;以及其中發(fā)汪所述交易認(rèn)證號包括將所接收的被選碼和 由所述服務(wù)器從其存儲的碼表中確定的被選碼進(jìn)行比較。
11. 根據(jù)權(quán)利要求10所述的方法,其中所述服務(wù)器記錄所述通信終 端使用的被選碼;以及其中對于所^i艮務(wù)器確定被選碼先前已被所述通信 終端使用的情形,所述服務(wù)器重新^與所述通信終端的會話建立。
12. 根據(jù)權(quán)利要求1所述的方法,其中所述交易認(rèn)證號和用戶標(biāo)識符 從所述通信終端傳送到所i^i艮務(wù)器;以及其中在所述服務(wù)器中使用分配給 所述用戶標(biāo)識符的所述個(gè)人識別碼來驗(yàn)證所述交易認(rèn)證號。
13. 根據(jù)權(quán)利要求12所述的方法,其中從所述用戶接收所述個(gè)人識 別碼以及生物測定標(biāo)識符;以及其中在所述服務(wù)器中使用存儲在所^i艮務(wù)器中的生物測定標(biāo)識符來驗(yàn)汪所述交易認(rèn)證號。
14. 根據(jù)權(quán)利要求1所述的方法,其中所述方法還包括,在與所述通 信終端關(guān)聯(lián)的認(rèn)ii^塊中,使用與所述認(rèn)證模塊關(guān)聯(lián)的密鑰對中的私鑰, 從所述數(shù)據(jù)集生成數(shù)字簽名;將所述數(shù)字簽名從所述通信終端傳送到所述 服務(wù)器;以及在所述服務(wù)器中使用所述密鑰對中的公鑰來驗(yàn)證所述數(shù)字簽 名。
15. 根據(jù)權(quán)利要求2所述的方法,其中在與所述通信終端關(guān)聯(lián)的認(rèn)證 模塊中,使用與所述認(rèn)M塊關(guān)聯(lián)的令牌密鑰,從所述數(shù)據(jù)集生成所述認(rèn) 證基礎(chǔ)號;以及其中在服務(wù)器中,使用所述令牌密鑰,從所交換的安全會 話建立協(xié)議報(bào)文生成所述認(rèn)證基礎(chǔ)號,
16. 根據(jù)權(quán)利要求15所述的方法,其中所述數(shù)據(jù)集通過將所述認(rèn)證 模塊連接到所述通信終端的設(shè)備接口 ,從所述通信終端傳送到所述i^^ 塊;以及其中所述令牌密鑰存儲在所述iUit^塊中。
17. 根據(jù)權(quán)利要求16所述的方法,其中令牌標(biāo)識符與所述交易認(rèn)證 號一起從所i^it信終端傳送到所述服務(wù)器;以及其中所述令牌密鑰在所述 服務(wù)器中基于所述令牌標(biāo)識符來確定。
18. 根據(jù)權(quán)利要求17所述的方法,其中主密鑰存儲在所述服務(wù)器中; 以及其中在所述服務(wù)器中,使用用于加密所述令牌標(biāo)識符的所述主密鑰從 所述令牌標(biāo)識符生成所述令牌密鑰。
19. 根據(jù)權(quán)利要求15所述的方法,其中所述用戶為所述認(rèn)M塊選 擇多個(gè)可能^J范圍中的 一個(gè);其中所述用戶選擇的所iMM^范圍使所述 認(rèn)證模塊使用包括多個(gè)令牌密鑰的令牌密鑰集中的一個(gè)特定于機(jī)構(gòu)的令 牌密鑰來生成所述認(rèn)證基礎(chǔ)號;其中所述服務(wù)器與特定機(jī)構(gòu)相關(guān)聯(lián),并使 用所述特定于機(jī)構(gòu)的令牌密鑰來生成所述認(rèn)證基礎(chǔ)號;以及其中所ilJJ艮務(wù) 器使用特定于機(jī)構(gòu)的個(gè)人識別碼來驗(yàn)證所述交易認(rèn)證號。
20. 根據(jù)權(quán)利要求2所述的方法,其中所述認(rèn)證基礎(chǔ)號由與所述通信 終端關(guān)聯(lián)的認(rèn)ii^塊來顯示;以及其中在所述通信終端中從所述用戶接收 所述交易認(rèn)證號,所述交易認(rèn)證號由所述用戶從所述個(gè)人識別碼和由所述 iUi^塊顯示的所述i人證基礎(chǔ)號生成。
21. 根據(jù)權(quán)利要求1所述的方法,其中在所述服務(wù)器中成功驗(yàn)證所述 交易認(rèn)證號后,在所述服務(wù)器中,對所述數(shù)據(jù)集應(yīng)用公共函數(shù)并使用令牌 密鑰來加密,而從所述數(shù)據(jù)集生成服務(wù)器認(rèn)證碼;其中所述服務(wù)器認(rèn)證碼從所述服務(wù)器傳送到所述通信終端;其中從所述服務(wù)器接收的所述服務(wù)器 認(rèn)證碼被所述通信終端顯示;其中在與所述通信終端關(guān)聯(lián)的i人證模塊中, 對所述數(shù)據(jù)集應(yīng)用公共函數(shù)并使用所述令牌密鑰加密,而從所述數(shù)據(jù)集生 成服務(wù)器認(rèn)證碼;以及其中在所述認(rèn)證模塊中生成的所述服務(wù)器認(rèn)證碼被 所述認(rèn)ii^溪塊顯示,以便對所述通信終端顯示的所述服務(wù)器認(rèn)ii^進(jìn)行可
22. —種計(jì)算機(jī)程序產(chǎn)品,包括用于控制通信終端的一個(gè)或多個(gè)處理 器的計(jì)算M序代碼裝置,^f吏得所述通信終端從用戶接收個(gè)人識別碼;從所述通信終端和服務(wù)器之間交換的安全會話建立協(xié)議報(bào)文生成數(shù) 據(jù)集;使用所述個(gè)人識別碼,基于所述數(shù)據(jù)集生成交易認(rèn)證號;以及 將所述交易認(rèn)證號發(fā)送給所述服務(wù)器來 £。
23. 根據(jù)權(quán)利要求22所述的計(jì)算^^呈序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端從所述數(shù)據(jù)集生成認(rèn)證基礎(chǔ)號,以及使用所述個(gè) 人識別碼從所述認(rèn)證基礎(chǔ)號生成所述交易認(rèn)證號的計(jì)算;^序代碼裝置。
24. 根據(jù)權(quán)利要求23所述的計(jì)算機(jī)程序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端生成隨機(jī)數(shù),從所述數(shù)據(jù)集選#^選數(shù)字,以及 從所述被選數(shù)字和所述隨機(jī)數(shù)的位數(shù)構(gòu)成所述認(rèn)證基礎(chǔ)號的計(jì)算機(jī)程序 代碼裝置,所述被選數(shù)字由所述隨機(jī)數(shù)的位數(shù)來確定。
25. 根據(jù)權(quán)利要求22所述的計(jì)算;^序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端將與所述服務(wù)器共享的密鑰作為密鑰,從所述個(gè) 人識別碼和在所述通信終端與所述服務(wù)器之間交換的安全會話建立協(xié)議 報(bào)文生成所述交易認(rèn)證號作為鍵控密碼摘要值的計(jì)算機(jī)程序代碼裝置。
26. 根據(jù)權(quán)利要求25所述的計(jì)算;^序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端將所述個(gè)人識別碼和令牌密鑰中的一個(gè)用作所 述密鑰的計(jì)算機(jī)程序代碼裝置。
27. 根據(jù)權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端從所述數(shù)據(jù)集生成查找索引,在碼表中使用所述 查找索引確定被選碼,以及將所述被選碼用作所述密鑰的計(jì)算M序代碼 裝置。
28. 根據(jù)權(quán)利要求22所述的計(jì)算;^序產(chǎn)品,還包括用于控制所述 處理器4吏得所述通信終端通過4吏用 〃>鑰加密所述數(shù)據(jù)集、所述個(gè)人識別碼 和至少一個(gè)現(xiàn)時(shí)來生成所述交易認(rèn)證號作為密碼的計(jì)算M序代碼裝置。
29. 根據(jù)權(quán)利要求28所述的計(jì)算^4呈序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端從所述數(shù)據(jù)集生成查找索引,在碼表中使用所述 查找索引確定被選碼,以及使用所述被選碼生成所述密碼的計(jì)算^^呈序代 碼裝置。
30. 根據(jù)權(quán)利要求22所述的計(jì)算;fc^呈序產(chǎn)品,還包括用于控制所述 處理器4吏得所述通信終端通過所述通信終端的傳感器從所述用戶接收生 物測定標(biāo)識符,且所述通信終端將所述生物測定標(biāo)識符用作所述個(gè)人識別 碼的計(jì)算;l^序代碼裝置。
31. 根據(jù)權(quán)利要求23所述的計(jì)算;^序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端接收指令來選擇多個(gè)可能機(jī)構(gòu)范圍中的一個(gè),以 及使所述通信終端使用包括多個(gè)令牌密鑰的令牌密鑰集中的一個(gè)特定于 機(jī)構(gòu)的令牌密鑰來生成所述認(rèn)證基礎(chǔ)號的計(jì)算積4呈序代碼裝置。
32. 根據(jù)權(quán)利要求22所述的計(jì)算;t^呈序產(chǎn)品,還包括用于控制所述 處理器使得所述通信終端從所^艮務(wù)器接W艮務(wù)器認(rèn)證碼,使所述通信終 端對所述數(shù)據(jù)集應(yīng)用公共函數(shù)并使用所述令牌密鑰加密,而從所述數(shù)據(jù)集 生成服務(wù)器認(rèn)證碼,以及使所述通信終端基于由所述通信終端生成的所述 服務(wù)器認(rèn)證碼來!HiE從所述服務(wù)器接收的所述服務(wù)器認(rèn)證碼的計(jì)算機(jī)程 序代碼裝置。
33. —種計(jì)算機(jī)化服務(wù)器,配置為通過電信網(wǎng)與通信終端交換數(shù)據(jù), 所^良務(wù)器包括用戶iUi^夾,該用戶認(rèn)M塊配置為從所述通信終端接收交易認(rèn)證號,所述交易認(rèn)證號基于從所述通信終 端的用戶接收的個(gè)人識別碼,以及基于從所述通信終端和所述服務(wù)器之間 交換的安全會話建立協(xié)議l艮文生成的數(shù)據(jù)集;以及基于與所述通信終端交換的所述安全會話建立協(xié)議報(bào)文來驗(yàn)證接收 的所述交易認(rèn)證號。
34. 根據(jù)權(quán)利要求33所述的服務(wù)器,其中所述用戶認(rèn)證模塊配置為 從所交換的所述安全會話建立協(xié)議報(bào)文生成認(rèn)證基礎(chǔ)號,并使用所生成的 所述認(rèn)證基礎(chǔ)號和所述個(gè)人識別碼來mit接收的所述交易認(rèn)證號。
35. 根據(jù)權(quán)利要求34所述的服務(wù)器,其中所述用戶認(rèn)iit^塊配置為通過生成隨機(jī)數(shù),通過從所述數(shù)據(jù)集選##:選數(shù)字,所述數(shù)字由所述隨機(jī) 數(shù)的位數(shù)確定,以及通it^所述被選數(shù)字和所述隨機(jī)數(shù)的所述位數(shù)構(gòu)成所 述i^證^ftb號,來生成所述i^證^^i號。
36. 根據(jù)權(quán)利要求33所述的服務(wù)器,其中所述用戶認(rèn)證模塊配置為 使用存儲在所述服務(wù)器中的個(gè)人識別碼,且將與所述通信終端共享的密鑰 用作密鑰,從所述個(gè)人識別碼和在所述通信終端與所述服務(wù)器之間交換的 所述安全會話建立協(xié)議報(bào)文生成交易認(rèn)證號作為鍵控加密摘JHi;基于所 接收的所述交易認(rèn)證號和在所述服務(wù)器中生成的所述鍵控加密摘要值的 比較來^接收的所述交易認(rèn)證號。
37. 根據(jù)權(quán)利要求36所述的服務(wù)器,其中所述用戶認(rèn)^塊配置為, 將與用戶關(guān)聯(lián)的所述個(gè)人識別碼和令牌密鑰中的一個(gè)用作所述密鑰,來生 成所述鍵控加密摘要值。
38. 根據(jù)權(quán)利要求36所述的服務(wù)器,其中所述用戶認(rèn)^塊配置為, 將來自存儲在所i^i艮務(wù)器中的碼表中的被選碼用作所述密鑰,來生成所述 鍵控加密摘要值。
39. 根據(jù)權(quán)利要求33所述的服務(wù)器,其中所述用戶認(rèn)iit^塊配置為, 通過使用公鑰加密所述數(shù)據(jù)集、所述個(gè)人識別碼和至少一個(gè)現(xiàn)時(shí),生成交 易認(rèn)證號作為密碼;通過使用私鑰解密從所述通信終端接收的密碼來確定 接收的數(shù)據(jù)集和接收的個(gè)人識別碼;基于所接收的數(shù)據(jù)集與在所述服務(wù)器 中從所交換的安全會話建立協(xié)議報(bào)文生成的數(shù)據(jù)集的比較,以及基于所接 收的個(gè)人識別碼與存儲在所述服務(wù)器中的個(gè)人識別碼的比較,來IHii接收 的所述交易認(rèn)證號。
40. 根據(jù)權(quán)利要求39所述的服務(wù)器,其中所述用戶認(rèn)i^塊配置為, 使用所述私鑰,根據(jù)從所述通信終端接收的所述密碼來確定所接收的被選 碼;當(dāng)^ii所述交易認(rèn)證號時(shí),將所接收的被選碼與從存儲在所述服務(wù)器 中的碼表所確定的被選碼進(jìn)行比較。
41. 根據(jù)權(quán)利要求38或40所述的服務(wù)器,其中所述用戶認(rèn)M塊配 置為,記錄用于所述通信終端的被選碼,并且,對于被選碼先前已由所述 通信終端使用的情形,重新^與所述通信終端的會話建立。
42. 根據(jù)權(quán)利要求33所述的服務(wù)器,其中所述用戶認(rèn)ii^塊配置為, 接收包括所述用戶的生物測定標(biāo)識符的個(gè)人識別碼;以及使用存儲在所述 服務(wù)器中的生物測定標(biāo)識符來驗(yàn)證所述交易認(rèn)證號。
43. 根據(jù)權(quán)利要求34所述的服務(wù)器,其中所述用戶認(rèn)^塊配置為, 使用令牌密鑰,從所交換的所述安全會話建立協(xié)議報(bào)文生成所述認(rèn)證^ftfe 號。
44. 根據(jù)權(quán)利要求43所述的服務(wù)器,其中所述用戶認(rèn)證模塊配置為, 從所述通信終端接收令牌標(biāo)識符和所述交易i人證號,以及基于所述令牌標(biāo) 識符確定所述令牌密鑰。
45. 根據(jù)權(quán)利要求43所述的服務(wù)器,其中所ili艮務(wù)器還包括所存儲 的主密鑰,以及其中所述用戶認(rèn)iiE^塊配置為,使用用于加密所述4^牌標(biāo) 識符的主密鑰,從所述令牌標(biāo)識符生成所述令牌密鑰。
46. 根據(jù)權(quán)利要求33所述的服務(wù)器,其中所述用戶認(rèn)ii^塊配置為, 在成功j^iit所述交易認(rèn)證號后,對所述數(shù)據(jù)集應(yīng)用公共函數(shù)且4吏用所述令 牌密鑰加密,而從所述數(shù)據(jù)集生成服務(wù)器認(rèn)證碼,并將所述服務(wù)器認(rèn)證碼 傳送到所述通信終端。
47. —種由使用通信終端通過電信網(wǎng)訪問服務(wù)器的用戶改變個(gè)人識別 碼的方法,所述方法包括從所述用戶接收舊的個(gè)人識別碼;從所迷用戶接收新的個(gè)人識別碼;從在所述通信終端和所述服務(wù)器之間交換的安全會話建立協(xié)議報(bào)文 生成lt據(jù)集;在與所述通信終端關(guān)聯(lián)的iUi^塊中,使用與所述認(rèn)ii^塊關(guān)聯(lián)的令 牌密鑰,從所述數(shù)據(jù)集生成認(rèn)證基礎(chǔ)號;從所述認(rèn)證基礎(chǔ)號、所述舊的個(gè)人識別碼以及所述新的個(gè)人識別碼生 成識別改變碼;將所述識別改變碼從所述通信終端傳送到所iii艮務(wù)器;在所述服務(wù)器中,使用所述令牌密鑰,從交換的所述安全會活建立協(xié) i義才艮文生成認(rèn)證基礎(chǔ)號;以及在所述服務(wù)器中,使用所述舊的個(gè)人識別碼和在所述服務(wù)器中生成的 所述認(rèn)證基礎(chǔ)號,從所述識別改變碼導(dǎo)出所述新的個(gè)人識別碼。
全文摘要
為了對使用通信終端(1)通過電信網(wǎng)來訪問服務(wù)器(4)的用戶進(jìn)行認(rèn)證,從用戶接收個(gè)人識別碼。從在通信終端(1)和服務(wù)器(4)之間交換的安全會話建立協(xié)議報(bào)文(S1,S2,S3)生成數(shù)據(jù)集(S4)?;谠摂?shù)據(jù)集,利用個(gè)人識別碼來生成交易認(rèn)證號(S52)。交易認(rèn)證號從通信終端(1)傳送到服務(wù)器(4)。在服務(wù)器(4)中,基于與通信終端(1)交換的安全會話建立協(xié)議報(bào)文來驗(yàn)證所接收的交易認(rèn)證號(S20)。交易認(rèn)證號使會話知曉(session aware)的用戶認(rèn)證能夠保護(hù)在線用戶免遭實(shí)時(shí)的中間人攻擊。
文檔編號G06F1/00GK101278538SQ200680036941
公開日2008年10月1日 申請日期2006年10月5日 優(yōu)先權(quán)日2005年10月5日
發(fā)明者拉爾夫·豪澤 申請人:普里瓦斯菲爾公司