羅慶佳,雷杰飛
(江門職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,廣東 江門 529090)
本文研究基于區(qū)塊鏈技術(shù)的數(shù)字資源保護方法與系統(tǒng),區(qū)塊鏈是一個基于去中心化技術(shù)、由不同節(jié)點參與的分布式數(shù)據(jù)庫系統(tǒng)。它可以安全地存儲節(jié)點數(shù)據(jù)。區(qū)塊鏈上存儲的信息高度安全,只能修改,不能篡改。這一技術(shù)特征克服了傳統(tǒng)的版權(quán)管理模式的缺點。引入?yún)^(qū)塊鏈技術(shù)進行,能讓版權(quán)管理機構(gòu)簡化復(fù)雜的驗證過程,能夠分解第三方的角色,大大降低經(jīng)濟和社會成本。
在保護數(shù)字資源的過程中,利用區(qū)塊鏈技術(shù)的特點,任何節(jié)點想要篡改區(qū)塊鏈中的記錄都需要控制系統(tǒng)中超過一半的節(jié)點,這幾乎是不可能的。區(qū)塊鏈技術(shù)規(guī)定,黑客如果想要篡改數(shù)據(jù),必須破壞服務(wù)器51%的節(jié)點,這需要大量的人力、物力和財力,增加了侵權(quán)成本,因此,使用區(qū)塊鏈技術(shù)可以提高數(shù)字資源版權(quán)保護的效果和效率。
這個yaml是定義整個區(qū)塊鏈的docker stack的資源清單文件,使用這個文件,能快速構(gòu)造區(qū)塊鏈的docker容器組,因此我在這個資源文件定義了以下節(jié):
ca節(jié)點用于區(qū)塊鏈的各個組織的證書認證,代碼為:
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節(jié)點用于區(qū)塊鏈的共識和鏈接各個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 #服務(wù)暴露地址
- ORDERER_GENERAL_GENESISMETHOD=file #區(qū)塊鏈存儲方式 ,設(shè)定為文件
- ORDERER_GENERAL_GENESISFILE=/etc/hyperledger/config/genesis.block # 注入創(chuàng)世區(qū)塊
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP #設(shè)定orderer的mspid為Orderermsp
- ORDERER_GENERAL_LOCALMSPDIR=/etc/hyperledger/orderer/msp # 證書相關(guān)
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/orderer #設(shè)定容器工作路徑
command: orderer
ports:
- 7050:7050 # 17050:7050
volumes: #掛載相應(yīng)文件進入容器
#- ./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節(jié)點用于區(qū)塊鏈的對等節(jié)點的共有部分抽出來定義的節(jié),代碼為:
文件: docker-compose-base.yaml 為了不啟動額外的容器,單獨提取到一個yaml文件中。
services:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock# docker的服務(wù)端注入
- CORE_LOGGING_PEER=info
- CORE_CHAINCODE_LOGGING_LEVEL=INFO
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp # msp證書(節(jié)點證書)
- CORE_LEDGER_STATE_STATEDATABASE=goleveldb# 狀態(tài)數(shù)據(jù)庫的存儲引擎( or CouchDB )
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=deploy_default # cc與peer節(jié)點使用同一個網(wǎng)絡(luò)
Peer節(jié)點用于區(qū)塊鏈的對等節(jié)點配置,這里只需要一節(jié)介紹即可,因為其他的節(jié)和這個節(jié)類似,代碼為:
peer0.org0.educhain.accurchain.com:
extends:
file: docker-compose-base.yaml
service: peer-base
container_name: peer0.org0.educhain.accurchain.com
environment:
#設(shè)定vm鏈碼部署時候的docker socket鏈接
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
#節(jié)點的id
- CORE_PEER_ID=peer0.org0.educhain.accurchain.com
#節(jié)點的mspid
- CORE_PEER_LOCALMSPID=Org0MSP
#節(jié)點的地址
- 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節(jié)點用于和區(qū)塊鏈中對等節(jié)點交互的命令行工具,代碼為:
cli: # peer節(jié)點客戶端交易都是從客戶端發(fā)起需要用到User證書
- CORE_PEER_LOCALMSPID=Org1MSP #mspid設(shè)定為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/
# 配置文件注入(起始區(qū)塊和通道的配置交易信息) #證書的注入路徑
- ./crypto-config/peerOrganizations/org1.educhain.accurchain.com/:/etc/hyperledger/peer
系統(tǒng)分為五大模塊:數(shù)字資源版權(quán)保護模塊、數(shù)字資源版權(quán)使用模塊、數(shù)字資源版權(quán)交易模塊、智能合約制定模塊、系統(tǒng)管理,如圖1所示。
圖1 系統(tǒng)模塊圖
數(shù)字資源版權(quán)保護模塊包含:發(fā)布數(shù)據(jù)資源、查看數(shù)據(jù)資源、修改數(shù)據(jù)資源、數(shù)據(jù)資源維權(quán)、維護個人信息、版權(quán)確認等功能;
數(shù)字資源版權(quán)使用模塊包含:查看資源、使用數(shù)據(jù)資源、收藏資源、資源交易等功能;
數(shù)字資源版權(quán)交易模塊包含:查看資源、系統(tǒng)登錄、選擇資源、交易資源等功能;
智能合約制定模塊包含:數(shù)字資源信息收集、數(shù)字資源信息準備、版權(quán)管理、執(zhí)行智能合約等功能;
系統(tǒng)管理模塊包含:數(shù)據(jù)備份、角色管理、權(quán)限管理、系統(tǒng)參數(shù)管理、智能合約制定。
在該頁面中可看到對應(yīng)的功能菜單欄,功能導(dǎo)航和顯示欄等信息,在菜單欄可看到對應(yīng)的個性設(shè)置,資源搜,排行榜,編寫教案,系統(tǒng)設(shè)置,搜藏夾等。
點擊資源管理可進入到資源管理頁面對資源進行管理,點擊目錄管理可對資源的目錄進行管理,點擊報表統(tǒng)計可對資源報表進行統(tǒng)計,點擊數(shù)據(jù)維護可對數(shù)據(jù)進行維護,點擊系統(tǒng)管理進行系統(tǒng)管理,資源管理界面如圖2所示。
圖2 系統(tǒng)功能頁面
點擊資源管理按鈕,在資源管理頁面中可對資源進行編輯,在分類導(dǎo)航中可對其分類,編號,以及名稱等信息進行操作
在如上圖所示的頁面中可看到對應(yīng)的資源列表信息,在該頁面中可看對應(yīng)的資源編輯信息,包括其資源名稱,資源類型,大小,瀏覽次數(shù),狀態(tài),動作等,點擊修改按鈕可對應(yīng)的資源進行修改操作,點擊新增按鈕可進入到資源新增頁面對資源進行新增,點擊刪除按鈕可對頁面中的選中的資源進行刪除,點擊未審核按鈕可對其未審核的所有的資源進行顯示,數(shù)據(jù)資源分類界面如圖3所示。
圖3 數(shù)據(jù)資源分類
該頁面可對其相應(yīng)資源的素材類型進行分類管理,在頁面對其進行想突破,文本,動畫,特效,音頻,課件,視頻等分類西悉尼查看。
打開該頁面可對其進行相應(yīng)類別進行編輯操作,單擊選中對應(yīng)類別,可進行相應(yīng)信息的選擇。
第一次登錄系統(tǒng)需要先進行注冊,在登錄頁面點擊注冊按鈕跳轉(zhuǎn)到注冊頁面。輸入注冊信息,其中真實姓名、身份證號碼、電話號碼、用戶名、密碼為注冊必填內(nèi)容。后臺對輸入的注冊數(shù)據(jù)進行檢查,若用戶存在或輸入信息不符合規(guī)范則提示“注冊失敗”,反之,跳轉(zhuǎn)登錄頁面輸入用戶名和密碼,后臺會對輸入數(shù)據(jù)會進行合法性檢查,如果輸入的用戶真實存在且密碼正確則登錄系統(tǒng),若不存在則提示“您輸入的用戶名/密碼錯誤,請重新輸入”。
圖4為數(shù)字資源版權(quán)保護模塊,本模塊的參與者為資源管理員和資源使用者。本模塊有六個類,分別為:發(fā)布數(shù)據(jù)資源類、查看數(shù)據(jù)資源類、修改數(shù)據(jù)資源類、數(shù)據(jù)資源維權(quán)類、版權(quán)確認類、維護個人信息類,其中前五類的數(shù)據(jù)實體為數(shù)據(jù)資源類,維護個人信息類的數(shù)據(jù)實體為個人信息類。
圖4 數(shù)字資源版權(quán)保護模塊類圖
圖5為數(shù)字資源版權(quán)使用模塊,本模塊的參與者為管理員和資源使用者。本模塊有四個類,分別為:查看資源類、使用數(shù)據(jù)資源類、收藏資源類、資源交易類,本模塊的數(shù)據(jù)實體為資源類。
圖5 數(shù)字資源版權(quán)使用模塊類圖
本文設(shè)計并開發(fā)基于區(qū)塊鏈技術(shù)的數(shù)字資源版權(quán)保護系統(tǒng),以區(qū)塊鏈技術(shù)為主要線索,分析了本系統(tǒng)登錄模塊、數(shù)字資源上傳模塊、數(shù)字資源版權(quán)轉(zhuǎn)讓模塊、數(shù)字資源保護模塊以及系統(tǒng)管理模塊。利用區(qū)塊鏈技術(shù)可以使原創(chuàng)資源版權(quán)得以證明、公開透明并追蹤資源使用情況等版權(quán)保護工作,抵制侵權(quán)、盜版行為,降低了版權(quán)認證所耗費的經(jīng)濟和成本。
利用區(qū)塊鏈技術(shù)對數(shù)字資源版權(quán)的保護和去其中心化不可篡改的屬性保證了每一個數(shù)據(jù)的唯一性、完整性,從而可以實現(xiàn)對思想、創(chuàng)意、圖片、IP等多類創(chuàng)意產(chǎn)品的確權(quán);對區(qū)塊鏈技術(shù)加速權(quán)力的流通速度,減少中間煩冗環(huán)節(jié),迅速匹配供需雙方,一舉解決變現(xiàn)難題;對解決了知識產(chǎn)權(quán)產(chǎn)業(yè)鏈冗長雜亂的問題,維權(quán)道路通暢,極大提高維權(quán)效率?;趨^(qū)塊鏈在商業(yè)中的探索應(yīng)用,讓數(shù)字版權(quán)保護領(lǐng)域率先受益。