專利名稱:詢問響應(yīng)系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及通信領(lǐng)域,并且具體地涉及一種詢問響應(yīng)系統(tǒng)和方法。
背景技術(shù):
諸如個(gè)人數(shù)字助理(PDA)、蜂窩電話、無(wú)線通信設(shè)備之類的移動(dòng)設(shè)備有時(shí)連接到用戶的桌面系統(tǒng),以便在用戶的桌面系統(tǒng)與他們的移動(dòng)設(shè)備之間同步信息。諸如用戶的日歷、任務(wù)列表以及電話簿條目之類的信息是日常在桌面系統(tǒng)與移動(dòng)設(shè)備之間同步的信息的示例。
這種信息常常在本質(zhì)上是機(jī)密的,并且應(yīng)該保密。于是,向用戶提供用于在移動(dòng)設(shè)備上指定設(shè)備密碼的選項(xiàng),以便確保移動(dòng)設(shè)備的安全,并且防止在不知道設(shè)備密碼的情況下使用設(shè)備。
當(dāng)移動(dòng)設(shè)備連接到桌面系統(tǒng)以便同步信息時(shí),移動(dòng)設(shè)備向桌面系統(tǒng)發(fā)出詢問,以確定該桌面系統(tǒng)是否被授權(quán)來(lái)發(fā)起與移動(dòng)設(shè)備的連接。桌面系統(tǒng)然后向移動(dòng)設(shè)備提供響應(yīng)。如果桌面系統(tǒng)提供的響應(yīng)與移動(dòng)設(shè)備所期望的響應(yīng)匹配,則允許桌面系統(tǒng)連接到移動(dòng)設(shè)備,并開始同步信息。
通常,所發(fā)出的詢問是對(duì)用戶密碼的散列的請(qǐng)求。散列函數(shù)(例如,SHA-1)是單向函數(shù),其獲得一個(gè)輸入或可變長(zhǎng)度,并且將其轉(zhuǎn)換為唯一的輸出。響應(yīng)于移動(dòng)設(shè)備的詢問,將發(fā)起連接的桌面系統(tǒng)的用戶所提供的密碼的散列發(fā)送到該設(shè)備。如果響應(yīng)與所存儲(chǔ)的設(shè)備密碼的散列相匹配,則允許桌面系統(tǒng)連接到移動(dòng)設(shè)備,并開始同步信息。
設(shè)備密碼通常不存儲(chǔ)在設(shè)備上。只有設(shè)備密碼的散列存儲(chǔ)在設(shè)備上。然而,因?yàn)樵O(shè)備密碼本身不存儲(chǔ)在設(shè)備上,所以如果在移動(dòng)設(shè)備上只有設(shè)備密碼的散列可用,則不能執(zhí)行某些需要使用設(shè)備密碼的操作。例如,如果使用設(shè)備密碼將移動(dòng)設(shè)備上的信息加密,則必須提供設(shè)備密碼,以便在與桌面系統(tǒng)同步之前解密信息。
發(fā)明內(nèi)容
根據(jù)這里提供的教導(dǎo),為詢問響應(yīng)方案提供了系統(tǒng)和方法,其中可以在請(qǐng)求設(shè)備與認(rèn)證設(shè)備之間安全傳輸秘密事項(xiàng)(例如,密碼)。作為系統(tǒng)和方法的示例,認(rèn)證設(shè)備生成要向請(qǐng)求設(shè)備發(fā)出的詢問。請(qǐng)求設(shè)備將詢問與請(qǐng)求設(shè)備的用戶所提供的密碼的散列組合,并且進(jìn)一步對(duì)密碼的散列與詢問的組合進(jìn)行散列,以便生成用來(lái)對(duì)用戶提供的密碼進(jìn)行加密的請(qǐng)求密鑰。將加密的用戶提供密碼發(fā)送到認(rèn)證設(shè)備,作為對(duì)所發(fā)出的詢問的響應(yīng)。認(rèn)證設(shè)備通過生成詢問與所存儲(chǔ)的認(rèn)證設(shè)備密碼的散列的組合的散列來(lái)生成認(rèn)證密鑰。使用認(rèn)證密鑰來(lái)解密響應(yīng),以便恢復(fù)用戶提供密碼。如果用戶提供密碼的散列與所存儲(chǔ)的認(rèn)證設(shè)備密碼的散列匹配,那么就認(rèn)證了請(qǐng)求設(shè)備,并且認(rèn)證設(shè)備擁有了密碼。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種由認(rèn)證設(shè)備對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證的方法,所述請(qǐng)求設(shè)備和認(rèn)證設(shè)備每個(gè)都可操作來(lái)執(zhí)行單向散列操作以及基于密鑰的加密操作,所述認(rèn)證設(shè)備存儲(chǔ)通過向規(guī)定密碼應(yīng)用散列操作而生成的所述規(guī)定密碼的散列,所述認(rèn)證設(shè)備還可操作來(lái)執(zhí)行基于密鑰的解密操作,以便對(duì)從所述加密操作獲得的值進(jìn)行解密,所述方法包括如下步驟所述請(qǐng)求設(shè)備接收用戶密碼,并且對(duì)所述用戶密碼執(zhí)行散列操作,以獲得所述用戶密碼的散列;所述認(rèn)證設(shè)備確定并向所述請(qǐng)求設(shè)備發(fā)送詢問;所述請(qǐng)求設(shè)備接收所述詢問,并通過對(duì)所述詢問與所述用戶密碼的散列的組合執(zhí)行散列操作,來(lái)定義請(qǐng)求密鑰;所述請(qǐng)求設(shè)備使用所述請(qǐng)求密鑰來(lái)執(zhí)行加密操作,以加密所述用戶密碼;所述請(qǐng)求設(shè)備向所述認(rèn)證設(shè)備發(fā)送包括所述加密用戶密碼的響應(yīng);
所述認(rèn)證設(shè)備接收所述響應(yīng),并且通過對(duì)所述詢問和所述規(guī)定密碼的散列的組合執(zhí)行散列操作,定義認(rèn)證密鑰;所述認(rèn)證設(shè)備在解密操作中使用所述認(rèn)證密鑰來(lái)解密所述響應(yīng),以獲得解密的用戶密碼,并且對(duì)所述解密的用戶密碼執(zhí)行單向散列操作;所述認(rèn)證設(shè)備將所述解密的用戶密碼的散列與所述規(guī)定密碼的散列進(jìn)行比較,以在所述比較指示匹配時(shí),認(rèn)證所述請(qǐng)求設(shè)備。
根據(jù)本發(fā)明的另一方面,上述方法還包括如下步驟所述認(rèn)證設(shè)備使用所述解密的用戶密碼來(lái)對(duì)所述認(rèn)證設(shè)備執(zhí)行操作。
根據(jù)本發(fā)明的另一方面,在上述方法中,所述認(rèn)證設(shè)備是無(wú)線手持設(shè)備,并且所述請(qǐng)求設(shè)備是桌面計(jì)算機(jī),并且所述請(qǐng)求設(shè)備的認(rèn)證必須在所述無(wú)線手持設(shè)備與所述請(qǐng)求設(shè)備之間建立連接,所述方法還包括如下步驟在所述認(rèn)證設(shè)備確定并發(fā)送詢問之前,所述請(qǐng)求設(shè)備向所述認(rèn)證設(shè)備發(fā)送連接請(qǐng)求,并且對(duì)所述請(qǐng)求設(shè)備進(jìn)行認(rèn)證的步驟包括如下步驟當(dāng)所述解密的用戶密碼的散列與所述規(guī)定密碼的散列不匹配時(shí),拒絕建立連接。
根據(jù)本發(fā)明的另一方面,提供了一種包括可操作來(lái)執(zhí)行上述方法的代碼的計(jì)算設(shè)備程序產(chǎn)品。
根據(jù)本發(fā)明的另一方面,提供了一種對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證的認(rèn)證設(shè)備的系統(tǒng),包括詢問發(fā)生器,用于生成詢問;通信鏈路,用于將所述詢問發(fā)送到所述請(qǐng)求設(shè)備,并且從所述請(qǐng)求設(shè)備接收對(duì)所述詢問的響應(yīng),所述響應(yīng)包括使用請(qǐng)求密鑰加密的請(qǐng)求密碼,所述請(qǐng)求密鑰包括所述詢問與所述請(qǐng)求密碼的散列的組合的散列;散列發(fā)生器,用于通過對(duì)所述詢問與預(yù)定密碼的散列的組合進(jìn)行散列,來(lái)生成認(rèn)證密鑰;解密器,用于使用所述認(rèn)證密鑰來(lái)對(duì)加密的請(qǐng)求密碼進(jìn)行解密,以獲得解密響應(yīng);以及比較器,用于比較所述解密響應(yīng)的散列與所述預(yù)定密碼的散列,如果所述解密的請(qǐng)求密碼的散列與所述預(yù)定密碼的散列相匹配,則認(rèn)證了所述請(qǐng)求設(shè)備。
根據(jù)本發(fā)明的另一方面,提供了一種用于將信息安全發(fā)送到接收設(shè)備的方法,向所述接收設(shè)備提供信息的散列、隨機(jī)數(shù)、以及接收密鑰(包括所述隨機(jī)數(shù)的散列和所述信息的散列),所述方法包括如下步驟從所述接收設(shè)備接收隨機(jī)數(shù);編碼所述信息,以產(chǎn)生所述信息的散列;將所述隨機(jī)數(shù)與所述信息的散列組合;對(duì)組合后的隨機(jī)數(shù)和所述信息的散列進(jìn)行散列,以產(chǎn)生發(fā)送密鑰;使用所述發(fā)送密鑰加密所述信息;將加密的信息發(fā)送到所述接收設(shè)備,以便所述接收設(shè)備使用所述接收密鑰來(lái)解密。
根據(jù)本發(fā)明的另一方面,提供了一種由認(rèn)證設(shè)備對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證的方法,所述請(qǐng)求設(shè)備接收用戶密碼,向所述認(rèn)證設(shè)備提供預(yù)定密碼的散列、隨機(jī)數(shù)、以及接收密鑰(包括所述隨機(jī)數(shù)的散列和所述預(yù)定密碼的散列),所述方法包括所述請(qǐng)求設(shè)備的如下步驟從所述認(rèn)證設(shè)備接收隨機(jī)數(shù);編碼所述用戶密碼,以產(chǎn)生所述用戶密碼的散列;將所述隨機(jī)數(shù)與所述用戶密碼的散列組合;對(duì)組合后的隨機(jī)數(shù)與所述用戶密碼的散列進(jìn)行散列,以產(chǎn)生發(fā)送密鑰;使用所述發(fā)送密鑰加密所述用戶密碼;將加密的用戶密碼發(fā)送到所述認(rèn)證設(shè)備,以便所述認(rèn)證設(shè)備通過使用所述接收密鑰進(jìn)行解密來(lái)進(jìn)行認(rèn)證。
根據(jù)本發(fā)明的另一方面,提供了一種由認(rèn)證設(shè)備對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證的方法,所述請(qǐng)求設(shè)備和認(rèn)證設(shè)備每個(gè)都可操作來(lái)執(zhí)行單向散列操作以及基于密鑰的加密操作,所述認(rèn)證設(shè)備存儲(chǔ)通過向規(guī)定密碼應(yīng)用散列操作而生成的所述規(guī)定密碼的散列,所述認(rèn)證設(shè)備還可操作來(lái)執(zhí)行基于密鑰的解密操作,以便對(duì)從所述加密操作獲得的值進(jìn)行解密,所述方法包括所述認(rèn)證設(shè)備的如下步驟確定并向所述請(qǐng)求設(shè)備發(fā)送詢問;從所述請(qǐng)求設(shè)備接收響應(yīng),所述響應(yīng)包括通過對(duì)所述詢問和接收到的用戶密碼的散列的組合執(zhí)行散列操作而確定的請(qǐng)求密鑰,其中通過對(duì)所述接收到的用戶密碼執(zhí)行散列操作來(lái)定義所述散列;通過對(duì)所述詢問和所述規(guī)定密碼的散列的組合執(zhí)行散列操作,定義認(rèn)證密鑰;在解密操作中使用所述認(rèn)證密鑰來(lái)解密所述響應(yīng),以獲得解密的用戶密碼,并且對(duì)所述解密的用戶密碼執(zhí)行單向散列操作;將所述解密的用戶密碼的散列與所述規(guī)定密碼的散列進(jìn)行比較,以在所述比較指示匹配時(shí),認(rèn)證所述請(qǐng)求設(shè)備。
將會(huì)認(rèn)識(shí)到,本發(fā)明能夠具有其他不同實(shí)施例,并且本發(fā)明的數(shù)個(gè)細(xì)節(jié)可以在各個(gè)方面進(jìn)行修改,所有這些都不脫離本發(fā)明的精神。因此,下面提出的優(yōu)選實(shí)施例的附圖和描述應(yīng)該視為實(shí)質(zhì)上是說(shuō)明性的而非限制性的。
具體實(shí)施例方式
圖1是其中可以使用無(wú)線通信設(shè)備的示例通信系統(tǒng)的概圖。本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,可以存在許多不同的拓?fù)?,但是圖1所示的系統(tǒng)有助于論證編碼消息處理系統(tǒng)的操作以及本申請(qǐng)中所述的方法。還可以存在許多消息發(fā)送者和接收者。圖1所示的該系統(tǒng)僅僅用于說(shuō)明目的,并且可能表示了最普遍的因特網(wǎng)電子郵件環(huán)境(通常不使用安全性)。
圖1示出了電子郵件發(fā)送者10、因特網(wǎng)20、消息服務(wù)器系統(tǒng)40、無(wú)線網(wǎng)關(guān)85、無(wú)線基礎(chǔ)設(shè)施90、無(wú)線網(wǎng)絡(luò)105、以及移動(dòng)通信設(shè)備100。
電子郵件發(fā)送者系統(tǒng)10例如可以連接到位于公司內(nèi)部的ISP(因特網(wǎng)服務(wù)供應(yīng)商),在該ISP上系統(tǒng)10的用戶具有帳戶,該ISP可能連接到局域網(wǎng)(LAN)并連接到因特網(wǎng)20,或者通過諸如AmericanOnline(AOL)之類的大ASP(應(yīng)用服務(wù)供應(yīng)商)連接到因特網(wǎng)20。本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,雖然電子郵件傳送通常是通過圖1所示的因特網(wǎng)連接布置完成的,但是圖1所示的系統(tǒng)實(shí)際上可以連接到廣域網(wǎng)(WAN)而不是因特網(wǎng)。
消息服務(wù)器40例如可以實(shí)現(xiàn)在公司防火墻內(nèi)的網(wǎng)絡(luò)計(jì)算機(jī)上、ISP或ASP系統(tǒng)內(nèi)的計(jì)算機(jī)上,并且充當(dāng)通過因特網(wǎng)20進(jìn)行電子郵件交換的主接口。雖然其他消息系統(tǒng)可能不需要消息服務(wù)器系統(tǒng)40,但是被配置來(lái)接收并且可能發(fā)送電子郵件的移動(dòng)設(shè)備100通常與消息服務(wù)器上的帳戶關(guān)聯(lián)在一起。兩種可能是最常見的消息服務(wù)器是Microsoft ExchangeTM和Lotus DominoTM。這些產(chǎn)品通常與路由并傳送郵件的因特網(wǎng)郵件路由器結(jié)合使用。圖1中沒有示出這些中間組件,因?yàn)樗鼈冊(cè)谙率霭踩⑻幚碇胁⒉恢苯影缪萁巧?。諸如服務(wù)器40之類的消息服務(wù)器通常不僅僅發(fā)送和接收電子郵件;它們還包括動(dòng)態(tài)數(shù)據(jù)庫(kù)存儲(chǔ)引擎,這些動(dòng)態(tài)數(shù)據(jù)庫(kù)存儲(chǔ)引擎具有數(shù)據(jù)(例如,日歷、待辦事項(xiàng)清單、任務(wù)列表、電子郵件以及文檔)的預(yù)定數(shù)據(jù)庫(kù)格式。
無(wú)線網(wǎng)關(guān)85和基礎(chǔ)設(shè)施90提供因特網(wǎng)20與無(wú)線網(wǎng)絡(luò)105之間的鏈路。當(dāng)給定的用戶在國(guó)家或網(wǎng)絡(luò)之間漫游時(shí),無(wú)線基礎(chǔ)設(shè)施90確定該用戶最有可能所在的網(wǎng)絡(luò)并跟蹤該用戶。然后通常以射頻(RF)通過從無(wú)線網(wǎng)絡(luò)105中的基站到移動(dòng)設(shè)備100的無(wú)線傳輸,將消息傳送到移動(dòng)設(shè)備100。具體的網(wǎng)絡(luò)105實(shí)際上可以是可以用來(lái)與移動(dòng)通信設(shè)備交換信息的任何無(wú)線網(wǎng)絡(luò)。
如圖1所示,所編寫的電子郵件消息15由位于因特網(wǎng)20某處的電子郵件發(fā)送者10發(fā)送。該消息15通常是完全明文的,并且使用傳統(tǒng)的簡(jiǎn)單郵件傳輸協(xié)議(SMTP)、RFC822報(bào)頭以及多目標(biāo)因特網(wǎng)郵件擴(kuò)展(MIME)主體部分來(lái)定義郵件消息的格式。這些技術(shù)對(duì)本領(lǐng)域的技術(shù)人員來(lái)說(shuō)是公知的。消息15到達(dá)消息服務(wù)器40,并且通常被存儲(chǔ)在消息存儲(chǔ)裝置中。最知名的消息系統(tǒng)支持所謂的“拉”消息訪問方案,其中移動(dòng)設(shè)備100必須請(qǐng)求消息服務(wù)器將所存儲(chǔ)的消息轉(zhuǎn)發(fā)到移動(dòng)設(shè)備100。某些系統(tǒng)對(duì)使用與移動(dòng)設(shè)備100相關(guān)聯(lián)的特定電子郵件地址來(lái)尋址的這些消息提供自動(dòng)路由選擇。在下面將更詳細(xì)描述的優(yōu)選實(shí)施例中,在接收到被尋址到與屬于移動(dòng)設(shè)備100的用戶的主機(jī)系統(tǒng)(例如,家用計(jì)算機(jī)或辦公計(jì)算機(jī))相關(guān)聯(lián)的消息服務(wù)器帳戶的消息時(shí),將這些消息從消息服務(wù)器40重定向到移動(dòng)設(shè)備100。
無(wú)論用于控制向移動(dòng)設(shè)備100轉(zhuǎn)發(fā)消息的具體機(jī)制如何,消息15或者可能是其翻譯或重新調(diào)整格式的版本被發(fā)送到無(wú)線網(wǎng)關(guān)85。無(wú)線基礎(chǔ)設(shè)施90包括一系列到無(wú)線網(wǎng)絡(luò)105的連接。這些連接可以是綜合業(yè)務(wù)數(shù)字網(wǎng)絡(luò)(ISDN)、幀中繼或T1連接(使用整個(gè)因特網(wǎng)中所使用的TCP/IP協(xié)議)。這里所使用的術(shù)語(yǔ)“無(wú)線網(wǎng)絡(luò)”意在包括三種不同類型的網(wǎng)絡(luò),它們是(1)以數(shù)據(jù)為中心的無(wú)線網(wǎng)絡(luò);(2)以語(yǔ)音為中心的無(wú)線網(wǎng)絡(luò)以及(3)可以在相同物理基站上支持語(yǔ)音和數(shù)據(jù)通信的雙模網(wǎng)絡(luò)。組合的雙模網(wǎng)絡(luò)包括但不限于(1)碼分多址(CDMA)網(wǎng)絡(luò)、(2)移動(dòng)特別小組或全球移動(dòng)通信系統(tǒng)(GSM)以及通用分組無(wú)線服務(wù)(GPRS)網(wǎng)絡(luò)、以及(3)將來(lái)的第三代(3G)網(wǎng)絡(luò),例如全球演進(jìn)的增強(qiáng)數(shù)據(jù)率(EDGE)以及通用移動(dòng)通信系統(tǒng)(UMTS)。以數(shù)據(jù)為中心的網(wǎng)絡(luò)的一些較老的示例包括MobitexTM無(wú)線網(wǎng)絡(luò)和DataTACTM無(wú)線網(wǎng)絡(luò)。較老的以語(yǔ)音為中心的數(shù)據(jù)網(wǎng)絡(luò)的示例包括個(gè)人通信系統(tǒng)(PCS)網(wǎng)絡(luò),例如GSM以及TDMA系統(tǒng)。
圖2是包括多個(gè)網(wǎng)絡(luò)和多個(gè)移動(dòng)通信設(shè)備的另一示例通信系統(tǒng)的框圖。圖2的系統(tǒng)實(shí)質(zhì)上類似于圖1的系統(tǒng),但是包括主機(jī)系統(tǒng)30、重定向程序45、移動(dòng)設(shè)備塢65、無(wú)線虛擬專用網(wǎng)絡(luò)(VPN)路由器75、額外無(wú)線網(wǎng)絡(luò)110以及多個(gè)移動(dòng)通信設(shè)備100。如上面結(jié)合圖1所述,圖2代表示例網(wǎng)絡(luò)拓?fù)涞母艌D。雖然這里所述的編碼消息處理系統(tǒng)和方法可以應(yīng)用于具有許多不同拓?fù)涞木W(wǎng)絡(luò),但是圖2的網(wǎng)絡(luò)對(duì)于理解上面簡(jiǎn)單提及的自動(dòng)電子郵件重定向系統(tǒng)是有用的。
中央主機(jī)系統(tǒng)30通常是公司辦公室或其他LAN,但是也可以是家庭辦公計(jì)算機(jī)或其中交換郵件消息的某些其他專用系統(tǒng)。在主機(jī)系統(tǒng)30內(nèi)具有消息服務(wù)器40,其運(yùn)行在主機(jī)系統(tǒng)的防火墻內(nèi)的某一計(jì)算機(jī)上,充當(dāng)主機(jī)系統(tǒng)與因特網(wǎng)20交換電子郵件的主接口。在圖2的系統(tǒng)中,重定向程序45實(shí)現(xiàn)將來(lái)自服務(wù)器40的數(shù)據(jù)項(xiàng)目重定向到移動(dòng)通信設(shè)備100。雖然為了易于表述,將重定向程序45表示為駐留在與消息服務(wù)器40相同的機(jī)制上,但是并不要求其必須駐留在消息服務(wù)器上。重定向程序45和消息服務(wù)器40被設(shè)計(jì)為協(xié)作并互動(dòng)來(lái)允許將信息推向移動(dòng)設(shè)備100。在這種安裝中,重定向程序45獲得特定用戶的機(jī)密及非機(jī)密公司信息,并通過公司防火墻將其向外重定向到移動(dòng)設(shè)備100??梢栽陬}為“System and Method of Pushing Information FromA Host System To A Mobile Data Communication Device Having AShared Electronic Address”的共同轉(zhuǎn)讓美國(guó)專利6,219,694(“694專利”)中找到重定向軟件45的更詳細(xì)的描述,該專利于2001年4月17日授權(quán)于本申請(qǐng)的受讓人,并且結(jié)合在本申請(qǐng)中用作參考。這種推技術(shù)可以使用無(wú)線友好的編碼、壓縮和加密技術(shù)來(lái)向移動(dòng)設(shè)備傳送所有信息,這樣有效地將安全防火墻擴(kuò)展到包括與主機(jī)系統(tǒng)30相關(guān)聯(lián)的每個(gè)移動(dòng)設(shè)備100。
如圖2所示,可能存在許多用于將信息傳送到移動(dòng)設(shè)備100的備選路徑。用于將信息加載到移動(dòng)設(shè)備100上的一種方法是通過指定的端口50(使用設(shè)備塢65)。這種方法往往對(duì)于移動(dòng)設(shè)備100初始化時(shí)常常執(zhí)行的與主機(jī)系統(tǒng)30或系統(tǒng)30內(nèi)的計(jì)算機(jī)35之間的大批信息更新是有用的。數(shù)據(jù)交換的其他主要方法是使用無(wú)線網(wǎng)絡(luò)來(lái)無(wú)線傳送信息。如圖2所示,這可以通過無(wú)線VPN路由器75或如上所述通過傳統(tǒng)的到無(wú)線網(wǎng)關(guān)85的因特網(wǎng)連接95以及無(wú)線基礎(chǔ)設(shè)施90來(lái)完成。無(wú)線VPN路由器75的概念在無(wú)線產(chǎn)業(yè)中是新的,并且意味著可以直接通過特定無(wú)線網(wǎng)絡(luò)110建立去往移動(dòng)設(shè)備100的VPN連接。只是在最近才具備使用無(wú)線VPN路由器75的可能性,并且在新的因特網(wǎng)協(xié)議(IP)版本6(IPV6)進(jìn)入基于IP的無(wú)線網(wǎng)絡(luò)時(shí)可以使用。這種新協(xié)議將提供足夠的IP地址,以使每個(gè)移動(dòng)設(shè)備100專用一個(gè)IP地址,這樣使得可以在任何時(shí)刻將信息推向移動(dòng)設(shè)備100。使用這種無(wú)線VPN路由器75的主要優(yōu)點(diǎn)是其可以是現(xiàn)成的VPN組件,這樣將不需要使用獨(dú)立的無(wú)線網(wǎng)關(guān)85和無(wú)線基礎(chǔ)設(shè)施90。VPN連接優(yōu)選地是傳輸控制協(xié)議(TCP)/IP或用戶數(shù)據(jù)報(bào)協(xié)議(UDP)/IP連接,以將消息直接傳送到移動(dòng)設(shè)備100。如果無(wú)線VPN 75不可用,則去往因特網(wǎng)20的鏈路95是可用的最常見的連接機(jī)制,并且上面已經(jīng)對(duì)此進(jìn)行過描述。
在圖2的自動(dòng)重定向系統(tǒng)中,所編寫的電子郵件消息15離開電子郵件發(fā)送者10,到達(dá)消息服務(wù)器40,并且重定向程序45將其重定向到移動(dòng)設(shè)備100。在發(fā)生這種重定向時(shí),重新封裝消息15(如80所示),并且然后可以向原始消息15應(yīng)用可能是專用的壓縮和加密算法。這樣,在移動(dòng)設(shè)備100上閱讀消息不比在防火墻內(nèi)的桌面工作站(例如35)上閱讀來(lái)得更不安全。重定向程序45與移動(dòng)設(shè)備100之間交換的所有消息優(yōu)選地使用這種消息重封裝技術(shù)。這種外層封裝的另一目的是維持原始消息的尋址信息(除了發(fā)送者和接收者的地址之外)。這允許回復(fù)消息到達(dá)適當(dāng)?shù)哪康牡?,并且還允許“發(fā)件人”字段反映出移動(dòng)用戶的桌面地址。使用來(lái)自移動(dòng)設(shè)備100的用戶電子郵件地址允許接收到的消息看起來(lái)像源自用戶的桌面系統(tǒng)35而不是源自移動(dòng)設(shè)備100的消息。
再參考端口50和塢65到移動(dòng)設(shè)備100的連接,這種連接路徑為實(shí)現(xiàn)大項(xiàng)目的一次數(shù)據(jù)交換提供了許多優(yōu)點(diǎn)。對(duì)于個(gè)人數(shù)字助理(PDA)和同步領(lǐng)域的技術(shù)人員而言,通過這種鏈路交換的最常見的數(shù)據(jù)是個(gè)人信息管理(PIM)數(shù)據(jù)55。在首次交換時(shí),這種數(shù)據(jù)往往數(shù)量很大,在本質(zhì)上是龐大的,并且其需要在途中可以使用的大帶寬來(lái)加載到移動(dòng)設(shè)備100上。這種串行鏈路也可以用于其他目的,包括建立專用安全密鑰111(例如S/MIME或PGP專用密鑰)、用戶的證書(Cert)以及它們的證書撤銷列表(CRL)60。優(yōu)選地交換專用密鑰,從而桌面35和移動(dòng)設(shè)備100共享一個(gè)身份以及訪問所有郵件的一種方法。Cert和CRL通常通過這種鏈路交換,因?yàn)樗鼈兇鞸/MIME、PGP以及其他公鑰安全方法的設(shè)備所需的大量數(shù)據(jù)。
圖3示出了認(rèn)證設(shè)備(例如,移動(dòng)設(shè)備10)用來(lái)對(duì)發(fā)出請(qǐng)求的設(shè)備(例如,桌面系統(tǒng)35,其可能請(qǐng)求連接到設(shè)備10)進(jìn)行認(rèn)證的典型詢問響應(yīng)方案。當(dāng)設(shè)備10例如通過串行鏈路(例如,通用串行總線(USB)鏈路)連接到桌面系統(tǒng)35時(shí),提示桌面系統(tǒng)35的用戶輸入密碼,以便向設(shè)備10認(rèn)證該用戶。桌面系統(tǒng)35創(chuàng)建用戶所提供的密碼的單向散列,并且將密碼的散列提供給設(shè)備10。設(shè)備10然后比較該密碼的散列與所存儲(chǔ)的設(shè)備密碼的散列。如果這兩個(gè)值匹配,則認(rèn)證了用戶,并且允許桌面系統(tǒng)35形成與設(shè)備10的連接。在這種典型的詢問響應(yīng)方案中,只有密碼的散列發(fā)送到設(shè)備10。如果通過通信鏈路發(fā)送密碼本身,則攻擊者將能夠截取傳輸,并獲得密碼的知識(shí)。
圖4圖示了根據(jù)本發(fā)明優(yōu)選實(shí)施例的詢問響應(yīng)方案。在該優(yōu)選實(shí)施例中,發(fā)出請(qǐng)求的設(shè)備(例如,桌面系統(tǒng)35)使用通信鏈路連接到認(rèn)證設(shè)備(例如,移動(dòng)設(shè)備10),其中通信鏈路例如是通用串行總線(USB)鏈路,發(fā)出請(qǐng)求的設(shè)備可以通過該鏈路發(fā)送連接請(qǐng)求。連接請(qǐng)求可以是發(fā)送到認(rèn)證設(shè)備的軟件請(qǐng)求形式,或者是通信鏈路的硬件狀態(tài)變化的檢測(cè)。認(rèn)證設(shè)備檢測(cè)到正在請(qǐng)求連接,并且開始根據(jù)下述詢問響應(yīng)方案來(lái)認(rèn)證發(fā)出請(qǐng)求的設(shè)備。應(yīng)該理解,如果認(rèn)證設(shè)備已經(jīng)受到設(shè)備密碼(device_password)的保護(hù),則認(rèn)證設(shè)備可以只發(fā)起詢問響應(yīng)方案。為了確定發(fā)出請(qǐng)求的設(shè)備是否需要得到認(rèn)證,認(rèn)證設(shè)備可以在其存儲(chǔ)器中檢查設(shè)備密碼的散列H(device_password)是否存在。在其他實(shí)施方式中,認(rèn)證設(shè)備可以檢查指示設(shè)備是否受到保護(hù)的標(biāo)記。
當(dāng)認(rèn)證設(shè)備檢測(cè)到連接請(qǐng)求時(shí),其生成要向請(qǐng)求設(shè)備發(fā)出的詢問c。詢問c可以是認(rèn)證設(shè)備隨機(jī)生成的一組比特?;蛘?,詢問c中所使用的比特?cái)?shù)也可以是隨機(jī)化的。認(rèn)證設(shè)備可以使用基于硬件的隨機(jī)數(shù)發(fā)生器或基于軟件的隨機(jī)數(shù)發(fā)生器來(lái)生成隨機(jī)詢問c。
發(fā)出請(qǐng)求的設(shè)備提示其用戶輸入密碼user_password。使用公知的散列函數(shù)(例如,SHA-1)對(duì)該密碼進(jìn)行散列,以創(chuàng)建H(user_password),然后將其與從認(rèn)證設(shè)備接收到的詢問c組合。在優(yōu)選實(shí)施例中,將詢問c和密碼的散列H(user_password)級(jí)聯(lián)在一起。應(yīng)該理解,存在許多組合這兩個(gè)值的不同方法。還將詢問c和密碼的散列H(user_password)的這一組合進(jìn)一步進(jìn)行散列,以生成請(qǐng)求密鑰kr=H(c||H(user_password)),這在創(chuàng)建對(duì)認(rèn)證設(shè)備發(fā)出的詢問的響應(yīng)r時(shí)使用。通過使用公知的技術(shù)(例如,AES或TripleDES)加密密碼user_password,來(lái)生成響應(yīng)r。在某些實(shí)施方式中,還可以通過向請(qǐng)求密鑰kr和密碼user_password應(yīng)用XOR函數(shù)來(lái)生成響應(yīng)r。然后將響應(yīng)r發(fā)送到認(rèn)證設(shè)備。
認(rèn)證設(shè)備通過與發(fā)出請(qǐng)求的設(shè)備所進(jìn)行的過程相似的過程來(lái)確定認(rèn)證密鑰ka。認(rèn)證設(shè)備將所存儲(chǔ)的設(shè)備密碼的散列H(stored_password)與隨機(jī)生成的詢問c組合,然后生成該組合的散列,以便生成認(rèn)證密鑰ka=H(c||H(stored_password))。認(rèn)證密鑰ka用來(lái)解密從發(fā)出請(qǐng)求的設(shè)備接收到的響應(yīng)r。然后將解密后的響應(yīng)的散列H(decrypted_response)與所存儲(chǔ)的設(shè)備密碼的散列H(device_password)比較。如果這兩個(gè)散列匹配,則解密后的響應(yīng)是正確的設(shè)備密碼。這樣,認(rèn)證設(shè)備就認(rèn)證了發(fā)出請(qǐng)求的設(shè)備。認(rèn)證設(shè)備還擁有在需要設(shè)備密碼的操作中使用的設(shè)備密碼。如果這兩個(gè)散列不匹配,則用戶沒有提供正確的密碼,并且認(rèn)證設(shè)備拒絕來(lái)自發(fā)出請(qǐng)求的設(shè)備的連接請(qǐng)求,由此不允許連接。
這里所公開的系統(tǒng)和方法僅僅是作為示例描述的,并不意味著限制本發(fā)明的范圍。對(duì)于本領(lǐng)域的技術(shù)人員而言,對(duì)上述系統(tǒng)和方法的其他改變是清楚的,并且這些改變被認(rèn)為在本發(fā)明的范圍之內(nèi)。例如,應(yīng)該理解,上述處理中的步驟以及步驟的順序可以改變、修改和/或增加,并且仍然獲得所希望的結(jié)果。
作為另一示例,這里所公開的系統(tǒng)和方法可以用于許多不同的計(jì)算機(jī)和設(shè)備,例如圖5所示的無(wú)線移動(dòng)通信設(shè)備。參考圖5,移動(dòng)設(shè)備100是雙模移動(dòng)設(shè)備,并且包括收發(fā)機(jī)311、微處理器338、顯示器322、非易失性存儲(chǔ)器324、隨機(jī)訪問存儲(chǔ)器(RAM)326、一個(gè)或多個(gè)輔助輸入/輸出(I/O)設(shè)備328、串行端口330、鍵盤332、揚(yáng)聲器334、麥克風(fēng)336、短程無(wú)線通信子系統(tǒng)340、以及其他設(shè)備子系統(tǒng)342。
收發(fā)件311包括接收機(jī)312、發(fā)射機(jī)314、天線316和318、一個(gè)或多個(gè)本地振動(dòng)器313、以及數(shù)字信號(hào)處理器(DSP)320。天線316和318可以是多元天線中的天線元,并且優(yōu)選地是嵌入式天線。然而,這里所述的系統(tǒng)和方法決不限制于具體類型的天線,甚至不限制于無(wú)線通信設(shè)備。
移動(dòng)設(shè)備100優(yōu)選地是具有語(yǔ)音和數(shù)據(jù)通信能力的雙向通信設(shè)備。這樣,例如,移動(dòng)設(shè)備100可以在語(yǔ)音網(wǎng)絡(luò)(例如,任何模擬或數(shù)字蜂窩網(wǎng)絡(luò))上進(jìn)行通信,并且還可以在數(shù)據(jù)網(wǎng)絡(luò)上進(jìn)行通信。語(yǔ)音和數(shù)據(jù)網(wǎng)絡(luò)在圖5中由通信塔319表示。這些語(yǔ)音和數(shù)據(jù)網(wǎng)絡(luò)可以是使用分離的基礎(chǔ)設(shè)施(例如,基站、網(wǎng)絡(luò)控制器等)的分離通信網(wǎng)絡(luò),或者它們可以集成在單個(gè)無(wú)線網(wǎng)絡(luò)中。
收發(fā)機(jī)311用來(lái)與網(wǎng)絡(luò)319進(jìn)行通信,并且包括接收機(jī)312、發(fā)射機(jī)314、一個(gè)或多個(gè)本地振動(dòng)器313、以及DSP 320。DSP 320用來(lái)向/從天線316和318發(fā)送/接收信號(hào),并且還向接收機(jī)312和發(fā)射機(jī)314提供控制信息。如果語(yǔ)音和數(shù)據(jù)通信發(fā)生在單個(gè)頻率或緊密間隔的頻率集合處,那么可以結(jié)合接收機(jī)312和發(fā)射機(jī)314使用單個(gè)本地振動(dòng)器313?;蛘撸绻褂貌煌念l率用于語(yǔ)音通信和數(shù)據(jù)通信,那么可以使用多個(gè)本地振動(dòng)器313來(lái)生成與語(yǔ)音和數(shù)據(jù)網(wǎng)絡(luò)319相對(duì)應(yīng)的多個(gè)頻率。通過DSP 320與微處理器338之間的鏈路來(lái)向/從收收發(fā)機(jī)311傳送信息(包括語(yǔ)音和數(shù)據(jù)信息)。
收發(fā)機(jī)311的詳細(xì)設(shè)計(jì)(例如,頻帶、部件選擇、功率水平等)將取決于移動(dòng)設(shè)備100所希望工作的通信網(wǎng)絡(luò)319。例如,要在北美市場(chǎng)工作的移動(dòng)設(shè)備100可以包括這樣的收發(fā)機(jī)311其被設(shè)計(jì)來(lái)工作于多種語(yǔ)音通信網(wǎng)絡(luò)中的任何一種,例如Mobitex或DataTAC移動(dòng)數(shù)據(jù)通信網(wǎng)絡(luò)、AMPS、TDMA、CDMA、PCS等,而要在歐洲使用的移動(dòng)設(shè)備100可以被配置為工作于GPRS數(shù)據(jù)通信網(wǎng)絡(luò)以及GSM語(yǔ)音通信網(wǎng)絡(luò)。移動(dòng)設(shè)備100還可以利用其他類型的數(shù)據(jù)和語(yǔ)音網(wǎng)絡(luò)(分離的以及集成的)。
取決于網(wǎng)絡(luò)319的類型,移動(dòng)設(shè)備100的接入要求也可能改變。例如,在Mobitex和DataTAC數(shù)據(jù)網(wǎng)絡(luò)中,移動(dòng)設(shè)備使用與每個(gè)移動(dòng)設(shè)備相關(guān)聯(lián)的唯一識(shí)別號(hào)碼注冊(cè)到網(wǎng)絡(luò)上。然而,在GPRS數(shù)據(jù)網(wǎng)絡(luò)中,網(wǎng)絡(luò)接入與移動(dòng)設(shè)備的訂戶或用戶相關(guān)聯(lián)。GPRS通常需要訂戶身份模塊(“SIM”),以便在GPRS網(wǎng)絡(luò)上操作移動(dòng)設(shè)備。如果沒有SIM設(shè)備,則本地或非網(wǎng)絡(luò)通信功能(如果存在的話)可能是可操作的,但是移動(dòng)設(shè)備除了任何合法的必要操作(例如,“911”緊急呼叫)之外不能執(zhí)行涉及通過數(shù)據(jù)網(wǎng)絡(luò)319進(jìn)行通信的任何其他功能。
在完成必要的網(wǎng)絡(luò)注冊(cè)或激活過程之后,移動(dòng)設(shè)備100可以通過網(wǎng)絡(luò)319發(fā)送和接收通信信號(hào)(包括語(yǔ)音和數(shù)據(jù)信號(hào))。天線316從通信網(wǎng)絡(luò)319接收到的信號(hào)被路由到接收機(jī)312,接收機(jī)312提供信號(hào)放大、下變頻、濾波、信道選擇等,并且還可以提供模數(shù)轉(zhuǎn)換。接收信號(hào)的模數(shù)轉(zhuǎn)換允許更復(fù)雜的通信功能,例如要使用DSP 320執(zhí)行的數(shù)字解調(diào)和解碼。以類似方式,處理要發(fā)送到網(wǎng)絡(luò)319的信號(hào),包括調(diào)制和編碼(例如,由DSP 320執(zhí)行),然后提供給發(fā)射機(jī)314以進(jìn)行數(shù)模轉(zhuǎn)換、上變頻、濾波、放大,并通過天線318發(fā)送到通信網(wǎng)絡(luò)319。
除了處理通信信號(hào)之外,DSP 320還提供收發(fā)機(jī)控制。例如,可以通過DSP 320中實(shí)現(xiàn)的自動(dòng)增益控制算法來(lái)自適應(yīng)地控制接收機(jī)312和發(fā)射機(jī)314中施加于通信信號(hào)的增益水平。還可以在DSP 320中實(shí)現(xiàn)其他收發(fā)機(jī)控制算法,以便提供對(duì)收發(fā)機(jī)311的更精密的控制。
微處理器338優(yōu)選地管理并控制移動(dòng)設(shè)備100的總體操作。這里可以使用許多類型的微處理器或微控制器,或者,可以使用單個(gè)DSP320來(lái)執(zhí)行微處理器338的功能。通過收發(fā)機(jī)311中的DSP 320來(lái)執(zhí)行低級(jí)的通信功能(至少包括數(shù)據(jù)和語(yǔ)音通信)。其他高級(jí)通信應(yīng)用程序(例如,語(yǔ)音通信應(yīng)用程序324A以及數(shù)據(jù)通信應(yīng)用程序324B)可以存儲(chǔ)在非易失性存儲(chǔ)器324中,以便由微處理器338執(zhí)行。例如,語(yǔ)音通信模塊324A可以提供可用來(lái)通過網(wǎng)絡(luò)319在移動(dòng)設(shè)備100與多個(gè)其他語(yǔ)音或雙模設(shè)備之間發(fā)送和接收語(yǔ)音呼叫的高級(jí)用戶接口。類似地,數(shù)據(jù)通信模塊324B可以提供可用來(lái)通過網(wǎng)絡(luò)319在移動(dòng)設(shè)備100與多個(gè)其他數(shù)據(jù)設(shè)備之間發(fā)送和接收數(shù)據(jù)(例如,電子郵件消息、文件、組織者信息、短文本消息等)的高級(jí)用戶接口。微處理器338還與其他設(shè)備子系統(tǒng)互動(dòng),例如顯示器322、RAM 326、輔助輸入/輸出(I/O)子系統(tǒng)328、串行端口330、鍵盤332、揚(yáng)聲器334、麥克風(fēng)336、短程通信子系統(tǒng)340以及一般地表示為342的任何其他設(shè)備子系統(tǒng)。
圖5所示的某些子系統(tǒng)執(zhí)行通信相關(guān)功能,而其他子系統(tǒng)可以提供“常駐”或設(shè)備上功能。尤其是,某些子系統(tǒng)(例如,鍵盤332和顯示器322)可以用于通信相關(guān)功能(例如,輸入用于通過數(shù)據(jù)通信網(wǎng)絡(luò)傳輸?shù)奈谋鞠?以及設(shè)備常駐功能(例如,計(jì)算器或任務(wù)列表或者其他PDA類型功能)。
微處理器338所使用的操作系統(tǒng)軟件優(yōu)選地存儲(chǔ)在永久性存儲(chǔ)裝置中,例如非易失性存儲(chǔ)器324。非易失性存儲(chǔ)器324例如可以實(shí)現(xiàn)為閃存部件或電池支持的RAM。除了控制移動(dòng)設(shè)備310的低級(jí)功能的操作系統(tǒng)之外,非易失性存儲(chǔ)器324還包括可以由微處理器338(和/或DSP 320)執(zhí)行的多個(gè)軟件模塊324A~324N,包括語(yǔ)音通信模塊324A、數(shù)據(jù)通信模塊324B、以及用于執(zhí)行多個(gè)其他功能的多個(gè)其他操作模塊324N。這些模塊由微處理器338執(zhí)行,并且提供用戶與移動(dòng)設(shè)備100之間的高級(jí)接口。這種接口通常包括通過顯示器322提供的圖形組件,以及通過輔助I/O 328、鍵盤332、揚(yáng)聲器334、以及麥克風(fēng)336提供的輸入/輸出組件。操作系統(tǒng)、特定的設(shè)備應(yīng)用程序或模塊、或它們的一部分可以臨時(shí)加載到易失性存儲(chǔ)裝置(例如,RAM 326)中,以便進(jìn)行更快的操作。此外,所接收到的通信信號(hào)也可以臨時(shí)存儲(chǔ)在RAM 326中,然后將它們永久性地寫入位于永久性存儲(chǔ)裝置(例如,閃存324)中的文件系統(tǒng)中。
可以加載到移動(dòng)設(shè)備100上的一個(gè)示例性應(yīng)用程序模塊324N是提供PDA功能(例如,日歷事件、約會(huì)以及任務(wù)項(xiàng)目)的個(gè)人信息管理(PIM)應(yīng)用程序。該模塊324N還可以與語(yǔ)音通信模塊324A互動(dòng),以管理電話呼叫、語(yǔ)音郵件等,并且還可以與數(shù)據(jù)通信模塊互動(dòng),以管理電子郵件通信以及其他數(shù)據(jù)傳輸。或者,語(yǔ)音通信模塊324A和數(shù)據(jù)通信模塊324B的所有功能都可以集成在PIM模塊中。
非易失性存儲(chǔ)器324優(yōu)選地還提供文件系統(tǒng),以有助于PIM數(shù)據(jù)項(xiàng)目在設(shè)備上的存儲(chǔ)。PIM應(yīng)用程序優(yōu)選地包括發(fā)送和接收數(shù)據(jù)項(xiàng)目的能力,這種能力或者由其自身或者與語(yǔ)音和數(shù)據(jù)通信模塊324A、324B協(xié)作通過無(wú)線網(wǎng)絡(luò)319實(shí)現(xiàn)。PIM數(shù)據(jù)項(xiàng)目?jī)?yōu)選地通過無(wú)線網(wǎng)絡(luò)319與所存儲(chǔ)或與主計(jì)算機(jī)系統(tǒng)相關(guān)聯(lián)的相應(yīng)數(shù)據(jù)項(xiàng)目集合無(wú)縫集成、同步和更新,由此創(chuàng)建與特定用戶相關(guān)聯(lián)的數(shù)據(jù)項(xiàng)目的鏡像系統(tǒng)。
代表至少局部解碼的數(shù)據(jù)項(xiàng)目以及完全解碼的數(shù)據(jù)項(xiàng)目的上下文對(duì)象優(yōu)選地存儲(chǔ)在移動(dòng)設(shè)備100上的易失性和非永久性存儲(chǔ)裝置(例如,RAM 326)中。例如,這種信息在存儲(chǔ)間隔相對(duì)短時(shí)也可以存儲(chǔ)在非易失性存儲(chǔ)器324中,從而在存儲(chǔ)之后不久就從存儲(chǔ)器中將信息去除。然而,將這種信息存儲(chǔ)在RAM 326或其他易失性和非永久性存儲(chǔ)裝置中是優(yōu)選的,以便確保在移動(dòng)設(shè)備100斷電時(shí)從存儲(chǔ)器中擦除信息。這防止了未獲授權(quán)方例如通過從移動(dòng)設(shè)備100去除存儲(chǔ)器芯片來(lái)獲得任何存儲(chǔ)的解碼或局部解碼信息。
通過將設(shè)備100放置在接口塢(將移動(dòng)設(shè)備100的串行端口330耦合到計(jì)算機(jī)系統(tǒng)或設(shè)備的串行端口)中,可以手動(dòng)將移動(dòng)設(shè)備100與主機(jī)系統(tǒng)同步。串行端口330還可以用來(lái)使用戶能夠通過外部設(shè)備或軟件應(yīng)用程序來(lái)設(shè)置偏好,或者下載其他應(yīng)用程序模塊324N用于安裝。這種有線下載路徑可以用來(lái)將密鑰加載到設(shè)備上,這是比通過無(wú)線網(wǎng)絡(luò)319交換加密信息更為安全的方法。除了串行端口330之外或者替代串行端口330,還可以在移動(dòng)設(shè)備100中提供其他有線下載路徑的接口。例如,USB端口可以提供與類似裝配的個(gè)人計(jì)算機(jī)的接口。
額外的應(yīng)用程序模塊324N可以通過網(wǎng)絡(luò)319、通過輔助I/O子系統(tǒng)328、通過串行端口330、通過短程通信子系統(tǒng)340、或者通過任何其他合適的子系統(tǒng)342來(lái)加載到移動(dòng)設(shè)備100上,并且由用戶安裝在非易失性存儲(chǔ)器324或RAM 326中。這種應(yīng)用程序安裝方面的靈活性增加了移動(dòng)設(shè)備100的功能性,并且可以提供增強(qiáng)的設(shè)備上功能、通信相關(guān)功能或這兩者。例如,安全通信應(yīng)用程序可以實(shí)現(xiàn)電子商務(wù)功能以及其他這樣的要使用移動(dòng)設(shè)備100來(lái)執(zhí)行的金融交易。
當(dāng)移動(dòng)設(shè)備100工作于數(shù)據(jù)通信模式時(shí),接收到的信號(hào)(例如,文本消息或下載的web頁(yè)面)由收發(fā)機(jī)模塊311處理,并且提供給微處理器338,優(yōu)選地,微處理器338進(jìn)一步以上述多個(gè)階段來(lái)處理接收信號(hào),最終輸出到顯示器322,或者輸出到輔助I/O設(shè)備328。移動(dòng)設(shè)備100的用戶還可以使用鍵盤332編寫數(shù)據(jù)項(xiàng)目(例如,電子郵件消息),鍵盤332優(yōu)選地是以QWERTY風(fēng)格布置的完全字母數(shù)字鍵盤,但是也可以使用其他風(fēng)格的完全字母數(shù)字鍵盤,例如已知的DVORAK風(fēng)格。利用多個(gè)輔助I/O設(shè)備328可以進(jìn)一步增強(qiáng)移動(dòng)設(shè)備100的用戶輸入,其中輔助I/O設(shè)備328可以包括指輪輸入設(shè)備、觸摸板、多種開關(guān)、搖桿輸入開關(guān)等。用戶輸入的編寫數(shù)據(jù)項(xiàng)目然后可以通過收發(fā)機(jī)模塊311發(fā)送到通信網(wǎng)絡(luò)319上。
當(dāng)移動(dòng)設(shè)備100工作于語(yǔ)音通信模式時(shí),除了優(yōu)選地將接收信號(hào)輸出到揚(yáng)聲器334并且由麥克風(fēng)336生成要發(fā)送的語(yǔ)音信號(hào)之外,移動(dòng)設(shè)備的整體操作實(shí)質(zhì)上類似于數(shù)據(jù)模式。還可以在移動(dòng)設(shè)備100上實(shí)現(xiàn)其他語(yǔ)音或音頻I/O子系統(tǒng),例如語(yǔ)音消息記錄子系統(tǒng)。雖然優(yōu)選地語(yǔ)音或音頻信號(hào)輸出主要通過揚(yáng)聲器334來(lái)完成,但是也可以使用顯示器322來(lái)提供呼叫方身份的指示、語(yǔ)音呼叫的持續(xù)時(shí)間、或者其他語(yǔ)音呼叫相關(guān)的信息。例如,微處理器338與語(yǔ)音通信模塊和操作系統(tǒng)軟件相結(jié)合可以檢測(cè)到進(jìn)入語(yǔ)音呼叫的呼叫者身份信息,并將其顯示在顯示器322上。
移動(dòng)設(shè)備100中還可以包括短程通信子系統(tǒng)340。例如,子系統(tǒng)340可以包括紅外設(shè)備及相關(guān)電路和部件,或者短程RF通信模塊(例如藍(lán)牙TM模塊和802.11模塊),以提供與具有類似功能的系統(tǒng)和設(shè)備的通信。本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,“藍(lán)牙”和“802.11”是指可從電氣和電子工程師協(xié)會(huì)獲得的分別涉及無(wú)線個(gè)域網(wǎng)和無(wú)線局域網(wǎng)的規(guī)范集。
系統(tǒng)及方法的數(shù)據(jù)可以存儲(chǔ)在一個(gè)或多個(gè)數(shù)據(jù)存儲(chǔ)裝置中。數(shù)據(jù)存儲(chǔ)裝置可以是許多不同類型的存儲(chǔ)設(shè)備和編程構(gòu)造,例如RAM、ROM、閃存、編程數(shù)據(jù)結(jié)構(gòu)、編程變量等。注意,數(shù)據(jù)結(jié)構(gòu)描述在數(shù)據(jù)庫(kù)、程序、存儲(chǔ)器或其他計(jì)算機(jī)可讀介質(zhì)中組織和存儲(chǔ)計(jì)算機(jī)程序要使用的數(shù)據(jù)時(shí)使用的格式。
系統(tǒng)和方法可以提供在許多不同類型的計(jì)算機(jī)可讀介質(zhì)上,包括計(jì)算機(jī)存儲(chǔ)機(jī)制(例如,CD-ROM、磁盤、RAM、閃存、計(jì)算機(jī)硬盤等),這些存儲(chǔ)機(jī)制包含由處理器來(lái)執(zhí)行以便執(zhí)行方法的操作并實(shí)現(xiàn)這里所述的系統(tǒng)的指令。
這里所述的計(jì)算機(jī)組件、軟件模塊、功能和數(shù)據(jù)結(jié)構(gòu)彼此之間可以直接或間接連接,以便允許它們的操作所需的數(shù)據(jù)的流動(dòng)。還要注意,模塊或處理器包括但不限于執(zhí)行軟件操作的代碼單元,并且例如可以實(shí)現(xiàn)為代碼的子程序單元、或代碼的軟件函數(shù)單元、或?qū)ο?在面向?qū)ο蟮姆独?、或小應(yīng)用程序(applet)、或以計(jì)算機(jī)腳本語(yǔ)言實(shí)現(xiàn)、或者任何其他類型的計(jì)算機(jī)代碼。
權(quán)利要求
1.一種對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證的認(rèn)證設(shè)備的系統(tǒng),包括詢問發(fā)生器,用于生成詢問;通信鏈路,用于將所述詢問發(fā)送到所述請(qǐng)求設(shè)備,并且從所述請(qǐng)求設(shè)備接收對(duì)所述詢問的響應(yīng),所述響應(yīng)包括使用請(qǐng)求密鑰加密的請(qǐng)求密碼,所述請(qǐng)求密鑰包括所述詢問與所述請(qǐng)求密碼的散列的組合的散列;散列發(fā)生器,用于通過對(duì)所述詢問與預(yù)定密碼的散列的組合進(jìn)行散列,來(lái)生成認(rèn)證密鑰;解密器,用于使用所述認(rèn)證密鑰來(lái)對(duì)加密的請(qǐng)求密碼進(jìn)行解密,以獲得解密響應(yīng);以及比較器,用于比較所述解密響應(yīng)的散列與所述預(yù)定密碼的散列,如果所述解密的請(qǐng)求密碼的散列與所述預(yù)定密碼的散列相匹配,則認(rèn)證了所述請(qǐng)求設(shè)備。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述詢問發(fā)生器生成的詢問是隨機(jī)或偽隨機(jī)數(shù)。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中還將所述通信鏈路配置來(lái)從所述請(qǐng)求設(shè)備接收認(rèn)證請(qǐng)求。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),還包括用于指示所述請(qǐng)求設(shè)備是否已經(jīng)受到規(guī)定密碼保護(hù)的認(rèn)證標(biāo)記。
5.一種由認(rèn)證設(shè)備對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證的方法,所述請(qǐng)求設(shè)備和認(rèn)證設(shè)備每個(gè)都可操作來(lái)執(zhí)行單向散列操作以及基于密鑰的加密操作,所述認(rèn)證設(shè)備存儲(chǔ)通過向規(guī)定密碼應(yīng)用散列操作而生成的所述規(guī)定密碼的散列,所述認(rèn)證設(shè)備還可操作來(lái)執(zhí)行基于密鑰的解密操作,以便對(duì)從所述加密操作獲得的值進(jìn)行解密,所述方法包括所述認(rèn)證設(shè)備的如下步驟確定并向所述請(qǐng)求設(shè)備發(fā)送詢問;從所述請(qǐng)求設(shè)備接收響應(yīng),所述響應(yīng)包括通過對(duì)所述詢問和接收到的用戶密碼的散列的組合執(zhí)行散列操作而確定的請(qǐng)求密鑰,其中通過對(duì)所述接收到的用戶密碼執(zhí)行散列操作來(lái)定義所述散列;通過對(duì)所述詢問和所述規(guī)定密碼的散列的組合執(zhí)行散列操作,定義認(rèn)證密鑰;在解密操作中使用所述認(rèn)證密鑰來(lái)解密所述響應(yīng),以獲得解密的用戶密碼,并且對(duì)所述解密的用戶密碼執(zhí)行單向散列操作;將所述解密的用戶密碼的散列與所述規(guī)定密碼的散列進(jìn)行比較,以在所述比較指示匹配時(shí),認(rèn)證所述請(qǐng)求設(shè)備。
6.根據(jù)權(quán)利要求5所述的方法,還包括如下步驟所述認(rèn)證設(shè)備使用所述解密的用戶密碼來(lái)對(duì)所述認(rèn)證設(shè)備執(zhí)行操作。
7.根據(jù)權(quán)利要求5所述的方法,其中所述認(rèn)證設(shè)備是無(wú)線手持設(shè)備,并且所述請(qǐng)求設(shè)備是桌面計(jì)算機(jī),并且所述請(qǐng)求設(shè)備的認(rèn)證必須在所述無(wú)線手持設(shè)備與所述請(qǐng)求設(shè)備之間建立連接,所述方法還包括如下步驟在所述認(rèn)證設(shè)備確定并發(fā)送詢問之前,從所述請(qǐng)求設(shè)備接收連接請(qǐng)求,并且比較所述解密的用戶密碼的散列與所述規(guī)定密碼的散列的步驟包括如下步驟當(dāng)所述解密的用戶密碼的散列與所述規(guī)定密碼的散列不匹配時(shí),拒絕認(rèn)證所述請(qǐng)求設(shè)備。
8.根據(jù)權(quán)利要求5所述的方法,其中所述認(rèn)證設(shè)備確定詢問的步驟包括如下步驟生成要用作所述詢問的隨機(jī)數(shù)。
9.根據(jù)權(quán)利要求5所述的方法,還包括如下的初始步驟所述認(rèn)證設(shè)備從所述請(qǐng)求設(shè)備接收連接請(qǐng)求,并且如果在所述認(rèn)證設(shè)備上設(shè)置了規(guī)定標(biāo)記以指示所述設(shè)備已經(jīng)受到所述規(guī)定密碼的保護(hù),則對(duì)所述請(qǐng)求設(shè)備執(zhí)行認(rèn)證。
全文摘要
提供了一種詢問響應(yīng)方案,包括由認(rèn)證設(shè)備對(duì)請(qǐng)求設(shè)備進(jìn)行認(rèn)證。認(rèn)證設(shè)備生成要向請(qǐng)求設(shè)備發(fā)出的詢問。請(qǐng)求設(shè)備將詢問與請(qǐng)求設(shè)備的用戶所提供的密碼的散列組合,并且進(jìn)一步對(duì)密碼的散列與詢問的組合進(jìn)行散列,以便生成用來(lái)對(duì)用戶提供的密碼進(jìn)行加密的請(qǐng)求密鑰。將加密的用戶提供密碼發(fā)送到認(rèn)證設(shè)備,作為對(duì)所發(fā)出的詢問的響應(yīng)。認(rèn)證設(shè)備通過生成詢問與所存儲(chǔ)的認(rèn)證設(shè)備密碼的散列的組合的散列來(lái)生成認(rèn)證密鑰。使用認(rèn)證密鑰來(lái)解密響應(yīng),以便恢復(fù)用戶提供密碼。如果用戶提供密碼的散列與所存儲(chǔ)的認(rèn)證設(shè)備密碼的散列匹配,那么就認(rèn)證了請(qǐng)求設(shè)備,并且認(rèn)證設(shè)備擁有了密碼。
文檔編號(hào)H04L29/06GK1816997SQ200480018801
公開日2006年8月9日 申請(qǐng)日期2004年11月26日 優(yōu)先權(quán)日2004年5月4日
發(fā)明者邁克爾·K·布朗, 邁克爾·S·布朗, 邁克爾·G·柯卡普, 赫伯特·A·利特爾 申請(qǐng)人:捷訊研究有限公司