王珊珊
[摘 要]作為下一代價(jià)值互聯(lián)網(wǎng)基礎(chǔ)協(xié)議之一,區(qū)塊鏈技術(shù)給高校校園管理帶來(lái)了顛覆性和革命性的轉(zhuǎn)變,能夠?yàn)楦咝?chuàng)造智慧化的教學(xué)管理環(huán)境、優(yōu)質(zhì)的共享教育資源和創(chuàng)新性的教學(xué)管理模式。文章基于區(qū)塊鏈技術(shù)對(duì)校園教育管理系統(tǒng)的設(shè)計(jì)進(jìn)行深入研究,結(jié)合區(qū)塊鏈技術(shù)視域下校園教育管理系統(tǒng)的實(shí)際需求,從系統(tǒng)總體架構(gòu)設(shè)計(jì)出發(fā),對(duì)功能模塊、安全性分析算法等進(jìn)行深入分析,以期為校園教育管理系統(tǒng)設(shè)計(jì)的高質(zhì)量發(fā)展提供參考。
[關(guān)鍵詞]區(qū)塊鏈技術(shù);校園教育管理系統(tǒng);實(shí)際需求;設(shè)計(jì)
doi:10.3969/j.issn.1673-0194.2023.17.045
[中圖分類號(hào)]TP315 [文獻(xiàn)標(biāo)識(shí)碼]A [文章編號(hào)]1673-0194(2023)17-0162-05
0? ? ?引 言
近年來(lái),“互聯(lián)網(wǎng)+”模式飛速發(fā)展,為學(xué)校教育管理提供了極大的便利,使得各類管理工作擺脫了時(shí)間和空間的束縛,各高校紛紛搭建起自己的校園管理系統(tǒng),以方便師生、行政人員、后勤人員、游客等身份的用戶使用。然而隨著校園教育管理系統(tǒng)的廣泛應(yīng)用,其設(shè)計(jì)中的不足也日益凸顯,線上系統(tǒng)的中心化管理和單點(diǎn)存儲(chǔ)模式很容易造成用戶信息的丟失或被篡改,尤其是對(duì)于師生來(lái)說(shuō),其賬戶安全關(guān)系到學(xué)分獲取、課程選取等專業(yè)學(xué)習(xí)安排,如果系統(tǒng)安全問(wèn)題得不到解決,會(huì)造成用戶和系統(tǒng)之間缺乏信任,久而久之影響學(xué)校管理工作的順利進(jìn)行。因此,各高校急需要構(gòu)建一種信任方案,以保障校園教育系統(tǒng)的可信度,區(qū)塊鏈技術(shù)因?yàn)槠洳豢纱鄹囊约叭菀鬃匪菰搭^的特性,非常符合當(dāng)下的設(shè)計(jì)需求,為此本文主要針對(duì)基于區(qū)塊鏈技術(shù)的校園教育管理系統(tǒng)設(shè)計(jì)展開(kāi)探討[1]。
1? ? ?校園教育管理系統(tǒng)設(shè)計(jì)相關(guān)技術(shù)介紹
1.1? ?區(qū)塊鏈
區(qū)塊鏈在邏輯上是由區(qū)塊鏈接而成的鏈表,區(qū)塊主要分為區(qū)塊頭和區(qū)塊體,區(qū)塊頭包含前一個(gè)區(qū)塊的信息(哈希值、時(shí)間戳等),區(qū)塊體包含交易信息等,區(qū)塊加入到區(qū)塊鏈后,構(gòu)成了有向無(wú)環(huán)圖,這種圖不存在中央節(jié)點(diǎn),因此鏈上的信息不容易被篡改。區(qū)塊鏈技術(shù)是一種新型的應(yīng)用模式,主要用于分布式數(shù)據(jù)存儲(chǔ)、點(diǎn)對(duì)點(diǎn)傳輸、共識(shí)機(jī)制和加密算法中。因?yàn)槠浔举|(zhì)上是一種去中心化的分布式賬本數(shù)據(jù)庫(kù),所以廣泛應(yīng)用于金融領(lǐng)域、物聯(lián)網(wǎng)和物流領(lǐng)域、公共服務(wù)領(lǐng)域、數(shù)字版權(quán)領(lǐng)域以及公益領(lǐng)域中。
區(qū)塊鏈的五個(gè)重要特征分別為去中心化、開(kāi)放性、獨(dú)立性、安全性和匿名性。去中心化指的是區(qū)塊鏈技術(shù)不依賴額外的第三方管理機(jī)構(gòu)或硬件設(shè)施,各個(gè)節(jié)點(diǎn)能夠?qū)崿F(xiàn)信息自我驗(yàn)證、傳遞和管理;開(kāi)放性指的是區(qū)塊鏈技術(shù)的基礎(chǔ)是開(kāi)源的,對(duì)所有人開(kāi)放,整個(gè)系統(tǒng)信息高度透明;獨(dú)立性指的是區(qū)塊鏈技術(shù)有著協(xié)商一致的規(guī)范和協(xié)議,數(shù)據(jù)在驗(yàn)證和交換過(guò)程中不需要其他人的干預(yù);安全性指的是區(qū)塊鏈技術(shù)能夠避免人為的數(shù)據(jù)變更,只要行為人不掌控全部數(shù)據(jù)節(jié)點(diǎn)的51%以上即可;匿名性指的是區(qū)塊鏈技術(shù)的各節(jié)點(diǎn)不須公開(kāi)或驗(yàn)證,信息傳遞可以匿名進(jìn)行。
比特幣是區(qū)塊鏈的第一個(gè)應(yīng)用,因?yàn)槠鋵^(qū)塊鏈技術(shù)作為底層技術(shù)并發(fā)展到極致,保證了價(jià)值一直處于高昂的狀態(tài)。而2013年,Eyal和Sirer提出了一種比特幣挖礦攻擊算法,使得區(qū)塊鏈?zhǔn)艿搅瞬恍〉墓簟W运酵诘V攻擊算法指的是當(dāng)新的區(qū)塊被發(fā)現(xiàn)后,算法可以將其保持私有,作為私鏈,然后繼續(xù)自私挖礦,即使私鏈長(zhǎng)度小于公鏈,惡意礦池也不會(huì)放棄私鏈。這種自私挖礦相比于誠(chéng)實(shí)挖礦,在收益上有著明顯的提高。自私挖礦攻擊算法能夠?qū)^(qū)塊鏈系統(tǒng)的穩(wěn)定性造成極大的破壞。本文主要針對(duì)自私挖礦攻擊算法,選擇了一種能夠抵御該攻擊的區(qū)塊鏈框架FISCO BCOS框架,從而增強(qiáng)系統(tǒng)的外部抵抗力,并利用此區(qū)塊鏈搭建了教育管理系統(tǒng),保障了用戶的信息安全、學(xué)分的可信和公開(kāi)透明,保證了系統(tǒng)與用戶之間的信任。
1.2? ?區(qū)塊鏈框架
本文設(shè)計(jì)的基于區(qū)塊鏈技術(shù)的校園教育管理系統(tǒng)主要使用FISCO BCOS框架作為底層框架,這個(gè)框架是國(guó)內(nèi)企業(yè)主導(dǎo)研發(fā)、安全可控的企業(yè)級(jí)聯(lián)盟區(qū)塊鏈框架環(huán)境,不同于公有鏈,聯(lián)盟鏈保證了加入其中的成員需要進(jìn)行身份驗(yàn)證,極大地加強(qiáng)了用戶的信息安全[2];另一方面,由于聯(lián)盟鏈?zhǔn)怯邢驘o(wú)環(huán)圖,以此為基礎(chǔ)搭建的系統(tǒng),在各項(xiàng)交易任務(wù)的處理速率上,得到了大大的提高。FISCO BCOS框架主要分為接口層、管理層、鏈核心層、互聯(lián)核心層和基礎(chǔ)層,具體架構(gòu)情況如圖1所示。
1.3? ?Vue.js
Vue是一種構(gòu)建可視化界面的漸進(jìn)式JavaScript框架,在本文設(shè)計(jì)的系統(tǒng)中主要用于搭建前端頁(yè)面。Vue的特點(diǎn)是能夠構(gòu)建交互式Web界面庫(kù),實(shí)現(xiàn)視圖層和模型層之間的數(shù)據(jù)雙向綁定,使得開(kāi)發(fā)代碼的維護(hù)難度能夠大幅度降低;另外,Vue.js可以利用其組件功能,封裝可重用的代碼,使得開(kāi)發(fā)代碼工作量變得更加輕松,提高了代碼的重用率。
1.4? ?Django
Django是基于Python的開(kāi)源Web應(yīng)用程序框架,在本文設(shè)計(jì)的系統(tǒng)中主要用于搭建系統(tǒng)后臺(tái)。Django的特點(diǎn)是能夠快速搭建高性能的Web網(wǎng)站,開(kāi)發(fā)時(shí)采用MTV三層模式,即模型(Model)、模板(Template)和視圖(View)。Model層主要處理數(shù)據(jù)事務(wù)(與數(shù)據(jù)庫(kù)直接溝通),Template層主要處理如何在頁(yè)面中可視化數(shù)據(jù),View層主要處理前兩層之間的業(yè)務(wù)邏輯。
2? ? ?校園教育管理系統(tǒng)需求分析
2.1? ?系統(tǒng)總體業(yè)務(wù)描述
本文設(shè)計(jì)的基于區(qū)塊鏈技術(shù)的校園教育管理系統(tǒng)主要使用FISCO BCOS框架作為底層框架,在系統(tǒng)開(kāi)發(fā)層面上,選擇Django框架作為系統(tǒng)后臺(tái)程序框架,選擇Vue.js作為系統(tǒng)的前端設(shè)計(jì)頁(yè)面。基于上述考慮,在系統(tǒng)總體業(yè)務(wù)方面,主要分為以下幾點(diǎn):首先,超級(jí)管理員登錄后,能夠新建管理員賬號(hào)信息,管理員賬號(hào)主要用于子系統(tǒng)的管理(包括師生信息管理系統(tǒng)、政教管理系統(tǒng)、交互式教學(xué)平臺(tái)、后勤管理系統(tǒng)等),管理員主要負(fù)責(zé)系統(tǒng)信息的上鏈、賬號(hào)管理和信息審核等工作;其次,游客、校園合作方等校外人員可以在系統(tǒng)中注冊(cè)賬號(hào),并體驗(yàn)系統(tǒng)的部分功能,比如學(xué)校信息查詢、政務(wù)人員信息查詢、課程信息查詢等;最后,師生、行政人員、后勤人員等校內(nèi)人員擁有游客的所有功能,并在各自的子系統(tǒng)中擁有屬于各自身份認(rèn)證的功能,比如師生可以查看自己的課程、學(xué)分、考試信息等,可以在學(xué)習(xí)平臺(tái)中瀏覽資料,可以在后勤管理系統(tǒng)中申請(qǐng)借取工具[3]。
2.2? ?系統(tǒng)功能需求分析
基于總體業(yè)務(wù)描述,基于區(qū)塊鏈的校園教育管理系統(tǒng)應(yīng)該具有以下功能:
(1)用戶管理:系統(tǒng)應(yīng)該實(shí)現(xiàn)用戶的注冊(cè)、登錄管理功能。用戶在未注冊(cè)時(shí),只能瀏覽、查看一些系統(tǒng)體驗(yàn)項(xiàng)目,部分頁(yè)面游客不能打開(kāi)。用戶注冊(cè)后,需要錄入自己的身份信息,并得到管理員分配的權(quán)限,不同的身份認(rèn)證擁有不同的系統(tǒng)使用權(quán)限。用戶賬戶一旦注冊(cè)完畢,只有用戶自己和管理員擁有賬號(hào)的修改權(quán)限。
(2)信息查詢:每個(gè)用戶都能在各自的子系統(tǒng)中查看相關(guān)內(nèi)容,不能跨系統(tǒng)查看權(quán)限之外的內(nèi)容。
(3)信息保障:本文利用區(qū)塊鏈技術(shù)構(gòu)建了去中心化的校園教育管理系統(tǒng),利用區(qū)塊鏈技術(shù)的不可篡改性和信息公開(kāi)透明的特點(diǎn),保障了系統(tǒng)信息的可信性。
(4)其他功能:校園教育管理系統(tǒng)能夠?qū)悠渌酉到y(tǒng),在用戶管理方面取消了各系統(tǒng)的獨(dú)立建庫(kù),減少了系統(tǒng)信息的冗余,方便了用戶的統(tǒng)一管理。各子系統(tǒng)擁有各自的功能,保證了校園教育各類事項(xiàng)的全面管理,具體的功能在此不做詳述。
2.3? ?系統(tǒng)非功能需求分析
除了校園教育管理系統(tǒng)的基本功能外,還需要探討以下非功能需求。
(1)安全性:安全性是校園教育管理系統(tǒng)使用區(qū)塊鏈技術(shù)作為底層框架的核心原因。保證用戶個(gè)人信息不丟失、不被篡改,對(duì)于系統(tǒng)來(lái)說(shuō)是尤為重要的,若當(dāng)前區(qū)塊鏈系統(tǒng)存在某些漏洞,則會(huì)造成不可預(yù)測(cè)的危害。因此,本文深入研究區(qū)塊鏈系統(tǒng)的安全性,并應(yīng)用區(qū)塊鏈技術(shù)構(gòu)建了良好的系統(tǒng)生態(tài)環(huán)境。
(2)可擴(kuò)展性:校園教育管理系統(tǒng)是總系統(tǒng)平臺(tái),其連接著各子系統(tǒng),系統(tǒng)內(nèi)的各個(gè)功能模塊時(shí)刻處于動(dòng)態(tài)變化的過(guò)程中,因此系統(tǒng)需要具備可擴(kuò)展性,從而能夠及時(shí)應(yīng)對(duì)相關(guān)功能模塊的變化,并作出相應(yīng)的調(diào)整。未來(lái)如果系統(tǒng)想要增加額外的功能,或引入更多的子系統(tǒng),可擴(kuò)展性都能夠保證開(kāi)發(fā)工作的順利進(jìn)行[4]。
(3)響應(yīng)速率:引入?yún)^(qū)塊鏈技術(shù)作為系統(tǒng)的底層框架,以其有向無(wú)環(huán)圖的特點(diǎn),保證了各類交易任務(wù)的處理速率都得到極大的提高,并且用戶的各種與數(shù)據(jù)庫(kù)相關(guān)的功能操作都能得到極快的反饋。
3? ? ?校園教育管理系統(tǒng)總體設(shè)計(jì)
3.1? ?系統(tǒng)總體架構(gòu)設(shè)計(jì)
校園教育管理系統(tǒng)總體架構(gòu)分為四層,包括用戶層、應(yīng)用層、業(yè)務(wù)層和區(qū)塊鏈層(如圖2所示)。
用戶層主要考慮瀏覽系統(tǒng)的用戶身份,包括注冊(cè)和登錄。應(yīng)用層是用戶在注冊(cè)并登錄后能夠使用的功能模塊,主要包括用戶信息查詢和修改、課程信息查詢和選取等。業(yè)務(wù)層主要為應(yīng)用層的功能實(shí)現(xiàn)提供技術(shù)支持,主要包括哈希數(shù)據(jù)上鏈、哈希時(shí)間鎖合約、系統(tǒng)安全支持、表單服務(wù)支持和消息服務(wù)支持。其中,哈希數(shù)據(jù)上鏈保證系統(tǒng)信息的可信程度,時(shí)間鎖合約為資產(chǎn)原子跨鏈交換環(huán)境的構(gòu)建提供支持,表單服務(wù)和消息服務(wù)實(shí)現(xiàn)了用戶和后臺(tái)的交互,系統(tǒng)安全支持技術(shù)讓校園教育管理系統(tǒng)時(shí)刻處于安全環(huán)境中,使其生態(tài)環(huán)境更加圓滿;區(qū)塊鏈層主要為FISCO BCOS框架、跨鏈框架WeCross和區(qū)塊鏈系統(tǒng)安全性分析算法[5]。
3.2? ?功能模塊設(shè)計(jì)
根據(jù)上文對(duì)校園教育管理系統(tǒng)的需求分析介紹可知,系統(tǒng)將功能模塊劃分為用戶管理、信息查詢、信息保障和其他功能四項(xiàng)。
(1)用戶管理功能。用戶以游客身份瀏覽系統(tǒng)平臺(tái)時(shí),無(wú)法進(jìn)行用戶管理,只有在注冊(cè)后,才能使用系統(tǒng)給予的完整用戶管理功能。用戶注冊(cè)登錄基本流程為:用戶在瀏覽器向服務(wù)器提出HTTP請(qǐng)求,提交相關(guān)身份信息;管理員核實(shí)并賦予相關(guān)權(quán)限,用戶信息存入數(shù)據(jù)庫(kù),并返回注冊(cè)狀態(tài);用戶注冊(cè)完畢,提交登錄信息;服務(wù)器響應(yīng),將登錄信息與數(shù)據(jù)庫(kù)比對(duì),并返回登錄狀態(tài);用戶登錄完畢后,可以在個(gè)人信息頁(yè)面管理自己的信息。在登錄狀態(tài)下,學(xué)生可以查看課程信息、選取課程、查看已修學(xué)分、查看考試成績(jī)、下載課程資料等;教師可以查看課程信息、查看學(xué)生考試信息、上傳課程資料、對(duì)學(xué)生課程學(xué)習(xí)情況進(jìn)行評(píng)價(jià)和打分等。
(2)信息查詢功能。信息查詢主要包括個(gè)人信息查詢、課程信息查詢以及其他系統(tǒng)信息查詢。信息查詢的基本流程為:用戶在瀏覽器點(diǎn)擊響應(yīng)按鈕,提交POST請(qǐng)求到后臺(tái)服務(wù)器;服務(wù)器通過(guò)關(guān)鍵字比對(duì)等算法,在數(shù)據(jù)庫(kù)中查詢相關(guān)內(nèi)容,若內(nèi)容不存在則提示用戶,若內(nèi)容存在則返回相關(guān)信息。
(3)信任保障功能。信任保障功能主要利用區(qū)塊鏈的不可篡改和數(shù)據(jù)公開(kāi)透明的特點(diǎn),對(duì)相關(guān)數(shù)據(jù)進(jìn)行存證。其中,本系統(tǒng)對(duì)數(shù)據(jù)采用哈希上鏈操作,使得鏈上的內(nèi)存能得到謹(jǐn)慎使用,并且還能夠提高數(shù)據(jù)上傳的運(yùn)算速度。數(shù)據(jù)哈希上鏈的基本流程為:用戶在瀏覽器上提交數(shù)據(jù)上傳請(qǐng)求,后臺(tái)服務(wù)器收到請(qǐng)求后,使用哈希運(yùn)算,通過(guò)調(diào)用SDK、調(diào)用智能合約的方式,實(shí)現(xiàn)數(shù)據(jù)的哈希上鏈,最終數(shù)據(jù)會(huì)進(jìn)入到區(qū)塊鏈中,保障了用戶和系統(tǒng)之間的信任。
(4)其他功能。本系統(tǒng)主要對(duì)接學(xué)校的各類子系統(tǒng),因此用戶在上傳數(shù)據(jù)和瀏覽信息時(shí)可以經(jīng)由區(qū)塊鏈系統(tǒng)獲得子系統(tǒng)的相關(guān)權(quán)限和功能操作權(quán)限,方便了用戶的統(tǒng)一管理,系統(tǒng)的后臺(tái)業(yè)務(wù)邏輯也免去了數(shù)據(jù)處理的冗余流程。各子系統(tǒng)的相關(guān)業(yè)務(wù)功能模塊這里不再一一舉例。
3.3? ?區(qū)塊鏈系統(tǒng)安全性分析算法
系統(tǒng)的安全性主要受到內(nèi)部驅(qū)動(dòng)力和外部抵抗力兩方面的影響。從內(nèi)部驅(qū)動(dòng)力角度來(lái)看,通過(guò)對(duì)上傳數(shù)據(jù)哈希上鏈,封裝智能合約函數(shù),能夠?qū)崿F(xiàn)數(shù)據(jù)的公開(kāi)透明和自動(dòng)化執(zhí)行,避免了人為篡改;從外部抵抗力角度來(lái)看,本文采用的FISCO BCOS框架,能夠極好地抵抗自私挖礦攻擊算法對(duì)區(qū)塊鏈的攻擊,相較于公有鏈來(lái)說(shuō),聯(lián)盟鏈對(duì)想加入該區(qū)塊鏈網(wǎng)絡(luò)的用戶采取審核機(jī)制,只有經(jīng)過(guò)許可才能加入,降低了自私礦工加入校園教育管理系統(tǒng)實(shí)施攻擊的可能性。此外,F(xiàn)ISCO BCOS框架也不同于比特幣系統(tǒng),采用PBFT維持了網(wǎng)絡(luò)的一致性,使得自私挖礦攻擊算法對(duì)其不再適用,從而保障了系統(tǒng)的外部安全。
主要參考文獻(xiàn)
[1]鄭旭東,楊現(xiàn)民.基于區(qū)塊鏈技術(shù)的學(xué)生綜合素質(zhì)評(píng)價(jià)系統(tǒng)設(shè)計(jì)[J].現(xiàn)代遠(yuǎn)程教育研究,2020,32(1):23-32.
[2]朱林,劉躍.基于區(qū)塊鏈技術(shù)的高校學(xué)生日常行為管理系統(tǒng)研究[J].西南民族大學(xué)學(xué)報(bào)(自然科學(xué)版),2019,45(3):290-295.
[3]王岳,陳晨,陳翀,等.高等教育領(lǐng)域區(qū)塊鏈技術(shù)應(yīng)用現(xiàn)狀研究:基于38所高等教育機(jī)構(gòu)的分析[J].中國(guó)教育信息化,2021(15):21-27.
[4]胡寧玉,趙青杉,馮麗萍,等.基于區(qū)塊鏈技術(shù)的高校學(xué)生檔案管理研究[J].忻州師范學(xué)院學(xué)報(bào),2021,37(2):41-44.
[5]崔阿悅,朱聰惠,王星皓.基于區(qū)塊鏈的學(xué)生信息資源管理體系的研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2019(1):18-20.