專利名稱:跟蹤最終用戶電子內容使用的系統的制作方法
所公開的本發明一般涉及電子商務領域,并且更具體的是涉及一個在諸如國際互聯網絡和環球網的全球通信網上對諸如印刷媒體,電影,游戲和音樂的數字資產進行安全交付和版權管理的系統和有關工具。
使用諸如國際互聯網絡的全球分布系統分發諸如音樂,電影,計算機程序,圖畫,游戲和其他內容的數字資產的應用連續增長。同時,有價值數字內容的所有者和出版者因若干理由比較遲緩地接受使用國際互聯網絡分發數字資產。一個理由是所有者擔心非法復制或盜版數字內容。數字內容的電子交付消除了盜版的若干障礙。電子分發排除的一個障礙是有形的可記錄介質(例如,磁盤或CD ROM)自身的要求。把數字內容復制到有形介質上需要花錢,雖然在多數情況下一個空白磁帶或可記錄CD只需要不到一美元。但在電子分發的情況下不再需要有形介質。由于以電子方式分發內容,有形介質的費用不成為一個因素。第二個障礙是內容自身的格式,即以模擬格式而不是數字格式存儲的內容。當被影印復制時,以模擬格式存儲的內容,例如印刷圖畫,其副本的質量低于正本。而一個副本(有時稱作一代)的每一個后續副本,其質量更低于正本。當以數字方式存儲圖畫時,不存在這種質量退化。各個副本,和副本的每一代可以和正本一樣清晰。完美數字副本與以電子方式分發內容和廣泛通過國際互聯網絡分發內容的極低費用的集合效應使得盜版和分發未被授權的副本相對變得更容易。通過幾個按鍵,盜版可以通過國際互聯網絡發送數百乃至數千數字內容的完美副本。所以需要保證對電子分發的數字資產的保護及其安全。
數字內容的提供商期望建立一個保護內容所有者權利的數字內容安全全球分發系統。建立數字內容分發系統的問題包含開發數字內容電子分發,版權管理,和資產保護系統。電子分發的數字內容包含諸如印刷媒體,電影,游戲,節目,電視,多媒體,和音樂的內容。
電子分發系統的廣泛應用為數字內容提供商提供了通過即時銷售報告和電子核對實現支付快速結算并且通過內容重新分發獲得輔助收益財源的能力。由于電子數字內容分發系統不受實地盤存儲運損耗或返還的影響,數字內容提供商和零售商可以降低成本并且改善儲備。數字內容提供商可以促成新的或擴大現有的分發以便更好地按時清放庫存。來自電子分發系統的交易數據可用于獲得有關消費者購買模式的信息以及提供有關電子產品銷售計劃和促銷的即時反饋。為了滿足這些目標,需要數字內容提供商使用一個電子分發模型使數字內容可用于大范圍的用戶和業務,同時保證對數字資產的保護和計量。
其他能從市場買到的數字內容電子分發系統,例如AT&T的realaudio,A2B,Liquid Audio Pro Corp.的Liquid Audio,AudioSoft的City Music Network和其它系統通過安全和不安全電子網絡提供了數字數據傳輸。安全電子網絡的使用大大地減少數字內容提供商向廣大聽眾分發數字內容的要求。諸如國際互聯網絡和Web的不安全網絡的使用允許數字內容例如通過加密安全地到達最終用戶。然而,一旦加密數字內容在最終用戶的機器上被解密,該數字內容可以容易地被最終用戶進行未被授權的再分發。所以需要一個即使在數字內容被交付給消費者和企業之后也提供數字資產保護并且保證內容提供商的權利受到保護的安全數字內容電子分發系統。因而需要允許安全交付,許可授權和控制數字資產使用的版權管理。
數字內容所有者緩慢接受電子分發的另一個理由是他們期望保持并培養現有的分發渠道。多數內容所有者通過零售商進行銷售。在音樂市場中這些美國零售商包含Tower Records,Peaches,Blockbuster,Circuit City及其它。這些零售商中有許多擁有允許國際互聯網絡用戶通過國際互聯網絡進行選擇并且把選擇結果寄往最終用戶的Web站點。音樂Web站點的例子包含@tower,Music Boulevard和Columbia House。電子分發的使用可以消除零售店把他們自己與其它零售店和內容所有者區別開的能力,尤其是在Web上。所以需要為諸如圖畫,游戲,音樂,節目和影像的電子內容零售商提供在通過電子分發銷售音樂產品時能夠把他們自己與其它零售商和內容所有者區別開的路徑。
內容所有者準備其數字內容以便通過諸如電子商店的分發站點進行電子分發。在國際互聯網絡上或通過其他在線服務的電子商店希望通過其產品報價和產品升級彼此區別。傳統商店,即與電子商店相比是非電子,非在線的商店使用產品升級,產品銷售,產品樣品,慷慨返還政策和其他獎勵計劃區別他們自己及其競爭者。然而,在內容提供商在數字內容內強加使用條件的在線世界里,電子商店區別自己的能力會受到嚴重限制。此外,即使可以改變使用條件,電子商店仍然面臨處理與來自內容提供商的數字內容相關的元數據以便電子推銷和銷售產品的困難任務。當處理元數據時,要求電子商店處理以下幾個需要。第一,要求電子商店從內容提供商接收與數字內容相關的元數據。部分這樣的元數據可能經常被加密發送,所以內容提供商必須建立對加密內容進行解密的機制。第二,為了幫助該內容的產品銷售,產品定位和其他促銷考慮,電子商店可能希望在從內容提供商接收內容之前或在電子商店接收內容之后預覽來自內容提供商的元數據。第三,要求電子商店提取某些被用來促銷諸如圖形和藝術家信息的材料的元數據。這些促銷材料經常被電子商店直接用于其在線促銷。第四,電子商店可能希望通過修改某些允許使用條件把他們自己與其它電子商店區別開以便建立不同的數字內容報價。第五,電子商店可能需要在元數據中插入或改變某些諸如URL的地址,以便購買人在不需要通過電子商店進行支付清算的情況下自動指示一個帳目核對機構進行支付核對。第六,電子商店可能需要產生允許使用符合使用條件的含版權數字內容的許可證。例如,該許可證可以授權允許制造有限數量的數字內容副本。需要一個許可證來反映授權允許的條款。
考慮到所有這些要求,為了處理涉及數字內容的元數據,許多電子商店編寫專用軟件程序以處理這些要求。產生這些專用軟件程序所需要的時間,費用和測試可以非常多。因此,需要提供一個針對這些要求的解決方案。
數字內容所有者緩慢接受電子分發的另一個理由是準備電子分發內容的難度。今天,許多內容提供商在其檔案中有數千乃至數萬個標題。在一個音樂例子中,內容所有者使單個主盤錄音同時具有若干不同格式(例如CD,磁帶和小型盤片)并不是不常見的。另外,針對一個具體的分發渠道,單個格式可以令一個原版錄音被重新翻版或重新混錄。舉例來說,無線電廣播的混錄可能不同于舞蹈俱樂部聲軌的混錄,而舞蹈俱樂部聲軌可能不同于通用消費者CD。這些不同混錄的庫存和跟蹤可能是非常繁重的。此外,許多主盤錄音的所有者經常通過各種諸如“最佳”的系列合集,電影音樂聲軌與其他合集的編輯或編輯再發行舊的錄音。當以數字方式提供更多內容時,對電子分發內容進行重新混錄和編碼的需求相應增長。提供商經常需要使用舊的記錄格式指導選擇正確的主盤錄音并且對這些錄音進行再加工和編碼以便通過電子分發進行發布。對于希望使用其舊格式幫助重新發布用于電子分發的舊錄音的內容提供商尤其是如此。提供商會搜索數據庫找到標題,藝術家和錄音以便設置編碼參數。這個人工搜尋錄音檔案數據庫的處理并不是沒有缺點。一個缺點是需要有一個操作員人工搜尋一個數據庫和適當設置處理參數。另一個缺點是在從數據庫選擇數據時可以會出現操作員轉換錯誤。因此,需要為內容提供商提供一個針對諸如音頻的內容自動地檢索關聯數據和主盤錄音的方法。
內容所有者通過一個被稱為編碼的處理準備其電子分發數字內容。編碼包括獲取內容,在以模擬格式表示內容的情況下對其進行數字化,并且對其進行壓縮。由于減少了發送或存儲的數據量,壓縮處理允許更有效地通過網絡傳遞并且在可記錄介質上存儲數字內容。然而,壓縮不是沒有其缺點。多數壓縮造成損失某些信息,并且被稱作有損壓縮。內容提供商必須決定使用什么壓縮算法和要求什么樣的壓縮水平。例如,在音樂例子中,取決于音樂流派的不同,數字內容或歌曲可以有非常不同的特征。針對一個流派選擇的壓縮算法和壓縮水平可能不是另一個音樂流派的最優選擇。內容提供商可以發現壓縮算法和壓縮水平的某些組合對于一個音樂流派,例如古典音樂工作良好,但對于另一個諸如重金屬的音樂流派則產生了不令人滿意的結果。此外,音頻工程師必須經常均衡音樂,進行動態范圍調整并且進行其他預處理和處理設置以保證所編碼的音樂流派產生期望的結果。總要人工設置這些編碼參數,例如針對各個數字內容設置均衡電平和設置動態范圍的要求是繁重的。回到音樂例子,具有一個覆蓋各種音樂流派的合集的一個音樂內容提供商會不得不針對要編碼的各個歌曲或歌集人工選擇期望的編碼參數組合。因此,需要克服為編碼人工選擇處理參數的要求。
壓縮內容的處理可以需要大量的專用計算資源,尤其是對于諸如大型故事片電影的內容項目。壓縮算法的提供方提供與其壓縮技術相關的各種折衷和優點。這些折衷包含壓縮內容所需要的時間和計算資源數量;根據原始內容完成的壓縮量;期望的重放位速率;壓縮內容的性能質量;和其他因素。使用一個把多媒體文件作為輸入并且產生沒有中間進展或狀況指示的編碼輸出文件的編碼程序是一個問題。此外,在許多情況下,其他程序被用來調用或管理一個沒有中間進展指示的編碼程序。這使得被調用的應用程序沒有辦法估計已經編碼的內容量在指定要編碼的全部選擇內容中所占的百分比。在調用程序試圖調度若干不同程序立即運行的情況下,會產生一個問題。此外,在已經選擇若干批次的內容進行編碼并且內容提供商希望確定編碼處理的進展的情況下,其工作尤其繁重。因此,需要克服這些問題。
然而,數字內容提供商對其內容緩慢采用電子分發的另一個原因是缺乏在最終用戶設備上建立用于電子交付內容的數字播放器的標準。電子分發鏈上的內容提供商,電子商店或其它企業可能希望在諸如PC,機頂盒,手持設備等等的各種設備上提供專用播放器。需要一組在被第三方播放期間可以在一個防竄改環境,即一個阻止對內容進行未授權訪問的環境中對數字內容進行解密的工具。此外,需要一組在不允許最終用戶訪問沒有購買使用的內容的情況下允許最終用戶使用一個本地數字內容庫的工具。
通過下列三個來源可以發現有關保護數字內容的背景的進一步信息。AT&T實驗室Jack Lacy,James Snyder,David Maher的“國際互聯網絡音樂和知識產權保護問題”。Florham Park,N.J.的現有在線URL //www.a2bmusic.com/about/papers/musicipp.htm。在InterTrust技術有限公司Olin Sibert,DavidBernstein和David Van Wie的文章“為信息商務保護內容,而不是線路”中被稱作DigiBox的密碼保護容器。Sunnyvale,CA的現有在線URL //www.intertrust.com/architecture/stc.html。和IBM白皮書“加密容器技術”,通過在線URL///cyptolope.ibm.com/white.htm可以得到。
本發明的一個目標是消除上述障礙并提供一個跟蹤內容數據的使用的系統。本發明的一個實施例提供了一個跟蹤用戶設備上數字內容的使用的系統。被連接到網絡的電子商店向用戶銷售播放數字內容的許可證。從網絡接收許可證內容數據的內容播放器被用來播放許可證內容數據。另外,一個被連接到網絡的記錄站點跟蹤內容數據的播放。具體地,記錄站點從網絡接收播放信息,并且播放信息包含內容數據已經被相關內容播放器播放的次數。
本發明的另一個實施例提供了一個跟蹤用戶設備上數字內容的使用的方法。根據該方法,一個播放數字內容數據的許可證被賣給一個用戶,并且許可內容數據被發送到該用戶的一個內容播放器。而且,每當內容數據被內容播放器播放或者被從內容播放器復制到一個外部介質時,信息被發送到一個記錄站點以便能夠跟蹤許可內容數據的使用。
圖1是一個圖解基于本發明的安全數字內容電子分發系統整體概念的模塊圖。
圖2是圖解一個基于本發明的例子安全容器(SC)和相關圖示的模塊圖。
圖3是圖解一個基于本發明的安全容器(SC)加密過程的整體概念的模塊圖。
圖4是圖解一個基于本發明的安全容器(SC)解密過程的整體概念的模塊圖。
圖5是圖解圖1基于本發明的安全數字內容分發系統的版權管理體系結構整體層次概念的模塊圖。
圖6是圖解適用于圖5的許可證控制層和內容分發和許可控制整體概念模塊圖。
圖7是對圖1基于本發明的工作流程管理器工具的一個例子用戶界面的圖解。
圖8是關于對應于圖7中用戶界面,基于本發明的工作流程管理器的主要工具,部件和處理的模塊圖。
圖9是圖解圖1基于本發明的電子數字內容商店的主要工具,部件和處理的模塊圖。
圖10是圖解圖1一個基于本發明的最終用戶設備的主要部件和處理的模塊圖。
圖11是關于一個計算用于圖8基于本發明的內容預處理和壓縮工具的編碼速率的方法的流程圖。
圖12是關于一個自動檢索用于圖8基于本發明的自動元數據獲取工具的附加信息的方法的流程圖。
圖13是關于一個自動設置圖8基于本發明的預處理和壓縮工具的預處理和壓縮參數的方法的流程圖。
圖14是基于本發明的,把內容下載到如圖15所描述的一個本地庫的播放器應用程序的用戶界面屏幕的一個例子。
圖15是圖解運行在圖9基于本發明的最終用戶設備上的一個播放器應用程序的主要部件和處理的模塊圖。
圖16是圖15基于本發明的播放器應用程序的一個用戶界面屏幕例子。
圖17是關于一個為圖8基于本發明的自動元數據獲取工具自動檢索附加信息的可選實施例的流程圖。
為本發明提供一個目錄以幫助讀者快速定位到實施例中的不同章節。Ⅰ.安全數字內容電子分發系統A.系統概述1.版權管理2.計量3.開放式體系結構B.系統功能部件1.內容提供商2.電子數字內容商店3.中間市場合伙人4.認證中心5.最終用戶設備6.傳輸基礎設施C.系統使用Ⅱ.密碼學概念及其在安全數字內容電子分發系統中的應用A.對稱算法B.公開密鑰算法C.數字簽名D.數字證書E.SC圖示指南F.安全容器加密的例子Ⅲ.安全數字內容電子分發系統流程Ⅳ.版權管理體系結構模型A.體系結構層次功能B.功能分割和流程1.內容格式化層2.內容使用控制層3.內容識別層4.許可證控制層C.內容分發和許可控制Ⅴ.安全容器結構A.總體結構B.版權管理語言語法和語義C.安全容器流程和處理的概述D.元數據安全容器620格式E.報價安全容器641格式F.交易安全容器640格式G.訂購安全容器650格式H.許可證安全容器660格式I.內容安全容器格式Ⅵ.安全容器封裝和拆解A.概述B.資料清單(BOM)片段C.密鑰描述片段Ⅶ.認證中心A.概述B.版權管理處理C.國家特定參數D.審計日志和跟蹤E.結果報告F.記帳和支付驗證G.重發Ⅷ.內容提供商A.概述B.工作流程管理器1.產品等待動作/信息處理2.新內容請求處理3.自動元數據獲取處理4.人工元數據輸入處理
5.使用條件處理6.監督發布處理7.元數據SC產生處理8.水印處理9.預處理和壓縮處理10.內容質量控制處理11.加密處理12.內容SC產生處理13.最終質量保證處理14.內容交付處理15.工作流程規則C.元數據同化和輸入工具1.自動元數據獲取工具2.人工元數據輸入工具3.使用條件工具4.元數據SC片段5.監督發布工具D.內容處理工具1.水印工具2.預處理和壓縮工具3.內容質量控制工具4.加密工具E.內容SC建立工具F.最終質量保證工具G.內容交付工具H.內容促銷Web站點I.內容駐留1.內容駐留站點2.安全數字內容電子分發系統提供的內容駐留站點111Ⅸ.電子數字內容商店A.概述-支持多個電子數字內容商店B.點到點電子數字內容分發服務1.綜合需求2.內容獲取工具3.交易處理模塊4.通知接口模塊5.帳目核對工具C.廣播電子數字內容分發服務Ⅹ.最終用戶設備A.概述B.應用程序安裝C.安全容器處理器D.播放器應用程序1.概述2.最終用戶接口部件3.復制/播放管理部件4.解密1505,解壓縮1506和重放部件5.數據管理1502和庫訪問部件6.應用程序內部通信部件7.其他雜類部件8.通用播放器Ⅰ.安全數字內容電子分發系統A.系統概述安全數字內容電子分發系統是一個技術平臺,其中包括把數字內容和數字內容相關內容安全交付到最終用戶,客戶設備并且進行版權管理所需的技術,規范,工具和軟件。最終用戶設備包含PC機,機頂盒(IRD),和國際互聯網絡設備。在內容所有者允許時這些設備可以把內容復制到外部介質或便攜用戶設備。術語數字內容或內容是指以數字格式存儲的信息和數據,其中包含圖畫,電影,影像,音樂,節目,多媒體和游戲。
技術平臺規定如何準備數字內容,如何安全地通過授權給最終用戶設備的點到點和廣播基礎設施(諸如電纜,國際互聯網絡,衛星和無線)安全地分發數字內容,并且防止非法復制或播放。另外,隨著未來的發展,技術平臺的體系結構允許集成和移植各種諸如水印,壓縮/編碼,加密和其他安全算法的技術。
安全數字內容電子分發系統的基本部件是(1)保護內容所有者的所有權的版權管理;(2)用于即時和精確補償的交易計量;(3)一個開放并且有良好文檔的體系結構,該體系結構允許內容提供商準備內容并且允許其通過多個網絡基礎設施安全交付內容以便在任何符合標準的播放器上重放。
1.版權管理通過一組分布在系統操作部件之間的功能實現安全數字內容電子分發系統中的版權管理。其主要功能包含許可授權和控制以便內容只被擁有許可證的授權中間或最終用戶開啟;根據諸如允許復制份數,播放次數,許可有效的時間間隔或期限的購買或許可條件控制和實施對內容的使用。版權管理的輔助功能是允許某種手段來識別內容未被授權的副本的來源以便打擊盜版。
通過使用一個或多個認證中心實體和安全容器(SC)技術實現許可授權和控制。通過允許中間或最終用戶在驗證一個許可交易成功完成之后開啟內容,認證中心提供許可授權。安全容器被用來在系統部件之間分發加密內容和信息。SC是一個信息或內容的加密載體,它使用加密,數字簽名和數字證書防止對電子信息和內容進行未被授權的攔截或修改。SC也允許驗證數字內容的真實性和完整性。這些版權管理功能的優點是電子數字內容分發基礎設施不必是安全或可信賴的。所以允許通過諸如Web和國際互聯網絡的網絡基礎設施進行傳輸。這是由于在安全容器內部對內容進行加密并且其存儲和分發與其開啟和使用的控制相分離。只有擁有解密密鑰的用戶才可以開啟加密內容,并且認證中心只對授權和適當的使用請求發布解密密鑰。認證中心不會處理來自未知或未被授權方面的偽造請求或不遵守內容所有者設置的內容使用條件的請求。另外,如果SC在其傳輸期間被篡改,則認證中心中的軟件確定SC中的內容被破壞或偽造并且拒絕交易。
通過使用在一個最終用戶設備上運行的最終用戶播放器應用程序195允許對內容使用進行控制。應用程序在內容的每個副本中嵌入一個定義第二代復制和播放的允許次數的數字代碼。數字水印技術被用來產生數字代碼,使其不可被最終用戶播放器應用程序195看見,并且抵抗變更企圖。在一個可選實施例中,數字代碼正好是與內容113相關的使用條件的一部分。當在一個許可的最終用戶設備中訪問數字內容113時,最終用戶播放器應用程序195讀取水印以檢查使用限制并按規定更新水印。如果所請求的內容使用不符合使用條件,例如復制次數耗盡,則最終用戶設備不會執行請求。
數字水印也提供識別內容的授權或未被授權副本來源的手段。內容所有者在內容中嵌入一個初始水印以標識內容所有者,規定版權信息,定義地理分布區域,并且增加其他相關信息。在最終用戶設備上把一個第二水印嵌入到內容中以便標識內容購買人(或領有許可證者)和最終用戶設備,指明購買或許可條件和日期,并且加入任何其他相關信息。
由于水印變成內容不可分割的部分,無論副本是否經過授權,均通過副本攜帶水印。因而不管內容屬于哪里或來自哪里,數字內容總是包含有關其來源及其被允許使用的信息。這些信息可以用來抵制對內容的非法使用。
2.計量作為其版權管理功能的一部分,認證中心記錄所有通過認證中心進行密鑰交換的交易。這些記錄允許計量使用的許可授權和初始條件。交易記錄可以立即或定期被報告到諸如內容所有者或內容提供商,零售商等等的責任方以便對交易支付和其他使用進行電子核對。
3.開放式體系結構安全數字內容電子分發系統(系統)是一個具有公開規范和接口,促進系統在市場中被廣泛使用和接受并且保持對內容所有者權利的保護的開放式體系結構。系統體系結構的靈活性和開放性還允許未來隨著各種技術,傳輸基礎設施和設備被交付給市場而不斷發展。
對于內容的性質及其格式,體系結構是開放性的。體系結構支持音頻,節目,多媒體,影像,或其他類型的內容的分發。內容可以具有本來的格式,例如數字音樂的線性PCM,也可以具有通過諸如濾波,壓縮或預加重/去重等等的附加預處理或編碼來實現的格式。體系結構對于各種加密和水印方法是開放的。它允許選擇特定的技術以容納不同的內容類型和格式,并且隨著自身的發展允許引入或采用新技術。這種靈活性允許內容提供商選擇并演變出用于安全數字內容電子分發系統內部的數據壓縮,加密和格式化的技術。
該體系結構對于不同的分發網絡和分發模型也是開放的。該體系結構支持在低速國際互聯網絡連接或高速的衛星和衛星上的內容分發,并且能被使用點到點或廣播模型。另外,設計體系結構使得可以通過許多種包含低成本用戶設備的設備實現最終用戶設備中的功能。這種靈活性允許內容提供商和零售商通過各種服務方式為中間或最終用戶提供內容,并且允許用戶購買或許可內容,回放內容,并且把內容記錄在各種兼容播放器設備上。
B.系統功能部件現在轉到圖1,其中示出了一個圖解基于本發明的安全數字內容電子分發系統100的整體概念的模塊圖。安全數字內容電子分發系統100具有若干包含一個點到點解決方案的商業要素,其中包含內容提供商101或數字內容所有者,電子數字內容商店103,中間市場合伙人(未示出),認證中心105,內容駐留站點111,基礎設施107和最終用戶設備109。每個這樣的商業要素使用安全數字內容電子分發系統100的各種部件。根據其具體所屬的電子內容113分發,這些商業要素和系統部件的高層描述如下所述。
1.內容提供商101
內容提供商101或內容所有者是原始內容113的所有者和/或被授權封裝進一步分發的獨立內容113的分發人。內容提供商101可以直接使用其權利或向電子數字內容商店103或中間市場合伙人(未示出)許可內容113,而電子數字內容商店或中間市場合伙人通常以涉及電子商務收入的內容使用支付作為回付。內容提供商101的例子包含Sony,Time-Wamer,MTV,IBM,Microsoft,Turner,Fox等等。
為了準備其用于分發的內容113和相關數據,內容提供商101使用作為安全數字內容電子分發系統100的一部分來提供的工具。當內容113通過內容113準備和封裝的各個步驟時,一個工作流程管理器工具154調度處理內容113并且跟蹤內容113以便保持高質量保證。在本文件的各個地方術語元數據被用來表示與內容113相關的數據,并且在本實施例中不包含內容113自身。舉例來說,一首歌曲的元數據可以是一個歌曲標題或歌曲制作人信息,但不是歌曲錄音本身。內容113會包含錄音。元數據同化和輸入工具161被用來從內容提供商的數據庫160或內容提供商以規定的格式提供的數據中提取元數據(對于音樂例子內容113信息可以是CD標題,藝術家名稱,歌曲標題,CD插圖等等)并且對其進行封裝以便電子分發。元數據同化和輸入工具161也被用來輸入內容113的使用條件。使用條件中的數據可以包含復制限制規則,批發價格和任何被認為是必需的的商業規則。水印工具被用來在內容113中隱藏標識內容所有者,處理日期和其它有關數據的數據。對于一個內容113是音頻的實施例,一個音頻預處理機工具被用來調整動感并且/或者均衡內容113或其他音頻以得到最優壓縮質量,把內容113壓縮到期望的壓縮水平,并且對內容113進行加密。這樣做有利于跟上數字內容壓縮/編碼,加密和格式化方法的技術進步,從而允許內容提供商101隨著未來在市場中的發展利用最好的工具。
加密內容113,數字內容相關數據或元數據,和加密密鑰是被SC封裝器工具封裝在SC(如下所述)中,并且被存儲在一個內容駐留站點和/或促銷Web站點中以便電子分發。內容駐留站點可以駐留在內容提供商101那里,也可以駐留在包含電子數字內容商店103和中間市場合伙人(未示出)設施的多個位置中。由于內容113和密鑰(如下所述)均被加密并且封裝在SC中,電子數字內容商店103或任何其他駐留代理人在沒有從認證中心得到許可并且通知101的情況下不能直接訪問解密內容113。
2.電子數字內容商店103電子數字內容商店103是通過多種諸如內容113主題計劃或內容113的電子銷售規劃的服務或應用銷售內容113的實體。電子數字內容商店103管理其服務的設計,開發,經營,結算,銷售規劃,市場和銷售。在線電子數字內容商店103的例子是提供軟件電子下載的Web站點。
在其服務內部,電子數字內容商店103實現安全數字內容電子分發系統100的某些功能。電子數字內容商店103匯集來自內容提供商101的信息,在附加的SC中封裝內容和元數據,并且作為服務或應用的一部分向用戶或企業交付那些SC。電子數字內容商店103使用安全數字內容電子分發系統100提供的工具支持元數據抽出,輔助使用條件,SC封裝,和電子內容交易跟蹤。輔助使用條件數據可以包含諸如內容113進貨價格的零售業報價,按聽付費價格,復制授權與目標設備類型,或定時可用限制。
一旦一個電子數字內容商店103完成了來自一個最終用戶的電子內容113正當請求,電子數字內容商店103負責授權認證中心105向顧客發布內容113的解密密鑰。電子數字內容商店也授權下載含有內容113的SC。電子數字內容商店可以在其本地站點上選擇駐留含有數字內容的SC并且/或者利用另一個內容駐留站點的駐留和分發設施。
針對一個最終用戶在使用安全數字內容電子分發系統100時可能遇到的任何疑問或問題,電子數字內容商店可以為顧客提供服務,或者電子數字內容商店103可以將其顧客服務支持轉包給認證中心105。
3.中間市場合伙人(未示出)
在一個可選實施例中,安全數字內容電子分發系統100可用于向被稱作中間市場合伙人的其它企業安全地提供內容113。這些合伙人可以包含與數字內容相關的、提供分發內容113的非電子服務的、諸如電視臺或影像俱樂部,廣播電臺或唱片俱樂部的公司。這些合伙人也可以包含作為制造或銷售錄音工作的一部分對資料進行處理的其他委托團體,例如錄音工作室,復制人和制作人。這些中間市場合伙人需要從認證中心105得到許可以便對內容113進行解密。
4.認證中心105認證中心105為所有涉及在一個SC中被加密的內容113的銷售和/或受許可使用的交易提供許可授權和記錄。當認證中心105從一個中間或最終用戶接收一個針對內容113的解密密鑰的請求時,認證中心驗證請求中的信息的完整性和真實性;驗證請求得到一個電子數字內容商店或內容提供商101的授權;驗證所請求的使用遵守正如內容提供商101所定義的內容使用條件。一旦這些驗證被認可,認證中心105向發出請求和最終用戶發送被封裝在一個許可證SC中的內容113解密密鑰。以某種方式對密鑰進行加密以便只有授權用戶才可以對其進行檢索。如果最終用戶的請求不是可驗證的,完整的或經過授權的,則認證中心105拒絕對解密密鑰的請求。
認證中心105記錄所有交易并且可以立即,定期或以規定方式向諸如電子數字內容商店103和內容提供商101的責任方報告記錄的內容。這種報告是內容提供商101了解內容113的銷售和電子數字內容商店103獲得對其顧客的電子交付的審計跟蹤的手段。如果檢測到一個SC中的信息已經被破壞或不符合內容的使用條件,認證中心105也可以通知內容提供商101和/或電子數字內容商店103。認證中心105數據庫的交易記錄和存儲能力是為數據提煉和報表生成而構造的。
在另一個實施例中,認證中心105可以為交易提供客戶支持和諸如償還,傳輸故障和購買爭議的異常處理。認證中心105可以充當一個為版權管理和計量提供委托監督人的獨立實體。它按規定提供記帳和結算。電子認證中心的例子包含Visa/Mastercard提供的Secure-Bank.com和安全電子交易(SET)。在一個實施例中,認證中心105是最終用戶設備109可以訪問的Web站點。在另一個實施例中,認證中心105是電子數字內容商店103的一部分。
5.最終用戶設備109最終用戶設備109是任何包含一個符合安全數字內容電子分發系統100規范的最終用戶播放器應用程序195(以后描述)的播放器設備。這些設備可以包含PC機,機頂盒(IRD),和國際互聯網絡設備。可以通過軟件和/或用戶電子硬件實現最終用戶播放器應用程序195。除執行播放,記錄和庫管理功能之外,最終用戶播放器應用程序195執行SC處理以便允許在最終用戶設備109中進行版權管理。最終用戶設備109管理包含數字內容的SC的下載和存儲。從認證中心105請求并接收加密數字內容密鑰;每當數字內容被復制或播放時處理水印;管理根據數字內容的使用條件制造的副本(或刪除的副本)的數量;在允許的情況下復制到一個外部介質或便攜用戶設備。便攜用戶設備可以執行最終用戶播放器應用程序195功能的一個子集以便處理嵌入到水印中的內容使用條件。這里通篇使用術語最終用戶和最終用戶播放器應用程序195來表示使用最終用戶設備109或在最終用戶設備109上運行。
6.傳輸基礎設施107安全數字內容電子分發系統100獨立于連接電子數字內容商店103和最終用戶設備109的傳輸網絡。該系統支持諸如國際互聯網絡的點到點分發模型和諸如數字廣播電視的廣播分發模型。
即使相同的工具和應用程序被用來獲得,封裝和跟蹤通過各種傳輸基礎設施107進行的內容113交易,服務被交付給顧客的具體形式和方法可以根據所選擇的基礎設施和分發模型而發生改變。由于高帶寬基礎設施能夠以比低帶寬基礎設施更能被接受的響應時間交付高質量數字內容,被傳遞的內容113的質量發生改變。一個為點到點分發模型而設計的服務應用也可以適合于支持廣播分發模型。
C.系統使用不論是對用戶或企業,安全數字內容電子分發系統100允許向最終用戶設備109安全交付內容113的高質量電子副本,并且允許管制和跟蹤內容113的使用。
安全數字內容電子分發系統100可以被應用在各種利用新的和現有分發渠道的用戶和企業對企業服務中。每個具體的服務可以使用一個不同的財務模型,其中可以通過安全數字內容電子分發系統100的版權管理功能來執行上述財務模型。通過認證中心105的版權管理和最終用戶播放器應用程序195復制保護功能可以實現諸如批發或零售購買,按聽付費使用,訂購服務,有復制/無復制限制或重新分發的模型。
安全數字內容電子分發系統100允許電子數字內容商店103和中間市場合伙人在建立銷售內容113的服務時有許多靈活性。同時為內容提供商101提供保護和計量其數字資產的保證級別以便他們可以為內容113的許可得到適當的補償。Ⅱ.密碼學概念及其在安全數字內容電子分發系統中的應用安全數字內容電子分發系統100中的許可控制的基礎是對密碼學的使用。本節介紹本發明的基本密碼學技術。公開密鑰加密,對稱密鑰加密,數字簽名,數字水印和數字證書的使用是已知的。
A.對稱算法在安全數字內容電子分發系統100中,內容提供商101利用對稱算法對內容進行加密。由于使用相同密鑰對數據進行加密和解密,所以上述算法被稱作對稱算法。數據發送方和消息接收方必須共享密鑰。在這里共享密鑰被稱作對稱密鑰。安全數字內容電子分發系統100體系結構獨立于為一個具體實現而選擇的特定對稱算法。
常用的對稱算法是DES,RC2和RC4。DES和RC2是分組密碼。分組密碼每次使用一個數據位分組對數據進行加密。DES是一個美國政府官方加密標準,具有64位分組長度并且使用56位密鑰。三重DES通常被用來增加由純DES實現的安全強度。RSA數據安全公司設計了RC2。RC2使用變長密鑰密碼并且具有64位的分組長度。同樣由RSA設計的RC4是一個變長密鑰流式密碼。流式密碼每次處理一個單獨的數據位。RSA數據安全公司聲明RC4每個輸出字節要求8到16個機器操作。
IBM設計了一個被稱作SEAL的快速算法。SEAL是一個使用可變長度密鑰而且已經針對32位處理器進行優化的流式算法。SEAL針對每個數據字節大約需要5個初級機器指令。在所使用的160位密鑰已經被預處理成內部表的情況下,一個50兆赫,基于486的計算機以7.2兆字節/秒的速度處理SEAL密碼。
Microsoft在其CryptoAPI文件的概述中報告了加密性能基準測試程序的結果。這些結果是通過一個使用Microsoft的CryptoAPI,運行在一臺120兆赫,基于Pentium的,操作系統為Windows NT4.0的計算機上的應用程序獲得的。
B.公開密鑰算法在安全數字內容電子分發系統100中,使用公開密鑰對對稱密鑰和其他小的數據塊進行加密。公開密鑰算法使用兩個密鑰。這兩個密鑰被數學相關以便用一個密鑰加密的數據只能被另一個密鑰解密。密鑰的所有者使一個密鑰保密(私有密鑰)并且公開分發第二個密鑰(公開密鑰)。
為了使用公開密鑰算法保證機密消息傳輸的安全性,必須使用接收方的公開密鑰對消息進行加密。只有具有相關私有密鑰的接收方才可以對消息進行解密。公開密鑰算法也被用來產生數字簽名。私有密鑰被用于此目的。下列章節提供有關數字簽名的信息。
最普遍使用的公開密鑰算法是RSA公開密鑰密碼。該算法已經變成事實上的業界公開密鑰標準。適用于加密和數字簽名的其他算法是ElGamal和Rabin。RSA是一個變長密鑰密碼。
對稱密鑰算法比公開密鑰算法更加快速。在軟件實現中,DES通常比RSA至少快100倍。因此,RSA不被用于加密成批數據。RSA數據安全公司報道說,在一臺90兆赫Pentium機器上,RSA數據安全公司的工具包BSAFE 3.0對于具有512-位模數的私有密鑰操作有21.6千位/秒的吞吐量,并且對于具有1024-位模數的私有密鑰操作有7.4千位/秒的吞吐量。
C.數字簽名在安全數字內容電子分發系統100中,SC的發行者通過對其進行數字簽名來保護SC的完整性。通常,為了產生一個消息的數字簽名,一個消息所有者首先計算消息摘要(下面定義)并且接著使用所有者的私有密鑰對消息摘要進行加密。用其簽名分發消息。通過首先使用消息所有者的公開密鑰解密簽名以恢復出消息摘要,該消息的任何接收方可以驗證數字簽名。然后,接收方計算接收消息的摘要并且把它與恢復出的摘要相比較。如果在分發期間消息沒有被改變,則計算出的摘要和恢復出的摘要必須相等。
在安全數字內容電子分發系統100中,由于SC包含若干個數據片段,所以針對各個片段分別計算一個摘要并且針對串聯起來的各片段摘要計算出一個概括摘要。使用SC的發行者的私有密鑰對概括摘要進行加密。加密的概括摘要是發行者對SC的數字簽名。片段摘要和數字簽名被包含在SC本體內。SC的接收方依靠接收的數字簽名和片段摘要可以驗證SC及其各個片段的完整性。
一個單向散列算法被用來計算消息摘要。散列算法得到一個變長輸入消息并且把它轉換成一個定長字符串,即消息摘要。單向散列算法只在一個方向進行操作。即,易于計算一個輸入消息的摘要,但是難以(計算上不可行的)根據其摘要產生輸入消息。由于單向散列函數的性質,可以把消息摘要當作消息的指紋。
更通用的單向散列函數是RSA數據安全公司的MD5和美國國家技術與標準協會(NITS)設計的SHA。
D.數字證書數字證書被用來鑒定或驗證發送數字簽名消息的個人或實體的身份。數字證書是一個把公開密鑰限制到一個個人或實體的認證機構發布的數字文件。證書包含公開密鑰,個人或實體的姓名,截止日期,認證機構名稱和其他信息。證書也包含認證機構的數字簽名。
當一個實體(或個人)發送一個用其私有密鑰簽名并且帶有其數字證書的消息時,消息的接收方使用證書中的實體名稱判定是否接受該消息。
在安全數字內容電子分發系統100中,除了最終用戶設備109發布的SC之外,每個SC均包含SC的建立者的證書。由于許多最終用戶不擔心獲得或擁有非善意認證機構發布的證書,所以最終用戶設備109不需要在其SC中包含證書。在安全數字內容電子分發系統100中,認證中心105有向電子數字內容商店103發行證書的選擇權。這允許最終用戶設備109獨立驗證電子數字內容商店103已經被安全數字內容電子分發系統100授權。
E.SC圖示指南本文使用一個圖示SC的圖例,該圖例示出了加密片段,非加密片段,加密密鑰和證書。現在參照圖2,其中示出了SC200的一個圖例。下列符號被用于SC圖例。密鑰201是一個公開或私有密鑰。認證中心的密鑰,例如CLRNGH的齒部指出密鑰所有者。鑰柄內的PB指出是一個公開密鑰,因而密鑰201是一個認證中心公開密鑰。鑰柄內部的PV指出是一個私有密鑰。菱形是一個最終用戶數字簽名202。在下表中各個字首指示哪個私有密鑰被用來產生在EU中是最終用戶數字簽名的簽名。對稱密鑰203被用來加密內容。一個加密對稱密鑰對象204包括一個用CLRNGH的PB加密的對稱密鑰203。矩形的頂端邊框上的密鑰是被用于對象的加密的密鑰。矩形內部的符號或正文指示加密對象(在這種情況下是一個對稱密鑰)。其中示出了另一個加密對象,在這個例子是一個交易ID加密對象205。并且用于內容許可管理的使用條件206如下所述。SC200包括使用條件206,交易206加密對象205,一個應用ID加密對象207和加密對稱密鑰對象204,所有對象均用一個最終用戶數字簽名202簽名。
下面的列表示出了標識SC的簽字人的字首。
F.安全容器加密的例子以下列表和圖表提供了對被用來產生信息并且從SC恢復信息的加密與解密處理的概述。在這個處理概述中產生并解密的SC是一個通用SC。它不代表任何被用于安全數字內容電子分發系統100中的版權管理的特定SC類型。處理包括在圖3中描述的用于加密過程的步驟。
圖3的加密過程的處理流程步驟處理301 發送方產生一個隨機對稱密鑰并且用其對內容進行加密。
302 發送方通過一個散列算法處理加密內容以產生內容摘要。
303 發送方使用接收方的公開密鑰加密對稱密鑰。PB
RECPNT是指接收方的公開密鑰。
304 發送方通過步驟2中使用的相同散列算法處理加密對稱密鑰以產生對稱密鑰摘要。
305 發送方通過步驟2中使用的相同散列算法聯接內容摘要和對稱密鑰摘要以產生SC摘要。
306 發送方用發送方的私有密鑰加密SC摘要以產生SC的數字簽名。PV SENDER是指發送方的私有密鑰。
307B發送方產生一個SC文件,該文件包含加密內容,加密對稱密鑰,內容摘要,對稱密鑰摘要,發送方的證書,和SC簽名。
307A發送方必須在開始安全通信之前從一個認證機構獲得證書。認證機構在證書內包含發送方的公開密鑰,發送方的名稱并且對其簽名。PV CAUTHR是指認證機構的私有密鑰。發送方向接收方發送SC。
圖3的解密過程的處理流程步驟 處理408 接收方接收SC并且分離其各個片段。
409 接收方通過用認證機構的公開密鑰對其解密來驗證發送方的證書中的數字簽名。如果證書的數字簽名有效,接收方從證書獲得發送方的公開密鑰。
410 接收方使用發送方的公開密鑰解密SC數字簽名。這樣就恢復出SC摘要。PB SENDER是指發送方的公開密鑰。
411 接收方通過發送方計算SC摘要時使用的相同散列算法聯接接收的內容摘要和加密密鑰摘要。
412 接收方比較計算的SC摘要和根據發送方的數字簽名恢復出的SC摘要。如果它們相同,接收方證實接收的摘要沒有被改變并且繼續解密過程。如果它們不相同,
接收方丟棄SC并且通知發送方。
413接收方通過步驟411中使用的相同散列算法加密對稱密鑰以計算對稱密鑰摘要。
414接收方比較計算的對稱密鑰摘要和通過SC接收的對稱密鑰摘要。如果相同,接收方知道加密對稱密鑰沒有改變。接收方繼續解密處理。如果不同,接收方丟棄SC并且通知發送方。
415接收方通過步驟411中使用的相同散列算法加密內容以計算內容摘要。
416接收方比較計算的內容摘要和通過SC接收的內容摘要。如果相同,接收方知道加密內容沒有改變。接收方繼續解密處理。即使不同,接收方丟棄SC并且通知發送方。
417接收方使用接收方的私有密鑰加密對稱密鑰。這樣就恢復出對稱密鑰。PV RECPNT是指接收方的私有密鑰。
418接收方使用對稱密鑰解密加密內容。這樣就恢復出內容。
Ⅲ.安全數字內容電子分發系統流程安全電子數字內容分發系統100由被系統的不同參與方使用的若干部件組成。這些參與方包含內容提供商101,電子數字內容商店103,使用最終用戶設備109的最終用戶和認證中心105。一個高層系統流程被用來概述安全數字內容電子分發系統100。以下概述的這個流程在內容通過系統100時跟蹤內容。另外還概述了被參與方用于實施針對購買,開啟和內容113使用的交易的步驟。在系統流程中做出的某些假定包含●這是一個針對數字內容服務(到一個PC的點到點接口)的系統流程。
●內容提供商101以PCM無壓縮格式提交音頻數字內容(作為一個音樂音頻例子)。
●內容提供商把元數據放在一個ODBC兼容的數據庫中,或者內容提供商101直接把數據輸入到內容信息處理子系統中,或者已經通過規定的ASCII碼文件格式提供了數據。
●電子數字內容商店進行財務結算。
●內容113被駐留在一個單獨的內容駐留站點111上。
本領域的技術人員應當理解,為了適應諸如音樂,影像與節目,和電子分發系統廣播的本質,可以改變這些假定。
在圖1中圖解了下列處理流程。
步驟 處理121一個無壓縮PCM音頻文件被內容提供商101當做內容113來提供。其文件名和內容提供商101的內容113的唯一標識符一起被輸入到工作流程管理器154工具。
122內容信息處理子系統使用內容提供商101的內容113的唯一標識符和數據庫映射模板提供的信息從內容提供商的數據庫160捕捉元數據。
123工作流程管理器工具154被用來引導內容通過內容提供商101的獲取和準備處理。該工具還可以被用來在任何時候在系統內跟蹤任何內容片段的狀況。
124內容113的使用條件被輸入到內容信息處理子系統,該操作可以人工或自動實現。這個數據包含復制限制規則和任何其他被認為必需的商業規則。所有元數據輸入可以和數據的音頻處理并行實現。
125水印工具被用來在內容113中隱藏內容提供商101認為有必要標識內容的數據。其中可以包含內容提供商101規定的捕捉內容的時間,內容的來源(該內容提供商101)或任何其他信息。
● 內容處理工具125對內容113進行支持不同壓縮水平所必需的均衡,動態調整和重新采樣處理。
●使用內容處理工具125把內容113壓縮到期望的壓縮水平。接著可以播放內容113以驗證壓縮產生了所要求的內容113質量等級。在必要時可以隨意多次進行均衡,動態調整,壓縮和重放質量檢查。
●SC封裝器用一個對稱密鑰對內容113及其元數據的一個子集進行加密。接著這個工具使用認證中心的公開密鑰對密鑰加密以產生一個加密對稱密鑰。由于唯一可以對其進行解密的實體是認證中心105,所以該密鑰可以被發送到不考慮內容113安全的任何地方。
126 加密對稱密鑰,元數據和其他關于內容113的信息被SC封裝器工具152封裝到一個元數據SC中。
127 加密內容113和元數據接著被封裝到一個內容SC。就此完成了對內容113和元數據的處理。
128 接著使用內容支付工具(未示出)把元數據SC發送給內容促銷Web站點156。
129 內容支付工具向內容駐留站點111發送內容SC。內容駐留站點可以駐留在內容提供商101,認證中心105或專用于內容駐留的特殊位置上。針對該站點的URL是被加到元數據SC中的元數據的一部分。
130 內容促銷Web站點156通知電子數字內容商店(美國)103被加到系統100中的新內容113。
131 通過使用內容獲取工具,電子數字內容商店103接著下載對應于他們希望銷售的內容113的元數據SC。
132 電子數字內容商店(美國)103會使用內容獲取工具從元數據SC中抽取任何他們希望用來在其Web站點上推銷內容113的數據。對這個元數據片段的訪問是安全的,并且在必要時可以對其收費。
133 使用內容獲取工具輸入特定于這個電子數字內容商店
103的內容113使用條件。這些使用條件包含針對內容113的不同壓縮水平的零售價和復制/播放限制。
134電子數字內容商店(美國)103的特定使用條件和初始元數據SC被SC封裝器工具封裝到一個報價SC中。
135在更新電子數字內容商店103 Web站點之后,內容113可被訪問Web的最終用戶使用。
136當一個最終用戶發現他們想要買的內容113時,他們點擊一個諸如音樂圖標的內容圖標,并且該項目被增加到他/她的,由電子數字內容商店103維護的購物車內。
當最終用戶完成購物時,他們向電子數字內容商店103提交采購申請以便處理。
137電子數字內容商店103接著與信用卡結算組織交互以便通過與他們平常做生意相同的方式劃出存款。
138一旦電子數字內容商店103接收到來自信用卡結算組織的信用卡授權號碼,便將這個號碼存儲到一個數據庫中并且使用SC封裝器工具建立一個交易SC。這個交易SC包含最終用戶已經購買的內容113的所有報價SC,一個可以被回送到電子數字內容商店103的交易ID,標識購買歌曲的最終用戶,壓縮水平,使用條件和價格表的信息。
139這個交易SC接著被發送到最終用戶設備109。
140當該交易SC到達最終用戶設備109時,它起動打開交易SC并且確認最終用戶的購買的最終用戶播放器應用程序195。接著最終用戶播放器應用程序195打開單個的報價SC并且在一個可選實施例中,可以把一個下載時間估測通知到用戶。接著請求用戶指定希望在何時下載內容113。
141根據最終用戶請求的下載時間,最終用戶播放器應用程序195會醒來并且通過建立一個尤其是包含內容113的加密對稱密鑰,交易ID和最終用戶信息的訂購SC來開始啟動下載處理。
142 這個訂購SC接著被發送到認證中心105以便處理。
143 認證中心105接收訂購SC,打開它并且驗證沒有數據被篡改。認證中心105驗證最終用戶購買的使用條件。這些使用條件必須符合內容提供商101規定的使用條件。
這個信息被記錄在一個數據庫中。
144 一旦完成全部的檢查,使用認證中心105的私有密鑰對加密對稱密鑰進行解密。接著使用最終用戶的公開密鑰對對稱密鑰進行加密。接著SC封裝器把新的加密對稱密鑰封裝到一個許可證SC中。
145 許可證SC接著被發送到最終用戶設備。
146 當在最終用戶設備109上接收到許可證SC時,它被存儲在存儲器中直到內容SC被下載。
147 最終用戶設備109向內容駐留設施111請求發送購買的內容113的對應許可證SC。
148 內容113被發給最終用戶設備109。當接收到時,最終用戶設備109使用對稱密鑰對內容113進行解密。
Ⅳ.版權管理體系結構模型A.體系結構層次功能圖5是一個圖解安全數字內容電子分發系統100的版權管理體系結構的模塊圖。在體系結構上,用四個層次表示安全數字內容電子分發系統100許可證控制層501,內容識別層503,內容使用控制層505,和內容格式化層507。在本章節中描述各個層次的總體功能目標和各個層次的個別關鍵功能。每個層次中的功能顯然獨立于其它層次中的功能。在很大限度內,一個層次的功能可以被類似的功能代替并且不影響其它層次的功能。明顯地,需要一個層次的輸出滿足相鄰層可接受的的格式和語義要求。
許可證控制層501保證●在分發期間防止數字內容被非法攔截和竄改;●內容113發源于一個合法的內容所有者并且被一個許可分發人,例如電子數字內容商店103分發;●數字內容購買人有一個被正常許可的應用程序;●購買人在內容113的一個副本可用于購買人或最終用戶之前向分發人付費;和●保留一個交易記錄以用于報告。
內容識別層503允許驗證數字內容的版權和一致性。內容的版權信息和內容購買人的身份允許對內容113的任何授權或非授權副本進行來源跟蹤。因而,內容識別層503提供一個抵制盜版的手段。
內容使用控制層505保證內容113的副本根據商店的使用條件519被用于該購買人的設備。商店使用條件519可以指定內容113的允許播放和本地副本的數量,并且指定內容113是否可以被記錄到一個外部便攜設備上。內容使用控制層505中的功能跟蹤內容的復制/播放使用并且更新復制/播放狀態。
內容格式化層507允許把內容113從其在內容所有者設施中的自有表示形式經格式轉換變成符合服務功能和安全數字內容電子分發系統100的分發手段要求的形式。轉換處理可以包含壓縮編碼及其相關的預處理,例如頻率均衡和振幅動態調整。對于作為音頻的內容113,在購買人一邊,也需要對接收的內容113進行處理以實現一種適合于重放或傳送到便攜設備的格式。
B.功能分割和流程圖5中示出了版權管理體系結構模型,該模型圖解了從體系結構層次到構成安全數字內容電子分發系統100和各個層次中的關鍵功能的操作部件的映射。
1.內容格式化層507與內容格式化層507相關的一般功能是內容提供商101上的內容預處理502和壓縮511,最終用戶設備109上的內容去擾碼513和解壓縮515。對預處理的要求和特定功能的例子如上所述。內容壓縮511被用來減少內容113的文件大小及其傳輸時間。任何適合于內容113的類型和傳輸介質的壓縮算法均可被用于安全數字內容電子分發系統100。對于音樂,MPEG 1/2/4,Dolby AC-2和-3,Sony自適應變換編碼(ATRAC),和低-位速率算法是某些通常被使用的壓縮算法。內容113以壓縮形式被存儲在最終用戶設備109中以減少存儲容量要求。在活動重放期間對其進行解壓縮。在活動重放期間也進行去擾碼。以后在討論內容使用控制層505期間將描述擾碼的目的和類型。
2.內容使用控制層505內容使用控制層505允許在最終用戶設備109上使用針對內容113的使用制定的規格和條件或限制。條件可以指定內容113的允許播放數量,是否允許對內容113進行第二代復制,第二代復制的數量,以及是否可以把內容113復制到一個外部便攜設備上。內容提供商101設置允許使用條件517并且通過一個SC(參見許可證控制層501章節)發送到電子數字內容商店103。只要不使內容提供商101設置的初始條件無效,電子數字內容商店103可以增加或縮小使用條件517。電子數字內容商店103接著向最終用戶設備109和認證中心105發送全部的商店使用條件519(通過一個SC)。認證中心105在授權把內容113發布到一個最終用戶設備109之前進行使用條件驗證521。
內容使用控制層505在最終用戶設備109中執行內容使用條件517。第一,當在最終用戶設備109中從內容識別層503接收到內容113副本時,用一個表示初始復制/播放許可的復制/播放代碼523標記內容113。第二,播放器應用程序195在把內容113存儲在最終用戶設備109之前對內容113進行加密擾碼。播放器應用程序195針對每個內容項目產生一個擾碼密鑰,密鑰被加密并且被隱藏在最終用戶設備109中。接著,每當最終用戶設備109為了復制或播放訪問內容113時,最終用戶設備109在允許對內容113進行去擾碼和執行播放或復制之前驗證復制/播放代碼。最終用戶設備109也適當更新內容113的正本和任何新的次代副本中的復制/播放代碼。在已經被壓縮的內容113上執行復制/播放編碼。即,不必在嵌入復制/播放代碼之前解壓縮內容113。
最終用戶設備109使用一個許可證水印527把復制/播放代碼嵌入到內容113內部。只有知道嵌入算法和相關的擾碼密鑰的最終用戶播放器應用程序195才能夠讀取或修改嵌入的數據。數據不能被人看見或聽到;即,數據沒有在內容113中產生感知退化。由于水印在包括內容處理,數據壓縮,D/A與A/D轉換,和正常內容處理引入的信號惡化的若干步驟中始終存在,水印和內容113一起存在于任何表示形式中,其中包含模擬表示。在一個可選實施例中,最終用戶播放器應用程序195使用安全地存儲使用條件519代替使用許可證水印527把復制/播放代碼嵌入到內容113中。
3.內容識別層503作為內容識別層503的一部分,內容提供商101也使用一個許可證水印527把諸如內容標識符,內容所有者和其他信息的數據嵌入到內容113中,其中其他信息可以是出版日期和地理分布區域。這個水印在這里被稱作版權水印529。在接收時,最終用戶設備109使用內容購買人名稱,交易ID 535(參見下面的許可證控制層501章節),和諸如許可證日期和使用條件517的其他信息對內容113的副本加水印。這個水印在這里被稱作許可證水印529。以授權方式或非授權方式獲得的,經過保持內容質量的音頻處理的內容113的任何副本均攜帶有版權和許可證水印。內容識別層503阻止了盜版。
4.許可證控制層501許可證控制層501防止內容113受到未被授權的攔截并且保證內容只以逐個的方式被發布到一個具有經過適當許可的最終用戶設備109并且與一個授權電子數字內容商店103成功完成許可證購買交易的最終用戶。許可證控制層501通過雙重加密531保護內容113。使用內容提供商101產生的一個加密對稱密鑰對內容113進行加密,并且使用認證中心的公開密鑰621對對稱密鑰進行加密。只有認證中心105可以恢復對稱密鑰。
許可控制與認證中心105一起被設計成“受托方”。在發出對許可證請求537許可,(即發布內容113的對稱密鑰到一個最終用戶設備109)之前,認證中心105驗證交易541和許可證授權543是完整的和可信的,電子數字內容商店103具有來自安全數字內容電子分發系統100的電子內容113銷售授權,并且最終用戶具有適當許可的應用程序。審計/報告545允許產生報告并且與安全電子數字內容分發系統100中的其他授權方共享許可交易信息。
通過SC處理533實現許可控制。SC被用來在系統操作部件之間分發加密內容113和信息(下面是更多有關SC詳細結構的章節)。SC是一個使用密碼加密,數字簽名和數字證書防止對電子信息或內容113進行未被授權的攔截或修改的信息的加密載體。它也允許對電子數據進行真實性驗證。
許可控制需要內容提供商101,電子數字內容商店103和認證中心105具有來自規范的證書機構,被用來鑒定那些部件的真實密碼數字證書。不要求最終用戶設備109具有數字證書。
C.內容分發和許可控制圖6是圖解適用于圖5的許可證控制層和內容分發和許可控制整體概念模塊圖。該圖描述了電子數字內容商店103,最終用戶設備109和認證中心105通過國際互聯網絡互連并且在這些部件之間使用單路(點到點)傳輸的情況。也可以通過國際互聯網絡或其他網絡在內容提供商101和電子數字內容商店103之間進行通信。假定最終用戶設備109和電子數字內容商店103之間的內容購買商業交易基于標準國際互聯網絡協議。作為基于Web的交互的一部分,最終用戶選擇要購買的內容113,提供個人和財務信息,并且同意購買條件。電子數字內容商店103可以從一個使用諸如SET的協議的受讓機構獲得付款授權。
在圖6中還假定電子數字內容商店103已經根據標準Web協議把最終用戶播放器應用程序195下載到最終用戶設備109。該體系結構需要電子數字內容商店103為下載的播放器應用程序195分配一個唯一的應用ID并且最終用戶設備109加以存儲以用于以后的應用許可證驗證(見下文)。
從內容提供商101開始整個許可流程。內容提供商101使用一個產生對稱密鑰對內容113加密,并且使用認證中心105的公開密鑰621對對稱密鑰623加密。在一個可選實施例中,非本地產生的對稱密鑰可以被從認證中心105發送到內容提供商101。內容提供商101圍繞加密內容113產生一個內容SC,并且圍繞加密對稱密鑰623,商店使用條件519和其他內容113和信息產生一個元數據SC620。每個內容113對象均有一個元數據SC620和一個內容SC630。內容113對象可以是一個相同歌曲的壓縮水平,一個專輯上的各個歌曲,或是整個專輯。對于各個內容113對象,元數據SC620也攜帶與內容使用控制層505相關的商店使用條件519。
內容提供商101把元數據SC620分發到一或多個電子數字內容商店103(步驟601)并且把內容SC630分發到一或多個內容駐留站點(步驟602)。各個電子數字內容商店103,依次產生一個報價SC641。報價SC641通常攜帶大部分與元數據SC620相同的信息,其中包含內容提供商的數字簽名624和證書(內容提供商101的未示出)。如上所述,電子數字內容商店103可以增加或縮小被內容提供商101初始定義的商店使用條件519(由控制使用層處理)。可選地,用內容提供商101的一個數字簽名624對內容SC630和/或元數據SC620進行簽名。
在完成最終用戶設備109和電子數字內容商店103之間的內容購買交易(步驟603)之后,電子數字內容商店103產生一個交易SC640并且傳送到最終用戶設備109。交易SC640包含一個唯一的交易ID535,購買人名稱(即最終用戶的名稱)(未示出),最終用戶設備109的公開密鑰661和與購買內容113相關的報價SC641。圖6中的交易數據642表示交易ID 535和最終用戶名稱(未示出)。使用認證中心105的公開密鑰621對交易數據642加密。可選地,使用電子數字內容商店103的數字簽名643對交易SC640進行簽名。
在接收交易SC640(和其中包含的報價SC641)時,在最終用戶設備109上運行的最終用戶播放器應用程序195通過一個訂購SC650從認證中心105請求許可證授權(步驟605)。訂購SC650包含來自報價SC641的加密對稱密鑰623和商店使用條件519,來自交易SC640的加密交易數據642,和來自最終用戶設備109的加密應用ID 551。在另一個實施例中,在完成最終用戶設備109和電子數字內容商店103之間的內容購買交易(步驟603)之后,電子數字內容商店103產生一個交易SC640并且傳送到最終用戶設備109(步驟604)。交易SC640包含一個唯一的交易ID 535,購買人名稱(即最終用戶的名稱)(未示出),最終用戶設備109的公開密鑰661和與購買內容113相關的報價SC641。圖6中的交易數據642表示交易ID 535和最終用戶名稱(未示出)。使用認證中心105的公開密鑰621對交易數據642加密。可選地,使用電子數字內容商店103的數字簽名643對交易SC 640進行簽名。
在接收交易SC640(和其中包含的報價SC641)時,在最終用戶設備109上運行的最終用戶播放器應用程序195通過一個訂購SC650從認證中心105請求許可證授權(步驟605)。訂購SC650包含來自報價SC641的加密對稱密鑰623和商店使用條件519,來自交易SC640的加密交易數據642,和來自最終用戶設備109的加密應用ID 551。在另一個實施例中,使用最終用戶設備109的一個數字簽名652對訂購SC650進行簽名。
在從最終用戶設備109接收訂購SC650時,認證中心105驗證1.電子數字內容商店103從安全數字內容電子分發系統100(存在于認證中心105的數據庫160中)得到授權;2.訂購SC650沒有被改變;3.交易數據642和對稱密鑰623是完整和可信的;4.最終用戶設備109購買的電子商店使用條件519與內容提供商101設置的使用條件517一致;和5.應用ID 551具有一個有效結構而且應用ID是由一個經授權的電子數字內容商店103提供的。
如果驗證成功,認證中心105解密對稱密鑰623和交易數據642,建立并且向最終用戶設備109傳遞許可證SC660(步驟606)。許可證SC660攜帶對稱密鑰623和交易數據642,使用最終用戶設備109的公開密鑰661對二者加密。如果驗證不成功,則認證中心105拒絕許可最終用戶設備109并且通知最終用戶設備109。認證中心105還立即把這個驗證失敗通知到電子數字內容商店103。在一個可選實施例中,認證中心105用其數字簽名663對許可證SC660簽名。
在接收許可證SC660之后,最終用戶設備109解密對稱密鑰623和以前從認證中心105接收的交易數據642并且從一個內容駐留站點111請求內容SC630(步驟607)。當內容SC 630到達時(步驟608),最終用戶設備109使用對稱密鑰623解密內容113(步驟609),并且把內容113和交易數據642傳送到其它層次以便進行如以前針對圖5所描述的許可證加水印,復制/播放編碼,擾碼和進一步的內容113處理。
最終,認證中心105定期向內容提供商101和電子數字內容商店103發送摘要交易報告以便進行審計和跟蹤(步驟610)。
Ⅴ.安全容器結構A.通用結構安全容器(SC)是一個由若干片段組成的結構,這些片段共同定義了一個內容113單元或交易的一部分,并且還定義了諸如使用條件,元數據和加密方法的有關信息。以可以驗證信息的完整性,完備性和真實性的方式設計SC。SC中的某些信息可以被加密以便只能在獲得正當授權之后才可以對其進行訪問。
SC包含至少一個材料清單(BOM)片段,該片段具有關于SC和SC中包含的各個片段的信息記錄。針對每個片段使用一個諸如MD-5的散列算法計算一個消息摘要并且把它包含在該片段的BOM記錄中。各片段的摘要被串聯在一起,根據它們計算另一個摘要并且使用產生SC的實體的私有密鑰對其加密以產生一個數字簽名。接收SC的方面可以使用數字簽名驗證所有摘要并且驗證SC及其所有片段的完整性和完全性。
下列信息可以作為記錄和各個片段的記錄一起被包含在BOM中。SC的類型確定需要包含的記錄●SC版本
●SC ID●SC的類型(例如報價,訂單,交易,內容,元數據或促銷和許可證)●SC的出版者●產生SC的日期●SC的截止日期●認證中心的URL●用于所包含的片段的摘要算法(缺省為MD-5)的描述●用于數字簽名加密的算法(缺省為RSA)的描述●數字簽名(被包含片段的所有串聯摘要的加密摘要)SC可以包含不止一個BOM。例如,一個報價SC641由包含其BOM的初始元數據SC620片段,電子數字內容商店103加入的附加信息和一個新的BOM構成。一個針對元數據SC620 BOM的記錄被包含在報價SC641 BOM中。這個記錄包含一個針對元數據SC620的,可用于驗證其完整性的摘要,因此還可以使用存儲在元數據SC620 BOM中的片段摘要值驗證元數據SC620包含的片段的完整性。元數據SC620中沒有任何片段在針對報價SC641產生的新BOM中有記錄。只有電子數字內容商店103和元數據SC620 BOM加入的片段在新BOM中有記錄。
SC也可以包含一個密鑰描述片段。密鑰描述片段包含含有下列關于SC中的加密片段的信息的記錄●加密片段名稱。
●當某片段被解密時用于該片段的名稱。
●被用來加密該片段的加密算法。
●一個指示被用來加密該片段的公開加密密鑰的密鑰識別符或一個在解密時被用來解密加密片段的加密對稱密鑰。
●被用來加密對稱密鑰的加密算法。這個字段只在密鑰描述片段中的記錄包含一個被用來加密被加密片段的加密對稱密鑰時才會出現。
●一個被用來加密對稱密鑰的公開加密密鑰的密鑰識別符。這個字段只在密鑰描述片段中的記錄包含一個加密對稱密鑰和被用來對被加密片段進行加密的對稱密鑰的加密算法標識符時才會出現。
如果SC不包含任何加密片段,則沒有密鑰描述片段。
B.版權管理語言語法和語義版權管理語言由參數構成,可以為參數分配數值以便定義對一個最終用戶在購買內容113之后對內容113的使用的限制。對內容113的使用的限制就是使用條件517。各個內容提供商101指定其各個內容113項目的使用條件517。電子數字內容商店103解釋元數據SC 620中的使用條件517并且使用該信息提供他們希望為其顧客提供的選項并且增加內容113的零售購買信息。在一個最終用戶選擇一個內容113購買項目之后,最終用戶設備109請求根據商店使用條件519對內容113授權。在認證中心105向最終用戶發送一個許可證SC 660之前,認證中心105驗證所請求的商店使用條件519與內容提供商101通過元數據SC 620規定的允許使用條件517一致。
當最終用戶設備109接收被購買的內容113時,使用水印工具把商店使用條件519編碼成內容113,或者把商店使用條件519編碼到安全存儲使用條件519中。運行在最終用戶設備109上的最終用戶播放器應用程序195確保執行被編碼到內容113中的商店使用條件519。
下面是針對一個內容113是音樂的實施例的商店使用條件519的例子●歌曲是可錄音的。
●歌曲可以被播放n次。
C.安全容器流程和處理的概述元數據620被內容提供商101建立并且被用來定義諸如歌曲的內容113項目。因為內容113的長度對于電子數字內容商店103和最終用戶有效地下載只用于訪問描述性元數據的容器而言通常顯得過大,所以內容113自身不被包含在這些SC中。取而代之的是,SC包含一個指向內容113的外部URL(統一資源定位碼)。在歌曲內容113的情況下,SC還包含提供關于內容113和任何其他諸如針對音樂,C D封面圖畫和/或數字音頻選錄的關聯數據的描述性信息的元數據。
電子數字內容商店103下載元數據SC620,為此它們得到授權并且建立報價SC641。簡而言之,一個報價SC641由元數據SC620的某些片段和BOM以及電子數字內容商店103包含的附加信息構成。當建立報價SC641時產生一個針對報價SC641的新BOM。電子數字內容商店103還通過從元數據SC620中提取元數據信息來使用元數據SC620在其Web站點上建立HTML頁面,該頁面向最終用戶提供關于內容113的描述,使他們能夠購買內容113。
被電子數字內容商店103加到報價SC641中的信息通常縮減了在諸如商店標志的圖形映像文件和商店Web站點的URL的元數據SC620和促銷數據中指定的使用條件517的選擇范圍。元數據SC620中的一個報價SC641模板指示在報價SC641中可以被電子數字內容商店103忽略的信息,電子數字內容商店103需要什么附加信息和在嵌入的元數據SC620中保留哪些片段。
當一個最終用戶決定從一個電子數字內容商店103購買內容113時,報價SC641被包含在一個交易SC640中。電子數字內容商店103建立一個交易SC640,包含針對被購買的各個內容113項目的報價SC641并且把它發送到最終用戶設備109。最終用戶設備109接收交易SC640并且驗證交易SC640和所包含的報價SC641的完整性。
最終用戶設備109針對被購買的各個內容113項目建立一個訂購SC650。包含來自報價SC641,交易SC640和最終用戶設備109的配置文件的信息。訂購SC650被一次一個發送到認證中心105。在認證中心105 URL中訂購SC650被當作一個記錄包含在元數據SC620的BOM中,并且還被包含在報價SC641。
認證中心105驗證和處理訂購SC650以便向最終用戶設備109提供要求許可證水印527并訪問購買內容113所需的所有信息。認證中心105的一個功能是解密對稱密鑰623,其中需要使用對稱密鑰對來自報價SC641的水印指令和來自內容SC630的內容113解密。一個加密對稱密鑰623記錄實際上包含比實際的加密對稱密鑰623更多的內容。在進行加密之前,內容提供商101可以把其名稱附加到實際的的對稱密鑰623上。把內容提供商101的名稱和對稱密鑰623一起加密能夠防止出現一個已經根據合法的SC建立其自己的元數據SC620和內容SC630的盜版內容提供商101。認證中心105驗證與對稱密鑰623一起加密的內容提供商101名稱與SC證書中的內容提供商101名稱是否匹配。
如果不需要認證中心105對水印指令有任何改變,則認證中心105解密對稱密鑰623,修改水印指令并且再次使用一個新的對稱密鑰623對其進行加密。接著使用最終用戶設備109的公開密鑰661對對稱密鑰623進行再加密。認證中心105還對SC中的其它對稱密鑰623進行解密并且再次用最終用戶設備109的公開密鑰661對其進行加密。認證中心105建立一個包含新加密的對稱密鑰623和更新的水印指令的許可證SC660并且根據訂購SC 650把它發送到最終用戶設備109。如果訂購SC650的處理沒有成功完成,則認證中心105向最終用戶設備109返回一個HTML頁面或報告授權處理失敗的等價內容。
許可證SC660為一個最終用戶設備109提供訪問一個內容113項目所需要的所有信息。最終用戶設備109從內容駐留站點111請求適當的內容SC630。內容SC630被內容提供商101建立并且包含加密內容113和元數據片段。最終用戶播放器應用程序195使用來自許可證SC660的對稱密鑰623對內容113,元數據和水印指令進行解密。接著水印指令被附加在內容113上并且內容113被擾碼并存儲在最終用戶設備109上。
D.元數據安全容器620格式下列列表示出了被包含在一個元數據SC620中的片段。片段欄中的各個方框是SC中包含的一個單獨對象和BOM(除了被[]字符包括的片段名稱之外)。BOM包含一個針對SC中含有的各個片段的記錄。片段出現在欄中表明該片段實際上被包含在SC內并且摘要欄指示是否針對該片段計算一個指示。當一個SC被包含在其他SC中時(由相關模板確定),雖然整個初始BOM被傳送,但某些片段不能被傳送。這是因為認證中心105需要整個BOM來驗證初始SC中的數字簽名。
下列列表中的密鑰描述片段欄定義了被包含在SC的密鑰描述片段內的記錄。密鑰描述片段中的記錄定義了關于被用來加密SC中的片段和另一個SC中的片段的加密密鑰和算法的信息。各個記錄包含加密片段名稱和一個指向另一個包含加密片段的SC的URL。結果名稱欄定義了在被解密后被分配給該片段的名稱。加密算法欄定義被用來加密該片段的加密算法。密鑰Id/加密密鑰欄定義了一個被用來加密該片段的加密密鑰的標識或一個被用來加密該片段的加密對稱密鑰623位串的base64編碼。對稱密鑰算法欄是一個當前一列是一個加密對稱密鑰623時定義被用來加密對稱密鑰623的加密算法的可選參數。對稱密鑰算法ID欄是一個當密鑰Id/加密密鑰欄是一個加密對稱密鑰623時被用來加密對稱密鑰623的加密密鑰標識。
下面描述了被用于上述元數據SC列表的術語●[內容URL]-密鑰描述片段的一個記錄中的參數。這是一個指向與這個元數據SC620相關的內容SC630中的加密內容113的URL。元數據SC620自身不包含加密內容113。
●[元數據URL]-密鑰描述片段的一個記錄中的參數。這是一個指向與這個元數據SC620相關的內容SC630中的加密元數據的URL。元數據SC620自身不包含加密元數據。
●內容ID-一個定義被分配給一個內容113項目的唯一ID的片段。在元數據SC620指向不止一個內容113項目的情況下在這個片段中包含不止一個內容ID。
●元數據-對于歌曲而言,包含涉及一個諸如藝術家名稱和CD封面圖像的內容113項目的信息的片段。可能有多個元數據片段,其中一些可以被加密。元數據片段的內部結構取決于其中包含的元數據的類型。
●使用條件-一個包含描述被施加于使用內容113的最終用戶的使用選項,規則和限制的信息的片段。
●SC模板-一個包含描述建立報價,訂購和許可證SC660所需和可選信息的片段。
●水印指令-一個包含用于實現內容113中的水印的加密指令的片段。在許可證SC660內水印指令可以被認證中心105修改并且被返回到最終用戶設備109。在密鑰描述片段中存在一個定義被用來加密水印指令,當水印指令被解密時使用的輸出片段名稱,被用來加密水印指令的加密對稱密鑰623位串的一個base64編碼,被用來加密對稱密鑰623的加密算法和解密對稱密鑰623所需的公開密鑰的標識的記錄。認證中心證書-一個來自認證機構或認證中心105,包含認證中心105的簽名公開密鑰621的證書。可能有不止一個證書,在這樣的情況下一個分層結構被用于最高等級證書,該證書包含打開接著到達的最低等級證書的公開密鑰,而最低等級證書包含認證中心105的公開密鑰621。
●證書-一個來自認證機構或認證中心105,包含建立SC的實體的簽名公開密鑰621的證書。可能有不止一個證書,在這樣的情況下一個分層結構被用于最高等級證書,該證書包含打開次等級證書的公開密鑰,依此類推,直到最低等級證書到達,最低等級證書包含SC建立者的公開密鑰。
●SC版本-一個被SC封裝器工具分配給SC的版本號。
●SC ID-一個被建立SC的實體分配給SC的唯一ID。
●SC類型-指示SC的類型(例如元數據,報價,訂購,等等)●SC出版者-指示建立SC的實體。
●建立日期-建立SC的日期。
●截止日期-SC過期并且不再有效的日期。
●認證中心URL-最終用戶播放器應用程序195應當與其交互以獲得訪問內容113的正當授權的認證中心105的地址。
●摘要算法ID-一個被用來計算該片段的摘要的算法的標識符。
●數字簽名算法ID-一個被用來加密串聯片段摘要的摘要的算法的標識符。這個加密值就是數字簽名。
●數字簽名-用建立SC的實體的公開密鑰加密的串聯片段摘要的摘要。
●輸出片段-當一個加密片段被解密時被分配給輸出片段的名稱。
●RSA和RC4-被用來加密對稱密鑰623和數據塊的缺省加密算法。
●加密對稱密鑰-當進行解密時被用來解密一個SC片段的一個加密密鑰位串的一個base64編碼。
●CH公開密鑰-一個指示認證中心105公開密鑰621被用來加密數據的標識符。
E.報價安全容器641格式下列列表示出了被包含在報價SC641中的片段。除某些元數據片段之外,來自元數據SC620的各個片段和BOM也被包含在報價SC641中。
下面描述了被用于上述報價SC641并且此前沒有針對另一個SC加以描述的術語●元數據SC BOM-來自初始元數據SC620的BOM。報價SC641 BOM中的記錄包含元數據SC620 BOM的摘要。
●附加和忽略字段-被電子數字內容商店103忽略的使用條件信息。認證中心105依靠接收的SC模板驗證該信息以保證電子數字內容商店103忽略的任何信息在其授權范圍內。
●電子數字內容商店證書-一個被認證中心105提供電子數字內容商店并且被認證中心105用其私有密鑰簽名的證書。這個證書被最終用戶播放器應用程序195用來驗證電子數字內容商店103是一個有效的內容113分發人。最終用戶播放器應用程序195和認證中心105通過用認證中心105的公開密鑰621解密證書的簽名可以驗證電子數字內容商店103是一個得到授權的分發人。最終用戶播放器應用程序195保留在安裝期間作為其初始化信息的一部分接收的認證中心105的公開密鑰的一個本地副本。
F.交易安全容器640格式下列列表示出了被包含在交易SC640中的片段及其BOM和密鑰描述片段。
下面描述了被用于上述交易SC640并且此前沒有針對另一個SC加以描述的術語●交易ID-一個被電子數字內容商店103分配用來唯一標識交易的ID。
●最終用戶ID-電子數字內容商店103在最終用戶作出購買選擇并且提供信用卡信息時獲得的一個最終用戶標識。
●最終用戶公開密鑰-被認證中心105用來對對稱密鑰623重新加密的最終用戶公開密鑰661。在購買交易期間最終用戶公開密鑰661被發送到電子數字內容商店103。
●報價SC-針對被購買的內容113項目的報價SC641。
●內容使用選擇-一列針對被最終用戶購買的各個內容113項目的使用條件。每個報價SC641有一個入口。
●顯示的HTML-當接收到交易SC640時或在最終用戶設備109與認證中心105之間的交互期間被最終用戶播放器應用程序195顯示在國際互聯網絡瀏覽器窗口中的一或多個HTML頁面。
當最終用戶設備109接收一個交易SC640時,可以執行下列步驟以驗證SC的完整性和真實性1.利用認證中心105的公開密鑰621驗證電子數字內容商店103證書的完整性。在其安裝過程期間當作為最終用戶播放器應用程序195初始化信息的一部分被接收之后,認證中心105的公開密鑰621被存儲在最終用戶設備109上。
2.利用來自電子數字內容商店103證書的公開密鑰驗證SC的數字簽名643。
3.驗證SC片段的散列。
4.驗證交易SC640中包含的各個報價SC641的完整性和真實性。
G.訂購安全容器650格式下列列表示出了被包含在訂購SC650中的片段及其BOM和密鑰描述片段。這些片段或者向認證中心105提供用于解密和驗證的信息,或者由認證中心105來驗證。來自報價SC641的片段和BOM也被包含在訂購SC650中。元數據SC BOM的存在片段欄中的某些字符串指示未被包含在訂購SC 650中的某些片段。不加任何改變地包含來自元數據SC620的BOM以便認證中心105可以驗證元數據SC620及其各個片段的完整性。
下面描述了被用于上述訂單SC650并且此前沒有針對另一個SC加以描述的術語●交易SC BOM-初始交易SC640中的BOM。訂購SC650BOM中的記錄包含交易SC640 BOM的摘要。
●加密信用卡信息-來自用戶的,被用來通過信用卡或借記卡對購買付費的可選加密信息。當建立報價SC641的電子數字內容商店不處理顧客帳單時需要這個信息,而在這樣情況下認證中心105可以處理帳單。
H.許可證安全容器660格式下列列表示出了被包含在許可證SC660中的片段及其BOM。如密鑰描述片段所示,認證中心105已經利用最終用戶的公開密鑰661對解密水印指令所需要的對稱密鑰623,內容113和內容113元數據進行了重新加密。當最終用戶設備109接收許可證SC660時,該設備解密對稱密鑰623并且使用該密鑰訪問來自許可證SC660和內容SC630的加密片段。
下面描述了被用于上述許可證SC660并且此前沒有針對另一個SC加以描述的術語●EU公開密鑰-一個指示最終用戶公開密鑰66被用來加密數據的標識符。
●訂購SC650 ID-從訂購SC650 BOM得到的SC ID。
●吊銷證書清單-以前被認證中心105發布并簽名,但已經不再被認為有效的證書ID的可選列表。任何具有可以被一個證書驗證的簽名但該證書被包含在吊銷清單中的SC均是無效SC。最終用戶播放器應用程序195在最終用戶設備109上存儲認證中心105的吊銷證書清單的一個副本。每當接收到一個吊銷清單時,如果新吊銷清單更新,則最終用戶播放器應用程序195替換其本地副本。吊銷清單包含一個版本號或時間標簽(或二者)以便確定最新的清單。I.內容安全容器格式下列列表示出了被包含在內容SC630中的片段及其BOM。
下面描述了被用于上述內容SC630并且此前沒有針對另一個SC加以描述的術語●加密內容-被一個內容提供商101利用對稱密鑰623加密的內容113。
●加密元數據-與被一個元數據供應商101利用對稱密鑰623加密的內容113相關的元數據。
由于解密加密片段所需的密鑰位于在認證中心105上建立的許可證SC 660中,所以在內容SC 630中沒有包含密鑰描述片段。
Ⅵ.安全容器封裝和拆解A.概述SC封裝器是一個32位Windows程序,該程序具有一個API(應用編程接口),API可以被一個多步或單步進程調用以便產生一個具有所有指定片段的SC。對話控制封裝器151,152,153具有各種在內容提供商101,認證中心105,電子數字內容商店103及其他需要SC封裝器的站點上支持Windows程序的硬件平臺。產生一個BOM并且在必要時產生一個密鑰描述片段,并且把它們包含在SC中。一組封裝器API允許調用方指定產生BOM中的記錄和密鑰描述片段所需的信息并且把各個片段包含在SC中。封裝器還對各個片段和對稱密鑰623進行加密并且計算摘要和數字簽名。封裝器代碼包含封裝器支持的加密和摘要算法,也可以通過一個外部接口調用它們。
通過一個接受下列參數輸入的API實現與封裝器的接口以便建立一個SC●一個指向一個串聯結構緩沖區的指針。緩沖區中的各個結構均是一個針對封裝器的,含有執行命令所需的信息的命令。封裝器命令包含用一個相關的BOM記錄向SC增加一個片段,向BOM增加一個記錄,和向密鑰描述片段增加記錄。
●一個指示上述緩沖區中包含的串聯結構數量的數值。
●BOM片段的名稱和位置。
●每個位均是一個定義標志或一個為將來使用保留的標志的一個數值。當前定義了下列標志-關于在已經處理緩沖區中的所有結構之后SC的所有片段是否應當被集合成一個單獨的文件的指示。把各個片段捆綁到一個單獨的對象中是在建立一個SC時執行的最后步驟。
-關于是否從BOM片段中省略數字簽名的指示。如果沒有設置這個標志,則在SC被塞入一個單獨的對象之前計算數字簽名。
在一個可選實施例中,通過接受下列參數輸入的API實現與封裝器的接口以便建立一個SC●第一,通過傳入指向一個結構的指針調用一個API以產生一個資料清單(BOM)片段,上述結構由被用來初始化SC設置的信息構成,上述信息被表示成SC BOM片段中的IP記錄,用于BOM片段的名稱,一個尋找要增加的各個片段的缺省位置和一個標記值。這個API返回一個被用于后續封裝器APIs的SC句柄。
●封裝器具有一個每當一個片段被增加到一個SC時使用的API。這個API接受一個此前被前面的封裝器API返回的SC句柄,一個指向由涉及被增加的片段的信息構成的一個結構的指針,和一個標記值。關于被增加的片段的信息包含該片段的名稱和位置,在BOM中用于該片段的名稱,被增加片段的類型,該片段的一個散列值,標記,等等。
●在所有片段已經被加到SC之后,調用一個封裝器API以便把包含BOM片段的所有片段封裝到一個單獨的,通常是一個文件的對話控制對象中。這個API接受一個此前被前面的封裝器API返回的SC句柄,用于封裝的SC的名稱,一個指向具有用于對SC簽名的信息的結構的指針,和一個標記值。
封裝器或調用封裝器的實體可以使用一個SC模板建立一個SC。SC模板具有定義在正在建立的SC中需要的各個片段和記錄的信息。模板還可以定義用于加密對稱密鑰623和加密片段的加密方法和密鑰索引。
封裝器具有一個被用來拆解SC的API。拆解一個SC是一種選擇一個SC并且把它分成其分立的片段的處理。接著可以調用封裝器以便對任何從SC拆解出的加密片段進行解密。
B.材料清單(BOM)片段當正在建立一個SC時封裝器產生一個BOM片段。BOM是一個包含關于SC和SC中包含的各個片段的信息記錄的文本文件。BOM中的每個記錄均位于一個單行上,這個單行具有一個指示新記錄開始的換行。BOM通常包含各個片段的摘要和一個可用于驗證SC的真實性和完整性的數字簽名。
BOM中的記錄類型如下所述IP一個包含一組有關SC的名稱=數值對的IP記錄。下列名稱被保留用于SC的特定屬性V major.minor.fixV屬性指定SC的版本。這是產生SC所依據的SC規范的版本號。隨后的字符串應當具有major.minor.fix的形式,其中major,minor和fix分別是主發布號碼,次發布號碼和安裝級別。
ID數值ID屬性是一個被正建立這個SC的實體分配這個特定SC的唯一值。在本文的后續版本中定義了該數值的格式。
T值T屬性指定SC的類型,T值應當是下列類型中的一個ORD-一個訂購SC650。
OFF-一個報價SC641。
LIC-一個許可證SC。
TRA-一個交易SC640。
MET-一個元數據SC620。
CON-一個內容SC630。
A數值A屬性標識SC的作者或出版者。作者/出版者身份應當是明確的并且/或者在認證中心105上作了登記。
D數值D屬性標識建立SC的日期和時間,其中時間是可選的。數值應當具有yyyy/mm/dd[@hh:mm[:ss[.fsec]][(TZ)]]的形式,該形式表示年/月/日@時分秒.零點幾秒(時區)。數值的可選部分用[]字符括起來。
E數值E屬性標識SC過期的日期和時間,其中時間是可選的。數值應當具有與以前定義的D屬性的形式相同的形式。在任何可能的情況下,應當把截止日期/時間與認證中心105上的日期/時間相比較。
CCURL數值CCURL屬性標識認證中心105的URL。該數值應當具有一個有效外部URL的形式。
H數值H屬性標識被用來計算SC中包含的片段的消息摘要的算法。摘要算法的一個例子是MD5。D一個D記錄是包含標識片段的類型的信息,片段的名稱,(可選的)片段的摘要和一個(可選的)關于該片段不被包含在SC中的指示的數據或片段入口記錄。一個緊接在類型標識符之后的符號被用來指示該片段不被包含在SC中。下列是保留數據類型或片段記錄K片段_名稱[摘要]指定密鑰描述片段。
W片段_名稱[摘要]指定水印指令片段。
C片段_名稱[摘要]指定被用來驗證數字簽名的證書。
T片段_名稱[摘要]指定使用條件片段。
YF片段_名稱[摘要]
指定報價SC641的模板片段。
YO片段_名稱[摘要]指定訂購SC650的模板片段。
YL片段_名稱[摘要]指定許可證SC660的模板片段。
ID片段_名稱[接要]指定被引用的內容113的項目的內容113 ID。
CH片段_名稱[摘要]指定認證中心105證書片段。
SP片段_名稱[摘要]指定電子數字內容商店103證書片段。
B片段_名稱[摘要]指定另一個SC的一個ROM片段,上述另一個SC的各個片段或一個片段子集被包含在當前SC中。
BP片段_名稱SC_片段_名稱[摘要]指定另一個SC的一個BOM片段,該片段在這個SC中被包含成一個單獨的片段。SC片段_名_稱參數是被包含在這個SC內并且由這里的BOM片段定義的SC片段的名稱。一個與此相同的BOM也被包含在由SC_片段_名稱參數指定的SC中。
D片段_名稱[摘要]指定一個數據(或元數據)片段。S一個S記錄是一個被用來定義SC的數字簽名的簽名記錄。數字簽名如下所述S密鑰標識符簽名字符串簽名算法S記錄包含指示簽名的加密密鑰的密鑰標識符,是數字簽名位串的base64編碼的簽名字符串,和被用來加密摘要以產生數字簽名的簽名算法。
C.密鑰描述片段封裝器產生密鑰描述片段以便提供關于加密密鑰的信息,需要密鑰對SC加密片段進行解密。加密片段可以被包含在正被建立的SC中,也可以被包含在被正建立的SC引用的其他SC中。密鑰描述片段是一個包含關于加密密鑰和各個片段的信息記錄的文本文件,其中使用加密密鑰對上述片段進行加密。密鑰描述片段中的各個記錄位于一個單獨的行上,其中用一個換行指示新記錄的開始。
下列記錄類型在一個密鑰描述片段內部使用并且被定義如下K加密_片段_名稱;結果_片段_名稱;片段_加密_算法_標識符;公開_密鑰_標識符;密鑰_加密_算法和加密_對稱_密鑰。
一個K記錄指定一個可以被包含在這個SC或另一個被這個記錄引用的SC中的加密片段。加密_片段_名稱是這個SC中的一個片段的名稱或一個指向另一個SC中的加密片段的名稱的URL。結果_片段_名稱_是分配給解密片段的名稱。片段_加密算法_標識符指示被用來加密該片段的加密算法。公開_密鑰_標識符是一個被用來加密對稱密鑰623的密鑰標識符。
密鑰_加密_算法_標識符指示被用來加密對稱密鑰623的加密算法。加密對稱密鑰是被用來加密該片段的加密對稱密鑰623位串的一個base64編碼。Ⅶ.認證中心105A.概述認證中心105負責安全數字內容電子分發系統100的版權管理功能。認證中心105功能包含啟動電子數字內容商店103,驗證對內容113享有的權利,購買交易和有關信息的完整性和真實性驗證,向最終用戶設備109分發內容加密密鑰或對稱密鑰623,跟蹤那些密鑰的分發并且向電子數字內容商店103和內容提供商101報告交易概況。內容加密密鑰被最終用戶設備109用來開啟內容113,其中最終用戶通常通過一個購買交易從一個經過授權的電子數字內容商店103獲得開啟內容113的權利。在一個內容加密密鑰被發送到一個最終用戶設備109之前,認證中心105通過一個驗證過程驗證銷售內容113的實體的真實性和最終用戶設備109對內容113擁有的權利。這個功能被稱作SC分析工具185。在某些配置中,通過共同使用認證中心105一個執行電子數字內容商店103的信用卡授權和記帳功能的系統,認證中心105也可以處理內容113購買的財務結算。認證中心105使用諸如ICVerify和Taxware的OEM工具包進行處理信用卡業務和地方營業稅。電子數字內容商店實施例一個希望作為內容113的銷售方參與安全數字內容電子分發系統100的電子數字內容商店103向一個或多個為安全數字內容電子分發系統100提供內容113的數字內容提供商101發出一個請求。對發出請求沒有什么限制,只要雙方達成協議。在諸如一個音樂標簽的數字內容標簽,例如Sony,Time-Warner等等決定允許電子數字內容商店103銷售其內容113之后,通常通過電子郵件與認證中心105接觸以便要求把電子數字內容商店103加到安全數字內容電子分發系統100中。數字內容標簽提供電子數字內容商店103的名稱和任何其他認證中心105為電子數字內容商店103產生一個數字證書可能需要的信息。數字證書以安全方式被發送到數字內容標簽,并且接著被數字內容標簽傳送到電子數字內容商店103。認證中心105維護一個存儲其分配的數字證書的數據庫。各個證書包含一個版本號,一個唯一序號,簽名算法,發行者名稱(例如,認證中心105的名稱),證書被認為有效的日期范圍,電子數字內容商店103的電子數字內容商店,電子數字內容商店103的公開密鑰,和一個使用認證中心105的私有密鑰對所有其它信息簽名的散列碼。具有認證中心105的公開密鑰621的實體可以驗證證書并且確信一個具有能夠使用證書上的公開密鑰加以驗證的簽名的SC是一個有效SC。
在電子數字內容商店103接收到認證中心105為其產生的數字證書和處理來自數字內容標簽的SC的必要工具之后,它可以開始提供能夠被最終用戶購買的內容113。電子數字內容商店103包含其證書和交易SC 640并且使用其數字簽名643對SC進行簽名。通過首先檢查數字證書吊銷清單并且接著使用認證中心105的公開密鑰621驗證電子數字內容商店103的數字證書中的信息,最終用戶設備109驗證電子數字內容商店103是安全數字內容電子分發系統100上的一個有效內容113分發人。由認證中心105維護一個數字證書吊銷清單。吊銷清單可以被包含成由認證中心105產生的許可證SC 660的一個片段。最終用戶設備109在最終用戶設備109上保留吊銷清單的一個副本以便能夠將其用于電子數字內容商店103數字證書驗證的一部分。每當最終用戶設備109接收一個許可證SC 660時,該設備確定其中是否包含一個新的吊銷清單,并且在包含的情況下更新最終用戶設備109上的本地吊銷清單。B.版權管理處理訂購SC分析在最終用戶從電子數字內容商店103接收包含報價SC641的交易SC640之后,認證中心105從一個最終用戶接收一個訂購SC650。訂購SC650由包含涉及內容113及其使用的信息,關于正銷售內容113的電子數字內容商店103的信息,和關于正購買內容113的最終用戶的信息的各個片段構成。不管怎樣,在認證中心105開始處理訂購SC650中的信息之前,首先執行某些處理以保證SC事實上有效并且其包含的數據沒有被破壞。
驗證認證中心105通過驗證數字簽名開始驗證訂購SC650,接著認證中心105驗證訂購SC650片段的完整性。為了驗證數字簽名,認證中心105首先使用所包含的簽名實體的公開密鑰661對具有自身簽名的內容進行解密。(簽名實體可以是內容提供商101,電子數字內容商店103,最終用戶設備109或其任何組合。)接著,認證中心105計算SC的串聯片段摘要的摘要并且將其與數字簽名的解密內容113相比較。如果兩值符合,則數字簽名是有效的。為了驗證各個片段的完整性,認證中心105計算該片段的摘要并且將其與BOM中的摘要值相比較。針對訂購SC650內包含的元數據和報價SC641片段,認證中心105遵循相同的處理來驗證數字簽名和片段的完整性。
交易和報價SC641數字簽名的驗證處理也間接驗證電子數字內容商店103得到安全數字內容電子分發系統100的授權。這個結論的根據是認證中心105是證書的發行者。可選地,認證中心105會能夠成功地使用來自電子數字內容商店103的公開密鑰驗證交易SC640和報價SC641的數字簽名,但是只有簽名SC的實體才擁有相關私有密鑰的所有權。只有電子數字內容商店103才擁有私有密鑰的所有權。注意認證中心105不需要一個關于電子數字內容商店103的本地數據庫。接著商店使用認證中心的公開密鑰對交易SC640報價SC641公開密鑰進行簽名。
接著,認證中心105驗證最終用戶正購買的內容113的商店使用條件519以保證上述條件處于通過元數據SC620設置的限制范圍內。記住元數據SC620被包含在訂購SC650內。
密鑰處理在成功完成訂購SC650的真實性和完整性檢查,電子數字內容商店103的驗證和商店使用條件519的驗證之后,認證中心105完成對加密對稱密鑰623和水印指令的處理。訂購SC650的元數據SC620片段通常具有若干位于密鑰描述片段中的對稱密鑰623,其中使用認證中心105的公開密鑰621對密鑰描述片段加密。當元數據SC620被產生時,內容提供商101完成對對稱密鑰623的加密。
一個對稱密鑰623被用于解密水印指令并且其它對稱密鑰被用于解密內容113和所有的加密元數據。由于內容113可以表示一個單獨的歌曲或一個CD上的整個歌集,可以對各個歌曲使用不同的對稱密鑰623。水印指令被包含在訂購SC650的元數據SC620片段內。內容113和加密元數據被放在一個內容駐留站點111上的內容SC630中。內容SC630內的加密內容113和元數據片段的URL和片段名稱被包含在訂購SC650的元數據SC620片段的密鑰描述片段中。認證中心105使用其私有密鑰解密對稱密鑰623并且接著使用最終用戶設備109的公開密鑰661對各個對稱密鑰進行加密。從訂購SC650中檢索出最終用戶設備109的公開密鑰661。新的加密對稱密鑰623被包含在認證中心105返回到最終用戶設備109的許可證SC660的密鑰描述片段中。
在處理對稱密鑰623期間,認證中心105可能希望對水印指令進行修改。如果出現這種情況,則在認證中心105解密對稱密鑰623。之后,水印指令被修改和重新加密。新的水印指令被包含成被返回到最終用戶設備109的許可證SC660的一個片段。
如果訂購SC650的所有處理均成功完成,則認證中心105向最終用戶設備109返回一個許可證SC660。最終用戶設備109使用許可證SC660信息下載內容SC630并且訪問加密內容113和元數據。水印指令也被最終用戶設備109執行。
如果認證中心105不能成功處理訂購SC650,則一個HTML頁面被返回到最終用戶設備109并且被顯示在一個國際互聯網絡瀏覽器窗口中。HTML頁面指出認證中心105不能處理交易的理由。
在一個可選實施例中,如果用戶在針對銷售設置的發布日期之前已經購買了內容113的一個副本,則在沒有對稱密鑰623的情況下返回對話控制660。在發布日期當天或之后許可證SC 660被返回到認證中心105以便接收對稱密鑰623。舉例來說,內容提供商101允許用戶在一個新歌曲的發布日期之前下載這個歌曲,從而允許顧客在內容提供商101設置的日期之前下載歌曲并且準備好播放歌曲。這允許在發布日期立即開放內容113并且不必擔心發布日期當天的帶寬和下載時間。
C.國家特定參數可選地,認證中心105使用最終用戶設備109的域名以及在任何可能的情況下使用信用卡帳單地址確定最終用戶的國家位置。如果在最終用戶所在的國家對內容113的銷售有任何限制,則在向最終用戶設備109發送許可證SC660之前認證中心105保證正被處理的交易不違反任何這樣的限制。電子數字內容商店103也期待通過執行與認證中心105相同的檢查參與向各個國家分發內容113。在電子數字內容商店103萬一忽視內容提供商101設置的特定于國家的規則的情況下,認證中心105執行其能夠做到的任何檢查。
D.審計日志和跟蹤認證中心105針對在內容113購買交易和報告請求交易期間執行的各個操作維護一個信息審計日志150。信息可以被用于各種目的,例如安全數字內容電子分發系統100審計,產生報告和數據挖掘。
認證中心105還保持電子數字內容商店103的記帳子系統182的帳戶結余。通過數字內容商標把電子數字內容商店103的價格結構提供給認證中心105。這個信息可以包含需要施加于電子數字內容商店103的,類似于本期特價,批量折扣和帳目虧損額度的信息。認證中心105使用價格信息跟蹤電子數字內容商店103的結余并且保證他們不超過其由內容提供商101設置的虧損額度。
認證中心105通常記錄下列操作●最終用戶設備109請求許可證SC660●當認證中心105處理帳單時的信用卡授權號碼●把許可證SC660交付到最終用戶設備109●請求報告●從最終用戶通知內容SC630和許可證SC660被接收并且驗證●認證中心105通常針對一個許可證SC660記錄下列信息●請求的日期與時間●購買交易的日期與時間●被購買的項目的內容ID●內容提供商101的標識●商店使用條件519●水印指令修改●被電子數字內容商店103加入的交易ID 535●電子數字內容商店103的標識●最終用戶設備109的標識●最終用戶信用卡信息(如果認證中心105正進行處理和記帳)●認證中心105通常針對一個最終用戶的信用卡驗證記錄下列信息●請求的日期與時間●用信用卡支付的數額●被購買的項目的內容ID●被電子數字內容商店103加入的交易ID 535●電子數字內容商店103的標識●最終用戶的標識●最終用戶信用卡信息●從信用卡刷卡器接收的授權號碼認證中心105在一個許可證SC660被發送到一個最終用戶設備109時通常記錄下列信息●請求的日期與時間●被購買的項目的內容ID●內容提供商101的標識●使用條件517●被電子數字內容商店103加入的交易ID 535●電子數字內容商店103的標識●最終用戶的標識●當生成一個報告請求時通常記錄下列信息●請求的日期與時間●發出報告的日期與時間●被請求的報告的類型●被用來產生報告的參數●請求報告的實體的標識符E.結果報告認證中心105使用認證中心105在最終用戶購買交易期間記錄的信息產生報告。內容提供商101和電子數字內容商店103可以通過一個支付驗證接口183向認證中心105請求交易報告,所以他們可以使他們自己的交易數據庫與認證中心105記錄的信息保持一致。認證中心105還可以向內容提供商和電子數字內容商店103提供定期報告。
認證中心105定義一個允許內容提供商101和電子數字內容商店103請求和接收報告的安全電子接口。報告請求SC包含一個被認證中心105分配給產生請求的實體的證書。認證中心105使用該證書和SC的數字簽名驗證該請求來自一個經過授權的實體。該請求還包含定義報告范圍的,諸如時間段的參數。認證中心105驗證請求參數以保證請求方只能接收允許他們接收的信息。
如果認證中心105確定報告請求SC是可信的和有效的,則認證中心105產生一個報告并且把它封裝到一個被發送到產生請求的實體的報告SC中。某些報告立即在定義的時間間隔內自動產生并且被存儲在認證中心105上以便在接收到一個請求時能夠被立即發送。在本文的一個后續版本中定義了報告中包含的數據的格式。
F.記帳和支付驗證可以通過認證中心105或電子數字內容商店103處理內容113的帳單。在認證中心105處理電子內容113的帳單的情況下,電子數字內容商店103把最終用戶的訂單分成電子產品和實物。接著電子數字內容商店103向認證中心105通知交易內容,其中包含最終用戶的記帳信息和需要授權的總數。認證中心105授權最終用戶的信用卡并且向電子數字內容商店103返回一個通知。在認證中心105授權最終用戶的信用卡的同時,電子數字內容商店103可以針對正被購買的任何實物對最終用戶信用卡進行收費。在各個電子項目被最終用戶設備109下載之后,通知認證中心105以便可以對最終用戶信用卡收費。這是在允許內容113被最終用戶設備109使用之前最終用戶設備109執行的最后步驟。
在電子數字內容商店103處理電子內容113的帳單的情況下,不向認證中心105通知關于交易的信息直到最終用戶設備109向認證中心105發送訂購SC650。最終用戶設備109仍然在各個電子項目被下載之后才通知認證中心105。當認證中心105被通知時,它向電子數字內容商店103發送一個通知以便電子數字內容商店103可以對最終用戶的信用卡收費。
G.重發安全數字內容電子分發系統100提供處理內容113的重發的能力。通常由一個顧客服務接口184來執行重發。電子數字內容商店103提供一個用戶界面,最終用戶可以單步操作該用戶界面以便發起重發。最終用戶到購買內容113項目的電子數字內容商店103站點那里以便請求重發內容113。
當由于內容113不能下載或下載的內容113不可用使得最終用戶請求以前購買的內容113的一個新副本時,進行內容113的重發。電子數字內容商店103確定最終用戶是否有資格或權利重發內容113。如果最終用戶有資格或權利重發,則電子數字內容商店103建立一個包含被重發的內容113項目的報價SC641的交易SC640。交易SC640被發送到最終用戶設備109并且最終用戶執行與進行購買交易時相同的步驟。如果最終用戶設備109在針對經歷重發的內容113項目的密鑰庫中有一個擾碼密鑰,則交易SC640包含指導最終用戶設備109刪除擾碼密鑰的信息。
在認證中心105處理電子內容113購買的財務結算的情況下,電子數字內容商店103把一個標志包含在通過訂購SC650被傳遞到認證中心105的交易SC640中。認證中心105解釋訂購SC650中的標志并且在不對最終用戶進行內容113購買收費的情況下繼續進行交易。
Ⅷ.內容提供商A.概述安全數字內容電子分發系統100中的內容提供商101是數字內容商標或對內容113擁有所有權的實體。內容提供商101的角色是準備分發的內容113并且生成關于內容113的,可被內容113的可下載電子版本的電子數字內容商店103或零售商使用的信息。為了向內容提供商101提供最頂級的安全和版權控制,提供一系列工具以便允許內容提供商101在其自己的地方準備其內容113并且把內容113安全地封裝到SC中,使得內容113在離開內容提供商101的控制范圍時是安全的并且從不對未被授權的團體暴露或接受訪問。這允許通過一個諸如國際互聯網絡的非安全網絡自由地分發內容113并且不擔心暴露給黑客或未被授權的團體。
這些工具的最終目標允許內容提供商101準備諸如一個歌曲或歌曲系列的內容113并且把它封裝到內容SC630中,以及把描述歌曲,歌曲的批準使用(內容使用條件517)和歌曲的促銷信息的信息封裝到一個元數據SC620中。為此,提供下列工具組●工作流程管理器154-調度處理活動并且管理要求的進程同步。
●內容處理工具155-控制包含加水印,預處理(對于一個音頻例子,任何需要的均衡,動態調整或再采樣)編碼和壓縮的內容113文件準備的工具集。
●元數據同化和輸入工具161-被用來根據內容提供商的數據庫160和/或第三方數據庫或數據輸入文件并且/或者通過操作員交互收集內容113描述信息并且提供規定內容使用條件517的手段的工具集。其中還提供一個捕捉或提取諸如CDS或DDP文件的數字聲頻內容的內容的接口。一個質量控制工具允許預覽所準備的內容和元數據。可以對元數據任何的改正或再提交內容以便進一步處理。
●SC封裝器工具152-加密和封裝全部的內容113和信息并且調用SC封裝器封裝成SC。
●內容交付工具(未示出)-把SC交付到指定的分發中心,例如內容駐留站點111和電子數字內容商店103。
●內容促銷Web站點156-存儲元數據SC620和可選附加的促銷材料以便經過授權的電子數字內容商店103下載。
B.工作流程管理器154這個工具的目的是調度,跟蹤和管理內容113處理活動。這個應用程序允許多用戶訪問內容113,并且允許從內容提供商101的企業內部互聯網或企業外部互聯網內遠程偏遠的地方內容113和進行遠程狀態檢查。這種設計還允許進行協作處理,其中多個個人可以并行處理內容113的多個片段,不同個人可以被分配特定的職責并且這些個人可以分布在世界各地。
現在參照圖8,圖8是工作流程管理器154對應于圖7的主要處理的模塊圖。圖8中的主要處理總結了本章節描述的工具提供的內容113處理功能。工作流程管理器154負責向這些過程輸送任務并且在完成當前過程時向下一個需要的過程指派任務。通過一系列被各個處理工具調用的應用編程接口(API)完成這個功能●檢索下一個要處理的任務●指示一個過程的成功完成●指示一個過程的不成功完成及其失敗原因●提供一個過程的中間狀態(允許開始只需要部分完成一個從屬過程的處理)●向一個可進行指定處理的產品增加注解工作流程管理器154還具有一個用戶界面,在圖7中圖解了工作流程管理器用戶界面700的一個例子,用戶界面提供下列功能●一個允許規定缺省值和在各個處理階段指定和執行的條件的配置面板●定制工作流程規則和自動化處理流程●任務調度●狀態查詢和報告●針對一個涉及一或多個過程的任務增加注解或指令●任務管理(即掛起,釋放,撤銷,改變優先權(處理順序))各個過程有一個與其相關的,由工作流程管理器154管理的隊列。所有向工作流程管理器154請求任務的過程導致工作流程管理器154或者在其相關隊列當前沒有任務的情況下把處理(工具)掛起到一個等待狀態,或者返回處理有關需要執行其各自處理的任務的所有信息。如果一個過程被掛起到一個等待狀態,當工作流程管理器154把一個任務放到其隊列中時該過程恢復處理。
工作流程管理器154還根據一組定義的規則管理處理流程或順序。在有特殊處理要求的情況下內容提供商101可以定制這些規則,也可以配置具體的缺省規則。當一個過程報告完成其指定任務時,該過程將這個狀態通知到工作流程管理器154并且工作流程管理器154根據定義的規則判定把下一個任務放到哪個隊列上。
指示特殊處理指令或注意事項的注解也可以在任何處理步驟通過編程API或人工方式使用工作流程管理器用戶界面700或處理器接口被附加到產品上。
在最優實施例中通過Java實現工作流程管理器154中的處理,但是也可以使用諸如C/C++,匯編語言及其它等效語言的其他編程語言。應當理解,下述針對工作流程管理器154的過程可以運行在各種硬件和軟件平臺上。作為一個完整的系統或其構成的任何過程,工作流程管理器154可以被當做一個計算機可讀介質中的應用程序分發出去,上述介質包含但不僅限于諸如Web或通過軟盤,CD ROM和可移動硬盤驅動器的電子分發。
現在參照圖8,圖8是工作流程管理器154對應于圖7的主要處理的模塊圖。下列章節總結了各個處理并且描述了各個處理所需的信息或動作。
1.產品等待動作/信息處理801一旦該過程所需的所有信息具備并且任務已經成功完成所有相關處理,把任務放到特定的過程隊列上。在工作流程管理器154中有一個專門的隊列,該隊列被用來存儲因遺漏信息或阻止進一步處理的故障導致當前不可處理的任務。這些任務被放在產品等待動作/信息處理801隊列中。這個隊列中的各個任務具有相關狀態,上述狀態指示其等待的動作或信息,處理這個任務的最后過程,一旦在提供了遺漏信息,附加信息或所需的動作成功完成時這個任務等候的下一個過程。
任何處理的完成導致工作流程管理器154檢查這個隊列并且確定這個隊列中是否有等待這個處理(動作)完成或這個處理提供的信息的任務。如果是這樣的話,該任務在適當的的過程隊列中等候。
2.新內容請求處理802內容提供商101確定其希望電子銷售和交付的產品(例如,一個產品可以是一個歌曲或歌曲集)。工作流程管理器154的初始功能是允許一個操作員標識這些產品并且把它們放到新內容請求處理802的隊列上。內容提供商101可以通過配置選項指定通過產品選擇接口提示什么信息。輸入足夠的信息以便唯一標識該產品。可選地,可以包含附加字段以請求人工輸入與元數據獲取并行開始音頻處理階段所需的信息。可選地,如果不人工提供,可以從缺省配置設置或內容提供商的,通過自動元數據獲取處理803中的第一階段元數據處理獲得的數據庫160檢索出這個信息。在內容提供商的數據庫160中內容113的組成和能力決定了內容選擇過程。
如果規定了對內容提供商101的數據庫160執行查詢所需要的必要信息,則由自動元數據獲取處理803處理該任務。在一個音樂實施例中,為了合理調度對產品的音頻處理,指定產品的流派,期望壓縮水平以及音頻PCM或WAV文件名。可以把這個信息當作產品選擇過程的一部分來輸入,也可以通過一個專用查詢界面或Web瀏覽器功能來選擇這個信息。這個信息的規格允許調度對產品進行內容處理。
產品選擇用戶界面提供一個選項,該選項允許操作員規定是否可以開始處理產品或是否使產品等待進一步信息輸入。如果選擇等待,任務被加到新內容請求處理802的隊列中等待進一步的動作以便完成數據輸入并且/或者開始處理產品。一旦產品被釋放出來,工作流程管理器154評估指定的信息并且確定該任務將被送去進行何種處理。
如果提供足夠信息以允許對內容提供商101的數據庫160進行自動化查詢,該任務被排隊等待自動元數據獲取處理803的處理。如果沒有為自動元數據獲取處理803配置數據庫映射表,則任務被排隊等待人工元數據輸入處理804(參見詳細描述數據庫映射表的自動元數據獲取處理803章節)的處理。
如果指定了音頻處理所需的普通信息和加水印所需的特定信息,任務被排隊等待水印處理808(內容處理的第一個階段)的處理。如果在發出任務時遺漏了任何必要信息,任務和指示被遺漏的信息的狀態一起被加入產品等待動作/信息處理801的隊列。
如果狀態指示遺漏了內容113的文件名,該狀態可以指示需要進行一次捕捉(或對數字介質進行數字提取),其中內容113可以是音頻與PCM文件或WAV文件。音頻處理功能要求可以通過一個標準文件系統接口訪問歌曲文件。如果歌曲被放在不能被音頻處理工具直接訪問的外部介質或一個文件系統上,該文件首先被復制到一個可訪問的文件系統上。如果歌曲具有數字格式但被放在CD或數字磁帶上,它們被提取到一個可以被音頻處理工具訪問的文件系統上。一旦文件可以被訪問,工作流程管理器用戶界面700被用來為任務指定或選擇路徑和文件名以便該任務能夠被分配到水印處理,其中假定已經指定了水印所需的所有其他信息。
3.自動元數據獲取處理803自動元數據獲取處理803對內容提供商101的數據庫160或一個已經輸入數據的分級數據庫執行一系列查詢,以求以自動方式獲得盡可能多的產品信息。在允許項目被放入其隊列之前自動元數據獲取處理803需要下列信息●具有足夠信息來產生對內容提供商101的數據庫160的查詢的數據庫映射表●執行查詢所需要的產品信息●唯一定義產品的足夠產品信息對內容提供商101的數據庫160執行一個自動查詢以獲得處理這個內容113所必需的信息。例如,如果內容113是音樂,則執行這個查詢所需要的信息可以是專輯名稱,也可能是一個通用產品代碼或由內容提供商101定義的特定專輯或選擇ID。在要獲得的信息中,某些信息被指定為必需的(參見有關自動元數據獲取處理803詳細內容的章節)。如果獲得全部的必要信息,該任務下一個排隊等待的是使用條件處理805。如果遺漏了任何必要信息,則歌曲排隊等待人工元數據輸入處理804。如果產品等待動作/信息處理801中的任何任務正等待通過這個步驟獲得的任何信息,則更新任務狀態以指示該任務不再等待這個信息。如果該任務不再有任何特別的要求,該任務在所定義的下一個隊列中排隊。
4.人工元數據輸入處理804人工元數據輸入處理804為操作員提供了一個輸入遺漏信息的手段。該處理沒有從屬關系。一旦指定全部的必要信息,該任務被排隊等待使用條件處理805。
5.使用條件處理805使用條件處理805允許規定產品使用和限制。使用條件處理805可能需要某些元數據。在規定完使用條件時,該任務有資格排隊等待元數據SC產生處理807,除非已經請求監督發布處理806選項或該選項被配置成工作流程管理器154規則中的缺省值。在那種情況下,任務排隊等待監督發布處理806。在排隊等待元數據SC產生處理807之前,工作流程管理器154會首先保證已經滿足該處理的所有從屬關系(見下文)。如果不滿足,則任務排隊等待產品等待動作/信息處理801。
6.監督發布處理806監督發布處理806允許對為數字內容產品指定的信息進行質量檢查和驗證。該處理沒有任何從屬關系。通過監督人和采取的適當動作可以檢查以前在針對這個產品的任何處理階段被附加到任務中的注解。在檢查所有信息和注解之后,監督人具有下列選擇●批準發布產品并且使產品排隊等待元數據SC產生處理807●修改和/或增加信息產品并且使產品排隊等待元數據SC產生處理807●向任務增加注解并且重新排隊等待人工元數據輸入處理804●增加注解并且把任務加到產品等待動作/信息處理801的隊列中
7.元數據SC產生處理807元數據SC產生處理807把前面收集的全部信息和元數據SC620需要的其他信息合并到一起并且調用SC封裝器處理產生元數據SC620。這個工具需要下列輸入●需要的元數據●使用條件●在這個產品所有質量等級的加密階段使用的加密密鑰這個最后的從屬關系要求在可以生成元數據SC620之前相關音頻對象完成音頻處理階段。當完成元數據SC產生處理807時,根據定義的工作流程規則,任務被排入質量保證處理813或內容交付處理814的隊列。
8.水印處理808水印處理808向內容113添加版權及其他信息。對于內容113是歌曲的一個實施例,這個工具需要下列輸入●歌曲文件名(如果是專輯則有多個文件名)●水印指令●水印參數(水印中包含的信息)在完成水印處理808時,如果其所需的輸入已經具備,則任務排隊等待預處理和壓縮處理809,否則排隊等待產品等待動作/信息處理801。
9.預處理和壓縮處理809預處理和壓縮處理809首先執行所有必需的預處理把內容113編碼到指定的壓縮水平上。把一個任務排到這個隊列中事實上產生多個隊列輸入。針對期望的每個產品壓縮水平產生一個任務。可以在多個系統上并行執行編碼處理。這個工具需要下列輸入●加水印內容的文件名(如果內容113是一個專輯則有多個文件名)●產品的質量等級(可以是預先配置)●壓縮算法(可以是預先配置)
●產品流派(如果預處理器需要)在完成編碼處理時,如果根據工作流程規則來配置則任務排隊等待內容質量控制處理810。如果不是,則任務排隊等待加密處理。
如果第三方編碼工具提供商不提供已經處理諸如音頻的內容113的百分比的方法或把已經編碼的內容113數量表示成在全部選擇的內容113中所占的百分比的方法,則在圖11中示出了一個確定圖8的內容預處理和壓縮工具的編碼率的方法的流程圖1100。該方法從選擇期望的編碼算法和一個位速率的步驟1101開始。接著,進行一個查詢以確定這個算法和編碼率是否具有一個以前計算的比例系數,步驟1102。比例系數是被用來確定一個特定編碼算法和一個特定位速率的壓縮率的系數。如果沒有存儲以前計算的比例系數,則在預定時間內編碼內容113的一個樣本。最優實施例中的預定時段有幾秒長。這個針對一個預定時段的編碼率被用來計算一個新的比例系數RNEW。在已知時間量和經過編碼的內容113數量時計算新比例系數RNEW如下RNEW=(編碼數字內容長度)/(時間量),步驟1108。利用以前計算的比例系數RNEW編碼內容113并且顯示編碼狀態,步驟1109。為了將來用于這個編碼算法和編碼位速率,接著存儲這個編碼率系數RNEW,步驟1107。如果選擇的算法有一個以前計算的比例系數RSTORED,步驟1103。利用以前計算的比例系數RSTORED編碼內容113并且顯示進度,步驟1104。同時,為這個選定的算法和位速率計算一個當前比例系數RCURRENT,步驟1105。這個當前比例系數RCURRENT被用來更新存儲的比例系數RNEW=(RSTORED+RCURRENT)的平均值,步驟1106。在將比例系數連貫用于一個具體的編碼算法和位速率的過程中,比例系數的迭代更新允許對編碼率的確定越來越多精確。接著存儲新比率RNEW以便以后使用,步驟1107。如果當前比例系數RCURRENT超出以前存儲的比例系數RSTORED一個指定的范圍或閾值,則不能更新RSTORED。
接著可以提供編碼狀態的顯示。編碼狀態顯示包含隨同當前編碼率一起根據編碼率和內容113文件總長度把總內容113的百分比顯示成一個進度條。編碼狀態還可以包含編碼的剩余時間。通過將計算的編碼率RCURRENT除以內容113文件的總長度可以計算編碼的剩余時間。編碼狀態可以被傳送到另一個能夠使用調用過程的程序。這樣有助于監督程序進行編碼,也有助于更有效地操作和成批運行編碼時使用的伴生程序。應當理解,在一個可選實施例中,編碼可以包含加水印步驟。
10.內容質量控制處理810內容質量控制處理810在功能上類似于監督發布處理806。該處理是一個允許某人驗證迄今為止執行的內容處理的質量的可選步驟。除了完成水印處理808和預處理和壓縮處理809的編碼部分之外,這個沒有其它從屬關系。在完成內容質量控制處理810時下列選項生效●任務可以被發布并且排隊等待加密處理811。
●可以附加注解并且一個或多個任務重新排隊等待預處理和壓縮處理809。
最后的選項要求歌曲文件的無編碼水印版本繼續有效直到內容質量控制處理810之后。
11.加密處理811加密處理811調用適當的安全數字內容電子分發版權管理功能對每個加水印/編碼歌曲文件加密。除了完成所有其他音頻處理之外這個處理沒有其它從屬關系。在完成加密處理811過程時,任務排隊等待內容SC產生處理812。
12.內容SC產生處理812內容SC產生處理812過程可能需要把某些元數據文件包含在內容SC630中。如果需要除了內容113之外的其它文件,則收集文件并且調用SC封裝器處理以便針對產生的內容113(例如一個歌曲)的各個壓縮水平產生一個內容SC630。當完成內容SC產生處理812時,根據定義的工作流程規則,歌曲被排入最終質量保證處理813或內容交付處理814隊列。
13.最終質量保證處理813最終質量保證處理813是一個可選步驟,該步驟允許在相關元數據和內容SC630之間進行交叉引用檢查以驗證他們正確匹配并且其中包含的所有信息和內容113均是正確的。在完成最終質量保證處理813時,任務排隊等待內容交付處理814。如果發現一個問題,在多數情況下該任務必須重新排隊到失敗階段。由于除了糾正問題所需的再處理之外產品必須經過重新加密和重新封裝,這個階段的返工代價很大。強烈推薦使用現有的保證階段保證內容113的質量和信息的準確度與完備性。
14.內容交付處理814內容交付處理814過程負責向適當的的駐留站點傳送SC。在成功傳送SC之后,記錄任務完成狀態并且從隊列中刪除該任務。如果在傳送SC時出現一個問題,則在重復預定次數之后,在工作流程管理器工具154中把該任務標記成出現故障并且記錄其遇到的錯誤。
15.工作流程規則圖8的工作流程規則在以下三個主系統中起作用A工作流程管理器工具1541.新內容請求處理8022.產品等待動作/信息處理8013.最終質量保證處理8134.內容交付(和通知)處理814B元數據同化和輸入工具1611.自動元數據獲取處理8032.人工元數據輸入處理8043.監督發布處理8064.元數據SC產生處理807C內容處理工具1551.水印處理808(需要版權數據)2.預處理和壓縮處理8093.內容質量控制處理8104.加密處理8115.內容SC產生處理812
工作流程內容113選擇操作員輸入一個新產品并且新產品開始在A1(新內容請求處理802)上排隊。
A1當內容113選擇操作員將新產品發布到工作流程管理器工具154時,新產品在B1(自動元數據獲取處理803)上排隊。
A2來自步驟B1(自動元數據獲取處理803),或步驟B2(人工元數據輸入處理804),或步驟B3(監督發布處理806)到達步驟Before(元數據SC產生處理807)[需要加密密鑰]。
來自步驟Before(元數據SC產生處理807)到達步驟A3(最終質量保證處理813)或步驟A4(內容交付處理814)[需要內容SC630]。
來自步驟C1(水印處理808)到達步驟C2(預處理和壓縮處理809)[需要用于預處理和壓縮處理809的元數據]。
來自步驟C4(加密處理811)到達步驟C5(內容SC產生處理812)[需要用于內容SC630封裝器的元數據]。
來自步驟C5(內容SC產生處理812)到達步驟A3(最終質量保證處理813)或步驟A4(內容交付處理814)[需要元數據SC620]。
A3在步驟A3(最終質量保證處理813)之后,放入隊列B2(人工元數據輸入處理804),或放入隊列B3(監督發布處理806),或根據保證的要求放入隊列
A4在步驟A4(內容交付處理814)之后,工作流程管理器工具154結束該產品的處理。
B1在步驟B1(自動元數據獲取處理803)之后,如果存在步驟C1(水印處理808)所需的元數據,則把一個表示這個產品的記錄放到隊列C1中。
(也完成下列邏輯)如果1-遺漏任何需要的元數據,或2-有指向人工元數據提供商的注解,則也把產品放到隊列B2(人工元數據輸入處理804)上,否則,如果要求對這個產品進行監督發布,則把產品放在隊列B3(監督發布處理806)上。
否則,如果產品從內容處理工具155得到針對要求的所有質量等級的全部信息,則把產品放到隊列Before(元數據SC產生處理807)上。
否則把產品標記成需要加密密鑰并且把產品放到隊列A2(產品等待動作/信息處理801)上。
B2在步驟B2(人工元數據輸入處理804)期間,如果步驟C1(水印處理808)沒有完成并且存在步驟C1所需的元數據,則把一個表示這個產品的記錄放到隊列C1上。
(也完成下列邏輯)如果步驟C2(預處理和壓縮處理809)所需的元數據剛被提供,則(也完成下列邏輯)如果存在元數據同化和輸入工具161可以收集的所有元數據,則如果要求對這個產品進行監督發布,則把產品放在隊列B3(監督發布處理806)上否則如果存在來自內容處理工具155的步驟C4(加密處理811)的全部信息,則把這個產品放到隊列Before(元數據SC產生處理807)上否則把產品標記成需要加密密鑰并且把產品放到隊列A2(產品等待動作/信息處理801)上。
否則如果元數據提供商要求進行強制監督發布,則把產品放在隊列B3(監督發布處理806)上否則不做任何事情(保持產品在隊列B2(人工元數據輸入處理804)上)。
B3在步驟B3(監督發布處理806)期間,如果這個操作員正向步驟B2(人工元數據輸入處理804)回送產品,則把產品放到隊列B2上。
否則,如果這個操作員發布了產品,則如果存在來自內容處理工具155的步驟C4(加密處理811)的全部信息,則把這個產品放到隊列Before(元數據SC產生處理)上否則把產品標記成需要加密密鑰并且把產品放到隊列A2(產品等待動作/信息處理801)上。
否則產品保留在隊列B3(監督發布處理806)上。
Before在步驟Before(元數據SC產生處理807)之后,把產品標記成元數據已經被封裝。
如果所有(產品/質量等級)元組已經被封裝,則如果內容提供商101的配置規定了SC的質量保證,則把這個產品放到隊列A3(最終質量保證處理813)上否則把這個產品放到隊列A4(內容交付處理814)上。
否則把產品標記成需要內容113 SC并且把產品放到隊列A2(產品等待動作/信息處理801)上。
C1在步驟C1(水印處理808)之后,如果存在步驟C2(預處理和壓縮處理809)所需的元數據,則針對每個(產品/質量等級)元組產生一個記錄并且把它們放到隊列C2上,否則把產品標記成需要用于預處理/壓縮的元數據并且把產品放到隊列A2(產品等待動作/信息處理801)上。
C2在步驟C2(預處理和壓縮處理809)之后,如果內容提供商101的配置規定了內容質量控制處理810,則把這個(產品/質量等級)元組放到隊列C3(內容質量控制處理810)上,否則把這個(產品/質量等級)元組放到隊列C4(加密處理811)上。
C3在步驟C3(內容質量控制處理810)之后,把這個(產品/質量等級)元組放到隊列C4(加密處理811)上。
C4在步驟C4(加密處理811)之后,向元數據同化和輸入工具161提供需要的信息(即處理產生的并且被用來加密內容113的對稱密鑰623)。
如果存在內容SC630所需的所有元數據,則把這個(產品/質量等級)元組放到隊列C5(內容SC產生處理812)上,否則把產品標記成需要用于內容SC630封裝的元數據并且把這個(產品/質量等級)元組放到隊列A2(產品等待動作/信息處理801)上。
C5在步驟C5(內容SC產生處理812)之后,把質量等級標記成具有這個質量等級的內容113已經被封裝。
如果所有(產品/質量等級)元組已經被封裝,則如果產品被標記成元數據已經被封裝,則如果內容提供商101的配置規定了SC的質量保證,則把這個產品放到隊列A3(最終質量保證處理813)上否則把這個產品放到隊列A4(內容交付處理814)上否則把產品標記成需要元數據SC620并且把產品放到隊列A2(產品等待動作/信息處理801)上。
否則(所有(產品/質量等級)元組沒有被封裝)不做任何事情(另一個(產品/質量等級)元組觸發一個動作)。
C.元數據同化和輸入工具由描述例如音樂中的內容113,錄音的標題,藝術家,作者/作曲家,制作人和錄音長度的數據構成。下列描述基于作為音樂的內容11,但是本領域的技術人員應當理解,諸如影像,節目,多媒體,電影和等價內容的其他內容類型也處在本發明的真實范圍和內涵之內。
這個子系統集合了內容提供商101提供給電子數字內容商店103以幫助推銷產品的數據(對于音樂而言,例如該藝術家的樣品選錄,該藝術家的歷史,含有該錄音的專輯清單,與該藝術家和/或作品相關的流派),內容提供商101提供給擁有購買的產品的最終用戶的數據(例如,藝術家,制作人,專輯封面,音軌長度)和內容提供商101希望提供給最終用戶的不同購買選項(使用條件517)。數據被封裝到一個元數據SC620中并且可被電子數字內容商店103使用。為此,提供下列工具●自動元數據獲取工具●人工元數據輸入工具●使用條件工具●監督發布工具這些工具允許內容提供商101實現上述針對工作流程管理器154的處理。這里描述的工具是一個基于最優實施例中的Java的工具包,但是也可以使用諸如C/C++,匯編語言和等價語言的其他編程語言。
1.自動元數據獲取工具自動元數據獲取工具為一個用戶提供實現上述自動元數據獲取處理803的能力。自動元數據獲取工具被用來訪問內容提供商101的數據庫160并且在沒有操作員幫助的情況下檢索盡可能多的數據。結構方法可以用來自動實現這個處理。內容提供商101可以定制缺省元數據模板以便指定這個內容提供商101提供給最終用戶的數據的類型(例如,作曲家,制作人,伴奏者,音軌長度),和內容提供商101提供給電子數字內容商店103的促銷數據的類型(以音樂為例,例如該藝術家的樣品選錄,該藝術家的歷史,含有該錄音的專輯清單,與該藝術家和/或作品相關的流派)。缺省元數據模板包含最終用戶設備109需要的數據字段,可以選擇提供到最終用戶設備109的數據字段和一個被指定到電子數字內容商店103,推銷藝術家,專輯和/或單曲的數據字段樣本集。
為了從內容提供商101的數據庫160中提取模板數據字段,自動元數據獲取工具使用一個把數據的類型(例如,作曲家,制作人,藝術家傳記)映射成在數據庫內可以發現數據的位置的列表。各個內容提供商101幫助定義針對其環境的映射表。
自動元數據獲取工具使用內容提供商101的元數據模板和映射表獲取凡是可以從內容提供商101的數據庫160得到的數據。根據自動元數據獲取處理803的結果更新各個產品的狀態。遺漏了任何所需數據的產品排隊等待人工元數據輸入處理804,否則可以被封裝到一個元數據SC620中。
2.人工元數據輸入工具人工元數據輸入工具為一個用戶提供實現上述人工元數據輸入處理804的能力。人工元數據輸入工具允許任何經過正當授權的操作員提供漏失數據。如果操作員確定漏失數據不能得到,則操作員可以把一個注解附加到產品上并且請求監督發布。內容提供商101為了質量保證可能需要對產品進行監督發布。一旦提供了所有需要的數據,并且在沒有請求監督發布的情況下,產品可以被封裝到一個元數據SC620中。
3.使用條件工具使用條件工具為一個用戶提供實現上述使用條件處理805的能力。利用電子交付提供用于銷售或出租(限制使用)的內容113的過程涉及一系列業務決策。內容提供商101判定內容113適用的壓縮水平。接著針對內容113的各個壓縮編碼版本規定一或多個使用條件。各個使用條件針對內容113的使用定義最終用戶的權利和對最終用戶的任何限制。
作為內容處理工具155的一部分,一組使用條件(最終用戶權利和限制)被附加到產品上。
使用條件定義1.該使用條件適用的內容113的壓縮編碼版本。
2.該使用條件所覆蓋的用戶類型3.這個使用條件是否允許購買或出租內容113。
針對一個出租交易●被用來限制出租期限的測量單位(例如天,播放)。
●上述單位的數量,其中在達到該數量后內容113不再被播放。
針對一個購買交易●允許最終用戶制造的可播放副本的數量。
●他/她可以在什么樣的介質(例如,可寫光盤存儲器(CD-R),小型盤片,個人電腦)上制造那些副本。
4.允許發生購買/出租交易的時段(即,一個最終用戶在這個使用條件的限制下只能在生效日期開始之后和最近有效期限結束之前購買/出租)。
5.一個最終用戶可以與之辦理此購買(或出租)的國家。
6.在此使用條件下購買/出租交易的價格。
7.水印參數。
8.需要通知到認證中心105的事件類型。
使用條件組的一個例子內容提供商101可能決定測試北美洲市場對一個流行兒童歌手在1997年第四季度再發布的兒童歌曲的接受程度。這次測試會制作具有兩個不同壓縮編碼版本的歌曲384Kbps和56Kbps。384Kbps版本可以被購買(并且一個副本被制作到小型盤片上)或出租(兩個星期),同時56Kbps版本只能被購買(并且沒有制造副本)。對于任何購買/出租水印指令都是相同的,并且內容提供商101需要認證中心105累計出制造的所有副本的數量。這樣會產生使用條件如下
4.元數據SC620的片段以下是被元數據同化和輸入工具161收集并包含在元數據SC620中的某些類型的數據。嘗試根據功能和目的地把數據組合成SC片段。
產品ID[來源內容提供商;][目的地每個人;]發許可證者商標公司[目的地EMS;最終用戶;]
領有許可證者商標公司 [目的地EMS;最終用戶;]本對象(下級領有許可證[目的地每個人;]者商標公司)的來源(出版者)對象類型(即,一個單 [目的地每個人;]獨的對象或一組對象)對象 ID國際標準錄音代碼(ISRC)國際標準音樂號碼(ISMN)使用條件(來源內容提供商;目的地EMS,最終用戶,認證中心105)購買使用條件(來源EMS;目的地最終用戶,認證中心105)用于對象(錄音)的使用條件組(用戶限制和權利)使用條件組中的一個單個條目該使用條件適用的內容113的壓縮編碼版本。
這個使用條件是否允許購買或出租內容113針對一個出租交易被用來限制出租期限的測量單位(例如天數,播放次數)。
上述單位的數量,其中在達到該數量后內容113不再被播放。
針對一個購買交易允許最終用戶制造的可播放副本的數量。
他可以在什么樣的介質(例如,可寫光盤存儲器(CD-R),小型盤片,個人電腦)上制造那些副本。
允許發生購買/出租交易的時段(即,一個最終用戶在這個使用條件的限制下只能在生效日期開始之后和最近有效期限結束之前購買/出租)指向一個最終用戶可以與之辦理此購買(或出租)的國家的一個指針在此使用條件下購買/出租交易的價格一個指向加密水印指令和參數的指針一個指向需要通知到認證中心105的事件類型的指針購買數據(加密;可選信息;來源EMS;目的地最終用戶,認證中心105)購買日期購買價格帳單名稱和地址用戶姓名和地址用戶所在國家(最優猜測)元數據1(來源內容提供商;目的地EMS,最終用戶)一個數組{版權信息針對作品針對歌曲的錄音標題主演藝術家}一個指針{插圖(例如,專輯封面);插圖格式(例如,GIF,JPEG);}可選信息一個附加信息數組{作曲家出版人制作人伴奏者錄音日期發布日期歌詞音軌名稱(描述)/音軌長度含有此錄音的專輯清單流派}元數據2(來源內容提供商;目的地EMS)一個結構數組,每結構表示相同錄音的不同質量等級{錄音;錄音的質量等級;(可能壓縮的)錄音的長度(按字節);}元數據3(來源內容提供商;目的地EMS,最終用戶)可選信息促銷材料一個指向藝術家推銷材料的指針{藝術家的Web站點的URL;藝術家的背景描述;藝術家的有關采訪(以及采訪形式(例如,文字,音頻,影像));評論(以及評論的形式(例如,文字,音頻,影像));樣本選錄(及其格式和壓縮水平);近來和將來的音樂會/表演/事件-其日期和地點;}一個指向專輯推銷材料的指針{樣本選錄(及其格式和壓縮水平);制作人,和/或作曲家,和/或電影/劇本/全體演員,和/或專輯制作等等的背景描述;與藝術家無關的采訪(以及采訪形式(例如,文字,音頻,影像));
評論(以及評論的形式(例如,文字,音頻,影像));流派;}單曲促銷樣本選錄(及其格式和壓縮水平);制作人,和/或作曲家,和/或電影/劇本/全體演員,和/或單曲制作等等的背景描述;評論(以及評論的形式(例如,文字,音頻,影像));5.監督發布工具監督發布工具為用戶提供了實現上述監督發布處理806的能力。
一個由內容提供商101指定具有監督發布權力的個人可以征集一個等候監督發布的產品(即,一個在監督發布處理806的隊列中的產品),檢查其內容113和附加的注解,并且批準其內容113并且發布產品以便封裝到一個元數據SC620中,或者進行任何必需的糾正并且發布產品以便封裝到一個元數據SC620中,或者增加一個指明采取的糾正措施的注解并且把產品重新提交人工元數據輸入處理704在另一個實施例中,在產生SC之后,可以執行另一個可選的質量保證步驟,在該步驟中SC的內容113可以被打開并檢查完備性和準確度,并且同時可以最終批準或拒絕把產品發布到零售商渠道。
D.內容處理工具內容處理工具155事實上是一個被用來處理數字內容文件以便產生加水印的編碼和加密內容副本的軟件工具包。該工具利用行業標準數字內容處理工具以便能夠根據技術的發展對允許,編碼和加密技術進行嵌入式替換。如果可以通過一個命令行系統調用接口和傳遞參數可以加載選擇的行業工具,或者如果提供一個通過DLL接口可以調用其中的功能的工具包,內容處理的自動化程度可以達到一定的水平。各個工具的一個前端應用程序在內容處理工具155內適當的隊列中查詢下一個可執行任務,檢索所需的文件和參數,并且接著加載行業標準內容處理工具以執行要求的功能。當完成任務時,如果工具不報告終止狀態,可能需要對排隊進行手工更新。
這里描述了內容處理工具155的一個通用版本,但是也可以進行定制。可以用Java,C/C++或任何其它等價的軟件編寫內容處理工具155。可以通過包含磁盤,CDS的計算機可讀手段或通過一個Web站點交付內容處理工具155。
1.加水印工具水印工具為一個用戶提供實現上述水印處理808的能力。這個工具利用音頻水印技術把內容113所有者的版權信息施加到歌曲文件上。根據內容提供商101和選擇的具體水印技術確定要寫出的實際信息。這個信息可用于前端水印工具以便其能夠適當地把這個信息傳遞到水印功能。這就對元數據同化和輸入工具161提出了保證其在允許處理歌曲的音頻文件之前獲取這個信息的同步要求。這個歌曲不會被進行音頻處理直到已經獲得水印信息。
由于對產生的歌曲的所有編碼都是共同的,加水印是音頻處理中的第一步。只要水印可以和編碼技術并存,只需要對每首歌曲進行一次水印處理。
已知有各種水印技術并且可以從市場上得到。當然前端水印工具能夠支持各種工業水印工具。
2.預處理和壓縮工具預處理和壓縮工具為用戶提供了實現上述預處理和壓縮處理809的能力。聲頻編碼涉及兩個處理。以音樂內容為例,編碼基本上是對一個處理PCM音頻流的有損壓縮算法的應用。通常可以根據要求的音頻質量等級調諧編碼器以便產生各種重放位流速率。較高的質量導致較大的文件長度,并且由于高質量內容113的文件長度可能變得相當大,高質量內容113的下載時間會變得很長并且有時不能通過標準28,800bps調制解調器下載。
所以內容提供商101可以選擇提供各種數字內容下載質量以適應不希望等待數小時進行下載的缺耐心并且低帶寬的顧客,并且滿足只購買高質量內容113或具有較高速度連接的講究音質顧客或高帶寬顧客。
對于產生較低位速率的內容113再現,壓縮算法在技術方面各不相同。上述技術在算法(即,MPEG,AC3,ATRAC)和壓縮水平方面均有所不同。為了實現較高的壓縮水平,通常在被傳送給壓縮算法之前以較低的采樣率對數據重新采樣。為了允許以較低的失真度更有效地進行壓縮,或者為了防止某些頻帶的大量信號丟失,有時需要調整數字內容的某些頻率的均衡電平,或者需要調整錄音的動感。內容預處理要求直接涉及壓縮算法和所需的壓縮水平。由于相同流派的歌曲通常具有類似的動感,有時可以成功地把內容113的風格(例如音樂流派)用作確定預處理要求的依據。對于某些壓縮工具,這些預處理功能是編碼處理的一部分。對于其它的工具,在壓縮之前執行期望的預處理。
除用于銷售的可下載音頻文件之外,每個歌曲還有允許通過一個LBR流式協議對歌曲進行采樣的一個低位速率(LBR)編碼片段。這個LBR編碼也是內容處理工具155負責的功能。內容提供商101把這個片段或者當作一個分離的PCM文件,或者當作偏移和長度參數來提供。
就象水印那樣,人們希望可以通過一個DLL或命令行系統調用接口加載編碼工具并且可以傳入預處理和壓縮必需的所有參數。前端編碼工具可能對元數據同化和輸入工具161有一個同步要求,例如在內容是音樂并且已經確定在執行任何音頻預處理之前從內容提供商的數據庫160得到歌曲的流派的情況下。這取決于選擇的編碼工具以及歌曲的流派有多么不確定。如果內容提供商101改變每個歌曲的編碼質量等級選擇,在編碼步驟之前也提供這個信息并且該信息與元數據同化和輸入工具161產生的元數據一致。
目前已知有各種高質量編碼算法和工具。當然前端編碼工具能夠支持各種工業編碼工具。
現在參照圖12,其中示出了關于圖8基于本發明的自動元數據獲取工具的一個實施例的流程圖。處理的起點是從內容提供商101正檢查的介質讀取一個標識符。有關內容的一個例子在一個音頻CD實施例中。在一個音頻CD實施例中,可以使用下列代碼通用價格代碼(UPC),國際標準錄音代碼(ISRC),國際標準音樂號碼(ISMN)。通過針對該內容的適當播放器,例如一個針對音頻CD的音頻CD播放器,針對DVD電影的DVD播放器,針對DAT錄音的DAT錄音機和類似設備讀入這個標識符,步驟1201。接著,這個標識符被用來索引一個內容提供商101的數據庫160,步驟1202。
在數據庫160和任何其他有關資源中檢索出圖8所描述的工作流程管理器處理所需的某些或所有信息。這個信息可以包含內容113和與其相關的元數據。在步驟1204中,檢索的附加信息被用來啟動工作流程管理器154產生電子內容113。應當理解,諸如若干音頻CDS的若干介質選擇可以排隊等候以便允許自動元數據獲取工具產生一系列用于電子分發的內容113。例如,可以通過一系列CDS產生所有的內容113,甚至可以從內容提供商101檢查的一或多個CDS中選擇音軌。
在一個可選實施例中,可以從內容提供商的數據庫160中自動檢索預處理參數。現在參照圖13,圖13是一個自動設置圖8基于本發明的預處理和壓縮工具的預處理和壓縮參數的方法的流程圖。在這個實施例中,內容113是音樂。在步驟1301中,選擇音樂(內容113)到內容處理工具155中進行編碼。確定所選擇的音樂的流派,步驟1302。可以人工或使用其他的可用元數據,例如通過圖12描述的處理檢索出的附加數據輸入這個信息。接著檢查所選擇的聲頻壓縮水平和聲頻壓縮算法,步驟1303。接著,根據流派,壓縮設置和壓縮算法查找在預處理和壓縮處理809,1304中應當使用什么壓縮參數,步驟1304。
3.內容質量控制工具內容質量控制工具為一個用戶提供實現上述內容質量控制處理810的能力。這是一個可選的內容處理工具并且為質量控制技師提供了一個評價編碼和加水印內容文件并且根據質量判斷批準或拒絕內容文件的機會。他可以通過進行人工預處理調整對內容重新編碼,直到滿足質量要求或者可以把歌曲標記成需要再加工并且附上一個描述問題的傳單。
內容提供商101可以把這個處理步驟配置成內容處理工作流程的一個可選或必要的步驟。在封裝這個內容的所有SC(例如一個CD上的歌曲的各個SC)之后提供一個附加的可選最終質量保證處理813步驟,此時可以測試內容編碼的質量,但在加密和封裝前更早地發現問題允許進行更有效的內容處理。因此,與一直等到所有處理最終完成相反,人們非常希望在這一步確保內容的質量。
4.加密工具加密工具為一個用戶提供實現上述加密處理811的能力。內容加密是內容處理工具155的最終步驟。現在加密編碼工具產生的內容的各個版本。加密工具是SC封裝器的一個功能。調用SC封裝器加密歌曲并且返回所使用的加密密鑰。這個密鑰稍后被傳遞到SC封裝器中用于產生元數據SC620。
E.內容SC建立工具一旦收集到所有的元數據,內容SC產生工具根據其使用目的把元數據組合成各種類別。這些元數據組被當做元數據SC620的元數據片段寫入被傳遞到SC封裝器工具的文件。各個片段(文件)有獨特的處理要求。一旦相關歌曲已經被處理和加密并且已經確定目標目的地(內容駐留站點111的URL),則即將產生內容113的內容SC630。已經完成處理并且滿足上述所有要求的內容113被排隊等待通過工作流程管理器154的封裝器隊列進行封裝。
內容SC產生處理工具現在檢索通過元數據同化和輸入工具161的前面步驟產生的所有必需文件并且調用SC封裝器功能產生元數據SC620和內容SC630。針對各個歌曲,這個處理產生一個單獨的元數據SC620和多個內容SC630。例如,如果內容是音樂,在針對完整歌曲的各個質量等級進行的音頻處理期間產生的各個音頻文件被封裝到的內容SC630中。針對樣品選段產生的音頻文件被當作一個包含在元數據SC620中的元數據文件傳遞。
F.最終質量保證工具最終質量保證工具為一個用戶提供實現上述最終質量保證處理813的能力。一旦針對一個內容文件建立了所有的SC,可以對內容進行最終質量保證檢查。可以在內容113準備過程的各個階段執行質量保證。內容提供商101可以選擇在各個主要步驟完成時執行質量保證以防止稍后出現過多的返工,也可以選擇等待直到完成所有音頻準備過程并且立即對所有內容執行質量保證。如果選擇后者,則在產生SC時執行質量保證。這個工具允許歌曲的各個SC被打開,檢查并進行音頻播放。
發現的任何問題,包括很小的文字改變均會因SC的內部安全功能要求重建SC。為了避免不必要的再處理時間,強烈推薦使用中間質量保證步驟來保證元數據的準確,并且保留這個特定的質量保證步驟來驗證與這個歌曲相關的SC之間的相應交叉引用。如果發現問題,保證人能輸入一個被附加到歌曲的問題描述并且使其重新在相應的處理隊列等候再加工。在工作流程管理器154中相應更新狀態以指示歌曲的所有有關部分的狀態。如果沒有發現問題,則把內容113標記成可以發布。
G.內容交付工具內容交付工具為一個用戶提供實現上述內容交付處理814的能力。一旦內容113被批準發行,內容113的SC被放到內容交付處理的隊列中。內容交付工具監視隊列并且根據內容提供商101提供的配置設置即時傳遞SC文件或成批傳遞一組SC文件。可選地,內容提供商101還可以配置內容交付工具自動在其隊列中保留所有的SC直到它們被人工標記成可以發布。這個允許內容提供商101在其計劃的發布日期之前準備好內容并且保留內容直到希望發布諸如一首新歌,電影或游戲的內容。SC還可以根據一個預定的發布日期控制對內容113的訪問,所以不需要內容提供商實際延遲SC的交付,但這個人工發布選項仍可以被用于此目的,也可以被用來管理傳遞大文件所需的網絡帶寬。
當被標記成可以發布時,內容113的內容SC630通過FTP被傳遞到指定的內容駐留站點111。通過FTP把元數據SC620傳遞到內容促銷Web站點156。這里SC被升級到一個新的內容113目錄直到可以被處理并被集中到內容促銷Web站點156。
圖17是關于一個為圖8基于本發明的自動元數據獲取工具自動檢索附加信息的可選實施例的流程圖。其處理類似于前面在圖8中描述的處理。然而,監督發布806和內容質量控制809的質量檢查被合并成一個被稱作質量控制1704的質量檢查。在元數據SC產生807和內容SC產生812之前執行質量檢查。在SC產生之前執行質量檢查消除了拆解內容113和相關元數據SC620的步驟。另外,在這個實施例中,產品等候動作/信息801的隊列也被除去。根據正在請求的動作把任務放到具體的處理隊列中。例如,如果任務需要輸入人工元數據,即附加元數據,該任務被放到人工元數據輸入隊列中。并且自動元數據獲取803與新內容請求在元數據同化和輸入工具161和內容處理工具155之前合并。最終,需要指出的是在自動元數據獲取803時和在人工元數據輸入803期間輸入使用條件804。至此,在自動元數據獲取803步驟期間可以自動填寫許多使用條件。
H.內容促銷Web站點為了最有效地分發有關內容提供商101通過數字下載提供銷售的內容的信息,并且為了向電子數字內容商店103提供必需的文件以便允許其把內容113變成可被其顧客下載的內容,各個內容提供商101應當具有一個駐留該信息的安全Web站點。這類似于當前被某些內容提供商101用來制造可被其零售商和其它有需要的方面使用的促銷內容的方法。在這類服務已經存在的情況下,一個附加部分可以被增加到Web站點上,其中電子數字內容商店103可以到Web站點看見可以通過下載來銷售的內容清單。
內容提供商101對這個站點的設計和布局有完全的控制,或者可以選擇使用一個作為安全數字內容電子分發系統100的工具包的一部分而提供的承包網絡服務器解決方案。為了實現其自己的服務設計,內容提供商101只需要為訪問其站點的電子數字內容商店103提供到元數據SC620的鏈接。使用安全數字內容電子分發系統100的工具包來實現這個功能。選擇處理和顯示什么信息由內容提供商101來決定。
通過FTP從內容交付工具接收到一個新目錄表中的元數據SC620被內容促銷Web站點156處理。可以用SC預覽工具將這些容器打開顯示或從容器中提取信息。接著這個信息可以被用來更新HTMLWeb頁面并且/或者向一個通過此服務來維護的可查詢數據庫增加信息。SC預覽工具實際上是被電子數字內容商店103用來打開和處理元數據SC620的內容獲取工具的一個子集。要得到更詳細的描述參見內容獲取工具部分。接著元數據SC620文件應當被轉移到一個由內容促銷Web站點156維護的永久目錄中。
一旦元數據SC620被集中到內容促銷Web站點156,宣布可以使用。當各個新元數據SC620被增加到站點時內容提供商101可以向所有預訂的電子數字內容商店103發送一個通知,也可以執行一個單獨的,關于當天(或該時間段)被加入的所有元數據SC620的日常(或按任意規定的周期)通知。通過發送一個包含涉及增加的元數據SC620的參數的預定CGI字符串經過一個與電子數字內容商店103之間的標準HTTP互換來實現這個通知。這個消息被以后描述的電子數字內容商店103的通知接口模塊處理。
I.內容駐留娛樂業每年產生數千諸如CDS,電影和游戲的內容標題,累計至今有數萬個內容標題。安全數字內容電子分發系統100被用來支持今天在商店中可用的所有內容標題。
安全數字內容電子分發系統100日常最終可以下載到顧客那里的內容標題數量有數千或數萬。對于大量的標題,需要有大量的帶寬。計算機磁盤空間和帶寬需要以分布和可伸縮的方式實現多個內容駐留站點111。該系統也支持全世界的顧客。這需要海外站點加速向全球顧客交貨。
安全數字內容電子分發系統100上駐留的內容被用來允許內容提供商101駐留其自己內容113或共享一個公用設施或一組設施。
安全數字內容電子分發系統100上駐留的內容由多個內容駐留站點111構成,這些內容駐留站點集中包含安全數字內容電子分發系統100和若干輔助內容站點(未示出)提供的,包含內容提供商101提供的當前熱點的所有內容113。根據使用系統的最終用戶的數量改變內容駐留站點111的數量。輔助的內容站點駐留有限數量的歌曲,但它們會提供大多數在系統上使用的帶寬。當主站點的容量增加到最大容量點時輔助站點上線。輔助站點的位置可以接近網絡訪問點(NAP),這有助于加快下載速度。為了加快下載速度也可以把它們分布在不同的環球地理區域中。
內容提供商101應當選擇在其自己系統中駐留所有其內容113,在有或沒有附加的輔助內容站點的情況下它們可以充當一個單獨的內容駐留站點111。這允許它們建立其自己的可伸縮分布式系統。在另一個實施例中,電子數字內容商店103還可以充當用于某些內容113的內容駐留站點111。這個實施例需要在電子數字內容商店103和內容提供商101之間有一個專門的財務協定。
1.內容駐留站點在本說明書的內容提供商章節描述的內容交付工具通過FTP或HTTP把內容113增加到內容駐留站點111,也可以通過脫機手段,例如用磁帶,CD Rom,閃光存儲器或其他計算機可讀介質把內容113增加到內容駐留站點111。內容提供商101產生的元數據SC620包含一個字段,該字段指示定位這個內容113的內容SC630的URL。這個URL對應于一個內容駐留站點111。在內容提供商101通過報價SC641允許的情況下電子數字內容商店103可以忽略這個URL。當希望下載內容SC630時,最終用戶設備109與這個內容駐留站點111通信。
最終用戶設備通過向內容駐留站點111發送許可證SC660來發出對一個內容SC630的請求。這個SC與認證中心105返回的許可證SC660相同。可以驗證許可證SC660的數字簽名以確定其是否是一個有效的許可證SC660。如果是一個有效的許可證SC660,那么或者開始下載,或者把下載請求重定向到另一個內容駐留站點111。
2.安全數字內容電子分發系統100提供的內容駐留站點111對于安全數字內容電子分發系統100,由接收針對一個內容SC630的初始請求的主內容站點確定哪個站點應當被用來下載內容113。這個站點使用下列信息作出這個決定●有駐留所請求的內容113的輔助內容站點 (安全數字內容電子分發系統100提供的大多數內容113只位于主站點上);●最終用戶設備109的地理位置在哪里?(當在最終用戶設備109上發出請求時可以從最終用戶設備109得到這個信息,該信息通過訂購SC650被傳遞到認證中心105);●有適當的輔助站點上線并且正在工作?(有時輔助站點可能脫線);●輔助站點的負載如何?(在某些情況下一個輔助站點非常繁忙而另一個站點不太忙,可以選擇不忙的站點);在向最終用戶設備109發送內容SC630之前,對最終用戶的請求進行分析和驗證。一個數據庫記錄所有已經被用來下載內容113的許可證SC ID。可以檢查這個數據庫以保證最終用戶設備109只請求所購買的內容113的各個片段。這樣可以防止期待降低內容駐留站點111速度的惡意用戶重復訪問內容駐留站點111并且還防止未被授權地下載內容SC630。
根據顧客對內容113單個片段的要求周期性地對輔助內容站點中的內容113進行擴充和縮減。
內容駐留路由器內容駐留路由器(未示出)位于內容駐留站點111上并且從希望下載內容113的最終用戶接收所有請求。該設備對最終用戶請求進行驗證檢查以保證他們確實購買了內容113。維護一個有關輔助內容站點包含什么內容113的狀態及其當前狀態的數據庫。這個當前狀態包含站點上的活動數量以及一個站點是否被列入維護名單。
與內容駐留路由器的唯一交互是當要求下載內容113時最終用戶設備109發送的許可證SC660。許可證SC660包含指示允許用戶下載內容113的信息。
輔助內容站點輔助內容站點(未示出)駐留了安全數字內容分發系統100的流行內容113。從地理上講這些站點分散在世界各地并且其位置接近網絡訪問點(NAP)以改善下載時間。當主內容駐留站點111的負載接近最大容量時這些站點被加到系統中。
Ⅸ.電子數字內容商店A.概述-支持多個電子數字內容商店103電子數字內容商店103本質上是零售商。他們是銷售被分發到顧客的內容113的實體。對于分發內容113,其中會包含數字內容零售商Web站點,數字內容零售店,或任何希望參與向用戶銷售電子內容113的企業。這些企業可以只銷售電子內容113,也可以選擇只向他們當前執行的其他銷售規劃增加電子產品的銷售。通過一組作為安全數字內容電子分發系統100的一部分為電子數字內容商店103開發的工具把可下載電子產品變成電子數字內容商店103的服務。
這些工具被電子數字內容商店103用來●獲取被內容提供商101封裝的元數據SC620●從這些被用作輸入的SC中提取內容113以建立其服務供應●產生描述他們提供銷售的可下載內容113的報價SC641●確認銷售并且通過產生并向最終用戶設備109發送交易SC640來啟動下載●管理一個有關可下載內容113的銷售和各個下載的狀態的交易記錄
●處理狀態通知和交易認證請求●執行帳目核對工具的目的是允許電子數字內容商店103在把可下載電子內容113的銷售變成其服務時擁有靈活性。盡管不必要,可以通過要求由認證中心105處理被購買的可下載內容113的所有財務結算的方式來使用工具。這些工具還允許電子數字內容商店103完全地為其顧客服務并且處理其自身的,包含提供促銷和特殊報價的金融交易。工具允許電子數字內容商店103快速地把可下載內容113的銷售集成到其現有業務中。另外,電子數字內容商店103不要求駐留可下載內容113并且不必管理其交付。由內容提供商101選擇的內容駐留站點111執行這些功能。
在最優實施例中通過Java實現用于電子數字內容商店103的工具,但是也可以使用諸如C/C++,匯編語言和類似語言的其他編程語言。應當理解,下述針對電子數字內容商店103的工具可以運行在各種硬件和軟件平臺上。作為一個完整的系統或其構成的任何部件,電子數字內容商店103可以被當做一個計算機可讀介質中的應用程序分發出去,上述介質包含但不僅限于諸如Web或通過軟盤,CD ROM和可移動硬盤驅動器的電子分發。
在另一個實施例,電子數字內容商店103的部件是一個程序員的軟件工具包的一部分。這個工具包允許和通用電子數字內容商店103部件的各個部件和下述工具有預定的接口。這些預定接口具有API或應用編程接口的形式。一個使用這些API的開發者可以實現一個高級的應用程序的部件的任何功能。通過為這些部件提供API,在不需要重新產生這些功能和任何部件的資源的情況下一個程序員可以快速開發一個專用電子數字內容商店103。
電子數字內容商店103不僅限于基于Web的服務供應。所提供的工具被所有希望銷售可下載電子內容113的電子數字內容商店103使用,不管使用什么傳輸基礎設施或交貨方式向最終用戶交付這個內容113。通過衛星和電纜基礎設施提供的廣播服務也使用相同的工具來獲取,封裝和跟蹤電子內容113的銷售。電子銷售商品的表現形式和向最終用戶提供這些商品的方法是基于廣播的服務供應和點到點交互式Web類型的服務供應之間的主要差別。
B.最到點電子數字內容分發服務點到點主要指電子數字內容商店103和最終用戶設備109之間的一對一交互服務。這通常表示一個通過電話或調制解調器連接提供的基于國際互聯網絡Web的服務。在這個模型中還支持除國際互聯網絡之外的其它網絡,只要這些網絡符合Web服務器/客戶瀏覽器模型。圖9是圖解一個電子數字內容商店103的主要工具,部件和處理的模塊圖。
1.集成需求安全數字內容電子分發系統100不但產生新的在線業務而且為現有企業提供了一個把可下載電子內容113的銷售集成到其當前業務中的方法。為電子數字內容商店103提供的這套工具簡化了這種集成工作。內容獲取工具171和SC封裝器工具153為電子數字內容商店103提供了一個從參與的內容提供商101獲取有關他們可以銷售什么的信息并且產生把這些可下載對象當做其自己庫存中的項目來引用所需要的文件的方法。這個處理是成批進行的,可以大批量自動執行,并且只在把新內容113集成到站點上時才執行。
用于安全數字內容電子分發的工具的目的是在只需對其當前內容113零售商范例作最小限度的的改變的情況下允許把電子可下載內容113的銷售集成到基于Web的電子數字內容商店103(例如ColumbiaHouse在線,Music Boulevard,@Tower)和類似企業的典型實現中。可以有若干個集成方法,并且在那最優實施例中,電子數字內容商店103對所有產品搜尋,預覽,選擇(購物車)和購買提供支持。各個電子數字內容商店103與其顧客建立顧客忠誠,連續提供其自己的獎勵措施并且象目前所做的那樣銷售其產品。在安全數字內容電子分發系統100中,僅需要指示其庫存中哪些產品也可以電子下載并且允許其顧客在進行購買選擇時選擇電子下載選項。在另一個實施例中,顧客的購物車可以包含電子(內容113)和物理介質選擇的混合體。在顧客完成檢查,電子數字內容商店103完成財務結算并且登錄或通知其發貨和處理功能處理實物商品購買之后,電子數字內容商店103的商務處理功能接著調用交易處理器模塊175處理所有的電子下載。該模塊簡單地傳遞必要信息,而從那里開始的所有處理被安全數字內容電子分發系統100的工具包負責。在另一個實施例中,如果電子數字內容商店103希望只銷售可下載商品或者希望將實物商品和可下載商品的財務結算分離開,也可以使用其他使用安全數字內容電子分發系統100的工具處理財務結算的交易處理方法。
為了處理商品的下載,針對電子數字內容商店103從內容提供商101的內容促銷Web站點156獲取的各個可下載產品為電子數字內容商店103指定一個產品ID(未示出)。這個產品ID與一個顧客對可下載產品的購買選擇相關。產品ID被電子數字內容商店103傳遞交易處理器模塊175以便識別用戶購買的產品。被產生用來描述產品的SC(報價SC641)與電子數字內容商店103隔離并且被保留在一個報價數據庫181中以便簡化對這些對象的管理并且使其存在對電子數字內容商店103透明。
交易處理器模塊175及其他附加功能被提供成Web服務器一端的可執行程序(即CGI和NSAPI,ISAPI可調用函數),或者把API簡化成一個DLL或C目標程序庫。這些功能負責最終用戶與認證中心105的交互和可選交互的運行時刻處理。這些功能與Web服務器的商務服務交互以便產生啟動內容113下載處理所必需的文件并且把文件下載到最終用戶設備109。它們還處理可選交互以便提供授權并且接受活動完成的通知。
還提供一個帳目核對工具179幫助電子數字內容商店103與認證中心105聯系以便根據其自己的和認證中心105的交易日志進行對帳。
2.內容獲取工具171內容獲取工具171負責與內容促銷Web站點156接口以便預覽和下載元數據SC620。由于內容促銷站點是一個標準Web站點,電子數字內容商店103使用一個Web瀏覽器瀏覽這個站點。根據內容提供商101的站點設計改變瀏覽功能。某些站點可以提供具有許多促銷信息屏幕的大范圍搜尋能力。其它站點可以具有一個純瀏覽器接口,該接口可以從中選擇標題,表演者或新發布版本的目錄。所有站點均包含元數據SC620的選集,其中含有一個歌曲或專輯的所有促銷和描述性資料。
可選地,電子商店103可以訂閱內容更新并且通過FTP自動接收更新。
查看元數據內容獲取工具171是一個Web瀏覽器幫助應用程序,每當在內容促銷Web站點156上選擇一個元數據SC620鏈接時便啟動該應用程序。選擇SC致使SC被下載到電子數字內容商店103并且啟動幫助應用程序。內容獲取工具171打開元數據SC620并且顯示其中包含的非加密信息。以音樂為例,顯示信息包含提取的元數據173,有關歌曲的圖形圖象和描述歌曲的信息,如果元數據SC620中有的話還可以試聽歌曲的一個預覽選段。在一個內容113是音樂的例子中,如果內容提供商101提供的話也顯示關于歌曲或專輯,專輯標題和藝術家的促銷信息。這個信息被顯示成瀏覽器窗口中的一系列鏈接HTML頁面。諸如歌曲和歌詞的可購買內容113和內容提供商101希望保護的其他元數據不可被零售商內容Web站點180訪問。
在另一個實施例中,內容提供商101提供了可選的收費促銷內容。在這個實施例中,在元數據SC620中對這種促銷內容進行加密。通過認證中心105可以使用對電子數字內容商店103收取指定費用的帳戶處理打開這個數據的財務結算。
提取元數據除了預覽能力之外,這個工具提供了兩個附加功能元數據提取和報價SC641準備。選擇元數據提取選項可以提示電子數字內容商店103輸入將存儲元數據的路徑和文件名。諸如圖形和音頻預覽選段的二進制元數據被存儲成分立的文件。文本元數據被存儲在一個純ASCII碼文本文件中,零售商內容Web站點180可以把該文件導入其數據庫。在一個分立的TOC文件中還產生一個描述純ASCII碼文件的格式的列表。附加選項可以用來允許提取成其他受種族語言支持(NLS)支持的格式。
提取的數據中提供的一個重要信息片段是產品ID。電子數字內容商店103的商務處理功能需要用這個產品ID識別出交易處理器模塊175(更多信息參見交易處理章節),用戶已經購買的內容113。交易處理器模塊175使用這個產品ID從報價數據庫181中正確檢索出合適的報價SC641以便接著下載到最終用戶設備109。電子數字內容商店103對如何在其站點上提供可下載內容113的報價有完全的控制。它只需要保持一個關于被提供給這個產品ID的內容113的交叉索引與安全數字內容電子分發系統100的工具正確接口。在這里提供這個信息允許電子數字內容商店103以和報價SC641產生處理并行的方式把這個產品或內容113集成到其庫存和銷售清單(數據庫)中,其原因是這兩個處理使用相同的產品ID引用該產品。在下面對此進行了描述。
報價SC產生封裝器153要求電子數字內容商店103產生一個描述待售的可下載內容113的報價SC641。大部分被放入報價SC641的信息來自元數據SC620。內容獲取工具171通過以下操作產生報價SC641●根據元數據SC620的報價SC模板的定義從元數據SC620中去除不需要被包含在報價SC641中的片段。
●根據電子數字內容商店103的這個工具的配置選項指明的缺省定義增加其它所需的片段。
●根據元數據SC620中報價SC模板的定義提示輸入或選擇所需的附加信息。
●調用SC封裝器153把這個信息封裝成SC格式。
在元數據SC620中含有被播放器應用程序195(以后進一步描述)顯示在最終用戶設備109上的元數據。從元數據SC620中去除只被電子數字內容商店103用作其Web服務數據庫輸入的其他促銷元數據。也含有內容提供商101提供的,諸如水印指令,加密對稱密鑰623和定義對象的允許使用的使用條件517的版權管理信息。
這個經過削減的元數據SC620接著被包含在報價SC641中。電子數字內容商店103還把其自己被稱作商店使用條件519或購買選項的使用條件附到報價SC641上。通過一組缺省選項可以按照交互方式或自動方式完成這個操作。如果被配置成交互處理,則向電子數字內容商店103提示由內容提供商101定義的允許對象使用條件517組。接著商店選擇其希望為其顧客提供的選項。這些選項現在變成了新的使用條件或商店使用條件519。對于自動處理,電子數字內容商店103配置一組被提供給所有內容113的缺省購買選項。參照內容提供商101定義的允許使用條件517自動檢查這些缺省選項并且在沒有差異的情況下將這些選項設置到報價SC641中。
一旦產生了報價SC641,報價SC641被存儲在一個報價數據庫181中并且被在元數據SC620中預分配的產品ID索引。以后在與報價數據庫181接口并且檢索出報價SC641以便封裝和發送到最終用戶時,電子數字內容商店103使用這個產品ID標識被顧客購買的可下載內容113,更詳細的信息參見交易處理器模塊175章節。
在另一個實施例中,電子數字內容商店103在其站點上駐留內容SC641。這個實施例需要改變報價SC641,例如用電子數字內容商店103的URL替換內容駐留站最111的URL。
3.交易處理模塊175電子數字內容商店103把帳單傳送到認證中心105。可選地,電子數字內容商店103可以直接向認證中心105請求財務清算。有兩個處理最終用戶對可下載內容113的購買請求的基本方式。如果電子數字內容商店103不希望處理購買的財務結算,沒有指導商品銷售的特殊促銷或刺激手段并且不使用一個購物車比喻批量組合購買請求,該商店可以選擇在其內容113下載頁面上提供直接到報價SC641文件的鏈接。應當已經使用元數據中包含的零售價信息建立了這些報價SC641。報價SC641中還包含一個為購買選項提供銷售的條款和條件的專門HTML報價頁面。當建立報價SC641時根據一個產生的模板建立這個頁面。當最終用戶點擊報價SC641的直接鏈接時,報價SC641是到瀏覽器最終用戶設備,從而啟動一個打開容器并且顯示被包含在報價SC641中的頁面的幫助應用程序。這個頁包含一個表格,該表格收集包含信用卡信息和購買選項選擇的顧客信息。接著該表格被直接提交到認證中心105以便進行財務結算和處理。可選地,這個表格可以包含使用最終用戶信用調查報告或行業標準本地交易處理機所需的字段。
現在描述電子數字內容商店103處理帳單的一個實施例。更典型的處理購買請求的方式是允許電子數字內容商店103處理財務結算并且向最終用戶提供下載授權。這個方法允許電子數字內容商店103把可下載內容113的銷售和在其站點上提供銷售的其他商品集成到一起,通過只對顧客收取統一費用(通過一個購物車比喻)而不是針對各個下載請求單獨收費允許對購買請求進行成批處理,并且允許電子數字內容商店103直接跟蹤其顧客的采購類型并提供專門的促銷和俱樂部選項。在這種情況下,可下載內容113的報價被包含在其購物清單中,其中當最終用戶作出選擇時購物清單被加到購物車中并且象在電子數字內容商店103的當前購物模型中那樣得到處理和財務結算。一旦完成財務結算,則電子數字內容商店的商務處理過程調用交易處理器模塊175完成交易。
交易處理器模塊175交易處理器模塊175的作用是收集最終用戶設備109所需的信息以便開始和處理購買的內容113的下載。這個信息被封裝到一個交易SC640中,而交易SC640被Web服務器回送到最終用戶設備109以便響應提交的購買。交易處理器模塊175需要從電子數字內容商店103的商務處理過程得到三套信息購買的內容113的產品ID,交易數據642和一個確認購買結算的HTML頁面或CGI URL。
產品ID是通過與剛銷售的內容113相關的元數據SC620被提供給電子數字內容商店103的數值。這個產品ID被用來從報價數據庫181中檢索出相關的報價SC641。
交易數據642是一個由電子數字內容商店103的交易處理功能提供的信息構成的結構,該信息以后被用來將認證中心105的處理與電子數字內容商店103執行的財務結算交易關聯起來并且提供用戶身份信息,其中用戶身份信息被包含在下載到最終用戶設備109的內容113的水印中。當認證中心105接收一個有效訂購SC650時,認證中心105記錄一個指示被電子數字內容商店103銷售的內容113和包含最終用戶名稱和一個交易ID 535的相關交易數據642的交易。交易ID 535提供一個針對財務結算交易的索引。這個信息以后被認證中心105返回到電子數字內容商店103以便被用來核對其帳目和從內容提供商101(或其代理人)接收的記帳聲明。認證中心交易記錄178可以被內容提供商101用來確定其有哪些內容113已經被銷售并且允許其對各個電子數字內容商店103產生一個記錄歸其所有的提成的帳單。可選地,除帳單之外的其他電子手段也可以被用來在內容提供商101和電子數字內容商店103之間進行結賬。
交易SC640中提供的信息和交易SC640的安全性和完整性為認證中心105提供了足夠的真實性,使認證中心105相信購買交易有效并且在認證中心105記錄這個銷售之前不需要進一步的驗證。然而電子數字內容商店103有權選擇在其帳戶被收費之前請求認證(認證中心105上記錄的交易向內容提供商101指示這個電子數字內容商店103已經收取銷售這個內容113的款項)。通過交易數據642中的一個標志指示這個認證/通知請求。在這個背景下,認證中心105與電子數字內容商店103聯系并且在對其帳戶收費和發布加密密鑰623之前從電子數字內容商店103接收授權。作為這個認證請求的一部分,交易ID 535被從認證中心105傳遞到電子數字內容商店103以便允許電子數字內容商店103將這個請求和此前與最終用戶執行的一個交易聯系起來。這個交易ID 535可以是電子數字內容商店103希望使用并且單純為其利益服務的任意唯一數值。
那交易數據642也包含一個用戶名。這個名稱可以來自于用戶在進行購買時填寫的購買表格的用戶名字段,或來自于以前在某些用戶在電子數字內容商店103登記時記錄的信息,或者是根據有關這個交易中使用的信用卡的信用卡信息得到的正式名稱。稍后這個名稱被包含在許可證水印527中。
交易數據642還包含最終用戶購買的商店使用條件519。這個信息被包含在許可證水印527中并且被最終用戶設備109用于復制和播放控制。
交易處理器模塊175需要的最終參數是確認購買結算的HTML頁面或CGI URL。這樣做的目的是允許電子數字內容商店103用一個財務結算確認和商店希望包含的任意其他信息回答最終用戶。這個HTML頁面或CGI URL被包含在交易SC640中并且當交易SC640被接收并處理時被顯示在最終用戶設備109的瀏覽器窗口中。
交易SC640是在處理購買申請之后從電子數字內容商店103對最終用戶的HTTP應答。發送一個作為直接HTTP應答的SC針強制在最終用戶設備109上自動加載一個SC處理器幫助應用程序,從而允許不依靠最終用戶進一步啟動的動作自動完成交易。在后面的最終用戶設備109和播放器應用程序195章節中更詳細地描述了這個處理。
當使用必要的參數調用交易處理器模塊175時,該模塊建立一個包含交易數據642,交易確認HTML頁面或需要SC的需要的參考URL,并且檢索和嵌入與購買相關的報價SC641。該模塊還記錄關于這個交易的信息以便以后被通知接口模塊176和帳目核對工具179使用。
4.通知接口模塊176通知接口模塊176是一個Web服務器端的可執行程序(可被NSAPI,ISAPI或等價接口調用的CGI或函數)。該模塊處理來自認證中心105,最終用戶設備109,內容駐留站點111和內容提供商101的可選請求和通知。電子數字內容商店103可以請求通知的情況包括●從認證中心105通知最終用戶設備109請求了一個加密密鑰623并且認證中心105正在發布針對指定內容113的加密密鑰623。可選地,可以配置這個通知使之要求在加密密鑰623被發送到最終用戶設備109之前得到電子數字內容商店103的認證。
●從內容駐留站點111通知內容SC630已經被發送到最終用戶設備109。
●從最終用戶設備109通知內容SC630和許可證SC660已經被接收并且成功地被用來處理內容113或被發現遭到破壞。
●從內容提供商101通知新內容113已經被放到內容促銷Web站點156中。
這些通知中沒有一個是安全數字內容電子分發系統流程100中的必需步驟,但這些通知被提供成選項以便允許電子數字內容商店103有機會在對銷售的完成沒有異議時關閉其記錄。通過讓電子數字內容商店103知道自從交易的財務結算以后執行了什么功能或在試圖完成銷售期間發生了什么錯誤,還提供了處理顧客服務請求可能需要的信息。可選地,在需要時通過顧客服務接口184可以從認證中心105得到大部分這樣的狀態。
內容提供商101確定通知新內容113在內容促銷Web站點156上可用的頻率。可以在每個新元數據SC620被加入時提供通知,也可以僅僅日常性地當在該日加入所有新元數據SC620時提供通知。
所有這些通知均導致輸入交易記錄178。如果電子數字內容商店103希望對這些通知執行其自己的處理,他可以截取CGI調用,執行其獨特的功能并且有選擇性地把請求傳送到通知接口模塊176。
5.帳目核對工具179這個帳目核對工具179與認證中心105聯絡以便比較交易記錄178和認證中心105的記錄。這是一個可以用來幫助電子數字內容商店103對安全數字內容電子分發系統100的記帳感覺滿意的可選處理。
在另一個實施例中,可以更新這個工具以便向內容提供商101和認證中心105提供用于自動定期付款的電子資金轉帳。也可以被設計成若從認證中心105接收一個電子票據,則在核對帳單和交易記錄之后自動處理支付。
C.廣播電子數字內容分發服務廣播主要是指一個一對多傳輸方法,其中在最終用戶設備109和電子數字內容商店103之間沒有定制按需查看和收聽的個人交互。通常通過數字衛星或有線基礎設施提供廣播,其中內容113被預編程以便所有最終用戶設備109接收相同的數據流。
還可以定義一個混合模型,使得電子數字內容商店103提供以某種方式加以組織的數字內容服務,即電子數字內容商店103通過國際互聯網絡連接以及高帶寬衛星提供Web分發接口或通過廣播服務提供有線分發接口,其中在站點設計方面具有大量的共性。如果IRD后備信道(backchannel)串行接口被連接到Web并且IRD支持Web導航,則最終用戶可以按照通常的方式通過后備信息國際互聯網絡接口瀏覽數字內容服務,預覽并選擇要購買的內容113。用戶可以完全通過一個國際互聯網絡連接選擇高質量可下載內容113,購買這些選擇商品并且接收所需的許可證SC660,并且接著請求通過高帶寬廣播接口交付內容113(內容SC630)。Web服務可以根據廣播調度指示哪個內容113可以通過這種方式下載,或者也可以完全根據購買的內容113建立廣播數據流。這個方法會允許一個基于Web的數字內容服務與一個廣播設施約定向配備了適當設備的用戶交付高質量內容113,使得有限數量的特定內容113(例如歌曲或CDS)每天可以通過這種方式下載并且可以通過Web接口以較低的質量下載整個目錄。
可以設計其他廣播模型,其中沒有針對最終用戶設備109的Web接口。在這個模型中,以經過特殊格式化的數字流的方式封裝促銷內容以便廣播交付到最終用戶設備109(即IRD),其中進行特殊處理以對數字流解碼并且為最終用戶提供可以借以進行購買選擇的促銷內容。
仍然通過從最終用戶設備109到認證中心105的后備信道通信啟動實際購買選擇,并且會利用SC進行所有的數據交換。已經通過這樣的方式構造和開發了被提供給電子數字內容商店103的工具包,即大部分工具適用于點到點國際互聯網絡服務供應以及廣播衛星或有線供應。被數字內容Web站點電子數字內容商店103用來獲取和管理內容113以及準備SC的工具也被星載的電子數字內容商店103用來管理和準備通過廣播基礎設施分發的內容113。通過Web服務進行的SC分發與通過廣播服務進行的分發相同。
Ⅹ.最終用戶設備109安全數字內容電子分發系統100的最終用戶設備109中的應用程序執行兩個主要功能第一個功能是SC處理和復制控制;第二個功能是重放加密內容113。無論最終用戶設備109是個人電腦還是專用電子用戶設備,該設備必須能夠執行這些基本功能。最終用戶設備109還提供各種附加特性和功能,例如建立播放列表,管理數字內容庫,在內容重放期間顯示信息和映像和記錄到外部介質設備。根據這些應用程序支持的服務和設計應用程序時所針對的設備類型,這些功能會發生變化。
A.概述現在參照圖10,其中示出了主要部件,處理和最終用戶設備109功能流程。用來支持基于PC的Web接口內容113服務的應用程序由兩個可執行軟件應用程序構成SC處理器192和播放器應用程序195。SC處理器192是一個可執行應用程序,該應用程序被當作一個幫助應用程序配置到最終用戶Web瀏覽器191中以便處理SC文件/MIME類型。每當從電子數字內容商店103,認證中心105和內容駐留站點111接收到SC時瀏覽器啟動這個應用程序。該應用程序負責對SC執行所有必需的處理并且最終把內容113加到最終用戶的數字內容庫196中。
播放器應用程序195是一個獨立的可執行應用程序,最終用戶加載該應用程序以便使用其數字內容庫196中的內容113,管理其數字內容庫196并且在允許時產生內容113的副本。通過Java,C/C++或任何等價軟件可以編寫播放器應用程序195和SC處理器192應用程序。在最優實施例中,可以從諸如Web站點的計算機可讀裝置下載應用程序。然而,也可以使用其他的交付機制,例如通過諸如磁盤或CDS的計算機可讀介質實現交付。
通過最終用戶Web瀏覽器191實現內容113信息的搜尋和瀏覽,歌曲選錄的預覽和選擇要購買的歌曲。電子數字內容商店103以和許多內容113零售商Web站點目前提供的方式相同的方式提供購物經驗。通過今天的基于Web的內容113購買為最終用戶帶來的變化是他們現在可以選擇可下載內容113對象并加到購物車中。如果電子數字內容商店103除可下載對象之外還有其他可以銷售的商品,最終用戶在其購物車中可能混有實物商品和電子可下載商品。直到最終用戶檢查完畢并且向電子數字內容商店103提交其最終購買授權前,不涉及安全數字內容電子分發最終用戶設備109。在此之前,所有交互在電子數字內容商店103的Web服務器和最終用戶設備109上的瀏覽器191之間進行。這包含樣本數字內容選段的預覽。數字內容選段不被封裝到SC中,而是作為可下載文件被集成到電子數字內容商店103的Web服務中,或者從一個流式服務器輸送。內容113選段的格式不受系統體系結構的約束。在另一個實施例中,播放器應用程序195可以直接與電子數字內容商店103或認證中心105交互,也可以脫機使用一個促銷CD。
B.應用程序安裝播放器應用程序195和幫助應用程序1981被打包到一個可以從許多Web站點下載的自安裝可執行程序中。認證中心105充當一個在公共Web站點上駐留主下載頁面的中央單元。它包含指向某個位置的鏈接,其中從上述位置可以下載安裝程序包。可以在所有內容駐留站點111上得到安裝程序包以便適應地理分散的下載請求。各個參與銷售的電子數字內容商店103也可以允許從其站點下載程序包,或者只提供一個到認證中心105的公共Web站點上的主下載頁面的鏈接。
任何希望購買可下載內容113的最終用戶下載并安裝這個程序包。在這個可下載程序包中自包含了安裝程序。拆解程序包,安裝幫助應用程序198和播放器應用程序195并且把幫助應用程序198配置到安裝的瀏覽器上。
作為安裝的一部分,為最終用戶設備109產生一個用于處理訂購和許可證SC660的公共/私有密鑰661對。還產生一個用于保護許可證數據庫197中的歌曲加密密鑰的隨機對稱密鑰(秘密用戶密鑰)。通過把密鑰分割嵌進多個片段并且把密鑰片段存儲在遍及最終用戶計算機的多個位置上對秘密用戶密鑰(未示出)進行保護。用防竄改軟件技術保護這段程序代碼以避免泄露有關如何分割密鑰和在哪里存儲的信息。防止最終用戶訪問這個密鑰有助于防止盜版或與其他計算機共享內容113。更多有關如何使用這些密鑰的信息參見SC處理器192章節。
抗竄改軟件技術是一個阻止黑客未經授權進入計算機軟件應用程序的方法。通常黑客希望了解和/或修改軟件以消除對使用的限制。實際上,沒有不能被破解的計算機程序;這就是防竄改軟件未被稱作“不可竄改”的原因。但是由于付出與可能的收益不符,破解一個有防竄改保護的應用程序所需的工作量通常會阻止多數黑客。這里的破解工作將是獲取訪問一段內容113,或許是CD上一個單曲的密鑰。
IBM有一種防竄改軟件技術。引入這種代碼的一個產品位于IBMThinkPad 770便攜式計算機上。這里,防竄改軟件被用來保護計算機中的DVD電影播放器。諸如Hollywood工作室等數字內容提供商擔心數字電影的來臨并能夠很容易產生完美副本,所以堅持DVD盤片上的電影包含復制保護機制。IBM的防竄改軟件使得難以繞過這些復制保護機制。有一個防竄改軟件的很典型的應用;該軟件被用來執行有關某些保護類型的內容113的使用的規則。
IBM的防竄改軟件在攻擊者的路徑上設置了幾種障礙。首先,該軟件包含了消除,或至少減少黑客使用的標準軟件如調試程序和反匯編程序的效果的技術。其次,該軟件包含了自我完整性檢查,使得單個修改乃至小批量修改將被檢測出來并且會導致不正確的操作。最終,該軟件包含在其真實操作方面誤導黑客的迷障。最后一種技術被大量使用,而前兩個技術依賴著名的密碼工具加密和數字簽名。
C.安全容器處理器192當最終用戶針對其收集在購物車中的商品向電子數字內容商店103提交最終購買授權時,他的Web瀏覽器仍然繼續等待一個來自Web服務器的響應。電子數字內容商店103上的Web服務器處理購買,執行財務結算并且向最終用戶設備109返回一個交易SC640。SC處理器192(幫助應用程序198)被瀏覽器啟動以便處理與交易SC640相關的SC MIME類型。圖14是基于本發明的,把內容下載到如圖10所描述的一個本地庫的播放器應用程序195的用戶界面屏幕的一個例子。
SC處理器192打開交易SC640并且提取其中包含的應答HTML頁面和報價SC641。應答HTML頁面被顯示在確認最終用戶購買的瀏覽器窗口中。接著報價SC641被打開并且從中提取內容113(例如歌曲或專輯)名稱和計劃的下載時間,步驟1401。接著用這個信息顯示一個新建窗口并且為最終用戶提供調度內容113(以音樂為例的歌曲或全部專輯)的下載的選項,步驟1402。最終用戶可以選擇立即下載,也可以選擇以后下載。如果選擇以后下載,則下載調度信息被存儲在一個記錄中并且在最終用戶設備109當時已經啟動的情況下按調度時間開始下載。如果計算機在調度下載時間沒有開機或者通信鏈路不可用,則提示最終用戶重新調度在計算機下一次開機時進行下載。
當到達調度下載時間或請求立即下載時,SC處理器192根據最終用戶在安裝時產生的交易SC640,報價SC641和公開密鑰661中的信息產生訂購SC650。通過HTTP請求把這個訂購SC 650發送到認證中心105。在認證中心105返回許可證SC660時,重新調用幫助應用程序198處理許可證SC660。接著打開許可證SC660并且從所引用的訂購SC650中提取出內容駐留站點111的URL。接著使用瀏覽器通過http請求把許可證SC660發送到指定的內容駐留站點111以便請求下載內容SC630。當內容SC630返回到瀏覽器時,再次調用幫助應用程序198。SC處理器192顯示被下載的內容113的名稱,一個下載進度指示和一個估計完成時間。
當內容113正被SC處理器192接收時,該處理器把內容113數據裝載到存儲器緩沖區中以便解密。緩沖區的長度取決于加密算法和水印技術的要求,并且該長度是盡可能最小的長度以便減少暴露給黑客程序的未加密內容113的數量。當一個緩沖區被填滿時,使用從許可證SC660中提取的最終用戶密鑰623(對應于公開密鑰661)對緩沖區解密,其中首先使用私有密鑰對許可證SC660自身解密。解密緩沖區接著被傳遞給水印功能。
水印功能193從許可證SC660中提取出水印指令并且利用最終用戶的私有密鑰對指令解密。接著從許可證SC660中提取出水印數據,其中水印數據包含諸如在從其購買這個內容113的電子數字內容商店103上登記的,或者在電子數字內容商店103不提供登記功能時根據信用卡登記信息導出的購買人姓名的交易信息。水印中還包含購買日期和交易ID 535,電子數字內容商店103分配交易ID 535以便索引到為該交易而記錄的特定記錄。商店使用條件519也被包含其中以便用于播放器應用程序195的復制控制。
使用防竄改代碼技術保護水印以避免泄露水印指令,從而防止黑客發現水印的位置和技術。這樣會防止黑客清除或修改水印。
在將全部需要的水印記錄到這個內容緩沖區之后,緩沖區被傳遞給擾碼函數以便重新加密194。一個諸如IBM SEAL加密技術的可發揮處理器效率的安全加密算法被用來利用隨機對稱密鑰重新加密內容113。一旦完成下載,解密和重新加密194處理,被內容供應商101用來最初加密內容113的加密密鑰被銷毀,并且使用被產生并且在安裝時被隱藏的秘密用戶密鑰對新的的封條密鑰加密。這個新加密的Seal密鑰被存儲在許可證數據庫107中。
可能需要在內容供應商101上使用的不同內容來源和在最終用戶設備109上使用的用戶水印成為實際的行業標準。這些標準仍然在演變。可以使用該技術把控制信息嵌入音樂并且多次更新控制信息。直到復制控制標準更加固定時,才會在安全數字內容電子分發系統100中提供復制控制的可選方法,使得在用戶設備中提供版權管理而不依賴于復制控制水印。利用被捆綁到最終用戶設備109并且受防竄改環境保護的加密DC庫集合實現存儲和播放/記錄使用條件的安全性。當標準已經被采用時放置軟件吊鉤以支持復制控制水印。目前已經具有對水印AAC和其它具有各種壓縮水平的編碼音頻數據流的支持,但就被用作一個獨立的復制控制方法而言,這些技術目前仍有些不成熟。
解密和重新加密194處理是另一個受防竄改代碼技術保護以避免泄露原始內容113加密密鑰,新的SEAL密鑰,秘密用戶密鑰,秘密用戶密鑰片段的存儲位置和密鑰分段方法的程序區域。
解密和重新加密194的處理有兩個目的。存儲用類似于SEAL的算法加密的內容113允許比實時更快的解密并且執行解密需要的處理器使用率比類似于DES的更趨行業標準類型的算法要少。這允許播放器應用程序195在不需要在解碼和重放之前首先解密整個內容113文件的情況下對內容113進行實時并發的解密-解碼-重放。SEAL算法和一個高效解碼算法的效率不但允許并行操作(多路重放加密文件)而且允許在一個功耗很低的系統處理器上進行這種處理。因而可以在諸如60MHz Pentium系統或更低檔系統的低端最終用戶設備109上支持這個應用程序。將存儲內容113的加密格式與初始加密格式區分開允許在選擇原始內容加密算法時有更大的靈活性。因而可以使用被廣泛接受并且事實表明可以作為行業標準的算法進一步提高數字內容行業對安全數字內容電子分發系統100的接受程度。
這種解密和重新加密194處理的第二個目的是消除關于在每個已經得到這個內容113的許可的最終用戶設備109上存儲被內容提供商101用來加密這個內容113的初始主加密密鑰623的要求。作為許可證SC660的一部分的加密主密鑰623只在很短的時間內被緩沖在最終用戶設備109的硬盤上,并且只在存儲器和很短時間內是不受懷疑的。在這個執行階段內,通過防竄改代碼技術保護密鑰623。一旦完成了這個解密和重新加密194階段,就無須以任何形式在最終用戶設備109上保留這個密鑰623,從而大大減輕了黑客盜版的可能性。
一旦歌曲被重新加密,歌曲便被存儲在數字內容庫196中。播放器應用程序195使用時所需的所有元數據被從相關報價SC641中提取出來并且被存儲在數字內容庫196中,步驟1403。以和上述針對其它內容采取的方式相同的方式對諸如歌曲歌詞的元數據的任何加密片段進行解密和重新加密。被用來加密內容113的相同SEAL密鑰被用于任何相關的,需要加密的元數據。
D.播放器應用程序1951.概述安全數字內容電子分發播放器應用程序195(這里被稱作播放器應用程序195)類似于CD,DVD或其他數字內容播放器和CD,DVD.或其他數字內容存儲管理系統。最簡單的是只處理內容113,例如播放歌曲或影像。在另一個層次上,該應用程序為最終用戶提供了一個管理他/她的的數字內容庫196的工具。而最重要的是能夠編輯和播放諸如歌曲的內容集合(這里被稱作播放目錄)。
通過一組可以根據內容提供商101和電子數字內容商店103的要求分別選擇和定制的組件來裝配播放器應用程序195。這里描述了播放器的一個通用版本,但是也可以進行定制。
現在參照圖15,其中示出了一個關于在圖10的最終用戶設備109上運行播放器應用程序195的主要部件和處理的模塊圖。
有若干構成播放器對象管理器1501的子系統的部件組。
1.最終用戶接口部件15092.復制/播放管理部件15043.解密1505,解壓縮1506,重放部件1507并且可以包含記錄。
4.數據管理1502和庫訪問部件15035.應用程序間的通信部件15086.其他雜類(安裝部件,等等)部件根據以下方面的要求可以從這些部件組中選擇部件●平臺(Windows,UNIX操作系統,或類似操作系統)●通信協議(網絡,電纜,等等)●內容提供商101或電子數字內容商店103●硬件(CD,DVD,等等)●認證中心105技術等等。
以下章節詳細描述各個部件組。最后的章節詳細描述如何把這些部件組合到通用播放器中并且討論如何可以定制部件。
在另一個實施例中,播放器應用程序195和SC處理器192的部件可以是一個程序員軟件工具包的一部分。這個工具包允許有針對上述通用播放器應用程序的部件的預定接口。這些預定接口具有API或應用編程接口的形式。一個使用這些API的開發者可以實現一個高級應用程序的部件的任何功能。通過為這些部件提供API,在不需要重新產生這些功能和任何部件的資源的情況下一個程序員可以快速開發一個專用播放器應用程序195。
2.最終用戶接口部件1509這個部件組中的部件聯合提供播放器應用程序195的屏幕顯示。注意設計沒有對這些部件的配置施加任何限制。在通用播放器中提供了一個這樣的配置。根據內容提供商101和/或電子數字內容商店的要求及其他要求,可以選擇其它的配置。
從被用來提供最終用戶顯示1510和被稱作最終用戶控制1511的處理控制的部件開始把這個部件組組合成子集,其中最終用戶控制1511被用于諸如音頻重放和元數據顯示的低層功能。其次,最終用戶顯示部件1510進一步被分成特殊功能組合(播放目錄,數字內容庫),和被用來組合和放置那些低層次部件的對象容器部件。
在下述部件內,唯一的對產生CDS或把內容113復制到CD或其他可記錄介質的引用只適用于播放器應用程序195允許這種功能的情況。還應注意,術語CD在這種情況下是一個通用術語,也可以表示各種其他的外部記錄設備,例如小型盤片或DVD。
圖16是圖15基于本發明的播放器應用程序195的一個用戶界面屏幕例子。最終用戶控制1511的功能包含(一個最終用戶接口的對應屏幕如1601-1605所示)執行內容113的控制●播放/停止按鈕●播放按鈕●停止按鈕●暫停按鈕●快進按鈕●快退按鈕●音量控制●音軌位置控制/顯示
●音頻通道音量電平顯示等等。
顯示與內容113相關的元數據的控制●封面圖畫按鈕●封面圖畫對象●藝術家圖畫按鈕●藝術家圖畫對象●音軌目錄按鈕●音軌目錄信息對象●音軌目錄選擇符對象(點擊播放)●音軌名稱對象●音軌信息對象●音軌歌詞按鈕●音軌歌詞對象●音軌藝術家名稱對象●音軌字幕按鈕●音軌字幕對象●CD名稱對象●CD制作人名單按鈕●CD制作人名單對象●通用(可配置)元數據按鈕●通用元數據對象等等。
最終用戶顯示1510的功能包含(一個最終用戶接口的對應屏幕如1601-1605所示)顯示容器播放目錄管理按鈕的播放目錄●播放目錄管理窗口●數字內容搜尋按鈕●數字內容搜尋定義對象●數字內容搜尋提交按鈕●數字內容搜索結果對象
●復制選擇的搜索結果項目到播放目錄按鈕●播放目錄對象(可編輯)●播放目錄保存按鈕●播放目錄播放按鈕●播放目錄暫停按鈕●播放目錄重新開始按鈕●從播放目錄產生CD按鈕等等。
數字內容庫196的顯示●數字內容庫按鈕●數字內容庫管理程序窗口●數字內容種類按鈕●數字內容種類按鈕●按照藝術家按鈕●按照流派按鈕●按照商標按鈕●按照種類按鈕●刪除按鈕●加入播放目錄按鈕●復制到CD按鈕●歌曲目錄對象●歌曲目錄顯示容器等等容器和雜項●播放器窗口容器●音頻控制容器●元數據控制容器●元數據顯示容器●工具條容器對象●采樣按鈕
●下載按鈕●購買按鈕●錄音按鈕●播放器名稱對象●商標/提供商/商店廣告對象●商標/提供商/商店URL按鈕●藝術家URL按鈕等等3.復制/播放管理部件1504這個部件處理加密密鑰,水印處理,復制管理等等的設置。還存在用于和認證中心105的通信,購買請求的傳輸,諸如按聽付費或按每次對內容113的訪問記帳的特殊業務的接口。當前,由SC處理器192處理與認證中心105通信的功能。
最終用戶109上播放器應用程序195對內容113的使用被記錄到一個諸如許可證數據庫197的數據庫中。對播放器應用程序195使用各個內容113的跟蹤可以被發送到一或多個諸如認證中心105,內容提供商101,電子數字內容商店103或任何被指定和連接到傳輸基礎設施107的站點的記錄站點。可以在預定時間調度這個傳輸以便把使用信息上載到一個記錄站點。可以考慮把凌晨作為一個預定時間,在這段時間傳輸基礎設施107網絡通信量不是太擁擠。播放器應用程序195利用已知的技術在預定時間喚醒并且從本地記錄數據庫向記錄站點發送信息。通過檢查記錄站點的信息,內容提供商101可以測量其內容113的流行程度。
在另一個實施例中,記錄內容113的使用以便以后上載到一個記錄站點的方式被代替成在每次使用內容113期間把內容113的使用上載到記錄站點。例如,當把最終用戶109上存儲的內容113復制或拷貝到一個諸如DVD盤片,數字磁帶,閃速存儲器,微型盤片或等價的可讀/寫移動式介質的外部設備時,對內容113的使用被更新到記錄站點。這可以是在使用條件206中定義的一個復制內容113的前提條件,其中內容113被購買時發送上述使用條件206。這保證內容提供商101在其內容113的播放,復制或完成針對內容113的其他動作期間可以精確地跟蹤內容113的使用。
另外,其他內容113的信息可以被上載到記錄站點。例如執行內容113的最后時間(例如小時和天);內容113被執行多少次;內容113是否被復制或拷貝到一個諸如DVD盤片,數字磁帶或小型盤片的授權外部設備。在最終用戶設備109的一個單獨的播放器應用程序195有多個諸如一個家庭的不同成員的有別用戶的情況下,內容113的用戶的標識和使用信息一起被發送到記錄站點。通過檢查上載到記錄站點的使用信息,內容提供商101可以根據實際的使用,用戶的標識和內容113已經被執行的次數測量內容113的流行程度。實際使用測量使這個系統比使用諸如Nielsen電視或電話調查評級方案、在任一時刻只采樣有限數量的用戶從而推斷結果的采樣方法的系統更接近事實。在本實施例中,實際使用可以是對以后又登錄到一個諸如電子數字內容商店103或內容提供商101的指定Web站點上的用戶的測量。
4.解密1505,解壓縮1506和重放部件1506這些部件使用復制/播放管理部件獲取的密鑰打開從數據管理和庫訪問部件獲取的音頻數據,進行適當的解壓縮以備重放并且使用系統音頻服務播放該數據。在一個可選實施例中,從數據管理和庫訪問部件獲取的音頻數據可以被復制到諸如CDS,磁盤,磁帶或小型盤片的可移動介質。
5.數據管理1502和庫訪問部件1503這些部件被用來在最終用戶的各種存儲設備上存儲和檢索處理并且處理針對存儲的歌曲的信息的請求。
6.應用程序間的通信部件1508這些部件被用來在安全數字內容電子分發播放器和其它可能調用播放器應用程序195、或者播放器應用程序195在執行其功能時需要使用的應用程序(例如瀏覽器,幫助應用程序和/或插件等等)之間進行協調。例如,當激活一個URL控制時,該控制調用適當的瀏覽器并且命令該瀏覽器加載適當的頁面。
7.其他雜類部件在這里組合不屬于上述類別(例如安裝程序)的單個部件。
8.通用播放器在本章節中討論如何將上述部件組合成一個播放器應用195的版本。由于根據軟件對象把播放器應用程序195設計成專用應用程序,本章節描述的例子只是許多可能的不同例子中的一個。播放器對象管理器1501是一個把所有其它部件集中在一起的軟件框架。如上述章節所述,本圖例中播放器對象管理器1501下面的模塊是所有播放器需要的,但根據諸如所使用的加密或擾碼形式,聲頻壓縮類型,內容113庫的訪問方法等等的因素可以被專用版本替代。
上述播放器對象管理器1501是變量對象1512,主要根據與正被播放或搜尋的內容113相關的元數據導出該對象。最終用戶設備109通過最終用戶顯示1510和從最終用戶控制1511接收的輸入可以使用這些變量對象。所有對象均為可配置的,并且所有容器的布局是可定制的。可能通過C/C++,Java或任何等價的程序設計語言實現這些對象。
使用播放器應用程序195下列實施例是一個這樣的例子,即在最終用戶設備109上運行的播放器應用程序195是一個音頻播放器,其中內容113是音樂。本領域的技術人員應當理解,播放器應用程序195可以支持其他類型的內容113。一個典型的音頻發燒友擁有一個保存歌曲的CDS庫。在安全數字內容電子分發系統100內部可以實現所有這些。從電子數字內容商店103購買的歌集被存儲在其系統上的一個數字內容庫196內。類似于實物CDS的歌曲組被存儲成播放目錄。在某些情況下,一個播放目錄實際模擬一個CD(例如,以可購買CD的在線版本的形式從一個電子數字內容商店103購買該CD的所有音軌并且這些音軌被定義成一個相當于CD音軌的播放目錄。但是多數播放目錄由最終用戶構造以便組合他們存儲在其系統上的數字內容庫中的歌曲。但為了進行討論,在提到術語播放目錄時使用一個定制音樂CD的例子。
當最終用戶明確啟動播放器應用程序195而不是通過SC處理器192應用程序的調用來啟動播放器應用程序195時,播放器應用程序195預載到最近被訪問的播放目錄。如果數字內容庫196中沒有播放目錄,則自動啟動播放目錄編輯器(除非用戶已經通過一個優先設置屏蔽了這個功能)。詳細信息參見以下的播放目錄。
調用播放器應用程序195時也可以把一個特定歌曲當作入口參數,而在這樣情況下,播放器應用程序195立即進入歌曲播放模式。可選地,可以準備播放歌曲,但在進行播放之前需要等待最終用戶的動作。更多有關這種情況的信息參見歌曲播放。
播放目錄(一個最終用戶接口1603的對應屏幕)當最終用戶調用播放目錄功能時,有若干可用函數*打開播放目錄*調用數字內容庫管理程序顯示一組存儲的播放目錄以備選擇。更多信息參見下面的數字內容庫管理程序。
*編輯播放目錄*調用播放目錄編輯器(見下文),如果已經裝入一個播放目錄,則裝入當前的播放目錄。否則編輯器產生一個用來開始的空播放目錄。
*運行播放目錄*從選中的歌曲(或在沒有選擇歌曲時從播放目錄開頭)開始每次播放一個歌曲。播放目錄編輯器中的選項設置影響重放的順序。然而這里有可以忽略針對播放目錄的播放的那些選項的控制。
*播放歌曲*只播放從播放目錄中選擇的歌曲。更多信息參見歌曲播放。
*播放目錄信息*顯示關于播放目錄的信息*歌曲信息*顯示關于在播放目錄內選擇的歌曲的信息。
*訪問Web站點
*將與這個播放目錄相關的Web站點加載到瀏覽器中。
*庫管理程序*打開數字內容庫管理程序窗口。更多信息參見下面的數字內容庫管理程序。播放目錄編輯器(一個最終用戶接口1603的對應屏幕)當調用播放目錄編輯器時,有以下最終用戶選項*查看/加載/刪除播放目錄*調用數字內容庫管理程序顯示一組存儲的播放目錄以便選擇一個要加載或刪除的播放目錄。更多信息參見下面的數字內容庫管理程序。
*保存播放目錄*播放目錄的當前版本被存儲在數字內容庫196中。
*刪除歌曲*從播放目錄中刪除當前選擇的歌曲。
*添加歌曲*以是歌曲搜索模式調用數字內容庫管理程序以便選擇要添加到播放目錄中的歌曲。更多信息也參見下面的數字內容庫管理程序。
*設置歌曲信息*顯示并允許改變關于在播放目錄內選擇的歌曲的信息。這個信息被存儲在播放目錄內,并且不改變有關在數字內容庫196內部存儲的歌曲的信息。可以改變以下內容*顯示的歌曲標題*最終用戶對歌曲的評注*播放歌曲的開始延遲*播放歌曲的結尾延遲*在播放時歌曲內部的起始點*在播放時歌曲內部的結束點*隨機模式的加權*歌曲音量調整及更多。
設置播放目錄屬性顯示并且允許改變這個播放目錄的屬性。這些屬性可以被設置成*播放目錄標題*播放目錄模式(隨機,順序,等等)*重復模式(一次性播放,結束時重新開始,等等)*最終用戶對歌曲的評注庫管理程序(一個最終用戶接口1601的對應屏幕)*打開數字內容庫管理程序窗口。更多信息也參見下面的數字內容庫管理程序。
播放歌曲當通過把歌曲當做一個參數調用播放器應用程序195或從一個播放目錄或數字內容庫管理程序內部選擇一個要播放的歌曲準備好播放一個歌曲時,有以下最終用戶選項(一個最終用戶接口1601的對應屏幕)*播放*暫停*停止*快退*快進*調整音量*調整音軌位置*查看歌詞*查看字幕*查看CD封面*查看藝術家圖畫*查看音軌信息*查看其他元數據*訪問Web站點*播放目錄*庫管理程序等等。
數字內容庫管理程序可以在選擇歌曲或播放目錄(參見上面)時隱含調用數字內容庫管理程序,也可以在其自己用于管理最終用戶系統上的歌曲庫的窗口中打開數字內容庫管理程序。在那種情況下,有以下最終用戶選項針對歌曲的選項按照藝術家,種類,商標,其他內容對所有歌曲排序按照藝術家,種類,商標,其他內容選擇歌曲把選擇的歌曲添加到當前播放目錄中復制歌曲到CD(如果允許)刪除歌曲添加歌曲種類等等。
針對播放目錄的選項按名稱排序按種類排序按關鍵字搜尋按包含的歌曲標題搜尋加載選擇的播放目錄重命名播放目錄刪除播放目錄根據選擇的播放目錄產生CD(如果允許)等等。
雖然已經公開了本發明的一個具體實施例,但本領域的技術人員會理解,在不偏離本發明的宗旨和范圍的前提下可以改變這個具體實施例。因而本發明的范圍不受具體實施例的限制,所附權利要求書試圖覆蓋任何和全部這種在本發明范圍內的應用,修改和實施例。
權利要求
1.一個允許安全地提供數據的認證中心,該認證中心能夠與一個系統進行通信,該系統能夠接收用一個第一加密密鑰加密的數據和一個加密第一加密密鑰,加密第一加密密鑰是被一個第二加密密鑰加密的第一加密密鑰,該認證中心包括從加密的第一解密密鑰解密出一個第一解密密鑰;和向一個系統傳遞解密的第一解密密鑰。
2.一個安全地提供數據的系統,該系統包括用一個第一加密密鑰對數據進行加密以產生加密數據;用一個第二加密密鑰對一個第一解密密鑰進行加密以產生一個加密第一解密密鑰;向一個第二系統傳遞加密的數據;向一個第二系統傳遞加密的第一解密密鑰;向擁有一個第二解密密鑰的一個認證中心傳遞加密第一解密密鑰;用第二解密密鑰解密第一解密密鑰;向一個第二系統傳遞第一解密密鑰。
3.如權利要求2所述的系統,其中還包括在傳遞第一解密密鑰之前用一個第三加密密鑰對第一解密密鑰重新加密,其中向一個第二系統傳遞第一解密密鑰是向一個第二系統傳遞經過解密和重新加密的第一解密密鑰。
4.如權利要求3所述的系統,其中第三加密密鑰是一個第二系統的一個公開密鑰。
5.如權利要求2所述的系統,其中第二加密密鑰是認證中心的一個公開密鑰并且第二解密密鑰是認證中心的一個對應私有密鑰。
6.如權利要求2所述的系統,其中還包括證實數據已付費。
7.安全地向一個第二系統提供數據的系統,其中以可以被一個數據解密密鑰解密的方式加密數據,使用一個第一公開密鑰對數據解密密鑰進行加密,上述方法包括的步驟有接收被一個認證中心加密的數據解密密鑰;使用一個第一私有密鑰解密數據解密密鑰;使用一個第二公開密鑰重新加密數據解密密鑰,其中第二公開密鑰具有一個對應的第二私有密鑰;并且向一個第二系統傳遞重新加密的數據解密密鑰。
8.如權利要求7所述的系統,其中從另一個系統接收加密的數據解密密鑰。
9.如權利要求8所述的系統,其中還包括在向一個第二系統傳遞加密的數據解密密鑰之前對數據進行授權。
10.一個用于管理內容數據,相關元數據和相關使用條件數據的系統,其中包括針對相關內容數據的元數據和使用條件數據;改變元數據和使用條件數據中的至少一個以產生促銷數據;和傳遞促銷數據。
11.如權利要求10所述的系統,其中內容數據包含音樂數據,并且使用條件數據包含音樂數據播放的時間限制,可以復制的音樂數據副本的最大數量和可以播放音樂數據的最大次數中的至少一個。
12.如權利要求10所述的系統,其中內容數據包含音樂數據,并且元數據包含到內容數據主機的鏈接,音樂數據內容的描述,音樂數據相關插圖和選定部分的音樂數據中的至少一種。
13.一個用于管理內容數據,相關元數據和相關使用條件數據的電子內容管理系統,其中上述系統包括一個能夠發送內容數據的相關元數據和內容數據的相關使用條件數據的內容提供商;和一個能夠從內容提供商接收元數據和使用條件數據并且能夠根據一部分元數據和一部分使用條件數據中的至少一種產生經過改變的促銷數據的電子商店。
14.如權利要求13所述的系統,其中內容提供商還能夠用一個第一加密密鑰加密內容數據,用一個第二加密密鑰加密第一加密密鑰;并且發送加密第一加密密鑰。
15.如權利要求13所述的系統,其中內容數據包含音樂數據,并且使用條件數據包含音樂數據播放的時間限制,可以復制的音樂數據副本的最大數量和可以播放音樂數據的最大次數中的至少一個。
16.如權利要求13所述的系統,其中內容數據包含音樂數據,并且發送的元數據包含標識內容提供商的信息,到內容主機的鏈接中的至少一種;和音樂數據內容的描述,音樂數據相關插圖和選定部分的音樂數據中的至少一種。
17.如權利要求13所述的系統,其中內容提供商能夠發送內容數據,系統還包括一個能夠從內容提供商接收內容數據的內容主機。
18.播放數字內容數據的數字內容數據播放器,上述數據播放器包括一個發送使用信息的發送器,使用信息是數字內容數據播放或復制的發生信息,數字內容數據被播放或復制的次數,數字內容數據被播放或復制的時間和一個播放或復制數字內容數據的用戶的標識中的至少一種。
19.如權利要求18所述的數據播放器,其中數字內容數據包含數字音樂數據。
20.一個跟蹤數字內容的使用的系統,其中包括一個播放或復制數字內容數據的許可證;許可的數字內容數據;和有關數字內容數據播放或復制的發生信息,數字內容數據被播放或復制的次數,數字內容數據被播放或復制的時間和一個播放或復制數字內容數據的用戶的標識中的至少一種的信息。
21.如權利要求20所述的系統,其中還包括根據該信息禁止進一步播放或復制。
22.如權利要求20所述的系統,其中數字內容數據包含數字音樂數據。
23.如權利要求20所述的系統,其中在預定時間或以預定間隔發送信息。
26.一個含有跟蹤用戶設備上數字內容數據的使用的程序指令的計算機可讀介質,上述程序指令包含用于以下目的的指令獲得一個播放或復制數字內容數據的許可證;接受許可的數字內容;和發送有關數字內容數據播放或復制的發生信息,數字內容數據被播放或復制的次數,數字內容數據被播放或復制的時間和一個播放或復制數字內容數據的用戶的標識中的至少一種的信息。
全文摘要
跟蹤用戶設備上數字內容的使用的系統。被連接到網絡的電子商店向用戶銷售播放數字內容的許可證。從網絡接收許可證內容數據的內容播放器被用來播放許可證內容數據。另外,一個被連接到網絡的記錄站點跟蹤內容數據的播放。具體地,記錄站點從網絡接收播放信息,并且播放信息包含內容數據已經被相關內容播放器播放的次數。還提供了一個跟蹤用戶設備上數字內容的使用的方法。根據該方法,一個播放數字內容數據的許可證被賣給一個用戶,并且許可內容數據被發送到該用戶的一個內容播放器。而且,每當內容數據被內容播放器播放或者被從內容播放器復制到一個外部介質時,信息被發送到一個記錄站點以便能夠跟蹤許可內容數據的使用。
文檔編號H04L9/08GK1320232SQ99810853
公開日2001年10月31日 申請日期1999年8月12日 優先權日1998年8月13日
發明者小約翰·朵拉克, 埃德加·道恩斯, 喬治·G·格魯斯, 馬科·赫塔多, 克里斯托弗·萊曼, 杰弗里·洛茨皮奇, 西薩·邁蒂納, 肯尼思·邁斯特德 申請人:國際商業機器公司