專利名稱:用于互聯(lián)裝置的身份驗(yàn)證的制作方法
背景技術(shù):
本發(fā)明涉及一種方法,用于驗(yàn)證通過一條數(shù)據(jù)鏈路被連接到第二裝置的第一裝置的用戶的身份,其中,向該用戶提供一個(gè)用戶專用的口令字,本方法包括從第一裝置向第二裝置發(fā)送用戶專用的數(shù)據(jù),并將該數(shù)據(jù)的至少一部分跟參考數(shù)據(jù)進(jìn)行比較。
這樣的方法被用來,例如,驗(yàn)證一個(gè)付費(fèi)電視系統(tǒng)的一個(gè)用戶的身份,或者限制訪問的網(wǎng)站的訪問者的身份。在這些情況下,有必要去驗(yàn)證用戶或訪問者的身份。只有那些已經(jīng)付費(fèi)去接收一定的廣播信號(hào)的用戶才應(yīng)被允許這樣做。類似地,只有那些具有對(duì)網(wǎng)站的訪問權(quán)的計(jì)算機(jī)用戶才應(yīng)被允許去訪問該網(wǎng)站。
用于識(shí)別網(wǎng)絡(luò)中的一個(gè)裝置的用戶的通用技術(shù)就是要求他提供一個(gè)口令字。在第二裝置后面的機(jī)構(gòu)將從該用戶接收的口令字跟保存在它的記錄中的一個(gè)拷貝進(jìn)行比較,以便驗(yàn)證他的身份。
這樣一個(gè)系統(tǒng)依賴于該用戶的善意。若該用戶決定使他的口令字可用于未經(jīng)授權(quán)的第三方,則這個(gè)第三方可能冒充第一裝置的用戶的身份。
像因特網(wǎng)那樣的網(wǎng)絡(luò)提供了一種使數(shù)據(jù)被廣大公眾使用的相對(duì)容易的方式。這樣一來,在網(wǎng)絡(luò)中的一個(gè)惡意的用戶可能使他的口令字變?yōu)閺V大公眾都能使用,使得信賴該口令字的系統(tǒng)不安全。
圍繞這個(gè)問題的一種方法就是向用戶提供不斷改變的口令字。每次請(qǐng)求驗(yàn)證都要求用戶提供一個(gè)不同的口令字。然而,由于必須從一個(gè)列表中生成或選擇口令字,所以這種方法可能是麻煩的和費(fèi)時(shí)的。
使用非常長(zhǎng)的口令字向一個(gè)系統(tǒng)提供了額外的安全性。當(dāng)使用本發(fā)明的方法時(shí),為了避免長(zhǎng)的驗(yàn)證過程,從第一裝置向第二裝置發(fā)送的用戶專用數(shù)據(jù)包括向用戶提供的用戶專用口令字的一個(gè)或多個(gè)子段。這樣一來,對(duì)用戶身份的驗(yàn)證不需要傳送整個(gè)口令字。這使得驗(yàn)證過程進(jìn)行得更快并且不麻煩。
第二裝置可以向第一裝置發(fā)送一項(xiàng)關(guān)于口令字的某些段的請(qǐng)求。在根據(jù)本發(fā)明的方法的一個(gè)較佳實(shí)施例中,這些部分是以隨機(jī)方式選出的。這就提供了針對(duì)竊聽者的安全性。對(duì)第一裝置和第二裝置之間通信的竊聽將不會(huì)揭示足夠的信息,使竊聽者不能繼續(xù)冒充第一裝置的用戶。
可以在一個(gè)數(shù)據(jù)載體,例如一張CD或DVD盤片上向第一裝置的用戶提供整個(gè)口令字??梢允褂靡环N標(biāo)準(zhǔn)的方法對(duì)該數(shù)據(jù)載體進(jìn)行拷貝保護(hù)。
圖1表示使用根據(jù)本發(fā)明的方法的一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)。一個(gè)第一裝置1,在本例中為在網(wǎng)絡(luò)中的一部計(jì)算機(jī),直接地或間接地被連接到一個(gè)第二裝置2,使得數(shù)據(jù)可以從其中一個(gè)傳送到另一個(gè)。在這個(gè)特定的實(shí)施例中,第二裝置是一個(gè)服務(wù)器。第一裝置通過一條數(shù)據(jù)鏈路3被連接到第二裝置2。數(shù)據(jù)鏈路3可以是像局域網(wǎng)那樣的一個(gè)網(wǎng)絡(luò),一種撥號(hào)連接,或者一種因特網(wǎng)連接。
第一裝置1的一個(gè)用戶希望登錄,以便例如從第二裝置或從網(wǎng)絡(luò)中的其他已連接的裝置檢索文件。已經(jīng)向該用戶提供了可用的口令字,包括一個(gè)很長(zhǎng)的比特串。這個(gè)口令字對(duì)用戶來說是唯一的。此外,還可以使用某種將用戶跟口令字聯(lián)系起來的方法。這可能是在很長(zhǎng)的比特串的一部分中的一組代碼,或者一個(gè)用戶名,或者計(jì)算機(jī)1的一個(gè)標(biāo)識(shí)。
在圖1的特定的實(shí)施例中,已經(jīng)在采取CD形式的數(shù)據(jù)載體4中向用戶提供可用的口令字。也可以使用任何其他類型的數(shù)據(jù)載體。當(dāng)?shù)谝谎b置1是一部計(jì)算機(jī)時(shí),數(shù)據(jù)載體可以是,例如,一個(gè)軟磁盤,一張DVD盤片或者一盒磁帶。被連接到第一裝置1,或者作為第一裝置1的一部分的是某種裝置5,用以讀出口令字。在圖1中,這是一個(gè)CD播放器,但是它也可能是一個(gè)DVD播放器,或者適于讀出數(shù)據(jù)載體4的內(nèi)容的某種其他裝置。
為了避免用戶直接地拷貝數(shù)據(jù)載體4的內(nèi)容,它被加上拷貝保護(hù)。這種保護(hù)技術(shù)可能,例如,包括將一些壞扇區(qū)設(shè)置于CD4。大多數(shù)CD寫入器都不能處理來自壞扇區(qū)的數(shù)據(jù)。第二裝置2可以保留各壞扇區(qū)的一份記錄。由此就免除了對(duì)已包含在一個(gè)壞扇區(qū)中的一段口令字的請(qǐng)求。
圖2示意性地表示在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中口令字的生成。對(duì)用戶來說是唯一的一個(gè)源碼6被送往口令字發(fā)生器7。口令字發(fā)生器7最好是一個(gè)隨機(jī)數(shù)發(fā)生器。但是,口令字發(fā)生器7使用某些其他算法也是可以理解的。口令字發(fā)生器7生成用戶專用的口令字8,包括一個(gè)很長(zhǎng)的比特串。在根據(jù)本發(fā)明的方法的一個(gè)步驟中,用戶專用的口令字8的子段9,10可以被選擇用于從第一裝置1發(fā)送到第二裝置2。
口令字的長(zhǎng)度及其數(shù)據(jù)大小,在設(shè)置該系統(tǒng)之前就已經(jīng)由其發(fā)布者確定。為了確定口令字8的長(zhǎng)度,至少有兩項(xiàng)標(biāo)準(zhǔn)是重要的。
在圖1的系統(tǒng)中,第一項(xiàng)標(biāo)準(zhǔn)就是數(shù)據(jù)鏈路3的容量。在其他系統(tǒng)中,通往在網(wǎng)絡(luò)中的一部典型的計(jì)算機(jī)的最快的數(shù)據(jù)鏈路的容量通常是一項(xiàng)好的標(biāo)準(zhǔn)。若該計(jì)算機(jī)被連接到因特網(wǎng),則因特網(wǎng)鏈路的速度將成為決定性的標(biāo)準(zhǔn)。由于口令字在因特網(wǎng)上擴(kuò)散這種途徑具有導(dǎo)致嚴(yán)重破壞的潛在危險(xiǎn),所以本發(fā)明的一個(gè)主要方面就是防止口令字通過因特網(wǎng)擴(kuò)散??诹钭?jǐn)?shù)據(jù)大小被這樣選擇,使之超過數(shù)據(jù)鏈路3在一定時(shí)間間隔內(nèi)所能傳送的數(shù)據(jù)量。這個(gè)一定的時(shí)間間隔被選擇得足夠長(zhǎng),以阻止用戶們共享口令字。在像圖1那樣的一個(gè)自包含網(wǎng)絡(luò)中,這可能是幾個(gè)小時(shí)的事情。若該計(jì)算機(jī)能夠連接到因特網(wǎng),則可以選擇一個(gè)更長(zhǎng)的間隔,例如,10-12小時(shí)。在任何情況下,這個(gè)時(shí)間間隔應(yīng)當(dāng)足夠長(zhǎng),使得下載整個(gè)口令字8是極端地沒有吸引力的。
第二項(xiàng)標(biāo)準(zhǔn)就是在其上向用戶提供可用的口令字8的數(shù)據(jù)載體4的存儲(chǔ)容量。在CD-ROM的情況下,其最大值約為640Mb。使用載體4的全部容量以提供最高的安全水平是有利的。本方法不設(shè)定比特串長(zhǎng)度的上限。
為什么是這樣,通過察看圖3,這個(gè)問題就清楚了,在圖3中,描述了本發(fā)明的方法的一個(gè)實(shí)施例的一份示意性的流程圖。該圖表示當(dāng)驗(yàn)證第一裝置1的一個(gè)用戶(例如,在圖1中計(jì)算機(jī)1的一個(gè)用戶)的身份時(shí),在第二裝置2中所發(fā)生的某些重要步驟。
在數(shù)據(jù)載體4已經(jīng)被插入到CD播放器之后,裝置5讀出口令字,第一裝置1發(fā)出一項(xiàng)登錄請(qǐng)求,它被第二裝置2在第一步驟11接收。此項(xiàng)請(qǐng)求或者由用戶鍵入,可能使用一段幫助程序,或者在將CD或數(shù)據(jù)載體4插入到與第一裝置1連接的一個(gè)讀出器時(shí),由幫助程序自動(dòng)地產(chǎn)生。登錄請(qǐng)求可以向第二裝置2提供關(guān)于該用戶或第一裝置1的身份的信息,使得該用戶能與口令字8聯(lián)系起來。
可供選擇地,從第一裝置1發(fā)出的口令字8的被選子段9,10可能包括一種標(biāo)識(shí)用戶的方法。在后一種情況下,口令字的一個(gè)或多個(gè)子段9,10含有一組標(biāo)識(shí)代碼,用以標(biāo)識(shí)該用戶。第二裝置2能隨即從相關(guān)的段中取出這組代碼,用它來將該用戶鏈接到正確的參考數(shù)據(jù)。
由于口令字8如此之長(zhǎng),以至于無法在任何合理的時(shí)間間隔內(nèi)通過數(shù)據(jù)鏈路3將其傳送,所以,由第一裝置1向第二裝置2發(fā)送的口令字8的已選定的子段9,10在大小上將是較小的??梢允孪仍O(shè)定已選定的子段9,10的總的數(shù)據(jù)大小。最好是,它被這樣選擇,使得整個(gè)驗(yàn)證過程盡可能地短,同時(shí)仍然保持適當(dāng)水平的安全性,如以上在討論圖1時(shí)所列舉的那樣。
在一個(gè)優(yōu)選實(shí)施例中,當(dāng)每次必須驗(yàn)證用戶身份時(shí),在第二步驟12,第二裝置2就選擇不同的子段9,10。由于每一次會(huì)晤都使用口令字8的不同的子段9,10,所以捕獲在一次會(huì)晤中所發(fā)送的子段9,10是沒有意義的。在數(shù)據(jù)鏈路上的竊聽者1’,1”仍然無法在一次后續(xù)的會(huì)晤中冒充該用戶。為了更進(jìn)一步地提高安全性水平,第二裝置2可以將子段9,10選擇為隨機(jī)發(fā)送。
在口令字共享不成為問題的場(chǎng)合中可使用的根據(jù)本發(fā)明的方法的一個(gè)單獨(dú)的實(shí)施例中,這方面允許使用較短的口令字。由于每次需要驗(yàn)證用戶身份時(shí)都選擇不同的子段,所以竊聽者1’,1”仍然需要竊聽第一裝置1與第二裝置2之間的大量的通信,以確定整個(gè)的口令字。因此,本發(fā)明的這個(gè)方面不管口令字多長(zhǎng),都通過使用一個(gè)口令字來進(jìn)行身份驗(yàn)證的任何方法,增強(qiáng)了安全性。
本方法的另一種實(shí)施例也是可能的,其中,第一裝置1的用戶通過僅發(fā)送口令字8的選定部分,就能請(qǐng)求登錄。這將為用戶提供更大的使用方便,因?yàn)樗麅H需將數(shù)據(jù)載體4插入用以讀出口令字的裝置5,以啟動(dòng)身份驗(yàn)證過程。在第一裝置1上的一段幫助程序處理跟第二裝置2的所有進(jìn)一步的通信。
當(dāng)用戶沒有主動(dòng)地生成登錄請(qǐng)求時(shí),在第一步驟11中所接收的請(qǐng)求也將含有他的身份表示。在這種情況下,剛剛描述的步驟12可以被省略,除非需要口令字8的子段9,10的進(jìn)一步的交換。在本方法的這樣一個(gè)實(shí)施例中,例如,由于總是相同的子段9,10被發(fā)送,或者由于它們是根據(jù)第一裝置1或它的用戶可用的某種算法而被選擇出來的,所以,待發(fā)送的子段9,10是事先確定好的。
在步驟12中已經(jīng)選定待請(qǐng)求的子段9,10之后,在下一個(gè)步驟13,向第一裝置1發(fā)送關(guān)于這些特定的子段9,10的請(qǐng)求。第一裝置1隨即查找口令字8的這些子段9,10,并將它們發(fā)往第二裝置2。在本方法的上述另一種實(shí)施例中,其中來自第一裝置1的請(qǐng)求包括口令字的各子段,這個(gè)步驟13可以被省略。
后續(xù)的步驟14是所有可想到的實(shí)施例所共有的方法的一項(xiàng)特征。在步驟14,第二裝置2從第一裝置1接收口令字8的子段9,10。
現(xiàn)在,已接收的各段必須跟各參考段進(jìn)行比較。在本發(fā)明的所有實(shí)施例都含有的步驟15,15’中,第二裝置2取出或生成各參考段。在本發(fā)明的優(yōu)選實(shí)施例中,第二裝置2不保存待取出用于比較的口令字8的一份完整的拷貝。寧可在每一次會(huì)晤中生成口令字8或者選定的子段9,10,并且隨后將其刪除,以節(jié)省存儲(chǔ)空間。為了生成口令字8的必要的各子段9,10,要使用標(biāo)識(shí)該用戶的信息。該信息可以,例如,被用來取出一個(gè)單獨(dú)存儲(chǔ)的用戶專用的源碼6,以供口令字發(fā)生器7之用??晒┻x擇地,該信息可以包括用戶專用的源碼6。
在一個(gè)可供選擇的實(shí)施例中,其中,用戶的身份被包含在從第一裝置1接收的口令字的各段之中,執(zhí)行取出或生成口令字各段用于比較的步驟15’之前加了一個(gè)步驟16。步驟16包括確定第一裝置1的用戶的身份。在將已接收的各段跟恰當(dāng)?shù)母鲄⒖级芜M(jìn)行比較時(shí),就要使用該身份。
后續(xù)的各步驟17,18,19對(duì)本發(fā)明的所有實(shí)施例都是共同的,其中,從第一裝置1接收的口令字8的各段9,10跟各參考段進(jìn)行比較,并且在步驟18,該用戶的身份被確定為假,或者在另一個(gè)步驟19通過認(rèn)證,這取決于結(jié)果。
若每次執(zhí)行本方法時(shí)都由第二裝置2重新生成口令字8的各參考段,則本方法包括刪除這些參考段的一個(gè)附加的步驟20。這樣就節(jié)省了第二裝置2的存儲(chǔ)空間。也使得有人想在第二裝置2中查找口令字8或者它的各段成為不可能。
專業(yè)人士將認(rèn)識(shí)到,本發(fā)明并不局限于上述的各實(shí)施例,在權(quán)利要求書的范圍內(nèi),可以通過多種方式來改變這些實(shí)施例。例如,可以通過借助于數(shù)據(jù)載體以外的某些其他方式,來向用戶提供口令字。同樣,可以通過多種不同技術(shù),對(duì)含有口令字的數(shù)據(jù)載體進(jìn)行拷貝保護(hù)。
權(quán)利要求
1.用于驗(yàn)證通過數(shù)據(jù)鏈路(3)被連接到第二裝置(2)的第一裝置(1)的用戶的身份的方法,其中,向該用戶提供用戶專用的口令字(8),本方法包括從第一裝置(1)向第二裝置(2)發(fā)送用戶專用的數(shù)據(jù)(9,10),并將所述數(shù)據(jù)(9,10)的至少一部分與參考數(shù)據(jù)進(jìn)行比較,其特征在于,口令字?jǐn)?shù)據(jù)的大小超過在預(yù)定的時(shí)間間隔內(nèi)數(shù)據(jù)鏈路(3)所能傳送的數(shù)據(jù)量。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,從第一裝置(1)向第二裝置(2)發(fā)送的用戶專用數(shù)據(jù)包括向用戶提供的用戶專用的口令字(8)的一個(gè)或多個(gè)子段(9,10)。
3.根據(jù)權(quán)利要求1或2所述的方法,其中,第二裝置(2)向第一裝置(1)發(fā)送針對(duì)口令字(8)的特定段(9,10)的請(qǐng)求。
4.根據(jù)權(quán)利要求3所述的方法,其中,被請(qǐng)求的各段以隨機(jī)方式被選定。
5.根據(jù)權(quán)利要求3或4所述的方法,其中,第一裝置(1)響應(yīng)于來自第二裝置(2)的請(qǐng)求而從口令字(8)產(chǎn)生被請(qǐng)求的各段(9,10)。
6.根據(jù)權(quán)利要求1-5中任何一項(xiàng)所述的方法,其中,使用一段用戶專用信息(6),口令字(8)或者口令字(8)的各段(9,10)被生成為參考數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的方法,其中,用戶專用數(shù)據(jù)(9,10)包括一段所述用戶專用信息(6)。
8.根據(jù)前述各項(xiàng)權(quán)利要求中任何一項(xiàng)所述的方法,其中,在一個(gè)數(shù)據(jù)載體(4),例如一張CD或DVD上,向第一裝置(1)的用戶提供口令字(8)。
9.根據(jù)權(quán)利要求7所述的方法,其中,為存儲(chǔ)著口令字(8)的數(shù)據(jù)載體(4)建立拷貝保護(hù)。
10.根據(jù)權(quán)利要求9所述的方法,其中,對(duì)數(shù)據(jù)載體的保護(hù)包括令數(shù)據(jù)載體(4)的一些部分成為不可讀的,并且其中,第二裝置(2)保留口令字(8)的不可讀的各段的一個(gè)記錄。
11.根據(jù)前述各項(xiàng)權(quán)利要求中任何一項(xiàng)所述的方法,其中,從第一裝置(1)向第二裝置(2)發(fā)出一項(xiàng)授權(quán)請(qǐng)求,從而生成含有用戶專用的口令字(8)的至少一部分的參考數(shù)據(jù)。
12.含有通過數(shù)據(jù)鏈路(3)被連接到第二裝置(2)的第一裝置(1)的系統(tǒng),其特征在于,該系統(tǒng)使用根據(jù)前述各項(xiàng)權(quán)利要求中任何一項(xiàng)所述的方法。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),還包括被連接到第一裝置(1)的裝置(5),用以讀出口令字(8),其中,第一裝置(1)含有這樣的裝置,它在讀出口令字(8)之后就自動(dòng)開始使用所述方法。
14.根據(jù)權(quán)利要求12或13所述的系統(tǒng)中的第一裝置。
15.根據(jù)權(quán)利要求12或13所述的系統(tǒng)中的第二裝置。
16.能在一部計(jì)算機(jī)上運(yùn)行的計(jì)算機(jī)程序,使得含有該計(jì)算機(jī)程序以及該計(jì)算機(jī)的系統(tǒng)能起到根據(jù)權(quán)利要求11或12所述的一個(gè)系統(tǒng)之中第一裝置(1)或第二裝置(2)的作用。
全文摘要
在用于驗(yàn)證通過數(shù)據(jù)鏈路(3)被連接到第二裝置(2)的第一裝置(1)的一個(gè)用戶的身份的方法中,向該用戶提供用戶專用的口令字(8),本方法包括從第一裝置(1)向第二裝置(2)發(fā)送用戶專用的數(shù)據(jù),并將數(shù)據(jù)的至少一部分與在第二裝置(2)上的數(shù)據(jù)進(jìn)行比較,口令字?jǐn)?shù)據(jù)的大小超過在預(yù)定的時(shí)間間隔內(nèi)數(shù)據(jù)鏈路(3)所能傳送的數(shù)據(jù)量。從第一裝置(1)向第二裝置(2)發(fā)送的用戶專用數(shù)據(jù)包括向用戶提供的用戶專用的口令字(8)的一個(gè)或多個(gè)子段(9,10)。含有通過數(shù)據(jù)鏈路(3)被連接到第二裝置(2)的第一裝置(1)的系統(tǒng),使用這樣一種方法。計(jì)算機(jī)程序允許可編程處理裝置起到第一裝置(1)或第二裝置(2)的作用。
文檔編號(hào)G06F21/31GK1407471SQ0212696
公開日2003年4月2日 申請(qǐng)日期2002年7月25日 優(yōu)先權(quán)日2001年7月26日
發(fā)明者杰拉德·約漢·德克爾 申請(qǐng)人:耶德托存取公司