摘要:針對當前DRM系統(tǒng)客戶端存在的兼容性差且不能通用的問題,設計了一種新型的通用數(shù)字權限管理客戶端模型。主要思路是通過對數(shù)字信息使用的監(jiān)控用實現(xiàn)數(shù)字權限的管理。使得用戶不需要在客戶端安裝多個DRM系統(tǒng)客戶端軟件,只需安裝一個客戶端即可實現(xiàn)不同類型數(shù)字內(nèi)容、不同數(shù)字內(nèi)容應用軟件的兼容,減少客戶安裝維護的復雜性和潛在的安全沖突。誼模型具有良好的通用性和廣闊的應用前景。
關鍵詞:兼容性;通用性:客戶端;安全
0 引言
數(shù)字版權管理技術(DRaM:Digital Rights Management)是用于管理用戶對數(shù)字內(nèi)容(digital content)的使用方式,實現(xiàn)保護數(shù)字內(nèi)容免遭未經(jīng)授權的使用或復制的方法的整體機制。在2001年1月,美國麻省理工學院在(Technology Review)雜志上將DRM技術評選為改變未來世界的10大創(chuàng)新技術之一。目前DRM的應用研究中,美國的InterTrust是最早進行DRM技術研究和開發(fā)的公司。而其它公司如微軟、Adobe,RealNetworks等也都提出了較為成熟的投入實際應用的方案。
目前應用的DRM系統(tǒng)從本質(zhì)上說都屬于獨立的系統(tǒng),因為它們都是由各著名軟硬件制造商針對自己的某個平臺或某個應用而設計的,因而它們之間不能互相兼容,數(shù)字信息產(chǎn)品只限于在某個特定環(huán)境平臺下使用,使得用戶不能靈活地合法使用其數(shù)字信息產(chǎn)品。
面對這個問題。國際標準組織通過制定統(tǒng)一的數(shù)字權限語言如ODRL來實現(xiàn)對數(shù)字使用權限的統(tǒng)—描述。但是需要指出的是,ODRL并不能完全解決DRM系統(tǒng)通用性問題,因為面對不同的類型的文件以及同一文件的不同應用軟硬件環(huán)境,支持ODRL語言的DRM系統(tǒng)仍不具備通用性。為了解決這個問題,本文提出了一種新型的通用數(shù)字權限管理客戶端模型,它可以解決DRM系統(tǒng)的客戶端通用性問題,主要的思路是通過對數(shù)字信息使用的監(jiān)控來實現(xiàn)數(shù)字權限的管理。
1 數(shù)字版權管理技術
1.1 DRM系統(tǒng)的架構
目前大多數(shù)DRM系統(tǒng)都采用如圖1所示的系統(tǒng)架構設計。
從圖1中可以看出,DRM系統(tǒng)有四個參與者,分別是:消費者;數(shù)字內(nèi)容提供者:主要是由數(shù)字內(nèi)容的版權所有者組成,他們希望通過DRM系統(tǒng)來保護他們版權;分發(fā)者:主要是由網(wǎng)絡服務商組成,他們提供不同的數(shù)字內(nèi)容分發(fā)渠道。如網(wǎng)上零售和網(wǎng)上影院等,通過這些渠道將數(shù)字內(nèi)容提供者所提供的數(shù)字內(nèi)容分發(fā)至消費者;凈室:主要是解決涉及到資金處理過程中的事務,如:它負責向消費者收取費用,并將費用按協(xié)議分給數(shù)字內(nèi)容提供商和分發(fā)者,并在確認消費者已支付費用的情況下,向消費者發(fā)放數(shù)字使用許可證書。

上述的DRM系統(tǒng)的主要工作過程是,首先由數(shù)字內(nèi)容提供者將其提供的數(shù)字內(nèi)容進行編碼和加密后打包,然后提供給分發(fā)者,由分發(fā)者向消費者提供數(shù)字內(nèi)容的相關信息。當消費者決定購買該數(shù)字信息產(chǎn)品后,他通過向凈室提出請求并向它支付相關費用;凈室在得到消費者支付的費用后,將費用分發(fā)至數(shù)字內(nèi)容提供者和分發(fā)者,并將數(shù)字內(nèi)容使用許可證發(fā)送到消費者;消費者即可憑借許可證合法使用對應的數(shù)字信息內(nèi)容。
1.2 DRM系統(tǒng)的關鍵技術
DRM系統(tǒng)的關鍵技術一共有以下幾種:
(1)DRM信任模型
DRM系統(tǒng)中的信任模型與一般的安全信任模型不同,它不是簡單地針對幾個參與方進行身份認證和交互的信息加密。DRaM的信任模型必須要保證當消費者獲得加密的信息產(chǎn)品和許可證書之后,可以按照證書要求的方式來使用數(shù)字信息,因此它的信任模型不僅僅只是對用戶身份的認證和數(shù)字信息的加密,還必須要實現(xiàn)監(jiān)控用戶對數(shù)字信息的合法使用。通常DRM系統(tǒng)是通過硬件技術(可信計算技術)結(jié)合軟件技術(加密與監(jiān)控)實現(xiàn)。
(2)加密技術
DRM系統(tǒng)中的加密技術主要有:對稱和非對稱加密技術。對于數(shù)字信息一般采用對稱加密技術,以提高數(shù)字信息的加密與解密速度;而針對個人身份認證,數(shù)字證書等方面一般采用非對稱加密技術以確認各參與方的身份。除此之外,還有數(shù)字簽名和數(shù)字論證等加密技術。
(3)應用環(huán)境標識與區(qū)分
由于DRaM系統(tǒng)對用戶使用數(shù)字內(nèi)容的方式有嚴格的限制,為了監(jiān)控和防止數(shù)字內(nèi)容被非法使用,數(shù)字內(nèi)容的應用環(huán)境標識與區(qū)分就顯得很重要,只有使用許可證確認的應用環(huán)境,數(shù)字內(nèi)容的使用才能得到有效的監(jiān)控。數(shù)字內(nèi)容的應用環(huán)境標識與區(qū)分—般采用信任計算技術:采集應用環(huán)境特定的參數(shù),生成應用環(huán)境標識并在每次使用數(shù)字內(nèi)容時進行識別。
(4)數(shù)字水印
數(shù)字水印技術是在數(shù)字內(nèi)容內(nèi)插入數(shù)字的相關內(nèi)容信息以及一些特殊目的的數(shù)據(jù),這些數(shù)據(jù)與數(shù)字內(nèi)容合成—體。用戶難以察覺。在DIVl系統(tǒng)中內(nèi)容提供者使用數(shù)字水印技術在提供的數(shù)字內(nèi)容中插入數(shù)字內(nèi)容的相關信息以及版權說明,還有使用許可說明等。
2 通用型的數(shù)字權限管理客戶端模型
由上文所述可知,當前DRM系統(tǒng)不能通用的主要原因并不是在于數(shù)字內(nèi)容的提供與分發(fā),以及許可證發(fā)放、收費流程等方面。因為DIeM系統(tǒng)主要的幾個參與方都是利用網(wǎng)絡進行的,所以這種架構不會造成系統(tǒng)通用性問題。
目前DIeM系統(tǒng)不能通用的主要原因在于消費者客戶端。DRM系統(tǒng)的信任模型必須要保證消費者在得到數(shù)字內(nèi)容后,按許可證的要求合法使用數(shù)字內(nèi)容,因此DRM系統(tǒng)需要用戶安裝專用的客戶端,系統(tǒng)通過客戶端來監(jiān)控用戶對數(shù)字內(nèi)容的使用。而現(xiàn)有DIVl系統(tǒng)的客戶端都是某個公司針對某個應用軟件如:Window media pJ,dy,Adobe reader等開發(fā)的插件,或者是針對某個類型的文件而開發(fā)出來的專用客戶端,如索尼的MP3客戶端,電子書客戶端等。顯然這種類型的客戶端不僅限制了客戶,同時也限制了系統(tǒng)的通用性,使得用戶不得不在同一臺設備上安裝多個DRM系統(tǒng),這給用戶帶來了不便,也造成潛在的系統(tǒng)沖突。為了解決通用性問題,本文利用ODP~L語言為基礎進行數(shù)字權限描述,通過在消費者設備上建立統(tǒng)一的DRM監(jiān)控進程來完成通用的DRM客戶端,達到通用DRM系統(tǒng)的目的。
2.1 通用型數(shù)字權限管理客戶端模型架構
由上文所述,本文的通用型數(shù)字權限管理客戶端模型如圖2所示。

從圖2中可以看出,通用型數(shù)字權限管理客戶端模型主要由三個部分組成:DRM客戶端控制進程——該進程主要的功能是對數(shù)字內(nèi)容按許可證進行解碼,注冊數(shù)字內(nèi)容信息;數(shù)字內(nèi)容注冊表——該數(shù)據(jù)結(jié)構主要用于注冊數(shù)字內(nèi)容的許可證內(nèi)容以及其它相關信息;DIeM臨時文件容器——主要存放控制進程生成解碼后的數(shù)字內(nèi)容臨時文件。
通用型數(shù)字權限管理客戶端模型的工作流程由以下幾個步驟組成:
(1)用戶將獲得的數(shù)字內(nèi)容和許可證提交到客戶端控制進程,控制進程通過對數(shù)字內(nèi)容以及許可證的校驗,確認許可證以及數(shù)字內(nèi)容的合法性之后,將數(shù)字內(nèi)容的相關信息和許可證存放到數(shù)字內(nèi)容注冊表。
(2)當用戶使用數(shù)字內(nèi)容時,向控制進程發(fā)出請求,控制進程首先利用注冊表信息,進行應用環(huán)境識別和用戶使用權限確認,然后根據(jù)許可證,對數(shù)字內(nèi)容解碼,將解碼后的數(shù)字內(nèi)容放入DRM臨時文件容器。
(3)DRM客戶端控制進程利用用戶環(huán)境中默認的應用軟件(或由用戶指定)打開臨時文件容器內(nèi)的數(shù)字內(nèi)容。用戶可以開始使用數(shù)字內(nèi)容,同時DRM客戶端控制進程監(jiān)控用戶按許可證規(guī)定的方式使用文件。
2.2 控制進程的監(jiān)控功能實現(xiàn)
在DRM系統(tǒng)中,監(jiān)控用戶使用數(shù)字內(nèi)容的功能十分重要,因為用戶可能在打開數(shù)字內(nèi)容時,采用復制等手段危害數(shù)字內(nèi)容的版權。本文設計的數(shù)字權限管理客戶端模型為了實現(xiàn)通用性,不能采用針對某個軟件的插件等方式來監(jiān)控用戶,我們采用監(jiān)控DRMll臨時文件容器的方法實現(xiàn)對用戶的監(jiān)控。其主要實現(xiàn)模塊由二個部分組成:
(1)文件系統(tǒng)監(jiān)控模塊

文件系統(tǒng)監(jiān)控模塊用于監(jiān)控當前系統(tǒng)中打開DRM臨時文件容器中的文件所對應的進程。下面以Windows XP系統(tǒng)平臺為例加以說明。模塊通過Windows內(nèi)核API函數(shù)Nt-QuerySystemlnformation函數(shù)返回SYSTEM_HANDLE結(jié)構的數(shù)組,獲得所有句柄,包括:文件句柄。Motex句柄,事件句柄等等。對于Window XP文件對象來說,其旬柄類型值是28,憑此可以獲取當前正在打開的文件句柄,代碼片斷如圖3所示。文件系統(tǒng)監(jiān)控模塊由文件句柄即可獲得當前打開DRM臨時文件容器的應用進程,從而通過對應用進程的監(jiān)控,保證用戶按許可證的要求使用數(shù)字內(nèi)容。
(2)用戶使用文件方式控制模塊
用戶使用文件方式監(jiān)控模塊的主要功能是控制用戶按許可證的方式使用數(shù)字內(nèi)容。它的功能實現(xiàn)建立在文件系統(tǒng)監(jiān)控模塊的基礎之上:利用Windows鉤子程序,在獲知使用DRM數(shù)字內(nèi)容的進程情況下,可以很容易地實現(xiàn)該進程對數(shù)字內(nèi)容的使用控制。如禁止另存、復制、文件共享等危害數(shù)字內(nèi)容版權的使用方式;同時也可以對用戶使用數(shù)字內(nèi)容的具體細節(jié)參數(shù)進行統(tǒng)計,并將其存入DRM注冊表中。
3 應用舉例
本文以使用影音文件為例,說明本客戶端模型的工作過程。
Avi文件可由Windows自帶的播放器打開之外。還可以由RealPlay。影音風景等其它應用工具打開播放。采用本DRM客戶端模型,用戶首先在獲取加密的數(shù)字內(nèi)容和許可證之后,向客戶端提交許可證和數(shù)字內(nèi)容進行校驗注冊,客戶端將許可證和數(shù)字內(nèi)容相關信息寫入注冊表。當用戶使用數(shù)字內(nèi)容后,客戶端即可根據(jù)許可證將數(shù)字內(nèi)容解密后放入DRaM臨時文件容器。同時調(diào)用系統(tǒng)默認工具(如Windows media play),也可以由用戶選擇打開工具。
當用戶使用本數(shù)字內(nèi)容時,客戶端控制進程即在系統(tǒng)內(nèi)根據(jù)注冊的數(shù)字內(nèi)容名監(jiān)控所有打開和使用當前數(shù)字內(nèi)容的進程,并控制它們對數(shù)字內(nèi)容的使用方式,從而保證用戶按許可證的要求使用數(shù)字內(nèi)容。
4 結(jié)束語
本文描述了一種新型的通用數(shù)字權限管理客戶端模型,該模型可以實現(xiàn)DRM數(shù)字內(nèi)容對消費者客戶端的通用性。即消費者可以應用不同的軟件工具對合法擁有的數(shù)字內(nèi)容進行使用,用戶只需要安裝一個客戶端即可實現(xiàn)對不同類型數(shù)字內(nèi)容、不同數(shù)字內(nèi)容應用軟件的兼容。本文所給出的模型,能減少用戶安裝維護的困難,同時也可減少系統(tǒng)安全功能沖突的潛在風險,因而它具有廣闊的應用前景。