李宏志 陸克中



摘要:高校第二課堂是指在第一課堂以外的時間進行的、學校在教學計劃之外組織和引導學生開展的各種有教育意義的活動。近年來,高校第二課堂的開設在學生綜合素養培養方面發揮的作用越來越明顯。然而,現有的教學管理系統難以對學生第二課堂的表現及學習行為進行客觀評價與追蹤。針對現有教學管理系統下所存在的學習記錄不透明、學分認證和學習記錄追溯較為困難等問題,文章提出了一種基于區塊鏈智能合約的第二課堂學分管理系統,提出了基于區塊鏈的系統架構并基于以太坊實現了原型系統,實驗結果表明,該模型能夠為高校第二課堂管理提供新的思路和技術。
關鍵詞:區塊鏈;智能合約;第二課堂;學分認定;隱私安全
中圖分類號:TP311? ? ? 文獻標識碼:A
文章編號:1009-3044(2024)09-0043-04
開放科學(資源服務)標識碼(OSID)
0 引言
高校第二課堂是高校育人體系的重要部分。習近平總書記強調,要重視和加強第二課堂建設,重視實踐育人。全國各高校積極開展第二課堂教育探索,但是制度化、學分化建設階段面臨巨大挑戰,全國高校也在不斷深化改革第二課堂并尋找新路徑。目前,第二課堂的學分管理主要依賴構建合理的學分管理標準和架構基于云計算技術信息化管理平臺[1]。但存在的問題主要有:1) 高校學分管理涉及內容繁雜,需要多部門相互配合,難以制定出適用面較廣且行之有效的標準;2) 結合云計算技術的管理平臺能夠較好地解決學分記錄及相關數據的管理問題,但對于數據的安全和可靠性無法保障。部分學者[4]提出使用數據挖掘算法,分析教務數據庫中學生的成績數據,作為第二課堂的學分核算依據。現行的解決方案,均是建立在可信第三方軟件的基礎上實現學分及學習成果的認證與轉換,而實踐中制約數據可信度的不可控因素較多,影響了第二課堂學分的真實性和安全性。隨著區塊鏈技術的日趨成熟,區塊鏈的應用場景也逐漸從最初的加密電子貨幣,擴展到各個行業中,已經成為可信區塊鏈即服務(Blockchain as a Service,BaaS) 的平臺,為解決高校第二課堂學分管理問題提供新的思路和技術支持。基于上述分析,本文提出了一種面向高校第二課堂的學分管理系統以提高學習記錄、學習成果以及學分認定的可信度。
1 相關工作
1.1 區塊鏈原理
區塊鏈本質上是一個分布式的公共賬本,在分布式的環境下有多個相對獨立的主機節點共同參與和維護,一般而言區塊鏈結構是以數據區塊為單位按照時間的順序連接而成的。在分布式環境中所有節點的地位相等,不存在任何中心化的特殊節點。區塊鏈具有去中心化、不可篡改、可追溯等特點,在區塊鏈中每個區塊部分可分為區塊頭和區塊數據部分,其中區塊都保存了區塊的相關描述信息,如時間戳、區塊的哈希值、相鄰區塊的哈希地址等;區塊數據部分負責存儲和維護相關數據[2]。區塊鏈的具體結構如圖1所示。
區塊鏈平臺采用分層的設計思路,整體上可以劃分為數據層、網絡層、共識層、智能合約層和應用層等5個層次[3],如圖2所示,數據層位于整個分層結構的最底端,負責對業務數據的存儲管理。網絡層中各節點相對對等,采用P2P協議(如Gossip協議)完成數據交互和傳輸。共識層負責使用共識算法和激勵機制管理各網絡節點、支持拜占庭容錯,選取合適的節點作為數據打包節點。智能合約層主要作用是為智能合約提供合適的編譯和運行環境,主要涉及與業務邏輯相關的程序。應用層支持用戶定義和發起執行智能合約未用戶提供合適的編程接口。
1.2 智能合約
智能合約是一套以數字形式定義的承諾,簡單來說是一段具有特殊功能的程序,能夠執行區塊鏈中的特定操作[4]。由于受到區塊鏈網絡資源的限制,智能合約一般不能包含太復雜的業務邏輯,智能合約本身更強調事物特性,類似于數據庫的存儲過程。智能合約一般運行在隔離的沙箱環境中,主流的區塊鏈中提供的沙箱環境包括以太坊虛擬機和Docker容器[5]。以太坊環境中使用Solidity編程語言來定義智能合約。在圖3的代碼示例中,Contract 關鍵字標識了合約,SimStore 是合約的名稱,initData 表示合約中的一個字段,Set和Get 方法定義了對于合約中字段的修改和讀取功能。
2 平臺系統的構建
本文基于區塊鏈技術設計去中心化的學分管理系統,其中包含的重要組件如圖4所示。模型結構主要包括在線學習網絡平臺,分布式學分及學習成果管理數據庫集群,區塊鏈網絡平臺以及與業務應用相關的模塊設計。模型中的用戶類型主要分為在線學習者和教學管理者,在線學習者參與學校的各類平臺的學習工作并將學習記錄包括學分和學習成果,提交給平臺,最終同步到分布式數據庫(Distributed Database System,DDBS) 。教學管理者主要的職責是負責驗證學習成果的可靠性,管理學習記錄和成果。為了保證學習成果的原始性和不可篡改性,模型將原始的學習記錄、學分等數據經過哈希后提交給模型中的區塊鏈網絡中,具體過程包括如下步驟:
1) 對于用戶的學分及相關的學習記錄經過哈希計算之后,獲得唯一摘要信息。
2) 經過驗證之后將摘要信息上傳至區塊鏈網絡中,將區塊鏈中存儲憑證返回給相關記錄。
3) 區塊鏈中的數據具有不可變更特性,通過區塊鏈中哈希值來驗證數據庫中記錄是否已經變更。
參與區塊鏈共識存儲。區塊鏈中全節點,在接收到用戶端發起的原始學習成果記錄存入指令,采用PoW 共識機制,選取交易打包節點調用已經部署的智能合約,完成驗證操作,最終將記錄存入區塊鏈網絡。
在本文提出的系統中,智能合約作為整個模型的重要部分,公開透明地部署在區塊鏈中,負責執行數據的合法性校驗,將記錄打包成合法的交易的信息,并發布到區塊鏈網絡中。由于區塊鏈網絡中的數據難以篡改,保證了區塊鏈中存儲原始數據的安全性。
本文所提出的模型具有以下特點:
1) 在線學習平臺采用微服務的架構:各類學習資源通過打包成微服務,集成在在線學習平臺中,能夠根據學習者的需求靈活地提供所需的內容。
2) 分布式數據庫系統(DDBS) :學習者的各類學習項目的評分及原始學習記錄通過加密的方式存儲在分布式數據庫系統中,減少區塊鏈網絡中數據存儲和訪問的壓力。
3) 智能合約的設計:建立面向學分管理的智能合約體系,并實現學習成果認證,學分換算的智能合約程序,形成一種無須第三方干預的學習成果管理模式。
4) 區塊鏈網絡的存證體系:為了保證分布式數據庫中的記錄為經過授權無法篡改,采用專有的區塊鏈網絡存儲信息的哈希摘要信息。在驗證記錄的有效性只需要對比記錄的哈希值是否和區塊鏈中存儲的是否一致。
2.1 基于區塊鏈學分存證模塊
基于區塊鏈的存證組件是本文模型的重要組成部分,區塊鏈網絡本質上事由點對點對等網絡(Peer to Peer , P2P) 組成。區塊鏈中的各節點在邏輯上是完全平等,都具有參與共識算法打包數據的能力。不同于公有區塊鏈,本文采用的具備認證功能的區塊鏈,所有參與的節點都需要經過注冊中CA 認證并審核才能加入區塊鏈,如圖5所示。區塊鏈主節點主要的職責有:
1) 驗證來自業務節點發起的區塊存儲消息,負責與業務節點訂立交易協議規則。
2) 作為注冊中心CA負責審核新節點的加入申請,每個節點都保存當前區塊鏈的全部狀態。
3) 運行分布式共識算法,對加入區塊鏈的數據競爭打包權限并將打包之后的憑證返回給業務節點。
4) 處理來自業務節點的數據有效性驗證請求,能夠提供數據是否存在與區塊鏈中的驗證服務。
此外,本文系統采用智能合約自動執行學分的轉換操作,以此來保證系統中關于第二課堂學分認定的自動化執行。其中,第二課堂學分認定合約(Credit Conve rsion Standard Contract,CCSC) 如算法1所示。
算法1? 學分認定合約 (CCSC)
contract CCSC{
Object learner_info;? ?//作者信息
Object standard_credits ; //學分轉換標準
DataSet learing_dataset ;//相關學習成果
If (msg.sender == learner_info.owner) then
For standard_credits.content as sitem : // 迭代轉換規則內容
For learing_dataset.content as litem:
If sitem.id == litem.id then: //原始成果與轉換規則匹配
TargetCredits+=SC_Calculate( litem.id,tandard_credits) //計算轉換學分
Endif //執行成果-分值轉換操作
Endfor
Endfor
Endif
3 系統測試
本文所使用的原型系統是基于以太坊搭建的,實驗中使用的操作系統為Centos 7.4,智能合約使用以太坊通用的高級語言Solidity編寫。測試的硬件環境為12臺安裝了以太坊golang 客戶端的分布式主機節點,每臺主機配置為4核2GHZ CPU,內存為4G。各個客戶端節點相互交換和驗證信息組成了一個私有的區塊鏈網絡,智能合約的部署過程如圖6 所示。
可信學分管理系統使用J2EE(Java 2 Platform Enterprise Edition) 企業級Web框架實現學分管理平臺的功能,應用SSH開發框架,采用分層、模塊化、服務化的設計模式。如圖7 所示,系統的交互界面包含用戶界面與區塊鏈監控軟件兩個部分。
第二課堂的學分管理平臺設計工作表明,使用區塊鏈對第二課堂的活動進行追蹤是可行的,不僅能夠保證數據具有較好的真實性與安全性,還能豐富教學數據的規模與層次,為利用教學大數據開展教學效果評價、教學方法分析、教學過程追蹤提供數據支撐。
4 結束語
為了解決現有高校第二課堂的學分認證、學習成果登記過程中存在的記錄易篡改,安全性不足的問題,本文基于區塊鏈技術設計了一種面向高校第二課堂的學分管理的管理平臺。該模型使用了J2EE的技術架構體系,引入以太坊區塊鏈網絡,對學習原始記錄及學分評價進行存儲和備份。智能合約的使用使得整個模型在無第三方可信機構的監督下,仍然能夠安全高效地運行。 實驗結果表明,該平臺在學分管理,學習成果管控方面具有較高的安全性,下一步的工作將繼續探索利用區塊鏈技術保護在線學習平臺上的用戶敏感信息的有效模式。
參考文獻:
[1] 吳貝貝.基于區塊鏈技術的校際學分銀行綜合評價系統的構建研究[J].信息系統工程,2024(1):46-49.
[2] 王冬梅,王瑾.區塊鏈技術賦能:外語教育資源數字化治理[J].湖北經濟學院學報(人文社會科學版),2024,21(1):9-11.
[3] 周虎,黨仁,孫羽.基于聯盟鏈的養老機構老年人的隱私保護方案[J].網絡安全技術與應用,2024(1):61-65.
[4] 沈傳年.智能合約安全漏洞研究現狀[J].信息安全研究,2023,9(12):1166-1172.
[5] 陳錦富,王震鑫,蔡賽華,等.基于蛻變測試的區塊鏈智能合約漏洞檢測方法[J].通信學報,2023,44(10):164-176.
【通聯編輯:李雅琪】