肖 娟,王 嵩,李發(fā)英,顏文燕,李尚林(通信作者)
(湘南學(xué)院計(jì)算機(jī)與人工智能學(xué)院 湖南 郴州 423000)
區(qū)塊鏈3.0 是對(duì)區(qū)塊鏈2.0 的改進(jìn)和升級(jí),其在架構(gòu)設(shè)計(jì)、提高性能和擴(kuò)展性、保護(hù)隱私、跨鏈互操作等方面引入新的技術(shù)和機(jī)制,使得區(qū)塊鏈3.0 可以滿足更復(fù)雜的業(yè)務(wù)需求和應(yīng)用[1]。 因此,區(qū)塊鏈3.0 在教育領(lǐng)域的應(yīng)用也將更加廣泛。
“區(qū)塊鏈+教育”最早應(yīng)用于學(xué)歷認(rèn)證方面,例如:麻省理工學(xué)院的數(shù)字憑證項(xiàng)目使用區(qū)塊鏈技術(shù)為學(xué)生提供了可驗(yàn)證的學(xué)歷證書(shū);日本索尼全球教育公司利用區(qū)塊鏈技術(shù)開(kāi)發(fā)了一套教育數(shù)據(jù)管理系統(tǒng)。 國(guó)內(nèi)“區(qū)塊鏈+教育”領(lǐng)域的應(yīng)用也有一定的成果,例如上海交通大學(xué)與知識(shí)產(chǎn)權(quán)交易所合作,利用區(qū)塊鏈技術(shù)為學(xué)生提供學(xué)歷認(rèn)證服務(wù)等。
高校生態(tài)系統(tǒng)是一個(gè)復(fù)雜的教育生態(tài)子系統(tǒng),其本身由內(nèi)部要素和外部環(huán)境等較多的元素組成,且各元素間存在復(fù)雜的業(yè)務(wù)邏輯關(guān)系,不同于區(qū)塊鏈技術(shù)在教育領(lǐng)域以往應(yīng)用的單一性,本文將探索區(qū)塊鏈3.0 對(duì)復(fù)雜高校生態(tài)系統(tǒng)的構(gòu)建。 將從高校生態(tài)系統(tǒng)內(nèi)部業(yè)務(wù)邏輯分析出發(fā),設(shè)計(jì)和實(shí)現(xiàn)高校新生態(tài)的區(qū)塊鏈3.0 系統(tǒng)。
設(shè)計(jì)和開(kāi)發(fā)區(qū)塊鏈應(yīng)用系統(tǒng),需考慮以下主要組件:
(1)分布式網(wǎng)絡(luò):區(qū)塊鏈?zhǔn)且粋€(gè)分布式系統(tǒng),由多個(gè)節(jié)點(diǎn)組成,通過(guò)點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)連接在一起,共享數(shù)據(jù)和交易信息。
(2)區(qū)塊鏈協(xié)議:定義節(jié)點(diǎn)之間的通信規(guī)則和數(shù)據(jù)交換方式,規(guī)定如何創(chuàng)建新的區(qū)塊、驗(yàn)證交易、共識(shí)算法等。
(3)共識(shí)算法:是用于解決分布式系統(tǒng)中節(jié)點(diǎn)之間達(dá)成一致的算法,在區(qū)塊鏈中的作用是確保所有參與節(jié)點(diǎn)在驗(yàn)證、添加新交易或區(qū)塊時(shí)能夠達(dá)成共識(shí),以保證數(shù)據(jù)的一致性和安全性。
(4)數(shù)據(jù)結(jié)構(gòu):區(qū)塊鏈?zhǔn)褂面準(zhǔn)綌?shù)據(jù)結(jié)構(gòu)來(lái)存儲(chǔ)交易記錄。 每個(gè)區(qū)塊都包含前一個(gè)區(qū)塊的哈希值,形成了一個(gè)不可篡改的鏈條。
(5)加密算法:用于保護(hù)交易和數(shù)據(jù)的安全性,常包括哈希函數(shù)、數(shù)字簽名、對(duì)稱加密和非對(duì)稱加密等。
(6)智能合約:在區(qū)塊鏈上執(zhí)行的可編程代碼,定義了參與方之間的交易規(guī)則和條件,并自動(dòng)執(zhí)行這些規(guī)則。
(7)數(shù)據(jù)存儲(chǔ):區(qū)塊鏈可使用不同的數(shù)據(jù)存儲(chǔ)方式,包括分布式文件系統(tǒng)、數(shù)據(jù)庫(kù)等。
(8)用戶界面:提供用戶與區(qū)塊鏈進(jìn)行交互的方式,可以是命令行接口、Web 界面或移動(dòng)應(yīng)用程序等。
(1)擴(kuò)展性能和性能的提升,通過(guò)開(kāi)發(fā)新的共識(shí)機(jī)制、分片技術(shù)、側(cè)鏈等提高區(qū)塊鏈系統(tǒng)的吞吐量和效率。
(2)隱私和安全性的增強(qiáng),隱私保護(hù)技術(shù)被引入以實(shí)現(xiàn)在區(qū)塊鏈上進(jìn)行私密交易和數(shù)據(jù)共享[2-3]。
(3)跨鏈的互操作性,不同的區(qū)塊鏈系統(tǒng)能夠相互通信和交換價(jià)值,而不僅僅局限于各自的封閉網(wǎng)絡(luò)。
(4)去中心化應(yīng)用的成熟,是基于區(qū)塊鏈構(gòu)建的應(yīng)用程序,具有去中心化、透明、安全等特點(diǎn)。
高校生態(tài)系統(tǒng)是從教育生態(tài)學(xué)的視角去看待高校及其生態(tài)環(huán)境,它是由內(nèi)部組成要素和外部生態(tài)環(huán)境以及內(nèi)外部之間的相互交流與作用形成的一個(gè)統(tǒng)一體。
2.1.1 高校生態(tài)系統(tǒng)內(nèi)部要素
(1)高校機(jī)構(gòu)
包括大學(xué)和學(xué)院,是高校生態(tài)系統(tǒng)的核心,為高校學(xué)生提供教育資源、學(xué)術(shù)指導(dǎo)、研究機(jī)會(huì)。 同時(shí)承擔(dān)培養(yǎng)人才、推動(dòng)學(xué)術(shù)研究和知識(shí)創(chuàng)新的責(zé)任。
(2)高校學(xué)生
是高校生態(tài)系統(tǒng)的核心受益者和參與者,通過(guò)課堂學(xué)習(xí)、研究項(xiàng)目、實(shí)習(xí)和實(shí)踐等方式來(lái)獲得教育、知識(shí)、技能和學(xué)位。
(3)高校教職員工
通過(guò)教學(xué)、指導(dǎo)學(xué)生、開(kāi)展研究和進(jìn)行學(xué)術(shù)交流等方式來(lái)推動(dòng)教育的質(zhì)量和創(chuàng)新。
2.1.2 高校生態(tài)系統(tǒng)外部要素
(1)政府機(jī)構(gòu)
制定教育政策、提供資金支持和監(jiān)管,確保高校的質(zhì)量和公平性,促進(jìn)教育與就業(yè)市場(chǎng)的對(duì)接。
(2)行業(yè)合作伙伴
提供實(shí)踐機(jī)會(huì)、實(shí)習(xí)項(xiàng)目、研究資助和就業(yè)機(jī)會(huì),幫助學(xué)生將所學(xué)知識(shí)應(yīng)用于實(shí)際工作之中。
(3)社會(huì)和社區(qū)
提供學(xué)生支持服務(wù)、校外實(shí)習(xí)機(jī)會(huì)、社會(huì)參與項(xiàng)目等,為學(xué)生提供全面的教育體驗(yàn)和發(fā)展機(jī)會(huì)。
高校生態(tài)系統(tǒng)組成示意圖如圖1 所示。
圖1 高校生態(tài)系統(tǒng)組成
2.1.3 高校生態(tài)系統(tǒng)內(nèi)外部要素關(guān)系
高校生態(tài)系統(tǒng)內(nèi)部要素即高校機(jī)構(gòu)下設(shè)職能部門(mén)和二級(jí)學(xué)院,作為學(xué)生和教職工的管理機(jī)構(gòu),學(xué)生從入學(xué)到畢業(yè)的全部學(xué)習(xí)活動(dòng)和教職員工的教學(xué)、科研相關(guān)業(yè)務(wù)工作都?xì)w高校機(jī)構(gòu)管理。 教職員工對(duì)學(xué)生有授課、管理等職責(zé),學(xué)生也是教職員工業(yè)務(wù)效果的評(píng)價(jià)者。
而高校生態(tài)系統(tǒng)的外部要素如政府機(jī)構(gòu)、行業(yè)合作伙伴、社會(huì)和社區(qū)和高校生態(tài)系統(tǒng)內(nèi)部要素之間也是息息相關(guān)的,政府機(jī)構(gòu)是高校機(jī)構(gòu)的直接領(lǐng)導(dǎo)和管理者,高校實(shí)施人才培養(yǎng)離不開(kāi)行業(yè)合作伙伴和社會(huì)社區(qū)。 高校生態(tài)系統(tǒng)內(nèi)外部要素關(guān)系如圖2 所示。
圖2 高校生態(tài)系統(tǒng)業(yè)務(wù)邏輯
應(yīng)用區(qū)塊鏈3.0 構(gòu)建高校生態(tài)系統(tǒng),以系統(tǒng)內(nèi)部三要素為主體可設(shè)計(jì)三大區(qū)塊數(shù)據(jù):機(jī)構(gòu)、學(xué)生和教職員工。每類區(qū)塊數(shù)據(jù)的結(jié)構(gòu)定義如下,示例如圖3 所示。
圖3 區(qū)塊數(shù)據(jù)結(jié)構(gòu)定義示例
(1)區(qū)塊頭(block header):是區(qū)塊的元數(shù)據(jù),包含區(qū)塊相關(guān)的信息和驗(yàn)證數(shù)據(jù),一般包括:版本號(hào)、前一區(qū)塊哈希、時(shí)間戳、Merkle 根、難度目標(biāo)等。
(2)交易數(shù)據(jù)(transaction data):是區(qū)塊鏈中記錄的重要內(nèi)容,可包含多個(gè)交易,包括發(fā)送者、接收者、交易金額以及其他相關(guān)信息。 本系統(tǒng)中三大主體根據(jù)各自信息需求有不同的交易數(shù)據(jù),每次交易產(chǎn)生一個(gè)交易數(shù)據(jù)。 一般包括:交易哈希值、發(fā)送方地址、接收方地址、交易金額、交易時(shí)間戳、交易簽名等。
(3)區(qū)塊哈希(block hash):通過(guò)對(duì)區(qū)塊頭進(jìn)行哈希計(jì)算得到唯一標(biāo)識(shí)符,具有唯一性和不可篡改性,用于驗(yàn)證和鏈接區(qū)塊。
根據(jù)區(qū)塊鏈3.0 的層次架構(gòu)[4],構(gòu)建高校新生態(tài)系統(tǒng)可分為5 個(gè)層次。
第一層:區(qū)塊技術(shù)底層,包括網(wǎng)絡(luò)拓?fù)?,加密解密,區(qū)塊數(shù)據(jù)結(jié)構(gòu)、節(jié)點(diǎn)設(shè)置和計(jì)算方法。
第二層:區(qū)塊核心層,包括共識(shí)機(jī)制、共識(shí)算法、區(qū)塊數(shù)據(jù)操作規(guī)范和網(wǎng)絡(luò)操作規(guī)范。
第三層:區(qū)塊鏈3.0 智能合約運(yùn)行和網(wǎng)絡(luò)操作調(diào)用的支撐環(huán)境。
第四層:智能合約層,是整個(gè)計(jì)算技術(shù)架構(gòu)的關(guān)鍵部分。
第五層:應(yīng)用層,使用Web 應(yīng)用開(kāi)發(fā)與用戶交互的前端。
以高校生態(tài)系統(tǒng)內(nèi)部三要素為主體,應(yīng)用區(qū)塊鏈3.0構(gòu)建高校新生態(tài)系統(tǒng),如圖4 所示。
圖4 區(qū)塊鏈3.0 構(gòu)建高校新生態(tài)系統(tǒng)模塊
學(xué)生主體包括:
(1)學(xué)歷認(rèn)證和學(xué)生檔案管理。 建立去中心化的學(xué)歷認(rèn)證和檔案管理系統(tǒng),可減少學(xué)歷造假、信息篡改的風(fēng)險(xiǎn)。
(2)學(xué)生數(shù)據(jù)管理。 管理大量的學(xué)生信息、教學(xué)數(shù)據(jù)和行政數(shù)據(jù)。
教職員工主體包括:
(1)教職員工數(shù)據(jù)管理。 管理教職員工作業(yè)績(jī)、業(yè)務(wù)成果、年度測(cè)評(píng)等相關(guān)數(shù)據(jù)。
(2)學(xué)術(shù)研究和知識(shí)產(chǎn)權(quán)保護(hù)。 保護(hù)學(xué)術(shù)研究的數(shù)據(jù)、成果和知識(shí)產(chǎn)權(quán),可通過(guò)區(qū)塊鏈進(jìn)行跟蹤和驗(yàn)證,確保其來(lái)源和完整性。
機(jī)構(gòu)主體包括:
(1)教育資源共享。 教師和學(xué)生可以在平臺(tái)上共享教學(xué)材料、課程內(nèi)容和研究成果,促進(jìn)跨機(jī)構(gòu)的合作和共享,提高教育資源的利用效率。
(2)數(shù)據(jù)隱私與保護(hù)。 數(shù)據(jù)存儲(chǔ)在區(qū)塊鏈上,只有授權(quán)的人員才能訪問(wèn)[5]。
(3)智能合約服務(wù)。 可以自動(dòng)執(zhí)行合約中定義的規(guī)則和條件,提高效率并減少人為錯(cuò)誤。
區(qū)塊鏈底層的網(wǎng)絡(luò)是典型的P2P 對(duì)等網(wǎng)絡(luò),如用高級(jí)編程語(yǔ)言來(lái)實(shí)現(xiàn)基本網(wǎng)絡(luò)通信,步驟如下:
(1)引入包括socket 和threading 模塊用于網(wǎng)絡(luò)通信和多線程處理。
代碼:import socket
import threading
(2)定義了一個(gè)P2PNetwork 類,用于管理P2P 網(wǎng)絡(luò)的連接和通信。
代碼:
(3)定義start 方法用于啟動(dòng)P2P 網(wǎng)絡(luò)。
代碼:def start(self):
(4)定義handle_client 方法用于處理單個(gè)客戶端的消息。
代碼:def handle_client(self, client_socket):
(5)定義broadcast 方法用于將消息廣播給所有連接的節(jié)點(diǎn)。
代碼:def broadcast(self, message):
區(qū)塊鏈3.0 構(gòu)建高校新生態(tài)系統(tǒng)智能合約的設(shè)計(jì)非常復(fù)雜,可先按主體設(shè)計(jì),再綜合考慮。 下面以學(xué)生主體為例,使用Solidity 語(yǔ)言編寫(xiě)一個(gè)智能合約如下:
(1) 指定 Solidity 的版本, 并聲明一個(gè)名為CollegeEcosystem 的合約。
(2)在合約中,定義一個(gè)結(jié)構(gòu)體Student,用于表示學(xué)生的信息。
(3)創(chuàng)建一個(gè)映射類型的變量students,用于存儲(chǔ)學(xué)生信息。
(4)定義一個(gè)公共的studentCount 變量,用于記錄學(xué)生數(shù)量。
(5)在構(gòu)造函數(shù)中,將學(xué)生數(shù)量初始化為0。
(6)實(shí)現(xiàn)addStudent 函數(shù),用于向合約中添加學(xué)生信息。 傳入學(xué)號(hào)、姓名、年齡和專業(yè)作為參數(shù),創(chuàng)建一個(gè)新的學(xué)生結(jié)構(gòu)體,并將其存儲(chǔ)在students 映射中。 然后,增加學(xué)生數(shù)量,并通過(guò)emit 關(guān)鍵字觸發(fā)StudentAdded 事件。
(7)實(shí)現(xiàn)getStudent 函數(shù),用于根據(jù)學(xué)號(hào)獲取學(xué)生的信息。
(8)實(shí)現(xiàn)updateBalance 函數(shù),用于更新學(xué)生的余額。
區(qū)塊鏈3.0 高校新生態(tài)系統(tǒng)的實(shí)現(xiàn)最終需要部署和運(yùn)行,其步驟如下:
(1)選擇區(qū)塊鏈平臺(tái),根據(jù)系統(tǒng)需求可選用以太坊這個(gè)平臺(tái)部署本系統(tǒng)。
(2)編譯智能合約,使用編譯工具Solc 將編寫(xiě)好的智能合約編譯成字節(jié)碼。
(3)部署智能合約,選擇合約部署工具Remix/Truffle,連接到區(qū)塊鏈網(wǎng)絡(luò),并使用MetaMask 進(jìn)行身份驗(yàn)證。
(4)與智能合約交互,通過(guò)發(fā)送事務(wù),使用區(qū)塊鏈平臺(tái)接口工具與智能合約進(jìn)行交互;通過(guò)調(diào)用合約函數(shù),傳遞參數(shù),執(zhí)行合約中定義的操作。
(5)開(kāi)發(fā)Web 端應(yīng)用程序提供用戶交互界面,通過(guò)Web 端與智能合約進(jìn)行交互,用戶在Web 端可進(jìn)行相關(guān)操作。
(6)測(cè)試和優(yōu)化,在部署運(yùn)行中,需要進(jìn)行充分的測(cè)試并優(yōu)化,測(cè)試可確保智能合約的功能正確和安全,優(yōu)化可提高系統(tǒng)性能和用戶體驗(yàn)。
綜上所述,應(yīng)用區(qū)塊鏈3.0 構(gòu)建高校新生態(tài)系統(tǒng)是“區(qū)塊鏈+教育”方向的深入探索,也是技術(shù)引領(lǐng)教育改革的必經(jīng)之路。 應(yīng)用區(qū)塊鏈3.0 技術(shù)構(gòu)建高校新生態(tài)系統(tǒng)的關(guān)鍵是利用區(qū)塊鏈的去中心化、可驗(yàn)證和可追溯的特性,為高校提供更加安全、透明和高效的主體數(shù)據(jù)解決方案。 本文給出了此系統(tǒng)的設(shè)計(jì)架構(gòu)、實(shí)現(xiàn)步驟,考慮到高校生態(tài)系統(tǒng)本身的復(fù)雜性和主體數(shù)據(jù)的多樣性,系統(tǒng)的可擴(kuò)展性及數(shù)據(jù)冗余問(wèn)題值得進(jìn)一步探究。
全部文獻(xiàn)的年份分布參考結(jié)果by 善鋒軟件(R)_數(shù)據(jù)清洗與數(shù)據(jù)清除二合一小程序序號(hào)年份當(dāng)年條數(shù)累計(jì)條數(shù)當(dāng)年占比/%累計(jì)占比/%1 2023336060 2 20222540100