專利名稱:在同級系統(tǒng)中用于按需分配數(shù)據(jù)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及同級(P2P)數(shù)據(jù)分配,更具體地說(但不限于),提供加密的按需P2P數(shù)據(jù)分配及付費的技術(shù)。
然而,常規(guī)的P2P系統(tǒng)有些缺點。其中之一是缺乏為被下載的文件支付費用的技術(shù)。常規(guī)的P2P系統(tǒng)的另一可能的缺點是它們?nèi)菰S通過未經(jīng)授權(quán)復(fù)制有版權(quán)的數(shù)據(jù)文件而竊取知識產(chǎn)權(quán)。
本發(fā)明還提供P2P數(shù)據(jù)分配的方法。該方法包括下列步驟接收來自一用戶盒對數(shù)據(jù)文件的請求,該請求中包括付費信息;找出與發(fā)出請求的用戶盒最接近且具有所請求的文件的用戶盒;向發(fā)出請求的用戶盒送出用以解密所請求的數(shù)據(jù)文件的加密數(shù)據(jù);向發(fā)出請求的用戶盒送出最接近的用戶盒的地址;并為被請求的文件處理付費問題。
因此,本發(fā)明的系統(tǒng)及方法通過加密及付費對知識產(chǎn)權(quán)的授權(quán)復(fù)制進行授權(quán),從而防止P2P系統(tǒng)中的知識產(chǎn)權(quán)被竊取。
圖1是適合使用本發(fā)明一個實施例的一個網(wǎng)絡(luò)拓撲圖;圖2是圖1的中央服務(wù)器的方框圖;圖3是中央服務(wù)器的存儲器的方框圖;圖4是圖1的用戶盒2的方框圖;圖5是用戶盒2的存儲器的方框圖;圖6是中央服務(wù)器可通信地耦合到多個用戶盒以在P2P系統(tǒng)中分配數(shù)據(jù)的方法的流程圖;圖7是用戶盒通信地耦合到中央服務(wù)器以在P2P系統(tǒng)中分配數(shù)據(jù)的方法的流程圖;以及圖8為適用于本發(fā)明另一實施例的網(wǎng)絡(luò)拓撲圖;實施例詳細說明以下的描述能使本領(lǐng)域的任何技術(shù)人員制造與使用本發(fā)明,并且該描述是基于特定的應(yīng)用及其需求的。本領(lǐng)域的技術(shù)人員很容易對實施例做各種修改,且在不偏離本發(fā)明的精神與范圍的基礎(chǔ)上,可以將本發(fā)明所定義的一般原理用于其它實施例及應(yīng)用。因此,本發(fā)明并不受所示實施例的限制,而是與本文所揭示的原理、特征及教導(dǎo)的最廣的范圍一致。
圖1是適合使用本發(fā)明的實施例的網(wǎng)絡(luò)拓撲圖。在一個實施例中,中央服務(wù)器110、用戶盒1(130)、用戶盒2(140)及多個其它的用戶盒經(jīng)由DSL連接125可通信地耦合到互連網(wǎng)120。在另一實施例中,互連網(wǎng)120可以是適合傳送數(shù)據(jù)的任何其它網(wǎng)絡(luò),DSL連接125也可以是其它任何適合連接到網(wǎng)絡(luò)的型式,如撥號連接、電纜調(diào)制解調(diào)器連接、無線連接或是LAN。還須注意,中央服務(wù)器110也可以是包括可經(jīng)由一個網(wǎng)絡(luò)IP地址存取的多個服務(wù)器。多個服務(wù)器也可反過來耦合到數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫服務(wù)器耦合到一個單個的儲存陣列,其內(nèi)保有索引以及實施本發(fā)明所需的其它數(shù)據(jù)。儲存陣列也可以映射到全世界各不同的位置。
圖2是圖1的中央服務(wù)器110的方框圖。中央服務(wù)器110包括輸入/輸出(I/O)接口210、顯示裝置220、輸入裝置230、存儲器240及CPU250,所有都經(jīng)由系統(tǒng)總線205耦合在一起。I/O 210將中央服務(wù)器110耦合到互連網(wǎng)120。輸入裝置230可包括鍵盤、鼠標、跟蹤球,或其它裝置,或它們的任意組合。存儲器240可包括具有讀寫能力的單一存儲器裝置,也可包括多個存儲器裝置,包括硬盤、RAM、ROM和/或任何其它的存儲器裝置。CPU 250可包括英特爾奔騰處理器或其它任何可以執(zhí)行儲存在存儲器240中的指令的處理器。此外,中央服務(wù)器110還可包括其它的外圍設(shè)備(未示出)。
圖3是圖2的存儲器240的方框圖,它包括跟蹤引擎310、跟蹤數(shù)據(jù)庫320、廣告引擎330、廣告數(shù)據(jù)庫340、分配引擎350、數(shù)據(jù)文件索引360、使用者數(shù)據(jù)庫370、操作系統(tǒng)(O/S)380、選用的網(wǎng)絡(luò)服務(wù)器390、以及選用的接口395。跟蹤引擎310跟蹤歌曲被分配及/或被請求的范圍有多廣,以及那一個人群收聽那一種歌曲,并將此數(shù)據(jù)儲存到跟蹤數(shù)據(jù)庫320中。廣告引擎330跟蹤儲存在廣告數(shù)據(jù)庫340及用戶盒中的廣告的分配。分配引擎350處理歌曲的分配及為所分配的歌曲收費,這將配合圖6進一步詳細討論。數(shù)據(jù)文件索引360是可用的數(shù)據(jù)文件(典型的是MP3文件)、它們的位置(即,IP地址或其它類型的地址、保有數(shù)據(jù)文件的用戶盒的ID 530(圖5))、以及每一個數(shù)據(jù)文件的脫密密匙(如果有)的索引。不同用戶盒上的相同數(shù)據(jù)文件的脫密密匙可能不同也可能相同。須注意,雖然本實施例所討論的數(shù)據(jù)文件可以包括以MP3編碼的歌曲,但在其它實施例中也可包括任何其它類型的數(shù)據(jù)文件,如音頻/視頻、文本等。數(shù)據(jù)文件索引360也保存廣告的IP地址或其它類型的地址。
使用者數(shù)據(jù)庫370中包括所有登記的用戶盒所有者的名稱、與他們相關(guān)的用戶盒的ID、購買數(shù)據(jù)文件的支付信息(即借記卡或信用卡信息,或任何其它適合為所購買的介質(zhì)完成付費的技術(shù)),以及用于目標廣告的相關(guān)人口的統(tǒng)計數(shù)據(jù)。在一個實施例中,操作系統(tǒng)380是Linux。然而,操作系統(tǒng)380可以是任何一種操作系統(tǒng),只要能操作存儲器240中的軟件即可。此外,存儲器240中也可包括提供網(wǎng)頁服務(wù)的網(wǎng)絡(luò)服務(wù)器390以及供用戶盒訂購介質(zhì)的傳送界面395。
圖4是用戶盒2(140)的方框圖,它與用戶盒1(130)以及可通信地耦合到互連網(wǎng)120的任何其它的用戶盒或同層(peer)實質(zhì)上相似。用戶盒2(140)可以是瞬間開機的裝置(即啟動時間極短)。用戶盒2(140)包括I/O 410、音頻輸出420、顯示裝置430、CPU 450、存儲器460、輸入裝置470;選用的通用串行總線(″USB″)接口440、選用的可拆裝存儲器480,所有部分都經(jīng)由系統(tǒng)總線450耦合在一起。I/O接口410將用戶盒2(140)連接到互連網(wǎng)120,以使用戶盒2(140)可與其它可通信地耦合到互連網(wǎng)120的用戶盒及中央服務(wù)器110交換數(shù)據(jù)。
音頻輸出420包括揚聲器,用以輸出從其它用戶盒或中央服務(wù)器110下載的歌曲及廣告。或者,音頻輸出420也可包括耳機或其它任何能輸出聲音的裝置。CPU 450可包括英特爾奔騰處理器或其它任何可以執(zhí)行儲存在存儲器460中的指令的處理器。輸入裝置470可包括鍵盤、鼠標或任何其它裝置或它們的組合以便輸入數(shù)據(jù)。選用的USB口440是用于可通信地耦合如MP3播放機的裝置,以便從存儲器460下載歌曲。注意,在其它實施例中,USB口440可以是任何其它類型用于連接裝置的接口。同樣地,歌曲也可儲存在可拆裝存儲器480中,以便在便攜式裝置中收聽。注意,只有經(jīng)過授權(quán)的儲存在存儲器460中的歌曲才能經(jīng)由USB口440或可拆裝存儲器480下載??梢酝ㄟ^支付額外的費用獲得下載歌曲的授權(quán)。此外,如果歌曲的版權(quán)所有者授權(quán)免費分配(或如果歌曲處于公有領(lǐng)域),歌曲也可獲授權(quán)下載。
圖5是存儲器460的方框圖,它包括消費者引擎510、加密的歌曲520、ID 530、操作系統(tǒng)540、及選用的未加密歌曲550。須注意,存儲器460也可選擇性地儲存一用戶瀏覽器(或儲存以取代及執(zhí)行消費者引擎510的操作),如Internet Explorer,以在互連網(wǎng)120中沖浪(surfing)并與選用的界面395(圖3)互動。消費者引擎510與中央服務(wù)器110互動以從其它的用戶盒下載歌曲。此外,消費者引擎510在收到指定歌曲的請求后,從歌曲(加密)520中送出歌曲給其它用戶盒。消費者引擎510的操作將配合圖7做更詳細的討論。
歌曲(加密)520保存從其它用戶盒(同級)下載的加密歌曲。這些歌曲通常是MP3格式,但也可以是任何可經(jīng)由音頻輸出420輸出的格式。此外,如果歌曲經(jīng)過授權(quán)可下載(即通過付費,如果歌曲是在公有領(lǐng)域中,或經(jīng)授權(quán)可免費分發(fā)等),儲存在歌曲(加密)520中的歌曲也可下載到某裝置中,如MP3播放機或可拆裝存儲器480。在另一實施例中,儲存在歌曲(加密)520中的歌曲可以經(jīng)由USB口440下載到可拆裝存儲器480,但品質(zhì)隨著每一次的復(fù)制降低,以防止非法的分發(fā)。歌曲(加密)520也可有加密型式的廣告(為防止竄改)供分發(fā)給其它用戶盒。
ID 530是為每一個用戶盒建立的獨有ID,并與用戶盒的所有者相關(guān)。在購買了用戶盒的后,購買者注冊該用戶盒,同時也可提交相關(guān)的人口統(tǒng)計信息,該信息可供目標廣告使用?;蛘?,在注冊程序期間,也可選擇性地提供人口統(tǒng)計信息,或甚至不提供。注冊后,購買者即在中央服務(wù)器110建立一個帳戶,因此,購買者可以下載歌曲,并使其信用卡或借記卡(或其它支付工具)自動地為此購買結(jié)帳。帳戶是由ID 530識別,每當購買者下載歌曲時,它即被送到中央服務(wù)器110。在另一個實施例中,用戶盒2(140)可能是使用用戶瀏覽器(如Internet Explorer)的個人計算機。在此情況,ID 530是客戶在互連網(wǎng)上注冊按需無線電廣播后儲存在存儲器460中的cookie中的獨有ID。
操作系統(tǒng)540是可以與消費者應(yīng)用軟件510一起工作的操作系統(tǒng)。在一個實施例中,操作系統(tǒng)540可包括Linux。不過,在另一實施例中,操作系統(tǒng)540可以是任何一種操作系統(tǒng),如Windows 2000、Palm OS等。選用的歌曲(未加密)550包括經(jīng)授權(quán)不需付費即可分發(fā)的歌曲(或其它數(shù)據(jù)文件),典型地是MP3格式的歌曲。如此,歌曲不需要加密。
圖6是在P2P系統(tǒng)中分配數(shù)據(jù)的方法的流程圖。在一個實施例中,中央服務(wù)器110的分配引擎350可執(zhí)行圖6的方法。圖6的方法可連續(xù)地運行或在有代表性的時間間隔執(zhí)行。此外,圖6方法的多情況可同時執(zhí)行。須注意,在另一實施例中,在執(zhí)行圖6的方法前,可將界面395送給發(fā)出請求的用戶盒。首先,在一個實施例中,收到發(fā)出請求的用戶盒或同級(如用戶盒2(140))通過互連網(wǎng)120或其它網(wǎng)絡(luò)搜尋歌曲的請求(605)。接下來,為歌曲搜尋符合搜尋請求中搜尋標準的索引(如索引360)或數(shù)據(jù)庫(610),在一實施例中,搜尋的結(jié)果被送給用戶盒2(140)。接著,收到來自用戶盒2(140)對指定歌曲的請求。請求中可以包括歌曲的識別符,如曲名,以及機器的識別符,如ID530。請求中也可包括指定購買類型的信息,例如播放單次的下載,有限次播放或無限次播放的下載,下載到便攜式存儲器等。此外,請求中也可包括口令或其它安全數(shù)據(jù),以確認用戶盒2(140)的使用者的確授權(quán)此次購買。
接著,決定是否要送出廣告(620)。此項決定可根據(jù)使用者的喜好、所選的歌曲、購買的類型(即收聽廣告可以補貼購買或免費購買)等。在本發(fā)明的一個實施例中,決定是由廣告引擎330(圖3)執(zhí)行。例如,如果要送廣告給用戶盒2(140),在一個實施例中,廣告引擎330會根據(jù)歌曲識別符(即,麥當娜的歌曲可能適合普及型車的廣告,古典音樂可能較適合高級車的廣告)和/或與ID530相關(guān)的人口統(tǒng)計數(shù)據(jù)(例如,女性衛(wèi)生用品的廣告較適合女性消費者而非男性消費者)決定適當?shù)膹V告。或者,也可以不根據(jù)人口統(tǒng)計數(shù)據(jù)或歌曲識別符隨機地選擇廣告或選擇缺省設(shè)置的廣告。
一旦決定要送出何種廣告,在一實施例中,廣告引擎330接著決定(630)哪一個持有所決定的廣告的用戶盒最接近發(fā)出請求的用戶盒。通過比較持有廣告的用戶盒與發(fā)出請求的用戶盒間的地理地址,可以決定儲存有該廣告的最接近的用戶盒?;蛘撸山?jīng)互連網(wǎng)120通過探測(ping)決定最接近的用戶盒。在一個實施例中,所決定的廣告可能在中央服務(wù)器110的廣告數(shù)據(jù)庫340中。此外,廣告也可加密以防止被竄改。
傳送(635)所確定的廣告的識別符信息及最接近的用戶盒的地址。如果廣告被加密,則也要送出脫密密匙。在本發(fā)明的另一實施例中,可以使用如下所述的圖8的加密技術(shù)來加密或解密廣告。如果從請求的用戶盒收到廣告已收到的確認信號,則向請求歌曲的用戶盒的所有者收取該歌曲的費用(650),這將在下面繼續(xù)討論。如果收到否定的確認信號(640),或在預(yù)定的時間過去后沒有收到信號(640),則送出包含有該廣告的下一個最接近的用戶盒的地址(645)。如果仍沒有收到確認信號,則送出包含有該廣告的第三個最接近的用戶盒的地址(645)。此程序被重復(fù)直到收到確認信號為止?;蛘撸顺绦蚩芍貜?fù)有限次數(shù),或重復(fù)預(yù)定的時間。
一旦收到確認信號(640)或不要顯示廣告,便向購買者收取該歌曲的費用。須注意,如果該歌曲免費(在公有領(lǐng)域、由廣告補貼等),則不需向購買者收費。在另一實施例中,可以在收到購買者確認接收歌曲的確認信號(665)后收取費用。在一個實施例中,分配引擎350向購買者收取歌曲的費用是通過信用卡或借記卡扣款進行的。或者,分配引擎350可以向一預(yù)付帳戶或支票帳戶收費,或使用任何其它適用的接受支付的技術(shù)。在另一實施例中,分配引擎350可以經(jīng)由購買者的ISP帳單向購買者收費,與常規(guī)的以電話帳單為購買的服務(wù)或物品付費的方法類似。在一個實施例中,每一位注冊的購買者的支付信息可以儲存在使用者數(shù)據(jù)庫370中,并由用戶盒的ID530索引。
接下來,計算包含歌曲的最接近的用戶盒,這可通過比較用戶盒與發(fā)出請求的用戶盒的地理地址(在一實施例中是儲存在使用者數(shù)據(jù)庫370中),通過探測(pinging)至用戶盒,或經(jīng)由其它技術(shù)來進行。接下來,請求的用戶盒所請求的歌曲的脫密密匙以及包含有該歌曲的最接近的用戶盒的地址被送出(660)。在本發(fā)明的另一實施例中,可以使用下述的圖8的加密技術(shù)對歌曲加密及解密。如果收到接受歌曲的確認信號(665),則該方法結(jié)束(675)。如果收到否定的確認信號(665)或在預(yù)定的時間過去后仍沒有收到信號,則將包含有該歌曲的下一個最接近的用戶盒的地址傳送給發(fā)出請求的用戶盒??芍貜?fù)傳送(660)地址及等待接受確認(665)的步驟,直至收到確認信號??蓪⒅貜?fù)的次數(shù)限制在預(yù)定的適當次數(shù)。一旦收到確認信號,該方法結(jié)束(675)。
圖7是在P2P系統(tǒng)中分配數(shù)據(jù)的方法的流程圖。在一個實施例中,用戶盒的消費者引擎510可以執(zhí)行圖7的方法。圖7的方法可連續(xù)地運行,或在代表性的時間間隔運行。此外,圖7方法的多種情況可同時執(zhí)行。須注意,在另一實施例中,在圖7的方法之前,接收界面395,在此情況,一個任意的客戶,如Internet Explorer,將取代消費者引擎510執(zhí)行圖7的方法。
首先,將一搜尋請求送給(705)中央服務(wù)器,如中央服務(wù)器110。接下來,接收來自中央服務(wù)器的搜尋結(jié)果并將其顯示(710)。在本發(fā)明的一個實施例中,消費者引擎510可以在顯示裝置430上顯示結(jié)果?;蛘?,結(jié)果也可以是合成的語音并由揚聲器輸出,如音頻輸出420。接下來,包括歌曲識別符及ID(如ID530)的請求被傳送(715)給中央服務(wù)器。此外,用于確認一使用者確實被授權(quán)進行此次購買的口令或其它安全數(shù)據(jù)也被傳送給中央服務(wù)器。請求中也可包括指定購買類型的信息,例如單次播放的下載,有限次播放或無限次播放的下載等。
如果所收到的通知是不播放廣告(720),則收到具有所要歌曲的最近用戶盒的地址與脫密密匙,關(guān)于此點將在下面討論。然而,如果要播放廣告,則收到具有廣告的最接近的用戶盒的地址及廣告識別符(725)。在一個實施例中,廣告可位于中央服務(wù)器110的廣告數(shù)據(jù)庫340中,在此情況下,所收到的地址就是中央服務(wù)器110的地址。此外,如果廣告被加密,則會收到一脫密密匙。注意,在本發(fā)明的另一實施例中,可以使用圖8的加密技術(shù)對廣告加密及解密,這將在下面描述。接下來,將對廣告的請求送給最接近的用戶盒(或中央服務(wù)器110,如前所述)。接著,收到廣告(735)。
如果沒有收到完整的廣告,或者如果在接收廣告方面有其它問題(740),則一不完整的信號被送給中央服務(wù)器110(745)。接著,收到具有該廣告的下一個最接近的用戶盒的地址(750)。然后,請求被送到被識別的下一個最接近的用戶盒的地址(755)。接著收到廣告(735)??梢灾貜?fù)上述接收廣告的過程,直到收到完整的廣告。在本發(fā)明的另一實施例中,該過程被限制在一有限的時間或有限的嘗試次數(shù)。
廣告一旦被接收,一完成信號即被送到中央服務(wù)器110(760),并接著播放廣告(765)。然后,收到歌曲的脫密密匙(如果歌曲被加密)及包含歌曲的最接近的用戶盒的地址(770)。接下來,對歌曲的請求被送到被識別的用戶盒(775)。請求中包括歌曲識別符。接著,從具有該歌曲的最接近的用戶盒收到歌曲。如果由于網(wǎng)絡(luò)通信失敗或最接近的用戶盒掉線或其它原因?qū)е赂枨鷽]有被完全接收(782),則一不完整信號被傳送到中央服務(wù)器110(785)。接著,接收(787)下一個持有該歌曲的最接近的用戶盒的地址。向下一個最接近的用戶盒(787)發(fā)送一請求(790)??梢灾貜?fù)上述請求歌曲的過程,直到成功地收到歌曲。在本發(fā)明的另一實施例中,該過程被限制在一有限的嘗試次數(shù)或有限的時間內(nèi)。
一旦收到完整的歌曲,即送出完成信號(792)給中央服務(wù)器110。接著以脫密密匙將歌曲解密并播放(795)。在本發(fā)明的另一實施例中,所下載的歌曲也可被加密并儲存在歌曲(加密)520中,并通知中央服務(wù)器110。反過來,中央服務(wù)器110將更新索引360以顯示發(fā)出請求的用戶盒持有此首歌曲的拷貝,以使發(fā)出請求的用戶盒成為此首歌曲的提供者。須注意,在本發(fā)明的另一實施例中,可以使用如下所述的圖8的加密技術(shù)加密及解密歌曲。
圖8是本發(fā)明另一實施例適用的網(wǎng)絡(luò)拓撲。網(wǎng)絡(luò)拓撲包括一中央服務(wù)器800、跟蹤服務(wù)器810、用戶盒820、830及840,所有部分都經(jīng)由網(wǎng)絡(luò)(如互連網(wǎng))可通信地耦合在一起。在本發(fā)明的一個實施例中,圖8的網(wǎng)絡(luò)拓撲實施一加密技術(shù),它可與圖6及圖7所示的方法共同使用。
中央服務(wù)器800、跟蹤服務(wù)器810、用戶盒820、830及840都使用公用密匙(非對稱)加密技術(shù),以便能安全地將數(shù)據(jù)文件儲存到用戶盒,并在各用戶盒間傳送數(shù)據(jù)文件。公用密匙系統(tǒng)使用單一算法所產(chǎn)生的一對鑰匙,該算法由發(fā)明人Rivest、Shamir、及Adleman的名字命名,被稱為RSA,并在美國專利4,405,829中有描述,該專利被結(jié)合到本申請中作為參考。此算法依據(jù)這樣的事實,既將非常大量的數(shù)字因式分解成兩個質(zhì)數(shù)是非常困難的問題,且需要計算機花費很長的時間。公用密匙系統(tǒng)的基礎(chǔ)是兩個鑰匙,一個是保密的且被儲存在用戶盒中,另一個為公用,且被儲存在跟蹤服務(wù)器810中。只有專用密匙能解密由對應(yīng)的公用密匙加密的數(shù)據(jù)。因此,為傳送數(shù)據(jù),加密引擎使用儲存在跟蹤服務(wù)器810中的公用密匙將數(shù)據(jù)加密。接著,只有具有對應(yīng)的專用密匙的用戶盒才能破解數(shù)據(jù)并使用它。此外,為保護數(shù)據(jù)的完整性,可以使用儲存在用戶盒中的專用密匙對數(shù)據(jù)校驗和。
中央服務(wù)器800與圖1的服務(wù)器110實質(zhì)上相似,并包括數(shù)據(jù)索引805,它可與圖3的數(shù)據(jù)文件索引360實質(zhì)上相似。跟蹤服務(wù)器810可跟蹤交易并使用加密引擎815執(zhí)行加密,這將在下面進一步討論。在本發(fā)明的一個實施例中,跟蹤服務(wù)器810的特征可以與中央服務(wù)器800結(jié)合,藉以節(jié)省一個服務(wù)器。跟蹤服務(wù)器810中也儲存公用密匙Kpub(A)、Kpub(B)、Kpub(C),分別用于用戶盒A 820、B 830及C 840。在一個實施例中,用戶盒A 820、B 830及C 840并不知道它們各自的公用密匙。此外,加密引擎815可以為交易T產(chǎn)生公用密匙Kpub(T)及專用密匙Kpvt(T)。
用戶盒820、830及840與圖1的用戶盒1(130)可以實質(zhì)上相似。用戶盒A820中包括加密的數(shù)據(jù)文件D。數(shù)據(jù)文件D是以Kpub(A)加密(在本文中稱為Kpub(A)[D]),并以儲存在用戶盒A 82 0的存儲器中的Kpvt(A)解密。在本發(fā)明的一個實施例中,Kpvt(A)被硬布線在用戶盒A 820中,因此,不會被用戶盒A 820的使用者發(fā)現(xiàn)。用戶盒中A 820也包括加密引擎A 825,使用從跟蹤服務(wù)器810收到的公用密匙加密Kpub(A)[D],這將在下面進一步討論。此外,用戶盒中A 820也包括消費者引擎A 827,用以在用戶盒與服務(wù)器間傳送數(shù)據(jù),這也將在下面進一步討論。在一個實施例中,消費者引擎A 827與圖5的消費者引擎510實質(zhì)上相似。
用戶盒B 830包括加密引擎B 835及Kpvt(B),它可以被硬布線在用戶盒B 830中,因此,用戶盒B 830的使用者不會發(fā)現(xiàn)。Kpvt(B)是專用密匙,可以解密被Kpub(B)加密的數(shù)據(jù)。此外,用戶盒B 830也包括消費者引擎B 837,用以在用戶盒與服務(wù)器間傳送數(shù)據(jù),如下面將要進一步討論的那樣。在一個實施例中,消費者引擎B 837與圖5的消費者引擎510實質(zhì)上相似。
用戶盒C 840包括加密引擎C 845及Kpvt(C),它可以被硬布線在用戶盒C 840中,因此,用戶盒C 840的使用者不會發(fā)現(xiàn)。Kpvt(C)是專用密匙,可以解密被Kpub(C)加密的數(shù)據(jù)。此外,用戶盒C 840也包括消費者引擎C 847,用以在用戶盒與服務(wù)器間傳送數(shù)據(jù),如下面將要進一步討論的那樣。在一個實施例中,消費者引擎C 847與圖5的消費者引擎510實質(zhì)上相似。
在圖8的拓撲的運行例中,用戶盒B 830向中央服務(wù)器800請求數(shù)據(jù)文件D。接著,一個與圖3的分配引擎350類似的分配引擎(未示出),在數(shù)據(jù)索引805中搜尋持有數(shù)據(jù)文件D的用戶盒,并回復(fù)一具有D的用戶盒的列表。列表的順序可以是按照最接近的位置、最快速的位置或其它順序。須注意,在圖8的例子中,只有用戶盒A 820擁有D。接著,用戶盒B 830的使用者選擇一個擁有D的用戶盒,或者,消費者引擎837根據(jù)最近的位置、預(yù)期下載的時間或其它標準自動選擇一用戶盒。接著,引擎837把對D的數(shù)據(jù)請求傳送給用戶盒A 820。用戶盒A 820的消費者引擎827接收請求,且可能會因各種理由拒絕該請求,例如不再擁有D,此時,引擎837必須選擇另外一個擁有D的用戶盒,假設(shè)有一個擁有D的用戶盒。
假設(shè)用戶盒A 820的引擎827接受請求,接著,引擎A 827將該請求通知跟蹤服務(wù)器810。如果中央服務(wù)器800執(zhí)行跟蹤服務(wù)器810的功能,則請求會前往中央服務(wù)器800。請求可以包括用戶盒A 820的地址和請求數(shù)據(jù)D的用戶盒的ID。然后,跟蹤服務(wù)器810的加密引擎815使用美國專利4,405,829中所描述的技術(shù)產(chǎn)生Kpub(T)與Kpvt(T)。此外,加密引擎使用Kpub(A)加密Kpub(B)及Kpub(T),得到Kpub(A)[Kpub(B)]及Kpub(A)[Kpub(T)],并將它們送給用戶盒A 820。
接著,加密引擎A 825利用Kpvt(A)解密加密匙Kpub(A)[Kpub(B)]及Kpub(A)[Kpub(T)]得到Kpub(B)及Kpub(T)。接著,加密引擎A 825使用Kpvt(A)解密Kpub(A)[D],得到解密的D。接著,加密引擎A 825利用Kpub(B)及Kpub(T)加密D以得到Kpub(T)[Kpub(B)[D]]或Kpub(B)[Kpub(T)[D]],視加密的順序而定。接著,消費者引擎A 827將Kpub(T)[Kpub(B)[D]]或Kpub(B)[Kpub(T)[D]]傳送給用戶盒B 830。
用戶盒B 830在收到Kpub(T)[Kpub(B)[D]]后,消費者引擎B 837通知跟蹤服務(wù)器810收到加密的數(shù)據(jù)D。接著,跟蹤服務(wù)器810的加密引擎815以Kpub(B)加密Kpvt(T)得到Kpub(B)[Kpvt(T)],接著,加密引擎815將其送給用戶盒B 830。接著,加密引擎835使用Kpvt(B)解密Kpub(B)[Kpvt(T)]得到Kpvt(T)。接著,加密引擎835使用Kpvt(T)及Kpvt(B)解密經(jīng)過加密的D-Kpub(T)[Kpub(B)[D]]得到解密的D,接著,它即可在用戶盒B 830上播放。此外,Kpub(B)[D]可以儲存在用戶盒B 830中。解密后,消費者引擎B 837通知中央服務(wù)器800交易已完成,并經(jīng)由圖6的方法向已注冊的用戶盒B 830的所有者收取費用。在另一實施例中,中央服務(wù)器800可以在交易一開始時或其它點向已注冊的用戶盒B 830的所有者收取費用。此外,消費者引擎B837可以通知中央服務(wù)器800更新數(shù)據(jù)索引805,以將用戶盒B 830現(xiàn)已儲存有D的情況包括在內(nèi)。
以上對本發(fā)明實施例的描述,包括在摘要中的描述,均不意味著詳盡無疑地描述了本發(fā)明或?qū)⒈景l(fā)明限制在所揭示的型式。雖然為了說明的目的,本文描述了本發(fā)明的特定實施例,但本領(lǐng)域的技術(shù)人員應(yīng)當了解,各種等同的修改也都在本發(fā)明的范圍之內(nèi)。
按照以上的詳細描述,可對本發(fā)明做各種修改。以下權(quán)利要求中所使用的術(shù)語不應(yīng)被解釋成將本發(fā)明限制在說明書及權(quán)利要求中所揭示的特定實施例。更確切地說,本發(fā)明的范圍完全是由以下的權(quán)利要求決定,應(yīng)當用公認的解釋權(quán)利要求的原則對其進行解釋。
權(quán)利要求
1.一種在同級系統(tǒng)中的索引服務(wù)器中實施的方法,包括接收一第一同級對一數(shù)據(jù)文件的請求,該請求中包括所述第一同級的ID;在同級的索引中識別具有所述數(shù)據(jù)文件的一第二同級;處理對數(shù)據(jù)文件的收費;以及向所述第一同級傳送所述第二同級的地址以及用以解密所述數(shù)據(jù)文件的一第一加密數(shù)據(jù)組。
2.如權(quán)利要求1的方法,其中識別是識別地理上最接近第一同級的第二同級。
3.如權(quán)利要求1的方法,其中識別是識別與第一同級相關(guān)的探測(ping)數(shù)量最少的第二同級。
4.如權(quán)利要求1的方法,其中數(shù)據(jù)文件是音樂文件。
5.如權(quán)利要求1的方法,進一步包括選擇一廣告?zhèn)魉徒o所述第一同級;以及傳送具有所述廣告的一個同級的地址給所述第一同級。
6.如權(quán)利要求5的方法,其中選擇廣告是根據(jù)與所述第一同級相關(guān)的人口統(tǒng)計數(shù)據(jù)進行的。
7.如權(quán)利要求5的方法,其中收費處理在將具有廣告的同級的地址傳送給所述第一同級的時降低對數(shù)據(jù)文件的收費。
8.如權(quán)利要求1的方法,進一步包括在處理收費及傳送所述第二同級的地址給所述第一同級前,先確認來自所述第一同級的口令。
9.如權(quán)利要求1的方法,其中在收到來自所述第一同級確認已收到數(shù)據(jù)文件的確認信號之前,所述處理不會發(fā)生。
10.如權(quán)利要求1的方法,進一步包括在收到所述第一同級表明無法取得數(shù)據(jù)文件的信號的后,在同級索引中識別另一個具有數(shù)據(jù)文件的同級;傳送所述另一個同級的地址以及用以解密數(shù)據(jù)文件的另一加密數(shù)據(jù)組給所述第一同級。
11.如權(quán)利要求1的方法,進一步包括更新同級索引以指示所述第一同級中包括數(shù)據(jù)文件的拷貝。
12.如權(quán)利要求1的方法,進一步包括傳送一第二加密數(shù)據(jù)組給所述第二同級。
13.如權(quán)利要求12的方法,其中所述第二加密數(shù)據(jù)組中包括一加密的公用交易密匙以及一加密的公用密匙,公用密匙可以加密數(shù)據(jù),以使被加密的數(shù)據(jù)只能被所述第一同級破解。
14.如權(quán)利要求1的方法,其中,所述第一加密數(shù)據(jù)組中包括加密的專用交易密匙。
15.如權(quán)利要求1的方法,其中,加密的專用交易密匙只能被所述第一同級破解。
16.一種在同級系統(tǒng)中的索引服務(wù)器中使用的機器可讀介質(zhì),所述服務(wù)器上儲存有指令致使接收一第一同級對數(shù)據(jù)文件的請求,該請求中包括該第一同級的ID;在同級索引中識別具有數(shù)據(jù)文件的一第二同級;根據(jù)所述第一同級的ID處理對數(shù)據(jù)文件的收費;以及向第一同級傳送所述第二同級的地址以及用以解密數(shù)據(jù)文件的第一加密數(shù)據(jù)組。
17.如權(quán)利要求16的機器可讀介質(zhì),其中識別指令識別地理上最接近所述第一同級的一第二同級。
18.如權(quán)利要求16的機器可讀介質(zhì),其中識別指令識別與所述第一同級相關(guān)的探測數(shù)量最少的一第二同級。
19.如權(quán)利要求16的機器可讀介質(zhì),其中數(shù)據(jù)文件是音樂文件。
20.如權(quán)利要求16的機器可讀介質(zhì),進一步包括指令以選擇一廣告?zhèn)魉徒o所述第一同級;以及傳送具有該廣告的同級的地址給所述第一同級。
21.如權(quán)利要求20的機器可讀媒體,其中選擇廣告的指令是基于與所述第一同級相關(guān)的人口統(tǒng)計數(shù)據(jù)。
22.如權(quán)利要求20的機器可讀介質(zhì),其中處理收費的指令在將具有該廣告的同級的地址傳送給所述第一同級時,降低對數(shù)據(jù)文件的收費。
23.如權(quán)利要求16的機器可讀介質(zhì),進一步包括一個指令,以在處理收費及傳送所述第二同級的地址給所述第一同級之前,先確認來自第一同級的口令。
24.如權(quán)利要求16的機器可讀介質(zhì),其中在收到來自所述第一同級確認已收到數(shù)據(jù)文件的確認信號之前,所述處理指令不會發(fā)生。
25.如權(quán)利要求16的機器可讀介質(zhì),進一步包括指令以在收到所述第一同級指示無法取得數(shù)據(jù)文件的信號之后,在同級的索引中識別另一個具有數(shù)據(jù)文件的同級;傳送該另一個同級的地址以及用以解密數(shù)據(jù)文件的另一加密數(shù)據(jù)組給所述第一同級。
26.如權(quán)利要求16的機器可讀介質(zhì),進一步包括一指令來更新同級的索引以指示第一同級中包括數(shù)據(jù)文件的拷貝。
27.如權(quán)利要求16的機器可讀介質(zhì),進一步包括一指令,致使傳送一第二加密數(shù)據(jù)組給所述第二同級。
28.如權(quán)利要求27的機器可讀介質(zhì),其中,第二加密數(shù)據(jù)組中包括一加密的公用交易匙以及一加密的公用密匙,公用密匙能加密數(shù)據(jù),以使被加密的數(shù)據(jù)只能被所述第一同級破解。
29.如權(quán)利要求16的機器可讀介質(zhì),其中所述第一加密數(shù)據(jù)組包括加密的專用交易密匙。
30.如權(quán)利要求29的機器可讀介質(zhì),其中加密的專用交易密匙只能被所述第一同級破解。
31.一種用于同級系統(tǒng)的索引服務(wù)器,包括接收裝置,用以接收一第一同級對一數(shù)據(jù)文件的請求,該請求中包括該第一同級的ID;識別裝置,用以在同級的索引中識別具有所述數(shù)據(jù)文件的一第二同級;收費處理裝置,用以根據(jù)所述第一同級的ID處理對數(shù)據(jù)文件的收費;以及傳送裝置,用以向所述第一同級傳送所述第二同級的地址以及用以解密數(shù)據(jù)文件的解密信息。
32.一種用于同級系統(tǒng)的索引服務(wù)器,包括數(shù)據(jù)文件索引,能儲存數(shù)據(jù)文件一覽表、儲存有數(shù)據(jù)文件的同級、以及解密數(shù)據(jù)文件所需的加密數(shù)據(jù);分配引擎,可通信地耦合到所述索引,能接收一第一同級對一數(shù)據(jù)文件的請求,該請求中包括該第一同級的ID;在索引中識別具有數(shù)據(jù)文件的一第二同級;根據(jù)所述第一同級的ID處理對數(shù)據(jù)文件的收費;以及傳送所述第二同級的地址以及用以解密數(shù)據(jù)文件的第一加密數(shù)據(jù)組給所述第一同級。
33.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能識別地理上最接近所述第一同級的一第二同級。
34.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能識別與第一同級相關(guān)的探測數(shù)量最少的第二同級。
35.如權(quán)利要求32的服務(wù)器,其中數(shù)據(jù)文件是音樂文件。
36.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能選擇一廣告?zhèn)魉徒o所述第一同級;以及傳送具有廣告的一同級的地址給所述第一同級。
37.如權(quán)利要求36的服務(wù)器,其中分配引擎進一步能根據(jù)與所述第一同級相關(guān)的人口統(tǒng)計數(shù)據(jù)選擇廣告。
38.如權(quán)利要求36的服務(wù)器,其中分配引擎進一步能在將具有廣告的同級的地址傳送給所述第一同級時,降低對數(shù)據(jù)文件的收費。
39..如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能在處理收費及傳送所述第二同級的地址給所述第一同級之前,先確認來自第一同級的口令。
40.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能在收到來自所述第一同級確認已收到數(shù)據(jù)文件的確認信號之前,延遲處理。
41.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能,在收到第一同級表明無法取得數(shù)據(jù)文件的信號之后,在索引中識別另一個具有該數(shù)據(jù)文件的同級;傳送該另一個同級的地址以及用以解密數(shù)據(jù)文件的另一加密數(shù)據(jù)組給所述第一同級。
42..如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能更新索引以指示第一同級中包括數(shù)據(jù)文件的拷貝。
43.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能更新索引以指示所述第一同級中包括所述數(shù)據(jù)文件的拷貝。
44.如權(quán)利要求32的服務(wù)器,其中分配引擎進一步能傳送一第二加密數(shù)據(jù)組給所述第二同級。
45.如權(quán)利要求44的服務(wù)器,其中,所述第二加密數(shù)據(jù)組中包括一加密的公用交易匙以及一加密的公用密匙,公用密匙能加密數(shù)據(jù),以使被加密的數(shù)據(jù)只能被所述第一同級破解。
46.如權(quán)利要求32的服務(wù)器,其中,所述第一加密數(shù)據(jù)組包括加密的專用交易密匙。
47.如權(quán)利要求36的服務(wù)器,其中,加密的專用交易密匙只能被所述第一同級破解。
48.一種在同級系統(tǒng)中的一第一同級中實施的方法,包括傳送購買一數(shù)據(jù)文件的請求給一服務(wù)器,該購買請求中包括一同級識別符;從所述服務(wù)器接收具有所述數(shù)據(jù)文件的一第二同級的地址以及用以解密該數(shù)據(jù)文件的一第一加密數(shù)據(jù)組;向第二同級傳送一個下載該數(shù)據(jù)文件的請求;從所述第二同級接收該數(shù)據(jù)文件;以所述第一加密數(shù)據(jù)組解密該數(shù)據(jù)文件;以及輸出該數(shù)據(jù)文件。
49.如權(quán)利要求48的方法,其中數(shù)據(jù)文件是音樂文件。
50.如權(quán)利要求48的方法,進一步包括從所述服務(wù)器接收具有一廣告的一同級的地址;從所述具有廣告的同級下載該廣告;以及播放該廣告。
51.如權(quán)利要求48的方法,進一步包括在接收具有所述數(shù)據(jù)文件的所述第二同級的地址以及用以解密該數(shù)據(jù)文件的所述第一加密數(shù)據(jù)組之前,先送出一口令給所述服務(wù)器。
52.如權(quán)利要求48的方法,進一步包括送出一確認信號給所述服務(wù)器以確認所述數(shù)據(jù)文件的接收。
53.如權(quán)利要求48的方法,進一步包括,當無法下載所述數(shù)據(jù)文件時,送出一用以表明無法下載該數(shù)據(jù)文件的信號給所述服務(wù)器。
54.如權(quán)利要求53的方法,進一步包括在送出用以表明無法下載數(shù)據(jù)文件的信號之后,接收具有該數(shù)據(jù)文件的一第三同級的地址。
55.如權(quán)利要求48的方法,其中,所述第一加密數(shù)據(jù)組中包括加密的專用交易密匙。
56.如權(quán)利要求55的方法,其中,加密的專用交易密匙只能被所述第一同級破解。
57.如權(quán)利要求55的方法,其中只有第一同級知曉的專用交易密匙及專用密匙解密數(shù)據(jù)文件。
58.如權(quán)利要求48的方法,進一步包括儲存所述數(shù)據(jù)文件的一加密的拷貝;以及通知所述服務(wù)器該數(shù)據(jù)文件已被儲存。
59.一種在同級系統(tǒng)中的同級中使用的機器可讀介質(zhì),同級中儲存有指令致使傳送一購買數(shù)據(jù)文件的請求給一服務(wù)器,該購買請求中包括一同級識別符;從所述服務(wù)器接收具有該數(shù)據(jù)文件的一第二同級的地址以及用以解密該數(shù)據(jù)文件的一第一加密數(shù)據(jù)組;向所述第二同級傳送下載該數(shù)據(jù)文件的請求;從所述第二同級接收該數(shù)據(jù)文件;用所述第一加密數(shù)據(jù)組解密該數(shù)據(jù)文件;以及輸出該數(shù)據(jù)文件。
60.如權(quán)利要求59的機器可讀介質(zhì),其中數(shù)據(jù)文件是音樂文件。
61.如權(quán)利要求59的機器可讀介質(zhì),進一步包括指令致使從所述服務(wù)器接收具有一廣告的一同級的地址;從具有該廣告的所述同級下載該廣告;以及播放該廣告。
62.如權(quán)利要求59的機器可讀介質(zhì),進一步包括一指令,致使在接收具有所述數(shù)據(jù)文件的所述第二同級的地址以及用以解密該數(shù)據(jù)文件的所述第一加密數(shù)據(jù)組之前,先送出一口令給所述服務(wù)器。
63.如權(quán)利要求59的機器可讀介質(zhì),進一步包括一指令,致使送出一確認信號給所述服務(wù)器以確認所述數(shù)據(jù)文件的接收。
64.如權(quán)利要求59的機器可讀介質(zhì),進一步包括一指令,致使當無法下載所述數(shù)據(jù)文件時,送出一用以表明無法下載該數(shù)據(jù)文件的信號給所述服務(wù)器。
65.如權(quán)利要求64的機器可讀介質(zhì),進一步包括一指令,致使送出用以表明無法下載該數(shù)據(jù)文件的信號之后,接收具有該數(shù)據(jù)文件的一第三同級的地址。
66.如權(quán)利要求59的機器可讀介質(zhì),其中,所述第一加密數(shù)據(jù)組中包括加密的專用交易密匙。
67.如權(quán)利要求59的機器可讀介質(zhì),其中,加密的專用交易密匙只能被所述第一同級破解。
68.如權(quán)利要求59的機器可讀介質(zhì),其中解密所述數(shù)據(jù)文件的指令進一步利用只有所述第一同級知曉的專用密匙。
69.如權(quán)利要求59的機器可讀介質(zhì),進一步包括儲存加密的所述數(shù)據(jù)文件的拷貝;以及通知所述服務(wù)器該數(shù)據(jù)文件已被儲存。
70.一種在同級系統(tǒng)中的同級,包括一同級識別;以及一引擎,能傳送一購買數(shù)據(jù)文件的請求給一服務(wù)器,該購買請求中包括一同級識別符;從所述服務(wù)器接收具有該數(shù)據(jù)文件的一第二同級的地址以及用以解密該數(shù)據(jù)文件的一第一加密數(shù)據(jù)組;向所述第二同級傳送下載該數(shù)據(jù)文件的請求;從所述第二同級接收該數(shù)據(jù)文件;用所述第一加密數(shù)據(jù)組解密該數(shù)據(jù)文件;以及輸出該數(shù)據(jù)文件。
71.如權(quán)利要求70的同級,其中數(shù)據(jù)文件是音樂文件。
72.如權(quán)利要求70的同級,其中引擎進一步能從所述服務(wù)器接收具有一廣告的一同級的地址;從具有該廣告的該同級下載該廣告;以及播放該廣告。
73.如權(quán)利要求70的同級,其中所述引擎進一步能在接收具有所述數(shù)據(jù)文件的一第二同級的地址以及用以解密該數(shù)據(jù)文件的所述第一加密數(shù)據(jù)組之前,先送出一口令給服務(wù)器。
74.如權(quán)利要求70的同級,其中所述引擎進一步能送出一確認信號給所述服務(wù)器以確認所述數(shù)據(jù)文件的接收。
75.如權(quán)利要求70的同級,其中當無法下載所述數(shù)據(jù)文件時,所述引擎進一步能送出一用以表明無法下載數(shù)據(jù)文件的信號給所述服務(wù)器。
76.如權(quán)利要求70的同級,其中所述引擎進一步能在送出用以表明無法下載所述數(shù)據(jù)文件的信號之后,接收具有該數(shù)據(jù)文件的一第三同級的地址。
77.如權(quán)利要求70的同級,其中,所述第一加密數(shù)據(jù)組中包括加密的專用交易密匙。
78.如權(quán)利要求77的同級,其中,所述的加密的專用交易密匙只能被所述第一同級破解。
79.如權(quán)利要求77的同級,其中所述引擎進一步能使用只有所述第一同級知曉的專用交易密匙及專用密匙解密所述數(shù)據(jù)文件。
80.如權(quán)利要求70的同級,進一步包括儲存加密的所述數(shù)據(jù)文件的拷貝;以及通知所述服務(wù)器該數(shù)據(jù)文件已被儲存。
81.一種用于同級系統(tǒng)中的同級,包括傳送裝置,用以傳送一購買數(shù)據(jù)文件的請求給一服務(wù)器,該購買請求中包括一同級的識別符;接收裝置,用以從所述服務(wù)器接收具有所述數(shù)據(jù)文件的一第二同級的地址以及用以解密該數(shù)據(jù)文件的一第一加密數(shù)據(jù)組;傳送裝置,用以傳送下載該數(shù)據(jù)文件的請求給所述第二同級;接收裝置,用以從所述第二同級接收所述數(shù)據(jù)文件;解密裝置,利用所述第一加密數(shù)據(jù)組解密所述數(shù)據(jù)文件;以及輸出裝置,用以輸出所述數(shù)據(jù)文件。
全文摘要
一種用于按需分配數(shù)據(jù)的系統(tǒng),包括一分配引擎(350)以及儲存在同級(140)中可分配的數(shù)據(jù)文件(360)的索引。分配引擎(350)將具有所請求的數(shù)據(jù)文件的同級(140)的地址以及用以解該密數(shù)據(jù)文件的加密數(shù)據(jù)組傳送給發(fā)出請求的同級(140)。分配引擎也向注冊的同級(140)的所有者收取購買數(shù)據(jù)文件的費用,以及更新索引,用以指示發(fā)出請求的同級(140)現(xiàn)在儲存有數(shù)據(jù)文件。
文檔編號H04L29/06GK1446416SQ01814041
公開日2003年10月1日 申請日期2001年7月9日 優(yōu)先權(quán)日2000年7月11日
發(fā)明者布賴恩·延 申請人:布賴恩·延