999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于區塊鏈的電子學位證照數據保護共享方法

2022-04-18 10:56:14陳儒玉高玉建付保川
計算機工程 2022年4期
關鍵詞:用戶

陳儒玉,戴 歡,,高玉建,付保川,陳 潔

(1.蘇州科技大學 電子與信息工程學院,江蘇 蘇州 215009;2.教育部學位與研究生教育發展中心,北京 100083;3.華東師范大學 軟件工程學院,上海 200241)

0 概述

學位證書是教育部門對學位獲得者專業能力與受教育水平達到規定要求而頒發授予的一種憑證。近年來,由于傳統紙質證書具有共享性低、傳遞性差等缺點,電子證照已經成為一種趨勢。盡管使用電子學位證照可以有效提高學位證書的便捷性,但仍無法從根本上解決學位的造假問題。而集中式的證照管理系統存在信息泄露問題,中心化系統的所有功能權限均集中在一點,在遭受惡意入侵后,存儲信息即可被隨意讀取、篡改或刪除。例如在2016 年8 月19 日發生的“徐玉玉電信詐騙案”中,犯罪嫌疑人通過技術手段惡意入侵了“山東省2016 高考網上報名信息系統”,導致大量考生的學位信息泄露。因此,學位信息管理方迫切需要一種新技術,在服務端為用戶提供個人學位信息保護并解決學位造假問題。

引入安全可信且不可篡改的區塊鏈技術是解決上述問題的最有效方案之一。此外,我國多角色、多節點、多功能的學位授予流程與區塊鏈的分布式結構相吻合,因此在學位授予中引入區塊鏈技術擁有更高的契合度和更大的發展潛力[1]。

區塊鏈技術在2008 年由[2]提出,是一種多方共同維護,使用加密技術保證信息傳輸和訪問安全的分布鏈式結構數據庫。所有事務數據被壓縮并存儲到不同的區塊中,且可以在不需要第三方驗證者的情況下進行驗證。所有節點的運行遵循共識算法規則,并利用相關密碼學技術保證存儲數據的不可篡改,具有去中心化、高安全性、高可信度等特點[3]。

本文基于區塊鏈技術的可信環境,利用智能合約與加密算法,設計電子學位證照的數據保護及共享方法。該方法基于權威證明(Proof of Authority,POA)共識算法搭建多角色聯盟鏈,提出一種權威身份評估機制,對節點的相應操作進行積分獎勵或懲罰以規范各節點行為,并基于節點的可信度分數選舉權威用戶節點,負責聯盟鏈的事務打包與校驗?;谥悄芎霞s技術,構建面向電子學位證照管理的分布式合約架構,存儲電子學位證照的加密信息,并控制各合約的訪問權限,保證數據安全與操作可信。在此基礎上,設計基于聯盟鏈的批量數據共享方案,數據共享雙方基于多種加密方式保證數據的安全與可追溯,以驗證共享數據的真實性,最終基于以太坊建立基于POA 共識算法的電子學位證照數據保護及共享系統,以對模型系統進行可行性與性能分析。

1 相關工作

2016 年10 月,工信部頒布的《中國區塊鏈技術和應用發展白皮書》[4]指出:區塊鏈系統的透明化、數據不可篡改等特征,完全適用于學生征信管理、升學就業、學術、資質證明、產學合作等方面,對教育就業的健康發展具有重要的價值。2019 年10 月24 日,中共中央政治局就區塊鏈技術發展現狀和趨勢進行第十八次集體學習,習近平總書記在主持學習時強調,要把區塊鏈作為核心技術自主創新的重要突破口,加快推動區塊鏈技術和產業創新發展。將區塊鏈技術應用于教育領域,應用于學位信息的安全保護已經成為一種具有可行性的研究方向,這也是時代發展的勢趨。

近年來,國內外的研究人員與相關機構已經運用區塊鏈技術進行學位信息的保護與驗證,并得到了一定范圍的應用與推廣。2015 年,麻省理工學院基于比特幣區塊鏈平臺開發了一個完整的區塊鏈教育認證系統Blockcerts[5-7]。英國開放大學知識媒體學院是歐洲率先使用區塊鏈技術的大學之一,該學院與英國電信合作創建了一個基于Ethereum 的區塊鏈平臺OpenBlockChain[8],旨在通過智能合約自主管理并記錄學生學習過程,構建一個永久保存且持續更新的學生成長檔案館。2018 年,HUHAMED等[9]提出一個基于區塊鏈的全球高等教育學分平臺EduCTX,使用ECTX token 作為課程學分的記錄憑證,為學生、教育機構以及其他組織提供一個全球信任的分布式高等教育信用評分系統。2019 年,LI等[10]提出一種基于區塊鏈的教育記錄存儲與共享方案EduRSS,其具有更低的計算成本,可在多個機構中共享檔案記錄,簡化教育檔案移交流程,為學生提供一個可靠傳輸和驗證學習檔案的區塊鏈系統。2020 年,RASOOL 等[11]提出一種基于區塊鏈學位證書驗證方法docschain,可同時執行多筆數據提交,實現批量審核學位證書的工作流程,并通過光學字符識別對紙質學位證書進行數字圖像掃描,允許學生按照傳統的物理方式提交學位認證材料。

2 區塊鏈相關技術

區塊鏈在比特幣網絡中作為底層技術,提供高度安全可信的記賬手段,也因其在金融領域的這一成功應用,故被稱為一種分布式賬本技術。在脫離作為金融賬本的應用后,仍易于在缺少可信第三方的應用場景下使用。在區塊鏈網絡中,不再由單一的中心節點進行數據存儲與記錄,其網絡中存在大量的全節點,每個全節點地位相同并均記錄了數據庫中的所有數據,由所有全節點共同負責系統運行維護與數據安全[12]。

2.1 非對稱加密技術

非對稱加密算法使用密鑰生成協議創建在數學上相互連接的公私鑰密鑰對,以滿足安全性和所有權驗證需求。公鑰是區塊鏈賬戶地址的重要依據,作為公開顯示的部分,而私鑰則僅由賬戶持有人保存。非對稱加密在使用其中一個密鑰加密信息后,只能通過另一個對應密鑰進行解密,具有安全性高、傳輸速度快、不易密鑰泄露等特點,常用于實現區塊鏈中的信息加密與數字簽名。

2.2 數字簽名技術

數字簽名技術主要用于確認數據發送者的身份真實性與數據完整性。數據發送者使用自身私鑰對待發送數據的哈希值進行加密,作為唯一的身份標識。數據接收方通過發送者的公鑰進行解密,若解密的數據哈希值與真實數據哈希值完全一致,則可證明消息發送者身份,且數據完整未被篡改。

2.3 智能合約

智能合約是一段可以按照預先設定好的規則自動執行的代碼程序,廣泛應用于執行交易條款,可以減少人為錯誤,避免合同糾紛。智能合約根據寫入其中的觸發條件作為判斷機制,當寫入條件被觸發時,將自動執行符合該條件的合約動作[13]。此外,部署在區塊鏈中的智能合約被復制到每個節點,避免合約內容被篡改。智能合約屬于事務處理模塊與狀態機構成的系統,事務的執行與狀態的改變不會對智能合約的內容進行修改,只通過數字化形式的條款,遵從編寫者的意志正確而自主地執行。

3 方法架構

3.1 整體架構

本文針對電子學位證照(Electronic Degree Certificate,EDC)的認證與查詢過程,擬建立一個包含高校用戶(College User,CU)、教育管理用戶(Education Administration User,EAU)、學生用戶(Student User,SU)以及外部用戶(External User,EU)的多角色信息聯盟。以此為基礎,搭建一個基于POA共識算法[14]的聯盟鏈,并設計一種權威身份評估機制用于選舉權威用戶節點[15]。在POA共識算法中,權威用戶節點主要負責產出區塊并控制出塊效率,共同維護區塊數據的存儲。其中教育管理用戶由于功能的特殊性,在系統初始化時,即作為POA預先設置的權威用戶節點存在,并結合權威性與節點穩定性等因素進行考慮,學生用戶與外部用戶不參與權威用戶節點選舉。因此,權威身份評估機制主要面向高校用戶作為權威用戶節點的資格審查,并提供一種動態的權威分數(Authority Score,AS)排名規則作為評判節點權威性的標準。

高校用戶執行對電子學位證照的授予或撤銷操作時,由權威用戶群組共同審核高校用戶的操作行為是否規范合格。當包含該操作的事務被公開上鏈時,證明高校用戶執行了合格操作行為,權威身份評估機制為該高校用戶增加一定的權威分數以提高高校用戶的身份權威性權重。當某高校用戶的權威分數達到設定的閾值時,該節點即可候選成為權威用戶,參與聯盟鏈的維護與運行。而進行不合格操作行為的高校用戶,具有破壞網絡穩定性與發布虛假信息的潛在威脅,減去相應的權威分數,此時權威用戶群組依然將相關信息上鏈存儲,但不公開顯示,用于追溯追責執行操作的相關節點。最終根據各節點的權威分數進行分類,以評估當前節點的狀態信息(積極、中立或惡意)。

此外,基于聯盟鏈建立了一個多角色用戶體制,各身份用戶對應不同的操作權限與職能職責,如圖1 所示。高校用戶負責學位信息的存儲與保護,可授予和撤銷電子學位證照,定期更新節點數據信息并指定分享給教育管理用戶。教育管理用戶負責對高校節點完成授予的電子學位證照進行審核,合格的證照相關信息通過后端與聯盟鏈交互,對證照進行上鏈存儲。學生用戶基于去中心化應用(Decentralized Application,DApp)接入聯盟鏈系統,可下載電子學位證照,對證照進行驗證與查詢,并查詢與證照相關的上鏈事務信息。外部用戶在獲得學生用戶的授權后,可使用電子學位證照的Hash 值或電子學位證照原件,前往DApp 應用進行真偽驗證。

圖1 系統整體架構Fig.1 Overall system architecture

3.2 合約架構

本文智能合約架構如圖2 所示,該架構主要由用戶身份管理合約(User Identity Management Contract,UIMC)和電子學位保護合約(Electronic Degree Protection Contract,EDPC)兩大合約共同構成。其中UIMC 合約主要用于合格電子學位證照上鏈過程中,對消息發送者身份的審核與驗證,包括權威賬戶存儲合約(Authoritative Account Storage Contract,AASC)和賬戶身份驗證合約(Account Authentication Contract,AAC)。EDPC 則用于對電子學位證照及相關信息的存儲,包括電子學位擬授予合約(Electronic Degree Confer Contract,EDCC)、電子學位審核合約(Electronic Degree Audit Contract,EDAC)、電子學位驗證合約(Electronic Degree Verification Contract,EDVC)和電子學位撤銷合約(Electronic Degree Revoke Contract,EDRC)。

圖2 智能合約架構Fig.2 Smart contract architecture

在初始權威用戶節點設置完成后,系統為每個節點分配唯一的賬戶地址作為標識符。管理員部署AASC,將權威用戶的賬戶地址存儲在該合約中,并將賬戶地址與多個屬性相鏈接,以表明具有該賬戶地址的節點擁有這些屬性,如節點所屬的教育機構(Organization,Org)、當前的權威分數(AS)以及節點的狀態信息。當權威用戶群組新增或剔除節點時,AASC 將實時更新存儲的賬戶地址。AAC 存儲所有高校與教育管理用戶的賬戶地址,以驗證調用電子學位保護合約的請求者具有相應操作權限且身份真實可信,該合約通過與其他智能合約交互來實現訪問控制。

EDCC 僅可由高校用戶執行,通過調用AAC 驗證請求者身份后,存儲電子學位證照的Hash 值、相應高校用戶數字簽名(Sig_Certifier)以及證照持有人的姓名(Name)、學位編號(DipNo)、身份證號(IDNumber)等相關信息。EDAC 僅可由教育管理用戶調用,用于對EDCC 完成授予的電子學位證照及相關信息進行審核,審核通過后,對高校用戶發送的相關信息進行二次數字簽名,并將完成審核的電子學位證照相關信息存儲在EDPC 中。EDVC 為學生用戶與外部用戶提供驗證ABI,驗證者提供電子學位證照Hash 值或證照原件,對比存儲在EDPC 中的合格證照,并返回相關證照的真偽、相關信息及上鏈事務信息。EDRC 向高校用戶和教育管理用戶開放使用,對合格電子學位證照執行撤銷追回操作,并為已寫入EDPC 中的合格證照添加撤銷標識符(Tag)。

4 本文方法設計

4.1 系統初始化

為了實現對電子學位證照的數據保護與共享,本文方法基于POA 共識算法,建立一個聯盟鏈網絡。所有節點都使用相同的創世區塊(Genesis Block)和包含權威用戶地址的JSON 文件加入網絡,聯盟鏈網絡的具體實現步驟如下:

1)System←Initialize(P,L,A)。任何區塊鏈網絡的初始化都涉及創世區塊的創建,需要為其提供重要的初始化配置參數。其中:P 表示POA 共識算法中創建新區塊的區塊周期;L 表示一個區塊中允許事務消耗的最大燃料限制;A 表示在創世區塊中預先設置的權威用戶賬戶地址。

2)(Pk,Sk)←Register(user)。user 使用web3.js 命令生成私鑰Sk,并通過橢圓曲線加密(Elliptic Curve Cryptography,ECC)[16]算法隨機映射出唯一對應的公鑰Pk。

3)UIMC/EDPC←Transact(balance,Cre-Addr,Con-Addr)。系統管理員在這一階段提出一個部署智能合約的事務上鏈請求,將合約余額(balance)、合約創建者地址(Cre-Addr)與擬建合約地址(Con-Addr)作為輸入,并返回事務上鏈狀態(status),完成UIMC 和EDPC 的鏈上部署。

4.2 權威用戶生成及工作流程

4.2.1 權威用戶選舉

除初始化預設的權威用戶外,新節點成為權威用戶需要遵循基于權威身份評估機制的節點選舉規則。根據系統中各節點的權威分數排位順序,邀請高權威身份的節點成為新的權威用戶,參與事務的處理與區塊的打包。為了保證系統的可信性與安全性,權威用戶群組的總權威分數應超過整個系統總權威分數的50%,且權威用戶的加入或剔除都應獲得超過50%的權威用戶允許。此外,權威用戶的身份應是動態持有的,以實時評估當前節點的可信度。如果權威用戶宕機或執行可疑操作,都會導致權威分數下降,當某個非權威節點的權威分數超過權威用戶節點時,系統將在下一次刷新時間內調整雙方的權威身份標識。

如算法1 所示,當某個用戶的權威分數達到系統設定的用戶閾值Thr-U 時,表明該用戶的權威權重已達到權威用戶標準,按照權威分數順序寫入等待列表waiting-list 中。循環持續檢查當前權威用戶總分數TSAU 是否達到系統閾值Thr-S,即整個系統權威分數的50%,以及是否存在非權威用戶分數高于權威用戶AU 的情況,以判定系統是否仍需接收新權威用戶。當循環為真時,選舉waiting-list 列表中權威分數最高的用戶為權威用戶候選人Candidate。若超過半數的權威用戶同意這一選舉提案時,Candidate 成為新的權威用戶New-AU,將其賬戶地址存入合法權威地址庫(Legal Authority Address,LAA),并將New-AU 相應的權威分數加入權威用戶總分數TSAU 中。之后,指針會指向waiting-list 中下一個等待成為Candidate 的用戶,直到權威用戶總權威分數符合要求。

算法1加入或剔除權威用戶

同時系統會根據當前權威用戶分數進行排序,得到權威分數最低的權威用戶Last-AU。若權威用戶的總權威分數TSAU 在不包含Last-AU 分數的情況下依然高于系統閾值Thr-S,則證明Last-AU 為不必要的權威用戶。系統提案剔除Last-AU 的權威身份,若提案通過,則刪除其在LAA 中的記錄,并在TSAU 中減去Last-AU 的權威分數。

4.2.2 權威用戶群組工作流程

為避免權威用戶群組中存在拜占庭節點惡意添加大量無效區塊破壞網絡,每個權威用戶只允許在每N/2+1 個塊中創建其中的1 個區塊,且在同一時刻最多允許N-(N/2+1)個權威用戶創建新的區塊。基于GHOST 協議[17],同一時刻有權限創建新區塊的權威用戶共同構成一個決策小組,并選舉一個用戶作為領導節點,具有創建區塊的優先性。

圖3 所示為基于POA 共識算法的權威用戶基本工作流程。當LAA 中存在8 個權威用戶時,同時最多允許3 個權威用戶創建新區塊。在第一階段中,LAA-1 作為決策小組的領導節點創建了區塊1,并在下一階段中不再被允許創建新區塊,而LAA-4 則加入了決策小組,并在組內重新選舉了LAA-2 作為新的領導節點。在新的決策小組中,LAA-2和LAA-3各自創建并廣播了新的區塊2,而LAA-3 和LAA-4 先接收到LAA-3 發送的新區塊,其他權威用戶則相反,因此區塊鏈中出現分叉現象。由于LAA-2 作為領導節點,具有更高的決策地位,LAA-3 和LAA-4 將舍棄LAA-3所發送的新區塊,并接收LAA-2 發送的新區塊,從而保證區塊鏈網絡的一致性。

圖3 基于POA 共識算法的工作流程Fig.3 Working procedure based on POA consensus algorithm

4.3 電子學位證照擬授予與撤銷

在對電子學位證照的保護中,存在兩個對立性的目標需要實現:一方面,電子學位證照中存儲著學生的隱私信息,本文方法不希望驗證者在系統中隨意獲取電子學位證照文件原件,造成隱私泄露;另一方面,對頒發的合格證照文件能夠實現真偽驗證。因此,由高校用戶收集符合學位授予條件的學生信息,將合格學生信息按照統一規定格式生成電子學位證照文件。對電子學位證照文件實行加密操作,僅將加密信息與學生部分信息上鏈。驗證者通過對加密信息的驗證,既保證了電子學位證照本身的真實可信性,又確保惡意驗證者無法通過加密信息得到任何學生的有效信息。此外,在電子學位證照上鏈存儲后,當學生出現學術不端等行為時,高校用戶擁有對已授予的證照進行撤銷追回的權限。

如算法2 所示,CU 根據學生信息生成統一標準規格的電子學位證照(EDC)文件,并向EDCC 發送擬授予操作請求。CU 對EDC 執行SHA3-256 哈希算法加密,輸出一個固定長度的哈希散列值H(EDC)。這一輸出散列值具有不可逆向推導,對EDC 原件的任意字節篡改都會引起雪崩效應,導致最終生成的H(EDC)完全不同。為申明信息發送者的身份可信性,CU 使用自身私鑰Sk 對H(EDC)進行數字簽名,并提取EDC 中的部分信息作為關鍵詞索引KI。將關鍵詞KI、加密信息H(EDC)和簽名后信息SigCU(H(EDC))發送至AAC合約。

算法2CU 擬授予和撤銷

在AAC 中,基于ecrecover()函數解密數字簽名,驗證簽名地址真實可信。在身份確認通過后,還需要CU 提供原始文件file重新執行哈希加密,并與H(EDC)進行對比,保證EDC 及H(EDC)未被篡改。驗證通過后,將KI、H(EDC)和SigCU(H(EDC))一起存儲到EDCC中,完成高校用戶擬授予操作。此外,EDCC 中設置了學位撤銷函數revoke(),當撤銷條件觸發時,EDCC 將指定的EDC 相關信息初始化,并標記為“revoked”。

4.4 電子學位證照數據共享與審核

在節點間進行數據共享與教育管理用戶的審核過程是本文方法的核心功能之一,如圖4 所示,高校用戶在完成授予過程后,將相應的電子學位證照及相關信息共享至教育管理用戶,并由教育管理用戶完成對電子學位證照的審核與上鏈存儲。該過程可以保證數據共享發起方與接收方的身份可信,數據傳輸過程的信息安全,以及用于審核的電子學位證照原件未被作任何修改。

圖4 電子學位證照共享與審核流程Fig.4 Procedure of electronic degree certificate sharing and verification

電子學位證照共享與審核流程具體步驟如下:

1)CU 完成對EDC 的授予流程,需要將該EDC 共享至EAU 進行審核。為保證數據傳輸安全,將EDC 文件切割為n個子塊,對n個塊分別執行哈希加密,設塊集合N={H(EDC1),H(EDC2),…,H(EDCn)},其中各子塊的字符數集合為Ω={l1,l2,…,ln}。CU 對N基于Merkle Tree方式加密[18],得到Merkle根散列值MR(N)。

2)CU 基于高級加密標準(Advanced Encryption Standard,AES)算法對EDC 進行對稱加密并存儲在本地數據庫,返回存儲地址addr 及加密密鑰mk。

3)CU使用自身私鑰Sk對MR(N)進行數字簽名μ,并向EDAC 發起交互請求。EDAC 合約調用AAC,驗證μ 簽名者身份存在后,由CU 節點發送{KI,addr,mk,μ,MR(N),Ω}到EDAC 的待分享列表sharelist中,其中KI 作為該分享請求的索引關鍵詞組。

4)EAU 監聽CU 發送的KI-X,并向AAC 驗證自身身份后,基于屬性KI-X 檢索sharelist 列表中的相應信息,返回該待分享消息列{KI,addr,mk,μ,MR(N),Ω}。

5)EAU 使用接收到的{addr,mk}檢索本地數據庫,并獲取到CU 分享的EDC 文件原件。

6)EAU基于Ω對EDC重新切割并進行Merkle Tree加密,得到Merkle 根散列值MR’(N),并驗證MR’(N)與MR(N)是否一致,以證明EDC文件未被篡改。在EAU完成審核后,使用私鑰Sk.EAU 對μ 執行二次簽名ε[19],將{KI,H(EDC),μ,ε,addr,mk}存儲在EDPC 中作為最終合格證照數據存儲庫,其中H(EDC)為用于快速驗證真偽的EDC 散列值。

4.5 電子學位證照驗證

學生用戶(SU)在本文方法中可以獲取電子學位證照原件,并對證照進行真偽驗證。當第三方的外部用戶(EU)提出驗證學生用戶的電子學位證照真偽性時,需向學生用戶發起申請。學生用戶根據外部用戶的可信性,可選擇提供電子學位證照原件或僅提供包含EDC 哈希值的相關信息,用于外部用戶驗證。

如算法3 所示,SU 或EU 通過基于javascript 的DAPP 與區塊鏈系統交互,提出調用EDVC 申請,將電子學位證照原件EDC 或證照相關信息RM 發送到EDVC。當合約接收到EDC 原件時,則對其重新執行哈希加密,與存儲在EDPC 中的已認證EDC 進行對比,若存在完全一致的哈希值,則證明驗證文件為真,并返回該EDC 的相關信息。當合約接收到RM 時,驗證機制相同,但驗證發起者僅可驗證證照真偽,而無法獲取任何有效返回信息,以防隱私泄露。

算法3SU/EU verify EDC

5 本文方法實現

本文方法實現了一套基于聯盟鏈的電子學位證照保護與共享系統,包括數據存儲系統、聯盟鏈開發、智能合約開發、DAPP 開發4 個部分:

1)數據存儲系統。電子學位證照均需要完成二次寫入才可以完成認證審核,寫入數據量較大,寫入延遲一般較高,對寫入能力需求較高。考慮系統偏重對高寫入能力的需求,本文系統使用基于Key-Value 模型的非結構化數據存儲系統LevelDB[20],采用基于硬盤磁盤的LSM-tree 數據結構,主要側重于隨機寫能力的提升,系統的事務寫入量的可達到7~10 Transactions/s。

2)聯盟鏈。使用go-ethereum 客戶端搭建聯盟鏈[21],各個權威成員通過使用geth 命令創建新賬戶,成為電子學位證照系統中的初始權威用戶節點。通過puppeth 創建genesis.json 配置文件,生成創世區塊,將權威用戶賬戶地址加入到聯盟鏈中,Clique proof-of-authority[22]權威證明作為聯盟鏈的共識算法。

3)智能合約?;赟olidity 語言編寫設計,并通過Remix-Ethereum IDE 在線開發環境完成功能開發。使用SmartCheck[23]對智能合約代碼的安全性進行評估,檢測交易順序假設、時間戳依賴、可重入性、短地址攻擊等潛在安全漏洞,并部署在Ethereum 基于POA 共識機制的測試網絡Rinkeby 中進行功能測試。

4)DAPP。Web 前端使用HTML5 以及Javascript開發,后端服務器通過node.js 調用web3 命令初始化聯盟鏈,并編譯與部署智能合約,提供API 接口供前端頁面調用部署在聯盟鏈中的智能合約。

如圖5 所示,學生用戶及外部用戶可通過登錄電子學位證照驗證頁面,選擇輸入需要驗證證照的相關信息,或直接將證照文件拖放到指定區域進行驗證。系統響應后,返回驗證真偽結果,并提供部分學生信息及上鏈事務信息。而高校用戶與教育管理用戶則需要進行身份注冊,使用賬號密碼登錄管理頁面,如圖6 所示,在提供數字簽名驗證用戶身份后,方可對電子學位證照進行授予或審核操作。

圖5 電子學位證照驗證與查詢界面Fig.5 Interface of electronic degree certificate verification and inquiry

圖6 電子學位證照擬授予界面Fig.6 Interface of electronic degree certificate confer

6 性能評估

6.1 仿真測試

本文方法基于geth 與Node.js 搭建聯盟鏈系統,并通過Trebuchet-Box 框架運行負載仿真測試。模擬各用戶調用智能合約,進行電子學位證照的授予、審核、驗證等操作。測試過程在Ganache 開發環境下進行,測試賬戶數默認為10,設定并發虛擬用戶閾值為10,最大事務并發數為10,隨機進行部署智能合約、事務上鏈和合約調用等不同操作,分析系統運行60 s 過程中事務執行時間,評估系統的穩定性。事務執行時間如下式[24]所示:

其中:TET 表示事務執行時間;TETAVG表示在聯盟鏈存在N個權威用戶節點的情況下的平均事務執行時間;Tx 表示在聯盟鏈中發起的事務;tTxEXESTART表示聯盟鏈中一次測試事務發起的時間;tTxEXEDONE表示測試事務完成時的時間;(ti,tj)表示對事務執行時間進行測試的時間區間;Count 記錄在測試時間內完成的事務數量。

如圖7(a)所示,在60 s 內,系統共完成1 609 次事務測試,平均虛擬用戶并發數為8.94,平均事務執行時間為332.84 ms,最大事務執行時間為828 ms,最小事務執行時間為153 ms。如圖7(b)所示,在同一時間段,完成相同的1 609 次測試事務處理,系統的事務并發數為7.38,平均事務執行時間為263.54 ms,最大事務執行時間為695 ms,最小事務執行時間為98 ms。由于在在測試過程中涉及智能合約的變量賦值、參數返回等操作增加了本機處理時間,占用了壓力測試的部分計算資源,使得系統設定每秒請求數略小于設定的并發數閾值。根據用戶并發數、事務并發數分別對事務執行時間的測試結果可以看出,事務并發數對系統的影響較小,平均事務執行時間更短。而事務執行時間中存在波動情況,且圖7(a)和圖7(b)中的波動趨勢相似,表明網絡延遲的不穩定性對系統的事務執行時間產生了較大的影響。

圖7 系統性能的仿真測試結果Fig.7 Simulation test results of system performance

此外,區塊大小的動態變化影響著并發事務數的波動。在基于Ethereum 的環境下,使用gasLimit衡量區塊的事務容納能力,且這一指標可自適應地動態調整,以適應網絡變化,其調整機制可描述為:

其中:ggasLimit表示新區塊的區塊大小限制;pparent.gasLimit表示其父區塊的區塊大小限制;pparent.gasUsed表示父區塊實際使用的區塊容量;BBoundDivisor表示影響區塊大小增長率的敏感度參數。當父區塊的實際使用率超過其區塊大小限制的2/3 時,則提高新區塊的區塊大小限制,反之則降低該限制值,以此保證系統性能實時調整以適應交易需求。

綜上仿真結果分析可以看出,系統整體的事務執行時間較為穩定,在進行電子學位證照授予與審核的調用請求時,產生的事務執行時間相對較長,而系統的硬件配置與網絡延遲也是影響事務執行時間的重要影響因素。

6.2 共識算法對比

當前基于go-ethereum 搭建的聯盟區塊鏈主要以POW 和POA 作為主流共識算法。本文提出的學位數據保護與共享方法面向對象主要為高校與教育管理部門,具有特定群體針對性,且其身份均真實可信,權威性高。以上特性與基于POA 共識算法的聯盟鏈適用情況高度契合,且無需依靠算力獎勵機制維持系統運行,大幅降低方法成本,并減小能耗。

為了測試在不同共識算法下調用系統各部分智能合約的響應速度,分別基于POA 與POW 共識算法搭建聯盟鏈并使用Aleth 測試工具進行評估測試,對實驗數據進行記錄比對,具體劃分以下5 個部分進行響應測試:

A:部署智能合約。

B:EDC 擬授予。

C:EDC 撤銷。

D:EDC 二次審核。

E:EDC 驗證查詢。

如圖8 所示,在A~D 部分中,由于POA 共識算法的特性決定了其事務驗證者被事先指定且數量有限,而POW 共識算法則由于節點數量的不斷增加,導致事務信息廣播到全部驗證者節點需要等待更久的時間,因此基于POA 共識算法的聯盟鏈延遲時間遠小于POW 共識算法。此外,POA 通過選舉權威用戶節點處理上鏈事務的共識特點,也使得其在事務的處理速度上優于采用運算能力規則的POW 算法。在E 部分驗證查詢操作中,POA 聯盟鏈延遲時間略小于POW 聯盟鏈,性能差距不大,延遲時間均在200 ms 內,遠小于前4 個部分延遲時間。這是由于智能合約中驗證查詢函數設置為view 函數,當請求驗證時,調用該函數僅對存儲在聯盟鏈中的數據進行讀取與對比,未改變存儲在聯盟鏈中的數據,無需創建上鏈事務與事務廣播。

圖8 POA 和POW 共識算法對智能合約調用延遲的影響Fig.8 Impact of POA and POW consensus algorithm on smart contract invocation latency

6.3 復雜度分析

6.3.1 本文方法復雜度分析

在基于Ethereum 的區塊鏈中可以通過execution gas 交易費用來衡量執行一筆事務所需的操作量。而在基于POA 共識的聯盟鏈環境中,gas不具備實際流通價值,但部署智能合約及相應ABI所需的gas 費用可以反映其復雜度與工作量大小。

除去打包交易與部署合約所需的gas 費用外,智能合約的gas 消耗成本主要來源于編碼成本Codecost、存儲成本Storagecost 與初始化成本Initcost,即[25]:

基于此,對本文方法中的電子學位證照擬授予、撤銷與數據共享過程進行gas 成本評估,相關參數及其意義如表1 所示。

表1 相關參數及其含義Table 1 Relevant parameters and their meanings

1)EDC 的擬 授予

由于對EDC 的擬授予過程涉及在智能合約中實現授予功能與存儲數據,因此gas 成本取決于編碼成本與存儲成本,其gas 消耗上限為:

其中:ω表示存儲一個字符所需的gas 成本;ω×Ea×Ec表示擬授予過程相關屬性的存儲成本;Code(Ea)表示編碼成本,且編碼成本由Ea決定。例如,CU 完成擬授予過程后,發送EDC 相關消息列{KI,H(EDC),SigCU(H(EDC))}至EDCC 合約,該過程中所含屬性數量為Ea=3,單一屬性中SigCU(H(EDC))具有最大字符數Ec=130,存儲一個字符所需的gas 為ω=625,編碼成本Code(Ea)=197 619。

2)更新與撤銷EDC 的相關信息

CU 對已授予的EDC 更新某一屬性時,不涉及屬性數量的改變,但存儲成本由更新屬性的字符數決定;而撤銷某一EDC 不涉及存儲內容的改變,該操作僅消耗編碼成本。因此,更新EDC 信息與撤銷EDC 消耗gas 可分別表示為:

其中:ω×Ec表示存儲成本;Code(1)表示更改1 個屬性所需的編碼成本;Code(Ea)表示撤銷一個已授予EDC 相關信息所需的編碼成本。

3)EDC 相關信息的共享

當CU 面向EAU 進行數據共享時,首先需要在sharelist 列表中檢索擬共享消息是否已存在,檢索完成后將新的數據共享消息添加到sharelist 列表中等待EAU 發送共享請求。因此,此過程gas 成本由檢索過程與添加共享消息過程組成。

檢索過程成本如下:

其中:Code(Sa)表示編碼成本;γ為sharelist 列表的待分享消息列數;δ為KI 中的單一屬性檢索成本;γ×δ×KIa表示檢索某一消息的成本;ω×Sa×Sc表示存儲成本。

添加共享消息過程成本如下:

其中:Code(Sa)表示編碼成本;ω×Sa×Sc表示存儲成本;init×1first表示第一次執行sharelist 列表時所消耗的初始化成本。

當CU 同時向EAU 進行批量數據共享時,需要檢索并添加n個共享消息到sharelist 中,其gas 成本可表示如下:

其中:pk=,p表示sharelist 列表接收新共享消息的數量,初始接收數量p0為0,當檢索第k個待共享消息未存在于sharelist 時,證明其為新的待共享消息,在上一輪次中的pk-1上增加1 個新共享消息,當檢索到第k個消息已存在時,不計入pk統計。

6.3.2 權威身份評估機制分析

現有用于證明可信度的積分機制通常將其他節點對目標節點的反饋分數求和來評估該節點的可信度。但這一方式具有一定缺陷:一個執行多次可信事務但周期性執行一次惡意事務的節點信譽會高于執行事務次數較少但完全可信的節點,大量的誠實行為可以使得節點隱藏其較少的惡意行為;此外,其他節點的反饋分數無法完全可信,可信節點可能因為惡意節點的負反饋分數導致其被判定為低可信度節點。

因此,本文提出一種有效的權威身份評估機制,防止具有隱藏性惡意行為的出現,并保證反饋分數的可信性,權威分數評判的主要因素有以下2 點:

1)擬授予EDC 事務請求的可信度。在CU 對EDC 的擬授予相關事務上鏈過程中,事務發送至權威用戶群組進行打包與校驗,各權威用戶通過分數反饋對該事務上鏈請求的可信性。

2)EDC 最終的審核結果。當EDC 最終經EAU審核合格時,相應的CU 將獲得適當的權威分數增加;而EDC 審核不合格時,則該CU 被認為進行了虛假或錯誤的授予行為,該節點的權威分數將大幅下降。

基于以上兩點評判因素,權威分數的計算標準如下:

式(11)第1 部分為各權威用戶對擬授予事務的評判階段,T(x)表示CU 發起的擬授予事務總數,P(C,j)表示參與打包校驗CU 第j個擬授予事務的權威用戶,B(C,j)表示CU 的第j個擬授予事務從P(C,j)中接收到的反饋分數,Tr(y)表示第y個權威用戶提交反饋分數的可信度,α表示擬授予階段權威用戶分數評價的權重因子。

式(11)第2 部分為審核結果的反饋階段,M表示EDC 審核合格時的反饋分數,β表示合格時的動態權重因子,隨著經審核后合格事務數x的增加,β提供的反饋分數權重比例會提高,但反饋激勵不會無限制增加,始終在0~2M之間,N表示EDC 審核不合格時的反饋分數,λ為不合格時的動態權重因子,用于監測不合格事務的數量,當不合格事務數n逐漸增加時,反饋懲罰會顯著提升,以盡快降低節點的權威分數。其中,δ(δ>1)、ρ(ρ>0)、ω(ω>1)為預定義的權重調節參數。

7 結束語

本文基于區塊鏈技術,提出一種新的電子學位證照數據存儲、共享、驗證與查詢方法。該方法利用密碼學相關技術實現電子學位證照的加密存儲,且所有操作均具有可追溯性。設計面向學位管理的智能合約架構,自主管理電子學位證照授予、審核、驗證等操作,實現節點間的數據共享,通過建立聯盟鏈網絡,形成“高校-教育管理部門-學生-外部”的多角色模式,賦予各角色相應的權限操作,并基于POA共識算法,使具有高度可信性與權威性的高校與教育管理節點負責聯盟鏈的運行與維護,提高系統性能,節省經濟成本。最終構建基于POA 共識算法的電子學位證照數據保護及共享系統,并對其可行性、性能、復雜度等進行評估與分析。實驗結果表明,該方法可行性高,共識性能優異,智能合約構建合理。下一步將改進屬性基加密算法,設計具有細粒度共享能力的訪問控制方法,提高電子學位證照數據保護的安全性與共享的高效性。

猜你喜歡
用戶
雅閣國內用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網新媒體用戶之間有何差別
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應用
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 亚洲精品你懂的| 午夜日本永久乱码免费播放片| 九色在线视频导航91| 日韩经典精品无码一区二区| 国产成人精品亚洲日本对白优播| 亚洲—日韩aV在线| 中文无码精品a∨在线观看| 免费女人18毛片a级毛片视频| 中国精品久久| 欧美日韩成人| 高清不卡毛片| 国产精品毛片一区视频播 | 午夜国产理论| 欧美色99| 免费一级毛片在线播放傲雪网| 久青草国产高清在线视频| 五月婷婷综合在线视频| 免费Aⅴ片在线观看蜜芽Tⅴ | 成人夜夜嗨| 国产午夜一级毛片| av午夜福利一片免费看| 高清无码不卡视频| 亚洲一级毛片免费观看| 国产女人喷水视频| 色视频国产| 亚洲第一黄色网址| 97se亚洲综合在线韩国专区福利| 精品五夜婷香蕉国产线看观看| 久久综合国产乱子免费| 国产成人喷潮在线观看| 免费在线国产一区二区三区精品| 免费A∨中文乱码专区| 精品一區二區久久久久久久網站| 国模视频一区二区| 国产玖玖视频| 国产视频a| 美女视频黄频a免费高清不卡| 久操中文在线| 亚洲综合九九| 99re热精品视频国产免费| 欧美一区中文字幕| 亚洲精品成人福利在线电影| 中字无码精油按摩中出视频| 久久精品国产一区二区小说| 午夜啪啪福利| 女高中生自慰污污网站| 不卡无码h在线观看| 日韩第一页在线| 日韩精品一区二区三区免费| 久久情精品国产品免费| 国产成人综合欧美精品久久| 久久亚洲欧美综合| 一区二区三区毛片无码| 久久久久亚洲av成人网人人软件| 色哟哟精品无码网站在线播放视频| 91在线激情在线观看| 日本午夜三级| 青青青国产免费线在| 丁香五月婷婷激情基地| 亚洲一区二区视频在线观看| 波多野结衣中文字幕一区二区| 国内精品视频| 欧美人人干| 色综合天天操| 四虎国产在线观看| 国产女同自拍视频| 国内精品自在欧美一区| 中文字幕亚洲专区第19页| 天堂岛国av无码免费无禁网站| 亚洲人成亚洲精品| 亚洲国产精品VA在线看黑人| 日日碰狠狠添天天爽| 亚洲综合二区| 亚洲第一中文字幕| 日日碰狠狠添天天爽| 国产成人h在线观看网站站| 视频在线观看一区二区| 久久中文无码精品| 久久亚洲精少妇毛片午夜无码 | 欧美一道本| 欧美在线导航| 欧美成人手机在线观看网址|