Computer Science and Application
Vol. 12  No. 12 ( 2022 ), Article ID: 59810 , 8 pages
10.12677/CSA.2022.1212299

基于区块链的高考志愿填报系统设计与分析

张亚伟1,冯安琪2,宋姣姣1,杨方韬1,刘紫璇1

1泰山科技学院,山东 泰安

2广州大学,广东 广州

收稿日期:2022年11月23日;录用日期:2022年12月22日;发布日期:2022年12月30日

摘要

高考对于广大学子来讲是一次非常重要的经历,它能够决定学生以后的人生走向。高考结束之后除了需要漫长的等待,最为考生家长关心的便是高考志愿填报,这一环节如果处理不好,就会酿成无法挽回的后果。传统高考志愿填报需要花费很大的人力、物力和财力,并且存在很大的盲目性、依赖性以及安全性。而区块链作为新一代信息技术,利用其去中心化、去信任化、防篡改、多节点共同参与维护以及合约达到预置条件自动执行等优势,可以很好地应对以上难题。鉴于此,本文设计了一种基于区块链的高考志愿填报系统,该系统主要包括志愿信息上链、用户身份鉴别、基于智能合约的志愿填报等核心功能,对防止志愿被其他人恶意修改、提高志愿填报效率具有显著的作用。

关键词

区块链,高考填报志愿,防篡改,密码学,智能合约

Design and Analysis of College Entrance Examination Voluntary Filling System Based on Blockchain

Yawei Zhang1, Anqi Feng2, Jiaojiao Song1, Fangtao Yang1, Zixuan Liu1

1Taishan Institute of Science and Technology, Tai’an Shandong

2Guangzhou University, Guangzhou Guangdong

Received: Nov. 23rd, 2022; accepted: Dec. 22nd, 2022; published: Dec. 30th, 2022

ABSTRACT

The college entrance examination is a very important experience for many students. It can determine the future course of their life. After the end of the college entrance examination, in addition to the need for a long wait, the most concerned parents of students is the college entrance examination voluntary filling, if this link is not handled well, it will lead to irreversible consequences. The traditional college entrance examination needs to spend a lot of manpower, material resources and financial resources, and there is a great blindness, dependence and security. Blockchain, as a new generation of information technology, can well deal with the above problems by taking advantage of its advantages such as decentralization, de-trust, tamper-proof, multi-node participation in maintenance and automatic execution when the contract meets the preset conditions. In view of this, this paper designs a college entrance examination volunteer filling system based on blockchain, which mainly includes volunteer information link, user identity authentication, volunteer filling based on smart contract and other core functions, which plays a significant role in preventing volunteers from being maliciously modified by others and improving volunteer filling efficiency.

Keywords:Blockchain, College Entrance Examination Voluntary Filling, Tamper-Proof, Cryptography, Smart Contracts

Copyright © 2022 by author(s) and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

1. 引言

一年一度的高考总会牵动很多人的神经,孩子们带着老师和家长的期望走进考场,十年磨一剑,只为能够披荆斩棘,过上自己想要的生活。由此可见,高考在很多人心中的地位是十分重要的,通过这次经历,不仅可以决定学生能考取哪所学校,还可以决定学生以后的发展方向,因而每走一步都需要非常谨慎,否则一旦出现差错,就会造成无法挽回的损失。志愿填报是高考成绩公布之后非常重要的一个环节,也是极易出现问题的环节,网络上有很多相关案例,比如志愿被他人恶意篡改、不会填志愿、错填志愿等。值得注意的是,以上问题尚未得到有效改善,亟需一种新技术、新方法和新手段予以解决 [1] [2] [3] [4]。

区块链发展至今诞生了许多非常实用的应用,这些应用涉及到我们生活的诸多方面,尤其是在金融、电商、政务等领域发挥了很大的作用,能够有效应对跨境支付贸易、假冒伪劣产品盛行以及证据保全等问题 [5]。作为当下备受关注的新一代信息技术,区块链技术集分布式存储、P2P (Point to Point)、共识机制、密码学、激励机制以及智能合约于一身,展现出去中心化、去信任化、不可篡改、历史数据可以追溯、安全透明、集体维护等多种特性,是当下最有可能突破传统Web2.0壁垒、迎接Web3.0新挑战的技术。

本文设计了基于区块链的高考志愿填报系统,该系统充分利用了区块链技术的优势,能够有效应高考志愿填报过程中所出现的问题。本篇论文余下内容安排如下:第一章主要介绍了相关概念,并对区块链与高考志愿填报的融合现状进行了分析;第二章设计了基于区块链的高考志愿填报系统,包括系统底层架构的设计、系统总体架构的设计以及系统的核心功能设计;第三章对系统进行了测试和分析;最后对论文做了总结。

2. 相关概念与研究现状

2.1. 区块链技术

作为一种特殊的分布式记账本,区块链(Blockchain)自诞生至今就广受关注,因为它既可以解决“双花”、信任以及中心化等问题,也是NFT、元宇宙(Metaverse)、Web3以及DAO (分布式自治组织)等概念的底层核心。诸多对区块链概念的解读都大同小异,我们可以将其理解为一种可以实现分布式数据存储、点对点传输、多方参与验证、密码提供安全保障、智能合约自动执行的技术 [6]。

图1展示了区块链的数据结构,它由区块头(Block Head)和区块体(Block Body)两部分组成,其中区块头包含块号(块之高度)、Index (索引)、Timestamp (时间戳)、本区块Hash、PreHash (前一区块Hash,或称为父哈希)等核心要素;区块体主要包含交易信息、上链数据等。区块与区块之间通过Hash链接在一起,最终构成一个几乎很难被篡改的长链。每个新生成的区块都会被盖上一个时间戳,以此来对历史数据进行追溯。

Figure 1. Blockchain data structure

图1. 区块链的数据结构

2.2. 智能合约

智能合约(Smart Contract)由尼克·萨博于1994年发明,可以被简单定义为一种满足一定条件就会被触发的代码。以太坊(Ethereum)的诞生使智能合约真正有了用武之地,通过图灵完备的Solidity高级编程语言,理论上可以开发各种基于智能合约的去中心化应用。图2展示了智能合约的运行机制,如图可知:外部输入数据或外部输入事件一旦触发预置响应条件,合约就会被激活,并按照预置响应规则做出一系列动作,比如数据上链等 [7]。智能合约经历编写、编译以及部署等三个周期,最终被添加至区块链上以供外部账户调用并执行,它可以降低人为干预风险,其法律效应等同于合约文本。自从智能合约加入以后,区块链便进入了2.0时代,弥补了区块链1.0时代应用单一的局面。

Figure 2. Smart contract model

图2. 智能合约模型

2.3. 高考志愿填报

高考志愿填报是一年一度高考成绩出来之后非常重要的一个环节,学生会根据自己分数、按照所属省份的高考志愿填报指南在规定时间进行填报。然而每到高考志愿填报的时候,学生和家长都会面临很大的挑战,无不紧绷神经,以防出现差错,造成错报、漏报以及滑档等问题。出于对“高考是人生转折点”的敬畏之情,此时的家长和学生会利用一切可以利用的资源,不惜耗费大量的人力、物力和财力,以求得心安,顺利让孩子考取心仪的大学和专业。可尽管如此,每年仍然会报道许多和高考志愿填报相关的负面新闻,比如有些学生的高考志愿被他人恶意篡改,有些学生因被录取到不喜欢的专业而选择复读,还有些学生因为高考志愿填报产生焦虑心理。总而言之,高考志愿填报事关学生以后的就业和发展方向,必须严格把关,力求高效、准确、安全。

图3展示了传统高考志愿填报系统架构,该架构属于典型的中心化模式,存在很多无法预见的问题,比如同一时间段如果填报高考志愿的人数过多,会导致系统瘫痪,影响高考志愿填报进度。

Figure 3. Architecture of traditional college entrance examination voluntary filling system

图3. 传统高考志愿填报系统架构

2.4. 研究现状

范晓娟等人对高考志愿填报应具备的能力进行了分析,认为很多家长和学生在面对高考志愿填报时会显得无从下手,即使最后填好志愿,也会因为不明智的选择导致滑档、复读等问题的发生 [7]。赵博宇对高考志愿填报如何避坑进行了深入研究,发现一些机构利用家长和学生急迫的心理,违规向学生提供高价志愿填报指导服务。作者认为上述做法存在一定的风险,并且建议要以官方信息为准 [8]。王保军研究了高考志愿填报策略,认为学生和家长应及时、全面了解高考志愿填报的相关信息,只有这样方可做出最佳选择 [9]。葛灵丹等人认为通过AI一键生成高考志愿的准确率有待商榷,建议学生要理性填报高考志愿 [10]。

现有文献介绍了高考志愿填报存在的问题,并提出相应的解决策略,可尽管如此,问题并未得到有效解决。大多数学生和家长并不擅长填报志愿,因而想从他们身上寻求突破更是希望渺茫。鉴于此,本文希望能够通过转变思路,充分利用新技术手段优势,使学生和家长从繁重的志愿填报任务中释放出来,快速、准确、安全而又高效地完成高考志愿填报。

3. 基于区块链的高考志愿填报系统设计

3.1. 系统底层架构设计

本系统底层架构如图4所示,该架构共包含六个层次,自下而上分别是数据层、网络层、共识层、激励层、合约层以及应用层。数据层用于封装学生高考成绩、Hash值、链式结构等数据。网络层用于封装P2P网络通信、数据传输以及数据验证等功能,为区块链网络分布式节点之间进行通信提供保障。P2P (Point to Point),即对等网络,是分布式系统的主要架构。共识层用于封装PBFT、RAFT等可插拔的共识机制,通过共识机制不仅可以选择用于打包、记账的节点,同时还可以验证数据的有效性。激励层用于封装发行机制和分配机制,旨在为那些参与维护区块链网络稳定运行的节点提供奖励。合约层用于封装实现高考志愿自动填报的合约代码、触发条件以及触发规则。应用层主要用于封装身份核验、志愿填报以及数据上链等系统主要功能。

Figure 4. System underlying architecture

图4. 系统底层架构

3.2. 系统总体架构设计

图5展示了系统总体架构,该架构的展示了系统的主要业务逻辑。首先在系统前端,用户通过身份认证进入系统主界面;然后将自己的高考成绩通过存储合约上传至区块链,此时区块链上的志愿填报合约会被激活,并根据预先设置好的规则(志愿填报规则,比如山东省按照“专业 + 学校”的填报模式一次可填报的平行志愿数量为96个)将根据学生成绩生成的志愿提报结果反馈给学生,最后再由学生、家长或者其他相关人员进行确认,确认无误即可提交至区块链将结果固定下来,以防被恶意篡改,同时还可用于之后的回溯。共识联盟节点由各高校相关部门(招生处)组成,通过共识算法挑选出的主节点主要负责打包数据入链,其他节点则负责同步区块至本地区块链副本。学生一旦被高校录取,录取结果会第一时间上链存储,而教育厅负责监管链上数据,同时可对链上数据进行统计、分析,最后把分析结果做可视化处理,以供他用。

3.3. 系统核心功能设计

3.3.1. 基于智能合约的高考志愿填报方案

图6展示了基于智能合约的高考志愿填报方案,由于每个省份志愿填报规则存在差异,因而基于此编写的合约也会不同。学生经过身份核验之后登入系统主界面,选择和自己相对应的填报规则,然后提交自己的高考成绩,此时合约规则被触发,自动生成一系列满足条件的志愿信息。此时,志愿信息、学生的个人信息以及高考成绩等都会被打包进区块,以便于其他节点调用。

Figure 5. Overall system architecture

图5. 系统总体架构

Figure 6. Filling scheme based on smart contract

图6. 基于智能合约的填报方案

3.3.2. 身份认证和数据加密方案

图7展示了身份认证和数据加密方案,发送端将已生成的、经过确定的志愿信息分别进行公钥加密和私钥签名,加密是为了保障志愿信息的安全,而签名则是为了验证信息发送者的身份,以防止不法分子冒名顶替。加密数据和签名会一同被打包进区块链,以供接收端接收。接收端从区块链上查询到目标数据,会第一时间对其签名有效性进行验证,一旦通过验证,便可确认发送者的身份。与此同时,接收端对解密后的志愿信息进行Hash处理,把得到的结果与签名后的Hash值进行比较,从而保障志愿信息的真实性。总而言之,该方案可充分保障志愿信息的安全,避免志愿数据被轻易修改。

Figure 7. Identity authentication and data encryption scheme

图7. 身份认证和数据加密方案

3.3.3. 志愿信息上链

图8展示了志愿信息上链流程图,用户通过WEB前端上传自己的志愿信息,此时部署在区块链上的存储合约(文件名为Storage.sol)就会被激活,将志愿信息存储在区块链中,利用区块链的安全环境保障其不被篡改。上面提到的存储合约是由Solidity高级编程语言编写而来,经过编译变为字节码部署于以太坊虚拟机(EVM)以待调用。

Figure 8. Volunteer information on the link

图8. 志愿信息上链

4. 基于区块链的高考志愿填报系统分析

本系统开发的初衷是为了保障学生高考志愿填报不被恶意篡改,使学生高效而又准确地填报志愿,不会因为对填报规则不熟悉而导致高分低报、滑档以及退档等问题的发生。基于区块链的高考志愿填报系统具有诸多优势,而这些优势主要还是依赖于区块链技术。区块链自2009年诞生至今,已成为很多人眼中最有可能引发第五次革命浪潮的一项技术,而将区块链应用于除加密货币以外的其他领域将会是大势所趋,目前很火的元宇宙、WEB3以及数字藏品等概念也都是基于此。因而本系统的设计在未来一旦实现,将大有用处。本系统最主要的功能是学生的高考成绩触发已部署好的志愿填报合约,志愿填报合约会按照预设响应规则自动生成志愿信息,从而使学生不用花大量时间去研究志愿填报规则,就可以准确地得到填报结果,大大提高了志愿填报的效率和准确率。

5. 总结

高考志愿被恶意篡改、学生和家长不熟悉填报规则、高价请人代填志愿等问题严重影响了高考志愿填报的正常秩序,有必要引起我们的重视。本文设计了基于区块链的高考志愿填报系统,旨在通过技术手段解决上述问题,从而为家长和学生打造出高效、透明而又准确的高考志愿填报环境。本文具有非常大的参考价值和研究意义,同时也为未来系统实现垫定基础。

基金项目

基于多实例Petri网的跨组织外包业务过程挖掘关键技术研究国家自然基金(NO.61902222)。

文章引用

张亚伟,冯安琪,宋姣姣,杨方韬,刘紫璇. 基于区块链的高考志愿填报系统设计与分析
Design and Analysis of College Entrance Examination Voluntary Filling System Based on Blockchain[J]. 计算机科学与应用, 2022, 12(12): 2950-2957. https://doi.org/10.12677/CSA.2022.1212299

参考文献

  1. 1. 张亚飞, 黄思莹. 区块链技术应用风险分析[J]. 合作经济与科技, 2022(15): 110-113.

  2. 2. 李济伟, 商晴庆, 孙建刚, 董耀众, 李伟良. 基于区块链的联邦学习应用研究[J]. 电子测试, 2022, 36(12): 138-140.

  3. 3. 谢明旭. 高考志愿填报策略关键技术研究[D]: [硕士学位论文]. 绵阳: 西南科技大学, 2022.

  4. 4. 祝新乐. 区块链在文化产业中的应用前景研究[J]. 现代交际, 2022(6): 32-40+122.

  5. 5. 牟锋. “3+1+2”背景下的高考志愿填报[J]. 考试与招生, 2022(Z1): 7-11.

  6. 6. 韩丹东, 王意天. 高考志愿填报成了桩热门生意[N]. 法治日报, 2022-07-05(004).

  7. 7. 范晓娟. 高考志愿填报应具备的能力[J]. 知识文库, 2022(8): 196-198.

  8. 8. 赵博宇. 高考志愿填报如何避坑[N]. 北京商报, 2022-06-24(004).

  9. 9. 王保军. 高考志愿填报的有关策略[J]. 山西教育: 招生考试, 2022(7): 26-27.

  10. 10. 葛灵丹, 周晗驰. 高考志愿填报“一键生成”靠谱吗[N]. 新华日报, 2022-06-28(005).

期刊菜单