李澤東
(西藏大學(xué)信息科學(xué)技術(shù)學(xué)院 西藏自治區(qū)拉薩市 850000)
隨著教育信息化2.0 時(shí)代的到來(lái),作為推進(jìn)教育信息化的重要一環(huán),教育資源的開放顯得尤為重要。但正是教育資源“開放”的特性,使資源創(chuàng)作者、服務(wù)提供方、資源使用者缺乏約束,并且無(wú)法對(duì)資源產(chǎn)權(quán)進(jìn)行清晰的界定和劃分,故出現(xiàn)了資源版權(quán)保護(hù)弱、資源存儲(chǔ)有風(fēng)險(xiǎn)、資源質(zhì)量低等現(xiàn)實(shí)問(wèn)題。 區(qū)塊鏈技術(shù)由于具有去中心化、防篡改、可追溯、分布式技術(shù)的特性,得到了快速的發(fā)展,其應(yīng)用場(chǎng)景也早已延伸到各個(gè)領(lǐng)域之中。隨著對(duì)區(qū)塊鏈技術(shù)的持續(xù)研究和發(fā)展,未來(lái)更多“區(qū)塊鏈+”的應(yīng)用將成為教育變革的重要趨勢(shì)。
基于以上背景,針對(duì)高校優(yōu)質(zhì)教育資源共建共享過(guò)程中存在的資源存儲(chǔ)風(fēng)險(xiǎn)以及資源版權(quán)確權(quán)等問(wèn)題,本次研究將區(qū)塊鏈技術(shù)運(yùn)用到高校優(yōu)質(zhì)教育資源的共建共享中,設(shè)計(jì)了一個(gè)基于區(qū)塊鏈+IPFS 的高校優(yōu)質(zhì)教育資源平臺(tái)。
本文基于聯(lián)盟區(qū)塊鏈和 IPFS 設(shè)計(jì)的去中心化高校優(yōu)質(zhì)教育資源平臺(tái)總體架構(gòu)如圖1 所示,分為3 層,由下至上分別為數(shù)據(jù)管理層、合約層、WEB 交互層。
本資源平臺(tái)上層的前端交互與底層的以太坊區(qū)塊鏈、IPFS 的連接是通過(guò)智能合約、Web3.js 來(lái)實(shí)現(xiàn)的,而區(qū)塊鏈網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)間一致性的達(dá)成則是采用權(quán)威證明共識(shí)機(jī)制來(lái)實(shí)現(xiàn)的,其網(wǎng)絡(luò)內(nèi)的新區(qū)塊由可信簽名者產(chǎn)生,這樣就不再需要進(jìn)行算力挖礦。
WEB 交互層是用來(lái)讓用戶與教育資源平臺(tái)進(jìn)行交互用的,其為平臺(tái)用戶提供了包括資源平臺(tái)的基本功能模塊等在內(nèi)的可視化操作接口,平臺(tái)用戶的操作請(qǐng)求可以被其通過(guò)智能合約轉(zhuǎn)換成虛擬資產(chǎn)和交易的形式然后傳送并存儲(chǔ)到底層的以太坊區(qū)塊鏈上。
在本文設(shè)計(jì)的教育資源平臺(tái)中,智能合約層的作用是為用戶提供一個(gè)絕對(duì)可信的、完全透明的、沒有第三方參與的交易途徑,其是通過(guò)Solidity 語(yǔ)言來(lái)進(jìn)行編寫開發(fā)的,并對(duì)相關(guān)的數(shù)據(jù)結(jié)構(gòu)和各種算法邏輯進(jìn)行定義。智能合約層與數(shù)據(jù)管理層的信息交互是依靠RPC 來(lái)實(shí)現(xiàn)的,數(shù)據(jù)信息被其轉(zhuǎn)換成交易數(shù)據(jù)的形式記錄到以太坊區(qū)塊鏈上,以此來(lái)完成數(shù)據(jù)管理層中對(duì)數(shù)據(jù)信息的追加、查詢功能。
數(shù)據(jù)管理層對(duì)平臺(tái)數(shù)據(jù)的存儲(chǔ)和保護(hù)功能的實(shí)現(xiàn)是通過(guò)以太坊聯(lián)盟鏈網(wǎng)絡(luò)和IPFS 技術(shù)來(lái)一塊完成的。首先讓網(wǎng)絡(luò)中的所有用戶節(jié)點(diǎn)組成一個(gè)聯(lián)盟體,再采用共識(shí)機(jī)制來(lái)使各個(gè)節(jié)點(diǎn)達(dá)成一致,以此來(lái)實(shí)現(xiàn)教育資源平臺(tái)上數(shù)據(jù)存儲(chǔ)的去中心化。IPFS 則主要用于存儲(chǔ)各種格式的教育資源文件,然后將其返回的基于資源文件內(nèi)容的哈希值存儲(chǔ)到以太坊區(qū)塊鏈上。
高校教師是教育資源的創(chuàng)建者同時(shí)也是教育資源版權(quán)的所有者,高校教師將教育資源創(chuàng)建完畢后將其進(jìn)行加密,形成密文后上傳IPFS 中。
圖1:平臺(tái)總體架構(gòu)
圖2:平臺(tái)工作流程
IPFS 將基于該教育資源文件計(jì)算出該文件的唯一Hash 值并將其返回給資源創(chuàng)建者,然后資源創(chuàng)建者將該Hash 和其他教育資源屬性信息上傳到教育資源平臺(tái)上。資源平臺(tái)調(diào)用已經(jīng)部署好的智能合約將這些信息以交易的形式存儲(chǔ)在以太坊區(qū)塊鏈上并加蓋時(shí)間戳,為以后的資源版權(quán)爭(zhēng)議提供依據(jù)。
圖3:教育資源數(shù)據(jù)信息被打包到區(qū)塊上并加蓋時(shí)間戳
教育資源成功上傳到平臺(tái)后,學(xué)生用戶就可以在平臺(tái)上看到該教育資源了。當(dāng)學(xué)生用戶完成資源購(gòu)買后,就可以獲得該資源的Hash,然后通過(guò)該Hash 在IPFS 中查詢到該教育資源文件,下載下來(lái)后通過(guò)密鑰解密文件來(lái)得到教育資源。
教育資源文件經(jīng)過(guò)加密后上傳到IPFS,能夠分布式永久存儲(chǔ)該教育資源文件。教育資源創(chuàng)建者和學(xué)生用戶之間的交易是通過(guò)平臺(tái)調(diào)用智能合約來(lái)自動(dòng)完成的,使平臺(tái)上的教育資源能夠透明化、自動(dòng)化地進(jìn)行流轉(zhuǎn)。與此同時(shí),底層的以太坊區(qū)塊鏈系統(tǒng)會(huì)將該教育資源產(chǎn)生的交易數(shù)據(jù)經(jīng)過(guò)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的廣播和驗(yàn)證后保存下來(lái),以此來(lái)保障交易信息的防篡改性。平臺(tái)工作流程如圖2 所示。
2.3.1 平臺(tái)用戶權(quán)限管理設(shè)計(jì)
本教育資源平臺(tái)用戶身份主要有高校學(xué)生用戶、高校教師用戶、高校管理員,教育資源平臺(tái)對(duì)不同身份的用戶授予不同的權(quán)限。對(duì)于高校優(yōu)質(zhì)教育資源平臺(tái)上是學(xué)生用戶,其具有用戶登錄注冊(cè)、資源查詢、資源購(gòu)買、資源下載等操作權(quán)限;對(duì)于高校教師用戶,其具有資源發(fā)布、資源查詢、資源撤回、資源版權(quán)追溯等操作權(quán)限;高校管理員具有師生身份管理、版權(quán)服務(wù)管理。
2.3.2 教育資源發(fā)布模塊設(shè)計(jì)
將教育資源文件上傳到IPFS 網(wǎng)絡(luò)中進(jìn)行存儲(chǔ)可以有效地將中心化存儲(chǔ)數(shù)據(jù)易丟失、易復(fù)制、易篡改的風(fēng)險(xiǎn)規(guī)避掉。因此在本教育資源平臺(tái)資源發(fā)布過(guò)程中,高校教師作為教育資源創(chuàng)建者,首先將創(chuàng)建好的教育資源上傳到IPFS 網(wǎng)絡(luò)中,然后再在資源平臺(tái)上正確填寫資源相關(guān)信息后將教育資源發(fā)布到平臺(tái)上。在教育資源發(fā)布過(guò)程中由于要對(duì)智能合約進(jìn)行調(diào)用,會(huì)花費(fèi)極少量的燃料費(fèi)(Gas)。所以,在高校教師發(fā)布教育資源時(shí)也要保證其賬戶內(nèi)余額要大于合約調(diào)用的Gas,不然就會(huì)導(dǎo)致教育資源會(huì)上傳不成功。
2.3.3 教育資源交易模塊設(shè)計(jì)
高校學(xué)生用戶在成功登錄到高校優(yōu)質(zhì)教育資源平臺(tái)以后可以瀏覽平臺(tái)上已發(fā)布的教育資源,在選取了心儀的教育資源以后通過(guò)平臺(tái)的教育資源購(gòu)買功能夠買該資源。在成功轉(zhuǎn)賬購(gòu)買后學(xué)生用戶會(huì)得到該資源的唯一hash,然后就可以通過(guò)資源平臺(tái)的資源下載功能將該資源文件下載到本地。
2.3.4 教育資源版權(quán)保護(hù)模塊設(shè)計(jì)
本模塊主要利用了區(qū)塊鏈技術(shù)公開透明、數(shù)據(jù)上鏈并加蓋時(shí)間戳、可追溯、防篡改的特性來(lái)對(duì)平臺(tái)上是教育資源版權(quán)進(jìn)行保護(hù)。首先,高校教師用戶將原創(chuàng)的教育資源經(jīng)過(guò)加密后上傳到IPFS 并得到返回的唯一hash 值,而該唯一hash 值同教育資源的其他信息等元數(shù)據(jù)會(huì)被打包成區(qū)塊加入到區(qū)塊鏈網(wǎng)絡(luò)中并加蓋時(shí)間戳,這些數(shù)據(jù)也因此具有了唯一性和防篡改性。就算其被不斷地轉(zhuǎn)載,數(shù)據(jù)的完整性和一致性也并不會(huì)被破壞,從而對(duì)資源創(chuàng)建者的資源版權(quán)進(jìn)行了保護(hù)。
基于區(qū)塊鏈技術(shù)的高校優(yōu)質(zhì)教育資源平臺(tái)開發(fā)環(huán)境是:操作系統(tǒng)Windows 10,內(nèi)存8GB,硬盤1TB,處理器為Intel Core i5-8250U。為了能夠?qū)崿F(xiàn)對(duì)本平臺(tái)的快速開發(fā)、測(cè)試,并把主要精力放在對(duì)去中心化思想的理解和去中心化應(yīng)用的邏輯開發(fā)上面,本教育資源平臺(tái)選用了以太坊節(jié)點(diǎn)仿真器Ganache 來(lái)模擬區(qū)塊鏈節(jié)點(diǎn)。通過(guò)Ganache 可以模擬實(shí)現(xiàn)真實(shí)的以太坊區(qū)塊鏈網(wǎng)絡(luò)的功能,而且開發(fā)者們還能夠?qū)⒅悄芎霞s進(jìn)行編寫編譯后將其在Ganache 上部署并測(cè)試,會(huì)得到快速及時(shí)的反饋,進(jìn)而提升開發(fā)效率。
本文實(shí)現(xiàn)了對(duì)基于區(qū)塊鏈技術(shù)的高校優(yōu)質(zhì)教育資源平臺(tái)的搭建與開發(fā),利用開發(fā)的教育資源平臺(tái)實(shí)現(xiàn)了對(duì)教育資源的分布式存儲(chǔ)共享和版權(quán)保護(hù)。上鏈存儲(chǔ)的教育資源相關(guān)數(shù)據(jù)可以為后期教育資源的版權(quán)確權(quán)提供依據(jù),從而很好的保護(hù)了資源創(chuàng)建者的版權(quán),令資源創(chuàng)建者不再擔(dān)心被侵權(quán)問(wèn)題,提高了資源創(chuàng)建者的創(chuàng)作積極性。智能合約交互成功后在教育資源平臺(tái)上就能看到該教育資源的信息了,此時(shí)打開瀏覽器的控制臺(tái)我們就能發(fā)現(xiàn),該教育資源的相關(guān)數(shù)據(jù)信息已經(jīng)被打包成區(qū)塊并上鏈存儲(chǔ)了,如圖3 所示。對(duì)于已經(jīng)成功發(fā)布到平臺(tái)上的教育資源,平臺(tái)會(huì)為后期教育資源的版權(quán)確權(quán)提供依據(jù),從而很好的保護(hù)了資源創(chuàng)建者的版權(quán)。
近年來(lái),在區(qū)塊鏈技術(shù)進(jìn)步與革新的同時(shí),也為教育教學(xué)的變革帶來(lái)了機(jī)遇。區(qū)塊鏈特有的技術(shù)特征為解決高校教育中的資源不均衡、學(xué)習(xí)數(shù)據(jù)追溯難以及資源確權(quán)等問(wèn)題提供了行之有效的技術(shù)方案。本教育資源平臺(tái)選擇以太坊區(qū)塊鏈平臺(tái)作為平臺(tái)的開發(fā)環(huán)境,以此來(lái)部署聯(lián)盟區(qū)塊鏈和智能合約的運(yùn)行環(huán)境。然后,在前面的基礎(chǔ)之上將IPFS、Node.js、web3.js 等技術(shù)與之結(jié)合,從數(shù)據(jù)管理層、智能合約層、WEB 交互層三個(gè)層級(jí)來(lái)對(duì)高校優(yōu)質(zhì)教育資源平臺(tái)的總體架構(gòu)進(jìn)行了構(gòu)建,并且闡述了平臺(tái)的工作流程和具體的詳細(xì)設(shè)計(jì)的細(xì)節(jié),實(shí)現(xiàn)了對(duì)教育資源的分布式存儲(chǔ)共享和版權(quán)保護(hù),為后續(xù)“區(qū)塊鏈+教育”的研究提高參考。