李莉,周斯琴,劉芹,何德彪
?
基于區塊鏈的數字版權交易系統
李莉,周斯琴,劉芹,何德彪
(武漢大學國家網絡安全學院, 湖北 武漢 430072)
在當前數字化、網絡化時代中,數字版權交易需求越來越大,傳統的中心化版權保護系統存在注冊成本高、作品受理時間長、容易遭受破壞者的篡改等問題。區塊鏈技術作為一個以P2P網絡為基礎,以密碼技術為核心的去中心化網絡結構,能夠在網絡上以純數學方法建立信任關系,無需依托中間平臺就能夠緩解上述問題。借助區塊鏈技術的自我監管、可追溯、去中心化的特性,結合數字版權交易場景,設計了一個基于聯盟鏈的數字版權交易系統模型,利用當前IBM提供的最新聯盟鏈技術,做了版權注冊和版權交易的實現,能夠保證版權信息不可篡改性和可溯源性。最后,測試了鏈碼部署安裝時間。結果表明,系統安裝簡單,維護成本低。相比傳統的基于可信第三方版權認證機制,基于區塊鏈的數字版權交易系統注冊時間短,無需注冊費,具有更好的架構安全性和可擴展性。
數字版權交易;區塊鏈;超級賬本;系統設計與實現
數字版權保護技術是基于密碼學技術和相關法律法規來保障數字作品的合理使用以及創作者權益的一項技術,它需要確保數字內容從出版到使用整個流通過程中的安全性,對數字內容的原創者、所有者和使用者都應該授予不同的使用權力以及使用控制,確保內容的合理使用,以及權力轉移的公開透明。但是,當前的數字版權保護系統注冊成本高,申請過程復雜,而且花費時間長[1-2]。由于這些原因,在數字化網絡時代中,很多數字作品創作者不愿意申請數字版權保護,使大量碎片化的數字作品難以得到版權保護。這就導致網絡作品容易遭到篡改和盜用,原創者利益大大受損。而基于中心化的權威機構授權管理方式也增加了現實經濟和社會活動的信任成本和會計成本。這些問題都使現有的版權保護系統難以滿足當前數字版權貿易需求[3-4]。作為“信任互聯網”的底層架構,區塊鏈是由節點參與的分布式開放賬本[5-6],基于一種新型的去中心化協議,能安全地存儲交易信息和其他數據(債權、股權和數字資產)。聯盟鏈[7]是對特定組織團體開放的區塊鏈系統,與公有鏈不同,聯盟鏈的共識過程是由預先選擇的一系列節點所掌控,這種共識方式加快了交易的確認時間。因此,可以在這類的區塊鏈系統上構建自己的數字版權交易系統,一些權威管理機構充當系統中的部分管理節點,在普通用戶發起上傳自己數字作品唯一標識符(DCI, digital copyright identifier)[8]的交易時,這些管理節點對這筆交易進行驗證,只有通過一定數量節點的同意,這筆交易才能上鏈,鏈上的版權數據庫才會增加一條新的數字版權記錄。這種“部分去中心化”的管理方式相比傳統的數字版權系統,更加安全、高效。
因此,本文設計實現了一個基于聯盟鏈的數字版權交易系統,該系統由多個節點進行管理,系統的身份準入機制可以將滿足要求的其他節點加入系統,多用戶的權限分配使參與系統的不同用戶擁有對鏈的不同操作權限。目前,系統能夠安全地管理用戶信息并提供基本的數字版權管理和數字版權交易服務。當系統管理員通過初始化、實例化,安裝合約到鏈上后,其他用戶可以調用鏈上的合約來請求系統服務。為了實現系統的可擴展性和高安全性,本文采用了Hyperledger提供的聯盟鏈系統[9]和composer框架[10]進行開發,完成了數字版權交易系統的后臺業務代碼,并提供簡單的Java Web可視界面,用戶可以登錄Java Web客戶端查看每次調用系統服務的歷史交易記錄。
區塊鏈概念起源于比特幣系統[11],它最初的學術定義為:由包含交易信息的區塊從后向前有序連接起來的數據結構。區塊鏈作為一個記錄所有交易記錄的公開賬本,鏈上的每一個塊里面都存有礦工們的最近交易記錄,而且這些塊以時間順序依次鏈接起來。每一條區塊鏈都完整地存儲在由多個節點組成的分布式網絡上,從而避免單點失效,或者中心數據庫被攻擊等問題。通過這個公開賬本,區塊鏈實現了其不需要一個中央權力機構或受信任的第三方來協調互動,驗證交易或監管行為的特征。區塊鏈網絡中存儲了完整的數據賬本,包含曾經執行的所有交易,使歷史上發生的交易信息都可以被網絡中節點所訪問,而一個節點只有超過全網51%的算力,才能更改區塊鏈上的交易信息。實際上,這是很難做到的。
區塊鏈的應用有很多,其中的典型應用是資產注冊、存儲和交易,包含金融、經濟和貨幣等各個領域的有形資產和無形資產。使用區塊鏈技術開辟了不同類型各個層次的行業應用功能,包括貨幣、市場、金融交易、物資等[12]。通過智能合約使用區塊鏈編碼的資產,可以稱為智能資產[13-14]。本文以數字版權作為一種智能資產,將版權交易通過智能合約實現,并記錄在公開賬本中。
目前,根據權限管理將區塊鏈分為3種形態:私有區塊鏈、公共區塊鏈和聯盟區塊鏈。相比前2種區塊鏈,聯盟鏈結合了公共區塊鏈的“低信任”和私有區塊鏈的“單一高度信任”,提供了一種混合的模式,能夠適應市場上大多數的應用場景。超級賬本是由非營利組織Linux基金會成立的一項企業級區塊鏈開發及應用的開源項目。Fabric是最早加入超級賬本中的頂級項目,項目在GitHub上,網址為https://github.com/ hyperledger/fabric。本文就是以該項目為技術依托,構建了企業級數字版權交易系統。Fabric可以為其上的應用提供gRPC API,以及封裝API的SDK調用。應用可以通過SDK訪問區塊鏈網絡中的多種資源,包括公開賬本、交易、鏈碼、事件和權限管理等。交易的執行邏輯通過鏈碼承載,權限管理則負責整個過程中的訪問控制。Fabric大致分為3種不同的層級結構[15]:網絡層;共識機制和權限管理;業務層。網絡層面向系統管理人員。該模塊實現了P2P網絡,提供底層構建區塊鏈網絡的基本能力,包括不同角色的節點和服務。共識機制[16]和權限管理面向聯盟和組織管理人員,實現共識和權限管理。業務層面向業務開發人員,支持業務應用的開發工作。本文主要是在業務層進行操作,實現業務鏈碼,并將鏈碼打包發布到Fabric網絡的多個節點上。這里所說的節點與以太坊[17]有些不同。從功能上,Fabric網絡中的節點可以分為:背書節點、確認節點、排序節點。背書節點負責對來自客戶端的交易提案進行檢查和背書;確認節點檢查交易請求,并執行交易;排序節點負責將接收到的交易排序并打包成區塊,進行共識。
總之,以Fabric為技術依托的聯盟鏈可以做到很好的節點間的連接,只需要極少的成本就能維持運行,提供迅速的交易處理和低廉的交易費用,有很好的擴展性(但是擴展性隨著節點增加又會下降),數據可以有一定的隱私。
基于區塊鏈的數字版權保護系統是在區塊鏈網絡上建立的數字版權保護系統,它具有去中心化、數字內容安全存儲,交易記錄可追溯,防篡改等優點。因此,本文設計了一種新的基于區塊鏈的數字版權交易系統,它的總體架構如圖1所示。

圖1 版權交易系統結構
從功能類型上,系統大體分為3層結構。最上層是用戶層,負責提供用戶管理服務接口以及版權管理服務接口,如用戶注冊、用戶登入管理、個人信息修改、密鑰管理、版權登記接口、版權查詢接口、版權交易接口、版權注銷接口。中間層是數字版權交易的業務模型層,這部分是由開發人員進行設計實現,其中鏈碼(即智能合約)定義了數字版權交易系統的數據結構和功能函數,賬本則記載了用戶的每次交易。用戶在用戶層通過API+SDK調用業務模型中的鏈碼,從而完成相應的業務功能。由于每次交易都被記載在賬本中,版權的交易信息可以在鏈上進行追溯。最下層是Fabric網絡層,這一層與中間層通過Connection Profile這個文本文件進行連接,這個連接文件定義了節點信息,節點通信端口,便于將本文所設計的業務模型安裝到不同用戶的節點上,從而形成去中心化通信網絡。
該系統所針對的用戶主要分為3類用戶:創作者、管理員和訂閱者。
1) 創作者,即數字作品的原創作者。他可以將自己申請到的數字版權的DCI碼填入表單,隨后調用Fabric提供的SDK和遠程API來操作鏈碼,將數字作品的信息(數字作品名稱、DCI、著作人、作品類型、創作時間)存入區塊鏈上,并可以通過函數接口進行修改DCI。
2) 管理員,即權威管理機構,可以對創作者和訂閱者的賬號進行管理,同時發布新的合約到鏈上,或者廢除鏈上舊的合約。
3) 訂閱者作為最普通的大眾用戶,能夠訂閱鏈上的某個數字作品,在訂閱者調用遠程API,執行訂閱鏈碼,就可以獲取鏈上數字作品的閱讀權。
鏈碼是超級賬本中所用到的一個專業術語,它可以被稱為合約代碼,被用來實現系統的主要邏輯。鏈碼最初是由管理人員在系統初始階段部署到各個節點上的。當鏈碼成功地在節點上初始化、實例化、安裝這3個過程后,用戶通過登錄客戶端軟件,利用業務模型提供的遠程API函數調用鏈碼。每個節點都設有客戶端軟件。賬本記錄了每次鏈碼調用的日志,有增減鏈上用戶的交易記錄,有版權轉移的交易記錄,有作品訂閱的交易記錄等,維護這些交易記錄就是維護記賬的過程。
下面,以發布一個版權轉移交易為例,介紹本系統的交易流程。
1) 數字作品創作者登錄系統客戶端,進行身份注冊,獲取注冊證書(Ecert)和交易證書(Tcert)。隨后,用戶才能利用客戶端發起交易。
2) 用戶成功登錄客戶端,創建一筆版權轉移的交易提案(Proposal),并將這筆交易提案發送到各個背書節點。
3) 背書節點執行版權轉移鏈碼,并將提案結果返回給客戶端。
4) 客戶端收集到足夠的背書支持后,將交易提交到排序節點,交易內容包括提案結果。
5) 排序節點將排完序的交易封裝到區塊中,區塊隨后被發送給各個驗證節點。
6) 驗證節點定期地從排序后的交易區塊結構中,對交易進行落盤前的最終檢查(包括交易消息結構、簽名完整性、是否重復、讀寫集合版本是否匹配等)。檢查通過后,執行合法的交易,將結果寫入賬本,同時構造新的區塊,更新區塊中元數據塊,記錄交易是否合法等信息。

圖2 基于Fabric應用的交易流程
發布版權訂閱交易類似上述流程,在此不贅述。
以上對該系統的架構和功能進行了詳細介紹。相較于其他版權管理系統,基于區塊鏈的數字版權交易系統有如下優點:①創作者將自己的數字版權信息存儲在區塊鏈上,保障了創作者對于創作作品的擁有權;②創作者能根據自己的定價,將自己的數字作品版權轉移給其他用戶,從而獲得經濟利益,數字作品版權的轉移是調用區塊鏈上的版權轉移鏈碼實現的,在整個Fabric網絡上是透明的、可監控的,版權的轉移不會存在爭議;③給鏈上的數字作品提供訂閱接口,普通用戶可以支付小額費用給原創者,從而獲得數字作品的閱讀權。
本節從用戶、資產和交易這3個模塊介紹數字版權交易系統的業務模型。
1) 用戶
用戶分為普通用戶、管理員、創作者(即最初的數字資產所有者)。其屬性結構分別設計為如下元組所示:={,,,,,,},={,,,,},={,,,,,}。定義是用戶基類,普通用戶和管理員用戶屬于這一類,創作者屬于這一類,是用戶的公鑰,是用戶的私鑰,是用戶錢包余額,記錄用戶訂閱的所有書籍信息,記錄用戶創作的所有書籍信息。私鑰被用來對數字版權交易做簽名,進而在版權交易中,確保交易信息的完整性和正確性。正如前文所說,數字作品創作者可以通過轉讓版權或者提供數字作品,從而獲得經濟利益,因此當發生這2種交易時,創作者的余額會增加,消費者的余額會減少。
2) 資產
本系統中資產就是數字版權作品,其屬性結構設計為如下元組。
={,,,,,,},={,,,,,,,,,}。
是數字作品唯一標識符,是數字版權作品名字,是作品分類,是創建時間,是數字作品簡要描述,是部分內容信息,是作品所有者,是版權轉移價格,是訂閱作品需支付的價格,是該作品訂閱的所有用戶集合。
3) 交易
在區塊鏈系統中,用戶每次對智能合約(或者鏈碼)的調用,都稱為交易。用戶通過調用composer-rest-serve提供的函數接口可以對合約進行調用,從而執行相應的操作。版權注冊、版權轉移,數字內容訂閱交易的主要代碼如表1-表3所示。

表1 數字版權注冊主要代碼

表2 版權轉讓主要代碼

表3 數字內容訂閱主要代碼
為了將數據的修改以及用戶的管理權放在部分用戶手中,選擇IBM提供的fabric1.0聯盟鏈項目作為開發平臺,進而構建自己的數字版權保護系統。根據官方Fabric給出的節點部署方案,在各個節點上安裝docker以及docker compose工具,下載相應的docker鏡像和Fabric源碼,編譯生成Cryptogen程序,利用該程序和相關crypto-config.yaml配置文件生成公私鑰和證書。這里生成2種證書:一種是給節點安全通信而準備的TLS證書;另一種是CA頒布的用于用戶登錄和權限控制的用戶證書。隨后,采用編譯生成的configtxgen生成創世區塊(如圖3(a)所示)以及Channel配置區塊。再通過配置相關文件,即可啟動Fabric容器(如圖3(b)所示),接著,完成創建channel(如圖3(c)所示),各個Peer節點依次加入Channel,更新錨節點(如圖3(d)所示)這一系列操作。這樣,Fabric網絡就準備好了。接下來,將業務鏈碼安裝到Fabric網絡中。
Fabric鏈碼支持golang和JavaScript。為了提高程序的可擴展性,通過fabric composer進行開發并建立系統的業務模型。隨后,利用composer- rest-server可以生成業務模型的遠程接口(如圖4所示),用戶可以通過這些函數接口訪問交易記錄、數字版權記錄等。每當用戶提交資產注冊信息后,該交易記錄后續會被其他節點打包成區塊,并記錄在鏈上,交易記錄一旦上鏈,就無法被篡改。

(a) 生成創世區塊
(b) 啟動Fabric容器

(c) 創建Channel
(d) 更新錨節點
圖3 Fabric應用環境部署
目前,系統的核心鏈碼大約為5 kB,通過在網絡的各個節點上安裝和實例化鏈碼后,測試了單個節點鏈碼的安裝和實例化時間大約為9 770 ms,鏈碼的單次調用時間為0.7~3 s。本地采用的開發環境為個人PC計算機,CPU 2.7 GHz, RAM 8 GB。操作系統為ubuntu 16.04。
系統部署容易,耗時短,適合企業級應用。為了展示實驗結果,利用angular JavaScript構建Java Web客戶端,界面如圖5所示。合法用戶通過注冊個人信息,成功登錄Java Web客戶端進行資產注冊、版權轉移操作、數字內容訂閱等操作。
如圖5所示,當數字作品創作者想要在本系統進行版權注冊時,創作者通過單擊add asset按鈕,填入數字作品dci,數字作品名稱、數字作品分類、描述、作品簡介、選擇作品所屬人,就可以發起數字版權注冊的交易。當數字作品創作者想要轉移數字版權時,調用版權轉移交易、輸入新的版權所有者以及需要轉移的數字版權(具體函數見業務模型章節)發起交易。隨后,系統調用智能合約,按照預先設置的版權轉移費,從新版權所有者的余額中扣除版權費,從創作者余額中增加版權費,完成版權轉移交易。除此之外,利用版權注冊時填入的相關信息,其他用戶可以訂閱感興趣的數字版權,發起版權訂閱交易。后續內容的傳輸,由交易雙方在其他內容分享平臺完成。由于這部分不是本系統的研究重點,在此不過多介紹。

圖5 客戶端界面
當前,數字版權保護方法都是集中登記式,本質上是基于中心化由權威管理機構授權的版權管理機制。而區塊鏈技術可以為數字版權提供一種不可更改的去中心化的版權登記形式。它以密碼學為基礎,建立的信任關系能夠給交易多方提供安全保障。本文分析了當前數字版權保護的痛點,并詳細介紹了區塊鏈技術。結合當前最新的聯盟鏈技術和當前需求,本文又設計了一種適合于企業應用的數字版權交易系統,該系統實現了版權登記、版權轉移的基本功能,保護創作者的版權所有權,減少了申請者的注冊時間,且無需數字版權注冊費。相較于傳統的數字版權保護方案,本系統能夠保證版權登記信息的不可篡改性,以及版權交易的可追溯性,可以安全、高效地滿足用戶需求。另外,基于composer框架的開發,使業務邏輯與Fabric系統的耦合性降低,開發人員更專注于功能性模塊的編碼工作,因此,具有更好的可擴展性。未來在數字版權保護的道路上,基于區塊鏈的版權保護方案將是市場的一大需求。當然系統還有一些不完善的地方,后續筆者也會對本系統進行進一步的改進。
[1] 范科峰, 莫瑋, 曹山,等. 數字版權管理技術及應用研究進展[J]. 電子學報, 2007, 35(6):1139-1147.
FAN K F, MO W, CAO S, et al. Progress in digital rights management technology and application[J]. Chinese Journal of Electronics, 2007, 35(6): 1139-1147.
[2] 翟永興. 我國數字出版的版權保護現狀與對策研究[J]. 傳播與版權, 2015(3):178-179.
ZHAI Y X. Research on the status quo and countermeasures of copyright protection in digital publishing in China[J]. Communications and Copyright, 2015(3): 178-179.
[3] 吳健, 高力, 朱靜寧. 基于區塊鏈技術的數字版權保護[J]. 廣播電視信息, 2016(7):60-62.
WU J, GAO L, ZHU J N. Digital copyright protection based on Blockchain technology[J]. Radio and TV Information, 2016(7): 60-62.
[4] 安瑞, 何德彪, 張韻茹,等. 基于區塊鏈技術的防偽系統的設計與實現[J]. 密碼學報, 2017, 4(2):199-208.
AN R, HE D B, ZHANG Y R, et al. Design and implementation of anti-counterfeiting system based on Blockchain technology[J]. CMD Journal, 2017, 4(2): 199-208.
[5] 袁勇, 王飛躍. 區塊鏈技術發展現狀與展望[J]. 自動化學報, 2016, 42(4):481-494.
YUAN Y, WANG F Y. Current status and prospects of Blockchain technology development[J]. Journal of Automation, 2016, 42(4): 481-494.
[6] DUBOVITSKAYA A, XU Z, RYU S, et al. Secure and trustable electronic medical records sharing using Blockchain[J]. arXiv preprint arXiv:1709.06528, 2017.
[7] PETERS G W, PANAYI E. Understanding modern banking ledgers through Blockchain technologies: future of transaction processing and smart contracts on the internet of money[M]//Banking Beyond Banks and Money. Berlin: Springer. 2016: 239-278.
[8] 吳潔明, 周倩, 許傳祥,等. DCI體系下數字版權管理服務平臺的設計[J]. 計算機應用與軟件, 2014(4):62-65.
WU J M, ZHOU Q, XU C X, et al. Design of digital rights management service platform under DCI system[J]. Journal of Computer Applications and Software, 2014(4):62-65.
[9] VUKOLI? M. Rethinking permissioned blockchains[C]//ACM Workshop on Blockchain, Cryptocurrencies and Contracts. 2017: 3-7.
[10] CACHIN C. Architecture of the hyperledger blockchain fabric[C]// Workshop on Distributed Cryptocurrencies and Consensus Ledgers. 2016.
[11] DHILLON V, METCALF D, HOOPER M. The Hyperledger project[M]//Blockchain Enabled Applications.Berlin:Springer. 2017: 139-149.
[12] Nakamoto S. Bitcoin: a peer-to-peer electronic cash system[J]. Consulted. 2008.
[13] SWAN M. Blockchain: blueprint for a new economy[M]. O'Reilly Media, Inc. 2015.
[14] PETERS G W, PANAYI E. Understanding modern banking ledgers through blockchain technologies: future of transaction processing and smart contracts on the internet of money[M]//Banking Beyond Banks and Money.Berlin: Springer. 2016: 239-278.
[15] CACHIN C. Architecture of the hyperledger blockchain fabric[C]//Workshop on Distributed Cryptocurrencies and Consensus Ledgers. 2016.
[16] BALIGA A. Understanding blockchain consensus models[R]. 2017.
[17] WOOD G. Ethereum: a secure decentralised generalised transaction ledger[J]. Ethereum Project Yellow Paper, 2014, 151: 1-32.
Blockchain-based digital copyright trading system
LI Li, ZHOU Siqin, LIU Qin, HE Debiao
School of Cyber Science and Engineering, Wuhan University, Wuhan 430072, China
In the current era of digitalization and networking, the demand for digital copyright transactions is increasing. The traditional centralized copyright protection system has series of problems such as high registration costs, long work acceptance times, and being vulnerable to tampering by saboteurs. Blockchain as a decentralized network structure and based on P2P network and cryptographic technology, which can establish trust relationship on the network by pure mathematics. Without relying on the middle platform, blockchain technology can naturally alleviate the above problems. With the help of self-regulatory, traceable and decentralized features of blockchain technology and digital copyright trading scenarios, a digital copyright trading system model was designed. The new system is based on the advanced permissioned blockchain provided by IBM. The implementation of copyright registration and copyright transaction can ensure the integrity and tamper-resistant of the information. Finally, the installation time of chain code deployment was tested. The results show that the system is simple to install and has low maintenance costs. Compared with the traditional trusted third party copyright authentication mechanism, the blockchain-based digital rights trading system has a short registration time, no registration fee, and better architecture security and scalability.
digital rights trading, blockchain, superbooks, system design and implementation
TP309.7
A
10.11959/j.issn.2096-109x.2018060
李莉(1976-),女,安徽蕪湖人,博士,武漢大學副教授、碩士生導師,主要研究方向為物聯網安全。

周斯琴(1994-),女,湖北孝感人,武漢大學碩士生,主要研究方向為區塊鏈技術。
劉芹(1978-),女,湖北隨州人,博士,武漢大學副教授、碩士生導師,主要研究方向為物聯網安全。

何德彪(1980-),男,山東陽谷人,博士,武漢大學教授、博士生導師,主要研究方向為密碼算法的設計與實現。
2018-06-10;
2018-07-01
何德彪,hedebiao@163.com
國家重點研發計劃基金資助項目(No.2017YFB0802500);國家自然科學基金資助項目(No.61402339, No.61572370)
The National Key Research and Development Program of China (No.2017YFB0802500), The National Natural Science Foundation of China (No.61402339, No.61572370)