王景中 李小科
北方工業大學信息工程學院 北京 100144
數字版權保護系統(Digital Rights Management,DRM)實現的核心是數字內容的密鑰管理和使用。密鑰是開啟數字內容的鑰匙,用戶在使用數字內容之前,不需要購買數字內容,只需要購買各種數字內容的“鑰匙”,數字內容的鑰匙是按照各種不同的加密算法來實現,數字內容要得到保護,一是要保證各個數字內容的密鑰惟一性,不可破解;二是保證密鑰的安全性,密鑰的安全管理得到保證才能使用戶使用安全。
目前,數字內容的保護方法主要有兩大類:一類以數字水印技術為核心的DRM技術 ;另一類是數據加密和防拷貝為核心的技術。數字水印技術是信息隱藏技術的一個重要分支,它的基本原理是在不損害數字內容的質量情況下,將與版權有關的信息作為不可見的標志嵌入到數字內容中,從而在使用這些數字內容之前先要對嵌入的不可見內容進行檢測來保護數字內容。數據加密和防拷貝是對數字內容進行加密,隨機產生密鑰和對應的解密證書。其中密鑰的生成和用戶的所使用的硬件信息綁定,用戶在使用經過加密的數字內容時候,先從服務器得到解密密鑰和證書,通過密鑰來對加密的數字內容解鎖來獲得數字內容的操作權限。這種實現方式是一種許可證管理的方式,多數采用網絡獲取許可證的途徑取得,目前這種技術在國內外使用比較廣泛。
隨著數字內容的使用,數字內容的版權保護有了更進一步的發展,在第一代DRM中,只是集中研究對內容加鎖,限制信息分發、復制,發展到對數字內容描述、標示、交易、保護以及檢測的第二代DRM。目前,典型的DRM系統有國外的Apple公司的FairPlay系統,微軟公司的Digital Asset Server版權保護方案;國內有方正的Apabi版權保護技術、書生公司的SEP DRM系統等。
各種DRM系統的設計與實現都有基本的模型,各種DRM的廠商都有不同的DRM實現方式、名稱以及內容如何使用的規則判定的方法。但不管DRM系統由那個廠商來開發,基本的模型都是相同的,這個基本模型包括四個部分:內容提供者、分發者、用戶以及認證中心。這四部分進行信息流的交互就能完成各種不同的DRM功能,圖1所示是目前被廣泛使用的D R M系統的模型。
首先,內容提供者對要提供給用戶的數字內容進行編碼,生成一種用戶所使用的DRM系統所能支持的數據格式,數字內容被加密、打包后準備分發,內容提供者可以是普通用戶、公司或者其它合法經營機構,內容提供者對數字內容進行標記,使數字內容只能讀、寫、防拷貝等權限進行設定,當內容提供者完成整個數字內容使用規則限定后,就可以進行最后的發布。
對數字內容進行使用規則限定后的受保護內容發送給內容分發者,而數字內容的證書以及使用規則發到認證中心,實現密鑰與受保護的數字內容分離。其中的內容分發者可以是服務器(如Web服務器、流媒體服務器),認證中心可以是可信的第三方機構或者內容提供者本人。

圖 1 DRM系統模型圖
用戶可以從服務器上下載或者以郵寄的方式獲得數字內容,但得到的數字內容在沒有認證的數字證書時,是不能使用的,用戶必須還要獲得對應于數字內容的數字證書,對數字內容進行解密,從而取得數字內容的使用權。用戶要得到數字證書必須先進行消費來獲取對應證書的ID號,當用戶消費后,把獲取證書ID號提交給認證中心,認證中心收到用戶的請求認證信息,開始在認證中心查詢用戶的繳費情況、使用權限、請求的何種數字內容以及要生成的證書的規則,最后生成證書發給用戶,并且生成一份交易憑證發給內容提供者,內容提供者可以憑此最后結算得到自己的酬勞。用戶用得到的證書打開受保護的內容,此時完成了內容提供者到用戶之間的信息傳輸。
一般的DRM系統的實現要與用戶所使用的設備硬件進行綁定,例如IP、MAC地址、甚至用戶指紋來進行用戶的身份鑒別,這極大的限定了用戶使用的方便性,并且合法用戶在對數字內容的解密密鑰都是在計算機內部進行的,在密鑰被送入計算機內存解密,要打開數字內容的明文過程中面臨一個漏洞,當合法用戶開始使用得到的密鑰打開數字內容時,非法用戶可用各種監聽程序來獲得合法用戶最后解密的明文,非法用戶在得到用于解密受保護內容的明文信息后,非法用戶可以從內容服務器上獲得對應的數字內容,用得到的明文解密數字內容,此時內容提供者和合法用戶的利益都將受到威脅。對于這種窘迫的困境,可以考慮使用USB-KEY。引入USB-KEY配合PKI體系,可以很好的解決上述的問題,設計實現一個更好的解決方案。
整個系統的設計可分為 :硬件模塊(USB-KEY)、交互模塊、通信模塊、實時監視模塊,如圖2所示。
硬件模塊主要是存儲對應于數字內容的私鑰,合法用戶在得到數字內容的USB-KEY后,在使用時,先要更改使用USB-KEY的初始密碼,此處密碼設定為了防止非法用戶獲得USB-KEY后對數字內容進行操作。交互模塊是合法用戶在操作數字內容時,DRM系統對用戶做出的請求、響應過程,交互模塊的設計主要突出方便用戶使用。通信模塊涉及兩個方面:一是與USB-KEY 的通信;二是與服務器的通信。與USB-KEY的通信是為了在用USB-KEY中運算后得到最后的驗證結果(true或false) ;與服務器的通信是為了在合法用戶使用完密鑰后,方便用戶獲得新的密鑰,可以與服務器建立安全通信服務,獲得新的密鑰,并允許合法用戶把新的密鑰灌入USB-KEY中,此處設計為了使USB-KEY達到使用壽命延長并且保證用戶和內容提供者的利益不受到損失。實時監視模塊是為了防止合法用戶離開計算機或者合法用戶在使用過程中從計算機上取出USB-KEY,系統要執行鎖定操作,防止非法用戶使用,實時監視模塊執行流程如圖3。
基于USB-KEY的DRM系統,內容提供者可以把對數字內容的認證的私鑰放入USB中,將其作為開啟受保護內容的鑰匙,其中在生成受保護內容的數字證書時,可以委托可信的第三方CA中心來制作,并將對應于數字內容的數字證書放入USB KEY中,用戶在使用數字內容時候利用USB-KEY中的智能芯片在USB-KEY中完成整個數字證書的認證,無需把密鑰調入計算機內存處理,這樣可以很好的避免網絡監控程序度密鑰的提取。

圖2 基于USB-KEY的DRM系統模塊圖

圖3 實時監視模塊執行流程圖

圖4 基于USB-KEY的DRM系統執行流程圖
用戶在使用DRM系統對數字內容進行操作時,首先要判斷用戶的合法性,等待用戶在所用計算機上插入USB-KEY,只有合法用戶插入了正確的USB-KEY,利用DRM系統才可以操作受保護的數字內容,如果用戶插入不合法的USB-KEY或者用戶使用的USB-KEY已經過期,DRM系統給與用戶相應的提示信息,合法用戶在使用USB-KEY的過程中,其中USB-KEY根據內容提供者所定義的使用規則對合法用戶做以限定(如不能拷貝、粘貼、限定使用次數等)。其基本的操作流程如圖4所示。
基于USB-KEY的數字版權保護系統的設計將硬件保護方式引入,融合PKI技術來加強對數字內容的保護,其安全性相比通常的DRM系統有所提高,并且可以實現對系統的實時保護,整個系統的設計方案有以下幾個特點:
(1)數字內容的密鑰采用獨立硬件存儲,密鑰使用安全性提高。在USB-KEY中使用不同的加密解密處理,避免數字內容的訪問密鑰泄露。
(2)系統具有實時保護的功能。系統采用實時監控的方式來實現,避免數字內容在未經過可信用戶操作而造成的數字內容泄密或丟失。
(3)可以擴展為多種數字內容實現保護機制。使用USB-KEY存儲對應數字內容的數字證書,可以方便存儲多種數字內容的密鑰,增加了數字內容的使用范圍。
DRM系統隨著網絡的發展將不斷跟進,本文所研究和設計的整個系統的整體設計采用模塊化設計,可以進行擴展、組裝成特定于用戶的DRM系統,其中的通信模塊在隨著SSL技術的廣泛應用,此模塊需要再做新的架構設計,以提高網絡通信的安全,此模塊的進一步實現是下一步進行研究的內容。
[1] 孫鑫,余安萍. VC++深入詳解[M].北京:電子工業出版社.2008.
[2] 邵波,王其和.計算機網絡安全技術和應用[M].北京:電子工業出版社.2005.
[3] 曹福祥.計算機身份認證的技術分析和比較[J].信息科技.2007.
[4] 荊繼武, 林璟鏘, 馮登國.PKI技術[M]. 北京:科學出版社.2008.
[5] 佘堃, 鄭方偉.PKI原理與技術[M].成都:電子科技大學出版社.2007.
[6] http://www.china-drm.com.