羅慶佳,雷杰飛
(江門職業技術學院 信息工程學院,廣東 江門 529090)
本文研究基于區塊鏈技術的數字資源保護方法與系統,區塊鏈是一個基于去中心化技術、由不同節點參與的分布式數據庫系統。它可以安全地存儲節點數據。區塊鏈上存儲的信息高度安全,只能修改,不能篡改。這一技術特征克服了傳統的版權管理模式的缺點。引入區塊鏈技術進行,能讓版權管理機構簡化復雜的驗證過程,能夠分解第三方的角色,大大降低經濟和社會成本。
在保護數字資源的過程中,利用區塊鏈技術的特點,任何節點想要篡改區塊鏈中的記錄都需要控制系統中超過一半的節點,這幾乎是不可能的。區塊鏈技術規定,黑客如果想要篡改數據,必須破壞服務器51%的節點,這需要大量的人力、物力和財力,增加了侵權成本,因此,使用區塊鏈技術可以提高數字資源版權保護的效果和效率。
這個yaml是定義整個區塊鏈的docker stack的資源清單文件,使用這個文件,能快速構造區塊鏈的docker容器組,因此我在這個資源文件定義了以下節:
ca節點用于區塊鏈的各個組織的證書認證,代碼為:
ca.org0.educhain.accurchain.com:
container_name: ca.org0.educhain.accurchain.com
image: 'hyperledger/fabric-ca:amd64-1.2.1'
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org0.educhain.accurchain.com
ports:
- '7054:7054'
#指定ca文件
command: 'sh -c ''fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server- config/ca.org0.educhain.accurchain.com-cert.pem --ca.keyfile /etc/hyperledger/fabricca- server-config/key.pem -b admin:adminpw'''
volumes: #將本地目錄映射到容器的目錄
- './crypto-
config/peerOrganizations/org0.educhain.accurchain.com/ca/:/etc/hyperledger/fabric-ca-server- config'
Orderer節點用于區塊鏈的共識和鏈接各個peer配置,代碼為:
orderer.educhain.accurchain.com:
container_name: orderer.educhain.accurchain.com
image: hyperledger/fabric-orderer:amd64-1.2.1
environment:
- ORDERER_GENERAL_LOGLEVEL=info # general.loglevel: debug
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0 #服務暴露地址
- ORDERER_GENERAL_GENESISMETHOD=file #區塊鏈存儲方式 ,設定為文件
- ORDERER_GENERAL_GENESISFILE=/etc/hyperledger/config/genesis.block # 注入創世區塊
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP #設定orderer的mspid為Orderermsp
- ORDERER_GENERAL_LOCALMSPDIR=/etc/hyperledger/orderer/msp # 證書相關
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/orderer #設定容器工作路徑
command: orderer
ports:
- 7050:7050 # 17050:7050
volumes: #掛載相應文件進入容器
#- ./config/:/etc/hyperledger/config
- ./config/genesis.block:/etc/hyperledger/config/genesis.block
- ./crypto
config/ordererOrganizations/educhain.accurchain.com/orderers/orderer.educhain.accurchain.com/ :/etc/hyperledger/orderer
Peer.base節點用于區塊鏈的對等節點的共有部分抽出來定義的節,代碼為:
文件: docker-compose-base.yaml 為了不啟動額外的容器,單獨提取到一個yaml文件中。
services:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock# docker的服務端注入
- CORE_LOGGING_PEER=info
- CORE_CHAINCODE_LOGGING_LEVEL=INFO
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp # msp證書(節點證書)
- CORE_LEDGER_STATE_STATEDATABASE=goleveldb# 狀態數據庫的存儲引擎( or CouchDB )
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=deploy_default # cc與peer節點使用同一個網絡
Peer節點用于區塊鏈的對等節點配置,這里只需要一節介紹即可,因為其他的節和這個節類似,代碼為:
peer0.org0.educhain.accurchain.com:
extends:
file: docker-compose-base.yaml
service: peer-base
container_name: peer0.org0.educhain.accurchain.com
environment:
#設定vm鏈碼部署時候的docker socket鏈接
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
#節點的id
- CORE_PEER_ID=peer0.org0.educhain.accurchain.com
#節點的mspid
- CORE_PEER_LOCALMSPID=Org0MSP
#節點的地址
- CORE_PEER_ADDRESS=peer0.org0.educhain.accurchain.com:7051
educhain.accurchain.com/peers/peer0.org0.educhain.accurchain.co m:/etc/hyperledger/peer
depends_on:
- orderer.educhain.accurchain.com
cli節點用于和區塊鏈中對等節點交互的命令行工具,代碼為:
cli: # peer節點客戶端交易都是從客戶端發起需要用到User證書
- CORE_PEER_LOCALMSPID=Org1MSP #mspid設定為org1msp #msp配置文件的路徑,選用user下的admin證書
-CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/users/Admin@org1.educhain.accurchain.com/msp working_dir:/opt/gopath/src/github.com/hyperledger/fabric/
# 配置文件注入(起始區塊和通道的配置交易信息) #證書的注入路徑
- ./crypto-config/peerOrganizations/org1.educhain.accurchain.com/:/etc/hyperledger/peer
系統分為五大模塊:數字資源版權保護模塊、數字資源版權使用模塊、數字資源版權交易模塊、智能合約制定模塊、系統管理,如圖1所示。

圖1 系統模塊圖
數字資源版權保護模塊包含:發布數據資源、查看數據資源、修改數據資源、數據資源維權、維護個人信息、版權確認等功能;
數字資源版權使用模塊包含:查看資源、使用數據資源、收藏資源、資源交易等功能;
數字資源版權交易模塊包含:查看資源、系統登錄、選擇資源、交易資源等功能;
智能合約制定模塊包含:數字資源信息收集、數字資源信息準備、版權管理、執行智能合約等功能;
系統管理模塊包含:數據備份、角色管理、權限管理、系統參數管理、智能合約制定。
在該頁面中可看到對應的功能菜單欄,功能導航和顯示欄等信息,在菜單欄可看到對應的個性設置,資源搜,排行榜,編寫教案,系統設置,搜藏夾等。
點擊資源管理可進入到資源管理頁面對資源進行管理,點擊目錄管理可對資源的目錄進行管理,點擊報表統計可對資源報表進行統計,點擊數據維護可對數據進行維護,點擊系統管理進行系統管理,資源管理界面如圖2所示。

圖2 系統功能頁面
點擊資源管理按鈕,在資源管理頁面中可對資源進行編輯,在分類導航中可對其分類,編號,以及名稱等信息進行操作
在如上圖所示的頁面中可看到對應的資源列表信息,在該頁面中可看對應的資源編輯信息,包括其資源名稱,資源類型,大小,瀏覽次數,狀態,動作等,點擊修改按鈕可對應的資源進行修改操作,點擊新增按鈕可進入到資源新增頁面對資源進行新增,點擊刪除按鈕可對頁面中的選中的資源進行刪除,點擊未審核按鈕可對其未審核的所有的資源進行顯示,數據資源分類界面如圖3所示。

圖3 數據資源分類
該頁面可對其相應資源的素材類型進行分類管理,在頁面對其進行想突破,文本,動畫,特效,音頻,課件,視頻等分類西悉尼查看。
打開該頁面可對其進行相應類別進行編輯操作,單擊選中對應類別,可進行相應信息的選擇。
第一次登錄系統需要先進行注冊,在登錄頁面點擊注冊按鈕跳轉到注冊頁面。輸入注冊信息,其中真實姓名、身份證號碼、電話號碼、用戶名、密碼為注冊必填內容。后臺對輸入的注冊數據進行檢查,若用戶存在或輸入信息不符合規范則提示“注冊失敗”,反之,跳轉登錄頁面輸入用戶名和密碼,后臺會對輸入數據會進行合法性檢查,如果輸入的用戶真實存在且密碼正確則登錄系統,若不存在則提示“您輸入的用戶名/密碼錯誤,請重新輸入”。
圖4為數字資源版權保護模塊,本模塊的參與者為資源管理員和資源使用者。本模塊有六個類,分別為:發布數據資源類、查看數據資源類、修改數據資源類、數據資源維權類、版權確認類、維護個人信息類,其中前五類的數據實體為數據資源類,維護個人信息類的數據實體為個人信息類。

圖4 數字資源版權保護模塊類圖
圖5為數字資源版權使用模塊,本模塊的參與者為管理員和資源使用者。本模塊有四個類,分別為:查看資源類、使用數據資源類、收藏資源類、資源交易類,本模塊的數據實體為資源類。

圖5 數字資源版權使用模塊類圖
本文設計并開發基于區塊鏈技術的數字資源版權保護系統,以區塊鏈技術為主要線索,分析了本系統登錄模塊、數字資源上傳模塊、數字資源版權轉讓模塊、數字資源保護模塊以及系統管理模塊。利用區塊鏈技術可以使原創資源版權得以證明、公開透明并追蹤資源使用情況等版權保護工作,抵制侵權、盜版行為,降低了版權認證所耗費的經濟和成本。
利用區塊鏈技術對數字資源版權的保護和去其中心化不可篡改的屬性保證了每一個數據的唯一性、完整性,從而可以實現對思想、創意、圖片、IP等多類創意產品的確權;對區塊鏈技術加速權力的流通速度,減少中間煩冗環節,迅速匹配供需雙方,一舉解決變現難題;對解決了知識產權產業鏈冗長雜亂的問題,維權道路通暢,極大提高維權效率。基于區塊鏈在商業中的探索應用,讓數字版權保護領域率先受益。