选题背景与意义
1.1 选题背景
随着教育信息化的深入发展,高校教务管理系统已成为学校日常运行的核心平台,承载着学生学籍、课程安排、考试成绩等关键数据。然而,当前的教务系统普遍存在'重功能、轻安全'的问题。数据多以明文形式存储在数据库中,一旦数据库权限泄露或遭遇内部人员违规操作(如篡改成绩、修改学籍),系统往往缺乏有效的技术手段来发现数据已被篡改,导致数据的完整性和可信度受到严重威胁。
传统的防火墙、访问控制等防御手段主要侧重于'防外',难以防止拥有合法数据库权限的内部人员或通过 SQL 注入等手段获取权限的攻击者对数据进行静默修改。因此,引入密码学技术,特别是数字签名技术,从数据产生的源头保障其不可篡改性,并在后续环节提供可验证的完整性校验机制,已成为构建高可信教务系统的迫切需求。
1.2 选题意义
本课题旨在设计并实现一个'基于数字签名的教务数据完整性保障系统',具有以下理论与现实意义:
- 理论意义:探索非对称加密算法(RSA/ECC)与哈希算法(SHA-256)在 Web 应用数据完整性保护中的具体应用模型,验证'数据 + 签名'绑定存储机制的有效性。
- 现实意义:
- 防篡改:确保成绩单、学籍信息等关键数据一旦生成,任何未经授权的修改都能被系统即时发现。
- 可追溯:通过签名机制和操作日志,能够精准定位数据篡改发生的时间点和责任人。
- 公信力提升:为学生、用人单位及第三方机构提供独立的数据验证手段,提升教务数据的公信力。
国内外研究现状
2.1 国内研究现状
国内高校教务系统大多采用 B/S 架构,数据库多使用 MySQL 或 Oracle。目前的安全措施主要集中在身份认证(如统一身份认证)、传输加密(HTTPS)和数据库备份上。对于存储阶段的数据完整性保护,多数系统仅依赖数据库的事务机制或简单的校验和(Checksum),缺乏基于公钥基础设施(PKI)的数字签名机制。部分研究提出了基于区块链的教务数据存证方案,但鉴于区块链部署复杂、性能开销大,尚未在普通本科院校大规模落地应用。
2.2 国外研究现状
国外在电子成绩单(Electronic Transcripts)标准化方面起步较早,如美国的 Parchment 平台已广泛采用数字签名技术确保证书的真实性。在系统设计上,国外更倾向于遵循 NIST(美国国家标准与技术研究院)的数据完整性标准,强调'零信任'架构下的数据验证,即不信任数据库本身,而是信任经过签名验证的数据包。
2.3 存在的问题
现有研究或系统中,要么过于依赖昂贵的商业 CA 证书,要么技术方案过于复杂(如全链路区块链),缺乏一种轻量级、低成本、易于集成到现有 Flask/Django 等 Web 框架中的完整性保障原型系统。本课题拟填补这一空白,构建一个专注于'完整性保障'的轻量化原型。
研究内容与目标
3.1 研究目标
构建一个基于 Python Flask 框架的教务数据安全管理系统原型。该系统在保证基础教务功能(增删改查)的同时,核心实现数字签名自动生成、数据完整性实时验证以及篡改行为审计三大功能。系统需达到以下指标:
- 关键数据(成绩、学籍)入库时 100% 自动附加数字签名。
- 数据被非法修改后,系统能在秒级内检测并报警。
- 提供可视化的安全监控界面,展示系统完整性状态。
3.2 主要研究内容(五大核心模块)
本系统将划分为以下五个核心功能模块进行设计与实现:
1. 用户与权限管理模块
- 功能描述:实现系统的基础安全入口。
- 具体内容:
- 支持管理员、教师、学生三类角色的注册与登录。
- 基于 RBAC(Role-Based Access Control)模型,控制不同角色对数据的访问权限(如:仅教师可录入成绩,仅学生可查看本人成绩)。
- 密钥绑定:为每个用户(或系统全局)生成/绑定 RSA 密钥对,私钥由服务端安全托管,公钥用于后续验证。
- 记录用户登录日志,作为审计的基础数据。
2. 教务数据管理模块
- 功能描述:实现教务业务的基本流转。









