專利名稱:將數(shù)據(jù)流加密送到虛擬智能卡客戶機(jī)系統(tǒng)的方法和流式服務(wù)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明提供一種用于加密數(shù)據(jù)流以保證數(shù)據(jù)流的唯一觀看和保護(hù)數(shù)據(jù)流版權(quán)的方法。特別地,本發(fā)明提供一種用于在互聯(lián)網(wǎng)類型的傳輸中保護(hù)流式多媒體、娛樂(lè)和通信的方法。本發(fā)明進(jìn)一步提供一種客戶機(jī)系統(tǒng)中的虛擬智能卡,其與流式服務(wù)器組件交互以實(shí)現(xiàn)本發(fā)明的方法。
背景技術(shù):
互聯(lián)網(wǎng)已經(jīng)提供了另一種用于通信的工具,借此數(shù)據(jù)能夠從服務(wù)器流向客戶機(jī)??蛻魴C(jī)負(fù)責(zé)向用戶顯示流式數(shù)據(jù),通常較適合顯示流式媒體。服務(wù)器負(fù)責(zé)向客戶機(jī)發(fā)送數(shù)據(jù)流。Real Networks和Microsoft解決方案通過(guò)UDP(一種無(wú)連接網(wǎng)絡(luò)協(xié)議)發(fā)送數(shù)據(jù)流,并通過(guò)客戶機(jī)和服務(wù)器間的另一個(gè)連接控制流式數(shù)據(jù)的傳輸。該控制連接單元的作用是阻止緩沖器溢出并調(diào)節(jié)流的傳輸以補(bǔ)償帶寬延遲。然而,這種安排的一個(gè)問(wèn)題是從服務(wù)器流向客戶機(jī)的數(shù)據(jù)是不被保護(hù)的并且可以被網(wǎng)絡(luò)上的任何人得到。因此,在技術(shù)上就需要更好的保護(hù)數(shù)據(jù)在例如互聯(lián)網(wǎng)的廣域網(wǎng)上不被攔截。特別地,需要提供防止非法攔截的能力和在網(wǎng)絡(luò)上拷貝流式數(shù)據(jù)的能力。目前,沒有適當(dāng)?shù)谋Wo(hù)機(jī)制來(lái)保護(hù)版權(quán)所有的數(shù)據(jù)。
一旦數(shù)據(jù)由服務(wù)器發(fā)出,它或者被用戶接收,或者在被用戶接收前被攔截,所以一旦數(shù)據(jù)在網(wǎng)絡(luò)上被發(fā)出,就沒有辦法限制這種數(shù)據(jù)的再傳輸。即使數(shù)據(jù)流已經(jīng)是版權(quán)所有,也沒有辦法保護(hù)或者實(shí)施流式數(shù)據(jù)的版權(quán)保護(hù)。擁有版權(quán)并對(duì)這種內(nèi)容進(jìn)行流式傳輸?shù)膶?shí)體意識(shí)到在這種內(nèi)容發(fā)出后沒法控制對(duì)內(nèi)容的任何動(dòng)作。因此,在技術(shù)上需要提供一種用于保護(hù)在網(wǎng)絡(luò)上流式傳輸?shù)膬?nèi)容中版權(quán)的方法。本發(fā)明被設(shè)計(jì)來(lái)滿足這兩種需要。
目前,沒有任何流式媒體解決方案真正地加密從服務(wù)器發(fā)送到客戶機(jī)的數(shù)據(jù)。一個(gè)解決方案可以利用現(xiàn)有技術(shù)實(shí)現(xiàn)這一目的,如通過(guò)將SSL(安全套接字層)安全HTTP套接字與流式軟件包結(jié)合,如Quicktime。不幸的是,Quicktime不具有全屏觀看選項(xiàng)。因此,在技術(shù)上需要開發(fā)用于流式傳輸視頻數(shù)據(jù)的更好方法。
發(fā)明內(nèi)容
本發(fā)明提供一種用于加密數(shù)據(jù)流以保護(hù)該數(shù)據(jù)流只能唯一觀看的方法,其包括(a)提供用于流式數(shù)據(jù)傳輸?shù)目蛻魴C(jī)選項(xiàng);(b)接通與流式服務(wù)器的連接并發(fā)送URI(通用資源標(biāo)識(shí)符),令牌和用戶信息到流式服務(wù)器,其中流式服務(wù)器包括用于向客戶機(jī)發(fā)送數(shù)據(jù)包的客戶機(jī)數(shù)據(jù)連接模塊,用于利用與客戶機(jī)協(xié)商的密鑰加密數(shù)據(jù)流的加密模塊,該加密模塊可與客戶機(jī)數(shù)據(jù)連接模塊連接,以及用于控制數(shù)據(jù)流流動(dòng)速率以保持客戶機(jī)緩沖器充滿的流量控制模塊。
(c)分別準(zhǔn)許有效或者不準(zhǔn)許無(wú)效的事務(wù)處理服務(wù)器上的URI和令牌組合,其中事務(wù)處理服務(wù)器包括用于將用戶連接到事務(wù)處理服務(wù)器組件的客戶機(jī)交互模塊,具有用戶數(shù)據(jù)庫(kù)的用戶校驗(yàn)?zāi)K,其中用戶校驗(yàn)?zāi)K可連接到客戶機(jī)交互模塊并檢查有效用戶,以及用于響應(yīng)用戶請(qǐng)求建立新的URIs與令牌的可連接到用戶校驗(yàn)?zāi)K的URI與令牌建立模塊;以及(d)如果發(fā)現(xiàn)有效的URI與令牌組合,就向客戶機(jī)提供連續(xù)加密的數(shù)據(jù)流。
流式服務(wù)器組件可以進(jìn)一步包括一個(gè)讀取緩沖器模塊,它可與流量控制模塊連接以從存儲(chǔ)媒質(zhì)上的源記錄讀取數(shù)據(jù)。然而,數(shù)據(jù)不限于這種配置,也可能包括來(lái)自各種其他來(lái)源的數(shù)據(jù),包括電子商務(wù)交易、交互式電視資源,其包括多點(diǎn)廣播業(yè)務(wù),單點(diǎn)廣播業(yè)務(wù),等等。流式服務(wù)器組件可進(jìn)一步包括一個(gè)可與文件系統(tǒng)模塊或流量控制模塊連接以設(shè)置服務(wù)器選項(xiàng)的用戶接口模塊。流式服務(wù)器可進(jìn)一步包括客戶機(jī)服務(wù)器組件,其包括用于建立與流式服務(wù)器組件的初始連接的數(shù)據(jù)流控制協(xié)議模塊,用于解密輸入的數(shù)據(jù)流的解密模塊,用于緩沖輸入的數(shù)據(jù)流的輸入緩沖模塊,和用于控制流式數(shù)據(jù)顯示的顯示控制模塊??蛻魴C(jī)服務(wù)器組件可以進(jìn)一步包括用于顯示聲音和視頻數(shù)據(jù)的顯示模塊。
提供連續(xù)加密的數(shù)據(jù)流的步驟(d)可以進(jìn)一步包括流式服務(wù)器中的用戶接口模塊,以允許暫停、停止、播放、重放數(shù)據(jù)流,或另外地與數(shù)據(jù)流和/或數(shù)據(jù)流源的交互。在一個(gè)實(shí)施例中,事務(wù)處理服務(wù)器通過(guò)用于加密的ASP腳本來(lái)實(shí)現(xiàn)。
本發(fā)明進(jìn)一步包括一個(gè)流式服務(wù)器,用于加密數(shù)據(jù)流以保護(hù)數(shù)據(jù)流使其只能唯一觀看,其包括(a)一個(gè)流式服務(wù)器組件,其中流式服務(wù)器組件包括用于向客戶機(jī)發(fā)送數(shù)據(jù)包的客戶機(jī)數(shù)據(jù)連接模塊;用于利用與客戶機(jī)協(xié)商的密鑰加密數(shù)據(jù)流的加密模塊,該加密模塊可與客戶機(jī)數(shù)據(jù)連接模塊連接,以及用于控制數(shù)據(jù)流流動(dòng)速率以保持客戶機(jī)緩沖器充滿的流量控制模塊;以及(b)一個(gè)事務(wù)處理服務(wù)器組件,其中事務(wù)處理服務(wù)器組件包括用于將用戶連接到事務(wù)處理服務(wù)器組件的客戶機(jī)交互模塊,具有用戶數(shù)據(jù)庫(kù)的用戶校驗(yàn)?zāi)K,其中用戶校驗(yàn)?zāi)K可連接到客戶機(jī)交互模塊并檢查是否有效用戶,以及URI與令牌建立模塊,它連接到用戶校驗(yàn)?zāi)K來(lái)響應(yīng)用戶請(qǐng)求建立新的URIs與令牌。
流式服務(wù)器組件可以進(jìn)一步包括可與流量控制模塊連接以從存儲(chǔ)媒質(zhì)的源記錄讀取數(shù)據(jù)的讀取緩沖器模塊。然而,數(shù)據(jù)也可以包括來(lái)自于交互式資源的數(shù)據(jù),如交互式電視業(yè)務(wù)的資源,等等。流式服務(wù)器組件可以進(jìn)一步包括可與文件系統(tǒng)模塊或流量控制模塊連接以設(shè)置服務(wù)器選項(xiàng)的用戶接口模塊。流式服務(wù)器可進(jìn)一步包括客戶機(jī)服務(wù)器組件,其包括用于建立與流式服務(wù)器組件的初始連接的數(shù)據(jù)流控制協(xié)議模塊,用于解密輸入的數(shù)據(jù)流的解密模塊,用于緩沖輸入的數(shù)據(jù)流的輸入緩沖模塊,以及用于控制流式數(shù)據(jù)顯示的顯示控制模塊??蛻魴C(jī)服務(wù)器組件可以進(jìn)一步包括用于顯示聲音和視頻數(shù)據(jù)的顯示模塊。
圖1表示能夠接收并觀看加密的數(shù)據(jù)流的客戶機(jī)組件的示意圖。該客戶機(jī)組件包括令牌存儲(chǔ)模塊100、流控制協(xié)議模塊120和解密模塊160。
圖2表示一個(gè)流式服務(wù)器組件的示意圖,它至少具有加密模塊220和用于密鑰協(xié)商和令牌校驗(yàn)200的客戶機(jī)控制連接模塊的。
圖3表示具有令牌建立模塊330和用戶校驗(yàn)?zāi)K310的事務(wù)處理服務(wù)器組件的示意圖。
圖4表示為開鎖(解密)數(shù)據(jù)流以觀看數(shù)據(jù)而需要令牌的各種客戶機(jī)環(huán)境的示意圖。
圖5表示流式服務(wù)器接收客戶機(jī)令牌引起密鑰協(xié)商以允許觀看和接收數(shù)據(jù)流的流程的示意圖。
圖6表示事務(wù)處理服務(wù)器提供用于建立客戶機(jī)帳戶和令牌的流程的示意圖。
圖7表示根據(jù)本發(fā)明在客戶機(jī)裝置中的虛擬智能卡(VSC)的實(shí)施例,該客戶機(jī)裝置被設(shè)置為可與事務(wù)處理服務(wù)器交互以管理數(shù)據(jù)流。
具體實(shí)施例方式
本發(fā)明提供一種加密通過(guò)互聯(lián)網(wǎng)的諸如多媒體娛樂(lè)和通信的數(shù)據(jù)流的方法。被加密的數(shù)據(jù)流將允許版權(quán)所有的資料和多媒體(例如,分析員會(huì)議、交互式電視、電影)在安全、按次計(jì)費(fèi)等基礎(chǔ)上通信。數(shù)據(jù)流不能存儲(chǔ)在客戶機(jī)以用于將來(lái)重放或轉(zhuǎn)發(fā)。然而,客戶能夠在指定的時(shí)間范圍內(nèi)按需要多次觀看數(shù)據(jù)流。
一種加密協(xié)議提供諸如192比特密鑰的加密算法(例如,Triple DES),UDP信息包協(xié)議,RTSP(rfc 2326)信息包傳輸協(xié)議,RTP(rfc 1889)信息包傳輸控制協(xié)議,和MPEGI視頻存儲(chǔ)壓縮。然而,當(dāng)這些技術(shù)隨時(shí)間改進(jìn),前述例子中的優(yōu)選的加密協(xié)議將會(huì)變化。例如,一個(gè)實(shí)施例可以利用高級(jí)加密標(biāo)準(zhǔn)(AES),或類似的加密算法。
利用本發(fā)明的流式服務(wù)器和事務(wù)處理服務(wù)器,本發(fā)明方法的一個(gè)優(yōu)點(diǎn)是客戶實(shí)際上不需擁有完全優(yōu)化的設(shè)備。一個(gè)客戶通常在任何一個(gè)時(shí)間運(yùn)行在任何一臺(tái)機(jī)器上??蛻魴C(jī)可以被設(shè)置為重放,例如30fps 320×240視頻和聲音無(wú)抖動(dòng)重放。這需啟用大約250-300kpa的數(shù)據(jù)流,大容量數(shù)據(jù)緩沖器(至少幾兆字節(jié))和運(yùn)行Windows 98或Windows NT的350MHz Pentium II或更快的處理器。然而,客戶機(jī)系統(tǒng)并不局限于此,實(shí)際上可以使用任何客戶機(jī)系統(tǒng)配置。例如,客戶機(jī)系統(tǒng)可以包括機(jī)頂盒,交互式電視裝置,等等。
例如,服務(wù)器可以是被完全優(yōu)化的,多線程的(線程池)Windows NT服務(wù)。與HTTP服務(wù)器不同,這種服務(wù)器允許與客戶機(jī)的對(duì)話被緩存并且服務(wù)器需要保持所有客戶機(jī)的狀態(tài)。
定義下列術(shù)語(yǔ)使用此處定義的意義??蛻魴C(jī)或客戶機(jī)系統(tǒng)包括數(shù)據(jù)流被送往的計(jì)算機(jī)。用戶包括在客戶機(jī)上執(zhí)行指令的人。
模塊包括設(shè)計(jì)為實(shí)現(xiàn)特殊功能或功能集的編譯代碼的集合。
URI(通用資源標(biāo)識(shí)符)表示與流式服務(wù)器上的一個(gè)位置有關(guān)的標(biāo)識(shí)符。
令牌包括一條二進(jìn)制信息,其包括用戶擁有的對(duì)于特定數(shù)據(jù)流的許可。
鑒權(quán)包括提供組件、裝置、人、或其他實(shí)體是其所聲稱的物或人的置信度水平。在一些情況下,鑒權(quán)有時(shí)可以被看作與身份驗(yàn)證同義。
授權(quán)包括提供訪問(wèn)控制級(jí)別,并用于回答實(shí)體可以有權(quán)執(zhí)行什么操作的問(wèn)題。例如,授權(quán)可以處理實(shí)體是否被許可訪問(wèn)選擇的數(shù)據(jù),何時(shí),多久的問(wèn)題。
CAS(條件接收系統(tǒng))。CAS包括旨在通過(guò)加密被傳輸?shù)某绦?,控制?duì)如數(shù)字電視業(yè)務(wù)等等的接收的技術(shù)。然而,CAS不僅僅適用于電視。它可以包括數(shù)字無(wú)線廣播,數(shù)字?jǐn)?shù)據(jù)廣播,非廣播信息,交互式業(yè)務(wù),等等。因此,CAS可以包括如這里所描述的流式數(shù)據(jù)接收。
快速更新包括向客戶機(jī)裝置、系統(tǒng)等等提供密鑰產(chǎn)生,新密鑰,和新安全機(jī)制。在一個(gè)實(shí)施例中,動(dòng)態(tài)快速更新提供隨機(jī)更新的安全機(jī)制,以建立其他人,如黑客,不可預(yù)知的環(huán)境和目標(biāo)。
DRM(數(shù)字權(quán)限管理)包括基于文件的保護(hù)媒體的另一種可選機(jī)制。例如,DRM包括對(duì)內(nèi)容本身的保護(hù),如流式數(shù)據(jù)。在一個(gè)實(shí)施例中,許可證文件,或者類似文件,可能與內(nèi)容一起被發(fā)出或者當(dāng)用戶試圖播放內(nèi)容時(shí)被發(fā)出,以使用戶能夠播放內(nèi)容。該內(nèi)容,如流式數(shù)據(jù),可以被加密并且當(dāng)內(nèi)容在網(wǎng)絡(luò),服務(wù)器和客戶機(jī)之間流動(dòng)時(shí)可以保持加密特性。這里所述的DRM可以利用虛擬智能卡實(shí)現(xiàn)內(nèi)容的管理和保護(hù)。
ECM(授權(quán)控制信息)包括與授權(quán)有關(guān)的加密數(shù)據(jù),如令牌、訪問(wèn)限制、內(nèi)容/密鑰,等等。
EMM(授權(quán)管理信息)包括加密的數(shù)據(jù),如授權(quán),令牌,內(nèi)容/密鑰,等等。
入侵檢測(cè)包括用于檢測(cè)可能違犯安全策略和其他保護(hù)的情況的機(jī)制。
不可否認(rèn)性包括旨在保證用戶,顧客,客戶,等等,不可否認(rèn)其數(shù)字簽名有效性的機(jī)制。一個(gè)實(shí)施例利用了兩個(gè)不同的密鑰。一個(gè)密鑰可以被托管和用于無(wú)簽名行為。第二個(gè)密鑰,可不具有恢復(fù)機(jī)制,并可用于簽名。在這個(gè)實(shí)施例中,在用戶可以唯一控制簽名密鑰的情況下,不可否認(rèn)性可以利用唯一擁有的,但能驗(yàn)證的秘密實(shí)現(xiàn)。在簽名有效性可能是非常關(guān)鍵的情況下,可以使用單獨(dú)的密鑰,該密鑰可以是密鑰持有者唯一擁有但能驗(yàn)證的秘密。在另一個(gè)實(shí)施例中,密鑰持有者可以基于充分享有特權(quán)的實(shí)體進(jìn)行復(fù)制密鑰的能力而拒絕簽名的有效性。
在本發(fā)明方法和流式服務(wù)器的一個(gè)實(shí)施例中,視頻可以不被加密地存儲(chǔ)在服務(wù)器中;文件將只能通過(guò)服務(wù)器軟件被獲得。本發(fā)明的服務(wù)器將負(fù)責(zé)(1)協(xié)商一組密鑰;以及(2)即時(shí)(on the fly)加密數(shù)據(jù)流從而使實(shí)際通過(guò)網(wǎng)絡(luò)的數(shù)據(jù)包對(duì)指定機(jī)器以外的任何計(jì)算機(jī)無(wú)效。一種加密標(biāo)準(zhǔn)是具有168比特密鑰的Triple DES。服務(wù)器將利用UDP傳輸數(shù)據(jù)。與其他TCP協(xié)議(如http)相比,這種協(xié)議占用的網(wǎng)絡(luò)資源相當(dāng)少。
客戶機(jī)軟件負(fù)責(zé)解密數(shù)據(jù)流和重放。每次訪問(wèn)數(shù)據(jù)流時(shí)使用的密鑰可以不同??蛻魴C(jī)每次運(yùn)行時(shí),就建立不同的密鑰,這樣如果數(shù)據(jù)流因某種原因存儲(chǔ)到磁盤上,客戶機(jī)不能重放先前的數(shù)據(jù)流。
示例性的環(huán)境參考圖1,其表示本發(fā)明方法中客戶機(jī)組件和流式服務(wù)器的一個(gè)實(shí)施例的示意圖,該實(shí)施例允許接收和觀看及/或訪問(wèn)加密數(shù)據(jù)流。客戶機(jī)保存所有當(dāng)前數(shù)據(jù)流和相應(yīng)的令牌的列表。該信息存儲(chǔ)在令牌存儲(chǔ)模塊100中。該列表包括以下三項(xiàng)(1)URI,(2)用于該URI的令牌,以及(3)服務(wù)器給出的終止日期。在一個(gè)實(shí)施例中,可能不希望客戶機(jī)有任何確定令牌是否有效的方法。因?yàn)檫@一點(diǎn),以及刪除過(guò)時(shí)令牌的需要,服務(wù)器返回終止日期。該信息被客戶機(jī)用于顯示信息。終止日期本身可能從來(lái)不會(huì)被送回服務(wù)器,且服務(wù)器驗(yàn)證傳遞的令牌有效。可以被用作令牌存儲(chǔ)模塊的模塊裝置的例子包括,隨機(jī)存儲(chǔ)器,二級(jí)存儲(chǔ)器(硬盤),及嵌入于提供令牌存儲(chǔ)目錄和跟蹤終止日期的軟件中。
客戶機(jī)與用戶接口110通信??蛻魴C(jī)可能具有可給出適當(dāng)?shù)挠脩艚?jīng)驗(yàn)的標(biāo)準(zhǔn)的用戶接口。該接口應(yīng)具有觀看當(dāng)前有效流或者連接到服務(wù)器以搜索可被觀看的其他流的能力??蛻魴C(jī)用戶接口110與本地顯示控制模塊130和流控制協(xié)議模塊120通信??蛻魴C(jī)必須能夠建立與服務(wù)器的通信對(duì)話,同時(shí)一旦流被觀看能控制來(lái)自服務(wù)器的數(shù)據(jù)的流動(dòng)。流控制協(xié)議模塊120通過(guò)連接到服務(wù)器,傳遞被請(qǐng)求的URI、令牌和用戶信息來(lái)建立初始連接。流控制協(xié)議模塊120接著協(xié)商一組密鑰并控制來(lái)自服務(wù)器的數(shù)據(jù)的流動(dòng)??蛻魴C(jī)組件中可以用于協(xié)商一組密鑰和控制來(lái)自服務(wù)器的數(shù)據(jù)的流動(dòng)的流控制協(xié)議模塊裝置120的例子包括,例如,隨機(jī)存儲(chǔ)器和網(wǎng)絡(luò)接口卡或調(diào)制解調(diào)器。軟件通過(guò)發(fā)送網(wǎng)絡(luò)統(tǒng)計(jì)數(shù)字,與緩沖器有關(guān)的信息,包括填充百分比,剩余百分比,等等,以及其他客戶機(jī)特性到流式服務(wù)器,可以監(jiān)視數(shù)據(jù)被接收的速率。顯示控制模塊130控制數(shù)據(jù)的顯示,并具有暫停,停止,或重新開始數(shù)據(jù)流的能力。適合用于客戶機(jī)組件的顯示控制模塊的例子包括,隨機(jī)存儲(chǔ)器和視頻卡。該模塊中運(yùn)行的軟件將把服務(wù)器發(fā)來(lái)的數(shù)據(jù)轉(zhuǎn)換為可以顯示給用戶的格式。
顯示模塊140顯示視頻和聲音數(shù)據(jù)。輸入緩沖模塊150是包括流緩沖器的模塊。流緩沖器可包括解密數(shù)據(jù)的循環(huán)緩沖器,顯示控制模塊從中讀出解密數(shù)據(jù),解密模塊向其中寫入解密數(shù)據(jù)??梢员挥脕?lái)包括解密數(shù)據(jù)的循環(huán)緩沖器的流緩沖模塊裝置的例子包括,例如,隨機(jī)存儲(chǔ)器。在數(shù)據(jù)輸入輸入緩沖器之前,當(dāng)從服務(wù)器接收到信息包時(shí),傳送信息包中的數(shù)據(jù)被解密模塊160利用流控制協(xié)議模塊120協(xié)商的密鑰解密。
解密模塊160可以利用幾乎任何解密機(jī)制來(lái)實(shí)現(xiàn),包括那些商用機(jī)制。例如,SSL,DES和RSA模塊可以被利用并適合用作解密模塊??蛻魴C(jī)組件上最后是數(shù)據(jù)流接收模塊170。該模塊處理對(duì)服務(wù)器發(fā)送的數(shù)據(jù)包的接收。
可用作客戶機(jī)組件中的數(shù)據(jù)流接收模塊的合適的模塊裝置包括,例如,隨機(jī)存儲(chǔ)器。包括在該模塊中的軟件可以用能夠被其后模塊使用的格式保存由客戶機(jī)接收的數(shù)據(jù)。
參考圖2,客戶機(jī)控制連接模塊200處理客戶機(jī)和服務(wù)器之間的控制通信??蛻魴C(jī)和服務(wù)器將協(xié)議一組密鑰??蛻魴C(jī)將通過(guò)客戶機(jī)控制連接模塊200向流式服務(wù)器發(fā)送用戶信息、URI和令牌。從該模塊200,可以控制流向客戶機(jī)的數(shù)據(jù)(即,暫停,停止,或重新開始)。適合用作流式服務(wù)器中客戶機(jī)控制連接模塊的硬件裝置包括隨機(jī)存儲(chǔ)器。這種硬件組件允許硬件非特定操作的執(zhí)行。這種軟件或者被嵌入在客戶機(jī)控制連接模塊內(nèi),或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中客戶機(jī)和服務(wù)器溝通當(dāng)前網(wǎng)絡(luò)狀態(tài)并相應(yīng)地調(diào)節(jié)數(shù)據(jù)流。
客戶機(jī)數(shù)據(jù)連接模塊210用于利用無(wú)連接協(xié)議向客戶機(jī)發(fā)送數(shù)據(jù)包以降低服務(wù)器開支。適合用作流式服務(wù)器中客戶機(jī)數(shù)據(jù)連接模塊的硬件裝置包括隨機(jī)存儲(chǔ)器和網(wǎng)絡(luò)接口卡。這種軟件或者被嵌入在客戶機(jī)數(shù)據(jù)連接模塊中,或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中加密數(shù)據(jù)通過(guò)網(wǎng)絡(luò)信息包被發(fā)送到客戶機(jī)。
當(dāng)數(shù)據(jù)流被送到客戶機(jī)時(shí),加密模塊220利用客戶機(jī)/服務(wù)器協(xié)商的密鑰加密數(shù)據(jù)流。這允許“即時(shí)(on the fly)”加密且密鑰對(duì)于所有客戶機(jī)/服務(wù)器連接應(yīng)是唯一的。這允許源記錄不被加密地存儲(chǔ)在服務(wù)器中合適的地方。適合用作流式服務(wù)器中加密模塊的硬件裝置包括隨機(jī)存儲(chǔ)器和專用的硬件加密裝置。這種硬件組件包括用于對(duì)數(shù)據(jù)進(jìn)行實(shí)際加密的軟件。這種軟件或者可以被嵌入在加密模塊內(nèi)或者被上載到那里。這種軟件運(yùn)行可建立一個(gè)流程其中使用與客戶機(jī)初始協(xié)商的密鑰加密被發(fā)送到該裝置的數(shù)據(jù),并且輸出數(shù)據(jù)具有被客戶機(jī)解密后才能讀取的格式。
流量控制模塊230確保數(shù)據(jù)流正由服務(wù)器以客戶機(jī)使用數(shù)據(jù)的速率發(fā)送??蛻魴C(jī)端的緩沖器需要在任何時(shí)候處于充滿狀態(tài),但是流式數(shù)據(jù)也必須不能被沖掉改寫。因此,流量控制模塊既與加密模塊220通信也利用從客戶機(jī)控制連接模塊200得到的反饋。適合用作流式服務(wù)器中流量控制模塊的硬件裝置包括隨機(jī)存儲(chǔ)器。這種軟件或者可以被嵌入在流量控制模塊或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中從服務(wù)器向客戶機(jī)的數(shù)據(jù)的流動(dòng)被調(diào)節(jié)。
文件系統(tǒng)讀取緩沖器240是用于服務(wù)器性能的。從文件讀取的少量數(shù)據(jù)可以存儲(chǔ)在存儲(chǔ)器中而不是在文件系統(tǒng)中總是有保持打開的文件。文件系統(tǒng)模塊250負(fù)責(zé)從存儲(chǔ)媒質(zhì)或其他地方的源記錄讀取數(shù)據(jù)。文件系統(tǒng)模塊與客戶機(jī)控制連接模塊200通信以打開URIs,與用戶接口模塊260通信以配置文件路徑。適合用作流式服務(wù)器中文件系統(tǒng)模塊的硬件裝置包括隨機(jī)存儲(chǔ)器。這種硬件組件包括用于允許訪問(wèn)數(shù)據(jù)流的軟件。這種軟件或者可以被嵌入在文件系統(tǒng)模塊或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中存儲(chǔ)在二級(jí)存儲(chǔ)裝置中的數(shù)據(jù)可以被加載到隨機(jī)存儲(chǔ)器中以被發(fā)送到加密模塊。
流式服務(wù)器進(jìn)一步提供一個(gè)簡(jiǎn)單的用戶接口模塊260,用于設(shè)置服務(wù)器選項(xiàng),例如捆綁到哪個(gè)網(wǎng)絡(luò)端口以及源記錄的位置。適合用作流式服務(wù)器中文件系統(tǒng)模塊的硬件裝置包括隨機(jī)存儲(chǔ)器。這種軟件或者可以被嵌入在文件系統(tǒng)模塊或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中服務(wù)器軟件的用戶可以指示文件系統(tǒng)模塊到哪里去尋找數(shù)據(jù)流。
參考圖3,事務(wù)處理服務(wù)器包括四個(gè)模塊組件。為了訪問(wèn)視頻流,客戶機(jī)必須首先得到事務(wù)處理令牌。事務(wù)處理令牌可以基于按次計(jì)費(fèi)方案,其中令牌在一確定的時(shí)間段有效。令牌有效的時(shí)間由用戶選擇和對(duì)選擇的流有效的選項(xiàng)決定。用戶通過(guò)客戶機(jī)交互模塊300,利用用戶信息和URI與事務(wù)處理服務(wù)器聯(lián)系。事務(wù)處理服務(wù)器將確定什么時(shí)間選項(xiàng)對(duì)令牌是可用的并將其提交給用戶。在用戶選擇需要的時(shí)間期限后,該請(qǐng)求被傳遞到用戶校驗(yàn)?zāi)K310。適合用作事務(wù)處理服務(wù)器中客戶機(jī)交互模塊的硬件裝置包括隨機(jī)存儲(chǔ)器。這種軟件或者可以被嵌入在客戶機(jī)交互模塊內(nèi)或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中用戶信息依照數(shù)據(jù)庫(kù)被校驗(yàn)并且有效的令牌被建立,部分地依據(jù)用戶請(qǐng)求的選項(xiàng)。
用戶校驗(yàn)?zāi)K310依照用戶數(shù)據(jù)庫(kù)檢查傳遞的用戶信息以確定用戶是否有效。用戶數(shù)據(jù)庫(kù)存在于用戶校驗(yàn)?zāi)K的存儲(chǔ)器中。適合用作事務(wù)處理服務(wù)器中的用戶校驗(yàn)?zāi)K的硬件裝置包括隨機(jī)存儲(chǔ)器。這種軟件或者可以被嵌入在用戶校驗(yàn)?zāi)K或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中傳遞的令牌被校驗(yàn)。URI建立模塊320和令牌建立模塊330被綁定在一起并且令牌部分地依據(jù)請(qǐng)求的URI。這意味令牌對(duì)請(qǐng)求的URI是唯一的并且不能用于任何其他流。這個(gè)信息隨后通過(guò)模塊300傳送回客戶機(jī)。適合用作位于事務(wù)處理服務(wù)器中的URI建立模塊和令牌建立模塊的硬件裝置包括隨機(jī)存儲(chǔ)器。這種硬件組件可以包括在隨機(jī)存儲(chǔ)器中運(yùn)行的軟件。這種軟件或者可以被嵌入在URI建立模塊或令牌建立模塊內(nèi)或者被上載到那里。該軟件運(yùn)行可建立一個(gè)流程其中用戶選擇的對(duì)媒體流有效的URI被建立。
示例性的操作參考圖4,客戶機(jī)400運(yùn)行并且客戶機(jī)加載URI和令牌410。客戶機(jī)或者由雙擊客戶機(jī)的圖標(biāo)啟動(dòng)(否),或者由媒體服務(wù)器啟動(dòng)(是)。如果媒體服務(wù)器啟動(dòng)客戶機(jī),將會(huì)在客戶機(jī)的命令行參數(shù)中出現(xiàn)被請(qǐng)求的URI和令牌。顯示窗口(420)列出所有能夠觀看的已購(gòu)買的(和當(dāng)前的)數(shù)據(jù)流,或其他相互作用的數(shù)據(jù)流。用戶能夠通過(guò)雙擊流的名稱選擇要訪問(wèn)的數(shù)據(jù)流。屏幕等待用戶的輸入(430),用戶選擇一個(gè)數(shù)據(jù)流或另一個(gè)內(nèi)部處理選項(xiàng)(440)。如果選擇了內(nèi)部處理選項(xiàng),則執(zhí)行用戶請(qǐng)求(450)并返回,通過(guò)模塊420顯示視頻流。
如果用戶發(fā)出數(shù)據(jù)流(在410中選擇是),URI和令牌就被保存在購(gòu)買的流列表中,使其在隨后的時(shí)間可以被重新觀看460。到流式服務(wù)器的連接被建立且URI、令牌和用戶信息被發(fā)送到流式服務(wù)器470。流式服務(wù)器確認(rèn)有效(或無(wú)效)URI和令牌組合480。如果令牌無(wú)效或已經(jīng)過(guò)期,服務(wù)器將斷開連接,客戶機(jī)將返回開顯示所有可以觀看的數(shù)據(jù)流。如果服務(wù)器確認(rèn)URI和令牌組合有效,客戶機(jī)將開始接收來(lái)自流式服務(wù)器的數(shù)據(jù)并顯示該數(shù)據(jù)490。
如果數(shù)據(jù)流結(jié)束或者用戶選擇任何可用的流選項(xiàng),例如暫停,停止,播放,或重新開始500,則流將會(huì)停止并等待用戶下一步輸入。如果流已經(jīng)結(jié)束播放510,則流程返回到可用流的列表420,或者繼續(xù)顯示數(shù)據(jù)流490,通過(guò)處理用戶請(qǐng)求520然后返回顯示流490。
參考圖5流式服務(wù)器運(yùn)行的流程,首先存在與客戶機(jī)控制模塊200的連接,600允許客戶機(jī)建立與流式服務(wù)器的連接??蛻魴C(jī)將提供來(lái)自用戶470的URI、令牌和用戶信息610。流式服務(wù)器確定令牌和URI是否有效620。如果令牌無(wú)效或已經(jīng)過(guò)期,將斷開與客戶機(jī)的連接,給出適當(dāng)?shù)腻e(cuò)誤消息630。如果令牌有效,將與客戶機(jī)協(xié)商一組唯一的密鑰640。URI將被打開,流式數(shù)據(jù)將被讀入緩沖器650。
客戶機(jī)流量控制模塊230使客戶機(jī)和流式服務(wù)器建立有流量控制的連接,以保證數(shù)據(jù)流離開流式服務(wù)器的速率與數(shù)據(jù)流在客戶機(jī)端使用的速率基本相同660。這就解決了帶寬問(wèn)題,同時(shí)保證客戶機(jī)播放緩沖器不被沖掉改寫。因此,客戶機(jī)流量控制機(jī)制660利用客戶機(jī)流量控制模塊230得到來(lái)自客戶機(jī)710中數(shù)據(jù)緩沖器的反饋,并控制數(shù)據(jù)流的速率以保持客戶機(jī)緩沖器盡可能的充滿。如果客戶機(jī)此時(shí)不能接收更多的任何數(shù)據(jù),就回答流量控制模塊從而指示減慢或暫停流式數(shù)據(jù)670。如果客戶機(jī)能夠接收更多的數(shù)據(jù)680,客戶機(jī)流量控制將首先確定是否存在更多要流動(dòng)的數(shù)據(jù)680。如果沒有更多要流動(dòng)的數(shù)據(jù),可以結(jié)束數(shù)據(jù)流,與客戶機(jī)的連接將斷開690。如果有更多的數(shù)據(jù)要發(fā)送,在發(fā)送緩沖器中等待的數(shù)據(jù)將被加密700,被加密的數(shù)據(jù)將被發(fā)送到客戶機(jī)710。
參考圖6事務(wù)處理服務(wù)器,客戶機(jī)首先連接到事務(wù)處理服務(wù)器,例如通過(guò)網(wǎng)頁(yè)800。在一個(gè)實(shí)施例中,事務(wù)處理服務(wù)器用ASP腳本實(shí)現(xiàn)。然而,本發(fā)明并不局限于此,實(shí)際上在不脫離本發(fā)明范圍和精神的情況下,任何機(jī)制都可以被利用??蛻魴C(jī)通過(guò)ASP命令行參數(shù)發(fā)送請(qǐng)求URI和用戶信息810,事務(wù)處理服務(wù)器用戶校驗(yàn)?zāi)K310將確定有效令牌的時(shí)間期限并將其顯示給用戶以供選擇。事務(wù)處理服務(wù)器將在用戶校驗(yàn)?zāi)K310中的數(shù)據(jù)庫(kù)中查找用戶信息820。查找用戶信息的例子是用戶是否擁有帳戶(例如,依照事務(wù)處理服務(wù)器建立的帳戶)830。如果用戶沒有帳戶840,將開始進(jìn)行事務(wù)處理以建立新的帳戶頁(yè)面并從用戶獲取信息840。此外,事務(wù)處理服務(wù)器用戶校驗(yàn)?zāi)K310將確定被請(qǐng)求的URI是否免費(fèi)850。如果URI需要付費(fèi)860,事務(wù)處理服務(wù)器用戶校驗(yàn)?zāi)K310將用戶數(shù)據(jù)庫(kù)中的信用卡計(jì)入借方。這個(gè)流程將在事務(wù)處理服務(wù)器的URI建立模塊320中建立URI。
一旦提供了一個(gè)URI,或者付費(fèi)或者免費(fèi)提供,將在令牌建立模塊330中建立一個(gè)令牌870。此時(shí)建立的令牌將與URI關(guān)聯(lián)并且將選擇時(shí)間期限880。最后,觀看窗口將在客戶機(jī)上被開啟并與URI和建立的令牌一起被送回客戶機(jī)。
示例性虛擬智能卡中的客戶機(jī)組件上述與圖1有關(guān)的客戶機(jī)組件可以被應(yīng)用在多種客戶機(jī)系統(tǒng)中。這種客戶機(jī)系統(tǒng)可以包括典型地利用有線通信媒質(zhì)連接的裝置,如個(gè)人計(jì)算機(jī),多處理器系統(tǒng),基于微處理器的或可編程的消費(fèi)類電子產(chǎn)品,機(jī)頂盒,交互式電視裝置,部署點(diǎn)接口和模塊,網(wǎng)絡(luò)PCs,等等。這種裝置也可以包括典型地利用無(wú)線通信媒質(zhì)連接的裝置,如蜂窩電話,智能電話,尋呼機(jī),對(duì)講機(jī),射頻裝置,紅外線裝置,CBs,集合了一個(gè)或多個(gè)前述裝置的集成裝置,或?qū)嶋H上任何移動(dòng)裝置,等等。類似地,可以使用圖1的客戶機(jī)組件的客戶機(jī)系統(tǒng)可以是能夠利用有線或無(wú)線通信媒質(zhì)連接的任何裝置,如PDA(PersonalDigital Assistant,個(gè)人數(shù)字助理),POCKET PC(掌上電腦),可佩戴式計(jì)算機(jī),以及被配置為通過(guò)有線或無(wú)線通信媒質(zhì)通信的任何其他裝置。
這種客戶機(jī)系統(tǒng)也可以由于多種原因被設(shè)定為使用流式數(shù)據(jù),包括,欣賞電影,聲音片斷,等等。在一個(gè)實(shí)施例中,流式數(shù)據(jù)可以至少包括部分與交互式電視業(yè)務(wù)有關(guān)的數(shù)據(jù)。流式數(shù)據(jù)甚至可以與銀行活動(dòng),電子商務(wù)活動(dòng)等等有關(guān)。
此外,圖1中的客戶機(jī)組件可以被設(shè)置在多種配置中,并與多種結(jié)構(gòu)結(jié)合。例如,在一個(gè)實(shí)施例中,圖1中的客戶機(jī)組件可以被設(shè)置在具有虛擬智能卡(VSC)的客戶機(jī)系統(tǒng)中。此外,客戶機(jī)組件可以與利用VSC的交互式電視平臺(tái)聯(lián)合應(yīng)用。
圖7表示在客戶機(jī)裝置中設(shè)置VSC的一個(gè)實(shí)施例,該客戶機(jī)裝置被配置為可基于與圖2-6相關(guān)的很相似的方式與事務(wù)處理服務(wù)器交互。圖7中的客戶機(jī)系統(tǒng)7000可以包括比表示出的更多的組件。然而表示出的組件足以揭示用于實(shí)現(xiàn)本發(fā)明的示范性實(shí)施例,并且可以在不脫離本發(fā)明精神和范圍的情況下對(duì)配置和組件類型進(jìn)行變化。
所述VSC的應(yīng)用可以實(shí)現(xiàn)保密(機(jī)密性),完整性,及時(shí)性,訪問(wèn)控制(授權(quán)),和鑒權(quán)(身份驗(yàn)證),以及快速更新,交叉鏈路拷貝保護(hù)或數(shù)字權(quán)限管理,以及更大容量,靈活性,和綁定到裝置以提供增強(qiáng)的安全性的能力。
如圖所示,客戶機(jī)系統(tǒng)700包括客戶機(jī)裝置7002。客戶機(jī)裝置7002包括VSC 7004,篡改檢測(cè)器7006,數(shù)據(jù)流接收模塊7170,顯示模塊7140,本地顯示控制模塊7130,和用戶接口7110。VSC7004包括通信和流量控制模塊7010,安全信息管理器7012,篡改保護(hù)器7014,客戶機(jī)輸入緩沖器7150,令牌管理器7016,加密模塊7060,令牌存儲(chǔ)模塊7100,密鑰生成器7018,和綁定模塊7020。
用戶接口7110起的作用與圖1中用戶接口110基本類似。用戶接口7110可以包括多種客戶輸入裝置,其包括鼠標(biāo),鍵盤,麥克風(fēng),觸摸屏,遠(yuǎn)程控制裝置,等等,其被設(shè)置為提供選擇數(shù)據(jù)流和提供信息的能力。
本地顯示控制模塊7130起的作用與圖1中本地顯示控制模塊130基本類似。即本地顯示控制模塊7130實(shí)際上可以是任何裝置,軟件,軟硬件的組合,等等,其實(shí)現(xiàn)對(duì)數(shù)據(jù)顯示的控制,和暫停、停止、開始及重新開始數(shù)據(jù)流的能力。
顯示模塊7140起的作用與圖1中顯示模塊140基本類似。即顯示模塊7140實(shí)現(xiàn)數(shù)據(jù)流向用戶的顯示,包括視頻數(shù)據(jù),聲音數(shù)據(jù),等等。例如,顯示模塊7140可以顯示交互式電視數(shù)據(jù)流。
數(shù)據(jù)流接收模塊7170起的作用與圖1中數(shù)據(jù)流接收模塊170基本類似。即數(shù)據(jù)流接收模塊7170被配置為管理與服務(wù)器發(fā)送的數(shù)據(jù)流有關(guān)的數(shù)據(jù)包的接收。數(shù)據(jù)流接收模塊7170可以被進(jìn)一步配置為將接收的數(shù)據(jù)包提供給通信和流量控制模塊7010。
令牌存儲(chǔ)模塊7100被配置為與圖1的令牌存儲(chǔ)模塊100基本類似的操作。即令牌存儲(chǔ)模塊7100被配置為向URIs、與存儲(chǔ)的URI有關(guān)的令牌、與令牌有關(guān)的終止數(shù)據(jù)等等提供安全存儲(chǔ)服務(wù)。此外,令牌存儲(chǔ)模塊7100進(jìn)一步被設(shè)置為提供安全本地存儲(chǔ),其被緊密地綁定到客戶機(jī)裝置7002。令牌存儲(chǔ)模塊7100可以用文件、文件夾、數(shù)據(jù)庫(kù)等等形式實(shí)現(xiàn)。到客戶機(jī)系統(tǒng)的綁定利用綁定模塊7020實(shí)現(xiàn)??梢岳枚喾N加密、加擾中的任何一個(gè)以及通過(guò)利用各種網(wǎng)絡(luò)資源提供本地安全。
綁定模塊7020被配置為能唯一識(shí)別客戶機(jī)裝置7002、服務(wù)器系統(tǒng)等等。在一個(gè)實(shí)施例中利用指紋(fingerprint)實(shí)現(xiàn)這一目的。一個(gè)指紋可能由許多每個(gè)指紋特有的元素組成。這種元素在這里被稱為紋線。每個(gè)紋線包括指紋的一個(gè)元素,提供該指紋區(qū)別于其他指紋的信息。紋線的一些例子包括硬件序列號(hào),操作系統(tǒng)版本號(hào),互聯(lián)網(wǎng)協(xié)議地址,物理存儲(chǔ)器大小,等等。包括在指紋中的每個(gè)紋線提取系統(tǒng)的特征從而能夠在系統(tǒng)中被唯一識(shí)別。所有指紋的組合可以建立手印或系統(tǒng)指紋,其可以唯一識(shí)別個(gè)人計(jì)算機(jī),服務(wù)器,客戶機(jī)裝置,機(jī)頂盒,或系統(tǒng)中的類似裝置。每個(gè)指紋組和各個(gè)紋線的組合順序可以影響最后的系統(tǒng)指紋或手印。也就是,即使利用的主要紋線信息相同,綁定模塊7020的每個(gè)用戶也可以生成唯一的指紋和隨后的手印。
應(yīng)用生成的指紋將VSC 7004與特定的裝置綁定,例如客戶機(jī)裝置7002,這樣如果其被克隆或試圖將其運(yùn)行在另一個(gè)裝置,其將不能正確地運(yùn)行。這種方法真正排除了普通黑客使用的物理智能卡剽竊的方法。
在一個(gè)實(shí)施例中,VSC 7004可以與另一個(gè)裝置相結(jié)合,如物理智能卡,從而在保持靈活性和VSC 7004的性能的同時(shí)進(jìn)一步增強(qiáng)物理卡對(duì)裝置指紋的安全識(shí)別特征。這是可能實(shí)施的,例如,系統(tǒng)中裝置識(shí)別先天比較弱,成本和/或物理卡或者其它裝置的方便性可以不考慮。
通信和流量控制模塊7010被配置為實(shí)現(xiàn)VSC7004與事務(wù)處理和流式服務(wù)器之間的通信和數(shù)據(jù)流量的控制。同樣地,通信和流量控制模塊7010可以實(shí)現(xiàn)與圖1中流控制協(xié)議模塊120實(shí)現(xiàn)的一些功能基本類似的功能。即,通信和流量控制模塊7010可以實(shí)現(xiàn)到服務(wù)器的初始連接,并實(shí)現(xiàn)被請(qǐng)求的URI,令牌,和用戶信息的傳遞。
與圖1中流控制協(xié)議模塊120基本相同,通信和流量控制模塊7010也可以實(shí)現(xiàn)對(duì)來(lái)自服務(wù)器數(shù)據(jù)的流量控制以保證流動(dòng)速率可保持客戶機(jī)緩沖器充分充滿(例如,客戶機(jī)輸入緩沖器7150)。通信和流量控制模塊7010可以實(shí)現(xiàn)這種功能,例如,通過(guò)監(jiān)視如數(shù)據(jù)被接收的速率,網(wǎng)絡(luò)統(tǒng)計(jì)數(shù)字,輸入緩沖統(tǒng)計(jì)數(shù)字等等的多種特征。這樣,通信和流量控制模塊7010可以實(shí)現(xiàn)對(duì)輸入緩沖器7150的查詢以確定填充百分比,被填充的速率,緩沖器空間剩余百分比,等等。通信和流量控制模塊7010還可以向服務(wù)器提供基于監(jiān)視特征的流量控制度量,可加密或者不加密。如果以加密的方式提供信息,通信和流量控制模塊7010可以利用安全信息管理器7012以保證信息是安全的。
安全信息管理器7012被配置為向信息交換提供安全媒質(zhì)。盡管沒有說(shuō)明,安全信息管理器7012與所要求的VSC7004的各種其他組件交互,以保證實(shí)現(xiàn)終端各方的互相鑒權(quán)和維護(hù)信息的保密性。
令牌管理器7016被配置為管理令牌的接收,存儲(chǔ),發(fā)送,令牌的解釋,及類似權(quán)利。同樣,令牌管理器7016可以實(shí)現(xiàn)圖1中流控制協(xié)議模塊120相關(guān)的各種功能。例如,令牌管理器7016可以向服務(wù)器傳遞被請(qǐng)求的URI,令牌,和用戶信息。令牌管理器7016也可以利用加密模塊7060和/或密鑰生成器7018與服務(wù)器協(xié)商一組密鑰。此外,令牌管理器7016可以利用安全信息管理器7012來(lái)實(shí)現(xiàn)服務(wù)器和客戶機(jī)裝置7002之間的安全通信。
上面已經(jīng)簡(jiǎn)要的描述了令牌。然而,在一個(gè)實(shí)施例中,令牌也可以包括數(shù)字證書,該數(shù)字證書可以包括與例如認(rèn)證中心相關(guān)的識(shí)別信息、密鑰,等等。VSC 7004所使用的這種令牌結(jié)構(gòu)規(guī)定了權(quán)限鏈(entitlement chains)的特殊概念,其可以發(fā)展商業(yè)模式,超出了典型地由傳統(tǒng)認(rèn)證中心模式支持的范圍。然而,本發(fā)明并不局限于此,令牌結(jié)構(gòu)實(shí)際上可以使用配置為將用戶許可與特定數(shù)據(jù)流關(guān)聯(lián)的任何結(jié)構(gòu)。
加密模塊7060旨在為實(shí)現(xiàn)例如加密、解密、數(shù)字簽名、密鑰生成等等提供加密機(jī)制。例如,加密模塊7060可以包括不對(duì)稱加密機(jī)制,其配置為提供基于加密動(dòng)作的公用/私用密鑰。公用/私用加密動(dòng)作包括密鑰生成,數(shù)字簽名,加密,解密和完整性檢查。加密模塊7060同時(shí)通過(guò)令牌管理器7016和安全信息管理器7012實(shí)現(xiàn)密鑰的安全交換。
加密模塊7060進(jìn)一步可以接收來(lái)自通信和流量控制模塊7010的安全內(nèi)容,解密該安全內(nèi)容,以及將解密的內(nèi)容發(fā)送到客戶機(jī)輸入緩沖器7150。
客戶機(jī)輸入緩沖器7150起的作用與圖1中客戶機(jī)輸入緩沖器150基本類似。即客戶機(jī)輸入緩沖器7150被配置為包括流緩沖器。指出這一點(diǎn)是很重要的,盡管客戶機(jī)輸入緩沖器7150在VSC 7004中被說(shuō)明,但是本發(fā)明并不局限于此。例如,客戶機(jī)輸入緩沖器7150可以位于客戶機(jī)裝置7002內(nèi)部和VSC 7004外部。
加密模塊7060被配置為提供多種密鑰,包括對(duì)稱或私用密鑰,非對(duì)稱或公用密鑰,等等。盡管加密模塊7060實(shí)際上可以利用任何加密機(jī)制,在一個(gè)實(shí)施例中,加密模塊7060利用AES(高級(jí)加密標(biāo)準(zhǔn))進(jìn)行對(duì)稱加密。在另一個(gè)實(shí)施例中,加密模塊7060利用RSA進(jìn)行非對(duì)稱加密動(dòng)作。
密鑰生成器7018被配置為利用加密模塊7060以實(shí)現(xiàn)密鑰的生成。這種生成可以利用例如快速更新機(jī)制以使密鑰的重新生成與傳統(tǒng)物理智能卡密鑰替換機(jī)制相比,可以在短時(shí)間內(nèi)完成。在一個(gè)實(shí)施例中,密鑰生成器7018可以在幾小時(shí)內(nèi)實(shí)現(xiàn)新的密鑰的生成,而不是幾天、幾個(gè)星期或甚至幾個(gè)月內(nèi)。在一個(gè)實(shí)施例中,為了進(jìn)一步加擾可能的攻擊點(diǎn),應(yīng)用了動(dòng)態(tài)快速更新,其中隨機(jī)地執(zhí)行密鑰的再生等等以建立不可預(yù)見的環(huán)境。在另一個(gè)實(shí)施例中,也可以利用這種動(dòng)態(tài)快速更新取代各種軟件組件,這可以進(jìn)一步減少攻擊。利用這種快速更新使得VSC 7004可以應(yīng)用于各種其它情形,包括銀行業(yè),企業(yè)安全,電子商務(wù),和用于進(jìn)行內(nèi)容分發(fā)的工作室。
篡改檢測(cè)器7006和篡改保護(hù)器7014可以應(yīng)用于客戶機(jī)系統(tǒng)7000中的多個(gè)地點(diǎn)以保證高度安全的基本結(jié)構(gòu)。典型地,一定標(biāo)準(zhǔn)的篡改保護(hù)或抵抗可以作為VSC 7004的部分軟件和/或硬件。如圖所示,VSC 7004包括篡改保護(hù)器7014以提供對(duì)篡改和類似竊用方法的保護(hù)或抵抗。這種保護(hù)可以進(jìn)一步包括被配置為執(zhí)行多種動(dòng)作的代理,包括內(nèi)電路仿真檢測(cè),調(diào)試檢測(cè),調(diào)試抵抗(debugger resistance),存儲(chǔ)器空間侵犯檢測(cè)和保護(hù),以及類似應(yīng)用標(biāo)準(zhǔn)的剽竊行為檢測(cè)和保護(hù)。
篡改檢測(cè)器7006被配置為識(shí)別來(lái)自其它系統(tǒng)的篡改,例如那些在客戶機(jī)裝置7002上的,等等。例如,在交互式電視環(huán)境中可能在網(wǎng)絡(luò)中配置篡改檢測(cè)器以監(jiān)視對(duì)虛擬智能卡和/或其各種組件的克隆企圖。篡改檢測(cè)器7006可以進(jìn)一步提供可信的時(shí)間來(lái)源,從而防止重放攻擊。
運(yùn)行中,VSC 7004可實(shí)現(xiàn)與圖4中描述的基本相似的功能。例如,如圖4所述,客戶機(jī)加載URI和令牌(參見圖4的框400)。通過(guò)與通信和流量控制模塊7010及用戶接口7110、顯示模塊7140等等交互,在圖7中這種操作可以發(fā)生。
如果用戶在圖4的判定框410中發(fā)出數(shù)據(jù)流,流程轉(zhuǎn)移到框460,在那里利用令牌管理器7016和令牌存儲(chǔ)模塊7100保存URI和令牌。接著轉(zhuǎn)移到框470,通信和流量控制模塊7010與令牌管理器7016結(jié)合,向流式服務(wù)器發(fā)送URI,令牌和用戶信息。
如果在判定框480,服務(wù)器確認(rèn)URI和令牌組合有效,流程繼續(xù)執(zhí)行圖4中的框490,在那里數(shù)據(jù)從流式服務(wù)器中流出。這種數(shù)據(jù)的流動(dòng)可能被數(shù)據(jù)流接收模塊7170接收并發(fā)送到通信和流量控制模塊7010,在那里對(duì)接收的流的解密可以利用加密模塊7060實(shí)現(xiàn)。解密的數(shù)據(jù)流接著以保持客戶機(jī)緩沖器充滿的速率輸入到客戶機(jī)輸入緩沖器7150。通信和流量控制模塊7010在數(shù)據(jù)流動(dòng)期間提供流量控制信息以保證客戶機(jī)緩沖器充滿。
上述說(shuō)明、例子和數(shù)據(jù)提供了對(duì)本發(fā)明組成的制造和應(yīng)用的完整描述。由于本發(fā)明的許多實(shí)施例可以在不脫離本發(fā)明的精神和范圍的情況下做出,本發(fā)明歸于下文所附的權(quán)利要求。
權(quán)利要求
1.一種用于在網(wǎng)絡(luò)中傳輸數(shù)據(jù)流的系統(tǒng),包括一客戶機(jī)裝置,被配置為執(zhí)行操作,包括使能請(qǐng)求數(shù)據(jù)流;一與該客戶機(jī)裝置連接的虛擬智能卡,該虛擬智能卡被配置為執(zhí)行操作,包括發(fā)送與被請(qǐng)求的數(shù)據(jù)流相關(guān)的令牌;接收被請(qǐng)求的數(shù)據(jù)流,其中被請(qǐng)求的流被加密,以及提供與該數(shù)據(jù)流關(guān)聯(lián)的流量控制度量;以及一流式媒體服務(wù)器,被配置為執(zhí)行操作,包括確認(rèn)用于被請(qǐng)求的數(shù)據(jù)流的令牌,如果該令牌對(duì)被請(qǐng)求的數(shù)據(jù)流有效,將加密的數(shù)據(jù)流送到虛擬智能卡,以及部分地利用來(lái)自該虛擬智能卡的流量控制度量,控制該加密的數(shù)據(jù)流在網(wǎng)絡(luò)中的流動(dòng),以使與該虛擬智能卡關(guān)聯(lián)的緩沖器保持充分充滿。
2.如權(quán)利要求1所述的系統(tǒng),其中該虛擬智能卡進(jìn)一步包括令牌管理器,其被配置為與流式媒體服務(wù)器協(xié)商令牌。
3.如權(quán)利要求1所述的系統(tǒng),其中確認(rèn)用于被請(qǐng)求的數(shù)據(jù)流的令牌進(jìn)一步包括用提供的令牌確認(rèn)與該數(shù)據(jù)流位置相關(guān)的一個(gè)標(biāo)識(shí)。
4.如權(quán)利要求1所述的系統(tǒng),其中該虛擬智能卡進(jìn)一步包括流量控制模塊,其被配置為監(jiān)視至少一個(gè)網(wǎng)絡(luò)統(tǒng)計(jì)數(shù)字和一個(gè)緩沖器特征,以確定流量控制度量。
5.如權(quán)利要求1所述的系統(tǒng),其中該虛擬智能卡進(jìn)一步包括一個(gè)綁定模塊,其被配置為將該虛擬智能卡和客戶機(jī)裝置唯一地關(guān)聯(lián)。
6.如權(quán)利要求1所述的系統(tǒng),其中流式服務(wù)器被配置為執(zhí)行進(jìn)一步的操作,包括與該虛擬智能卡協(xié)商密鑰以在加密被請(qǐng)求的數(shù)據(jù)流時(shí)使用。
7.如權(quán)利要求6所述的系統(tǒng),其中該虛擬智能卡進(jìn)一步包括令牌管理器,其被配置為與該流式服務(wù)器交互以協(xié)商密鑰。
8.如權(quán)利要求7所述的系統(tǒng),其中該虛擬智能卡進(jìn)一步包括令牌存儲(chǔ)模塊,其被配置為存儲(chǔ)至少一種用戶信息、令牌、URI及密鑰。
9.如權(quán)利要求1所述的系統(tǒng),其中令牌進(jìn)一步包括一個(gè)數(shù)字證書。
10.如權(quán)利要求1所述的系統(tǒng),其中該數(shù)據(jù)流被提供給客戶機(jī)裝置以使其對(duì)于預(yù)定的觀看次數(shù)是可觀看的。
11.一種用于管理在網(wǎng)絡(luò)中數(shù)據(jù)流的被調(diào)制的數(shù)據(jù)信號(hào),該被調(diào)制的數(shù)據(jù)信號(hào)包括從具有虛擬智能卡的客戶機(jī)請(qǐng)求數(shù)據(jù)流;通過(guò)該虛擬智能卡提供與該被請(qǐng)求的數(shù)據(jù)流關(guān)聯(lián)的令牌;實(shí)現(xiàn)對(duì)用于該被請(qǐng)求數(shù)據(jù)流的令牌的有效性的確定;如果該令牌對(duì)該被請(qǐng)求的數(shù)據(jù)流有效,實(shí)現(xiàn)與該虛擬智能卡的密鑰協(xié)商;當(dāng)數(shù)據(jù)流發(fā)送到客戶機(jī)時(shí)實(shí)現(xiàn)對(duì)該數(shù)據(jù)流的加密,其中該數(shù)據(jù)流是利用協(xié)商好的密鑰加密的;通過(guò)該虛擬智能卡提供與該加密的數(shù)據(jù)流相關(guān)的流量控制度量;以及通過(guò)服務(wù)器控制網(wǎng)絡(luò)中流向該客戶機(jī)的加密數(shù)據(jù)流的流動(dòng)速率,其中該服務(wù)器部分地利用該流量控制度量,控制加密數(shù)據(jù)流的流動(dòng)速率以保持客戶機(jī)緩沖器充分充滿。
12.如權(quán)利要求11所述的被調(diào)制的數(shù)據(jù)信號(hào),其中該數(shù)據(jù)流被設(shè)置為只能觀看一次。
13.如權(quán)利要求11所述的被調(diào)制的數(shù)據(jù)信號(hào),其中控制流動(dòng)速率進(jìn)一步包括以與客戶機(jī)接收該加密數(shù)據(jù)流的速率基本相同的速率向客戶機(jī)傳輸加密數(shù)據(jù)流。
14.如權(quán)利要求11所述的被調(diào)制的數(shù)據(jù)信號(hào),其中提供流量控制度量進(jìn)一步包括監(jiān)視至少一個(gè)網(wǎng)絡(luò)統(tǒng)計(jì)數(shù)字和客戶機(jī)緩沖器特征。
15.一種用于在網(wǎng)絡(luò)中接收數(shù)據(jù)流的客戶機(jī)裝置,包括一用戶接口,被配置為執(zhí)行操作,包括實(shí)現(xiàn)請(qǐng)求該數(shù)據(jù)流;以及一與該用戶接口連接的虛擬智能卡,其被配置為執(zhí)行操作,包括協(xié)商與該被請(qǐng)求的數(shù)據(jù)流關(guān)聯(lián)的令牌;利用該令牌實(shí)現(xiàn)對(duì)該數(shù)據(jù)流的請(qǐng)求的確認(rèn);如果該請(qǐng)求有效,接收來(lái)自服務(wù)器的數(shù)據(jù)流,該服務(wù)器被配置為以保持該客戶機(jī)裝置中的客戶機(jī)緩沖器充分充滿的流動(dòng)速率發(fā)送數(shù)據(jù)流。向該服務(wù)器提供能夠被該服務(wù)器使用的度量,以控制數(shù)據(jù)流的流動(dòng)速率從而保持客戶機(jī)緩沖器充分充滿。
16.如權(quán)利要求15所述的客戶機(jī)裝置,其中該用戶接口被配置為執(zhí)行進(jìn)一步操作,包括使用戶選擇的訪問(wèn)數(shù)據(jù)流的時(shí)間期限被提供給該服務(wù)器,其中用戶選擇的時(shí)間期限與協(xié)商的令牌關(guān)聯(lián),以便當(dāng)該時(shí)間期限過(guò)期時(shí)拒絕對(duì)數(shù)據(jù)流的訪問(wèn)。
17.如權(quán)利要求15所述的客戶機(jī)裝置,其中該令牌包括對(duì)該被請(qǐng)求的數(shù)據(jù)流的用戶許可。
18.如權(quán)利要求17所述的客戶機(jī)裝置,其中該用戶信息包括用戶帳戶信息。
19.如權(quán)利要求15所述的客戶機(jī)裝置,其中該令牌包括用戶選擇的訪問(wèn)數(shù)據(jù)流的時(shí)間期限,其中當(dāng)該用戶選擇的時(shí)間期限過(guò)期時(shí),對(duì)數(shù)據(jù)流的訪問(wèn)將被拒絕。
20.如權(quán)利要求15所述的客戶機(jī)裝置,其中接收到的數(shù)據(jù)流是利用DES、Triple-DES和AES加密中的至少一種加密的。
21.如權(quán)利要求15所述的客戶機(jī)裝置,其中該虛擬智能卡被唯一地綁定到該客戶機(jī)裝置。
22.如權(quán)利要求15所述的客戶機(jī)裝置,其中該虛擬智能卡進(jìn)一步包括一個(gè)篡改保護(hù)模塊,其被設(shè)置為可以檢測(cè)對(duì)該虛擬智能卡的篡改并保護(hù)該虛擬智能卡免受篡改。
23.如權(quán)利要求15所述的客戶機(jī)裝置,其中該虛擬智能卡包括客戶機(jī)緩沖器。
24.一種在網(wǎng)絡(luò)中傳輸數(shù)據(jù)流的方法,包括請(qǐng)求數(shù)據(jù)流;利用綁定到客戶機(jī)裝置的虛擬智能卡協(xié)商與該被請(qǐng)求的數(shù)據(jù)流關(guān)聯(lián)的令牌;利用該協(xié)商的令牌來(lái)實(shí)現(xiàn)對(duì)該數(shù)據(jù)流的請(qǐng)求的有效性的確認(rèn);如果該請(qǐng)求有效,接收來(lái)自服務(wù)器的數(shù)據(jù)流,該服務(wù)器被配置為以保持客戶機(jī)緩沖器充分充滿的流動(dòng)速率發(fā)送數(shù)據(jù)流;以及通過(guò)該虛擬智能卡向該服務(wù)器提供一種度量,可以被該服務(wù)器部分地使用以控制數(shù)據(jù)流的流動(dòng)速率以保持客戶機(jī)緩沖器充分充滿。
25.如權(quán)利要求24所述的方法,進(jìn)一步包括利用與該虛擬智能卡相關(guān)的令牌管理器與該服務(wù)器交互,以在數(shù)據(jù)流流向該客戶機(jī)裝置時(shí)協(xié)商可用于加密數(shù)據(jù)流的密鑰。
26.如權(quán)利要求24所述的方法,其中該虛擬智能卡進(jìn)一步包括令牌存儲(chǔ)模塊,其被配置為存儲(chǔ)至少一個(gè)用戶信息、令牌、URI和密鑰。
27.一種用于在網(wǎng)絡(luò)中接收數(shù)據(jù)流的設(shè)備,包括一種用于請(qǐng)求數(shù)據(jù)流的裝置;一種用于協(xié)商與被請(qǐng)求的數(shù)據(jù)流關(guān)聯(lián)的令牌的裝置,其中該令牌用于實(shí)現(xiàn)對(duì)該請(qǐng)求有效性的確認(rèn)以接收該數(shù)據(jù)流;一種用于當(dāng)該請(qǐng)求有效時(shí)接收被請(qǐng)求的數(shù)據(jù)流的裝置,其中該被請(qǐng)求的流被加密;一種用于提供與接收的數(shù)據(jù)流相關(guān)的流量控制度量的裝置;以及一種用于接收來(lái)自服務(wù)器的受控流中的加密數(shù)據(jù)流的裝置,其中該服務(wù)器被配置為部分地利用流量控制度量,以控制網(wǎng)絡(luò)中加密數(shù)據(jù)流的流量從而保持設(shè)備中的緩沖器充分充滿。
全文摘要
本發(fā)明揭示了一種用于加密數(shù)據(jù)流以保證數(shù)據(jù)流唯一觀看和保護(hù)數(shù)據(jù)流版權(quán)的方法。特別地,本發(fā)明揭示了一種用于在互聯(lián)網(wǎng)類型的傳輸中保護(hù)流式多媒體、娛樂(lè)和通信的方法。本發(fā)明進(jìn)一步揭示了一種可與流式服務(wù)器連接的流式服務(wù)器組件,其與包括虛擬智能卡的客戶機(jī)系統(tǒng)交互以實(shí)現(xiàn)本發(fā)明方法。
文檔編號(hào)H04N7/167GK1756146SQ20051000740
公開日2006年4月5日 申請(qǐng)日期2005年2月17日 優(yōu)先權(quán)日2004年10月1日
發(fā)明者格倫·A·莫頓, 布賴恩·貝克 申請(qǐng)人:威德萬(wàn)技術(shù)公司