《数据安全》课程设计指导书计算机与控制学院hellowy@126.com一.目的本课程是信息安全专业所开设的一门基础性的实践课程,主要是数据安全原理和技术在实践开发中的具体应用。本课程的任务是:通过本课程的学习实践,使用学生进一步理解数据安全开发的工程化思想,掌握如何有效集成各种算法设计安全系统,掌握数据安全相关软件分析、设计和测试方法,面向对象的分析和设计方法的具体应用,熟悉一些数据安全软件开发流程。二.题目任选下列一项目(或者集成其中的数项)进行,查阅相关文献、了解相关的系统,要求完成系统需求规约文档、系统分析模型文档、系统设计模型文档、系统测试设计文档、系统编码和测试报告。1.文件加密系统2.数字版权保护系统3.多功能数字签名系统4.U盘加密系统5.数据备份与恢复软件6.基于内容加密系统7.数字密写系统(学生可自选课题,但需由教师认可)三.任务完成形式1.完整的软件系统最终必须向指导老师提交完整的电子版程序源代码、可执行程序、数据文件以及使用说明文件等。源代码文件要特别注意编程规范、代码风格,关键代码需有合理的注释,不含任何无用代码;数据文件内要求有一定数量的“真实”数据(如对于记录文件,需要有5条以上记录);使用说明文件的第一行,需要给出设计者的学号、姓名,后面为其它说明。2.课程设计报告(详细要求请参考附录二)课程设计报告总体上主要包括以下几个部分:1)封面2)目录3)课程设计报告正文4)软件安装、使用或者配置说明5)参考文献四.总体要求根据所给的实验指导书的要求,从中选择项目,应用所学的知识,完成题目所规定的各项要求。总体要求如下:1.程序代码总量不少于600行(其中不包括编译器自动生成的代码),要求基本上逐行注释,关键代码必须有合理注释以及相应的说明。2.课程设计报告正文字数不少于8000字,概念清楚、叙述正确、内容完整、书写规范。3.课程设计中必须按指导书要求,综合应用所学的数据安全知识解决实际问题,有必要的理论分析,设计要有合理的依据。独立完成课程设计,不得抄袭他人。即使是同类的题目,可以分在一组互相交流,但是也不能抄袭,不能雷同,必须有差异,学生最终提交的电子文档(包括源代码)会经过各种方式的比较的。4.功能正确、有一定实用性,鼓励创新。5.阅读一定的源代码,借鉴经典的设计方法。6.设计时适当考虑程序的可维护性与可扩充性,另外集成一些常用的功能,软件有适当的帮助,易于使用和操作。7.积极交流与讨论(通过同学、网络等途径)、善于查阅资料、分析与借鉴他人编写的软件。8.软件设计好以后,鼓励遵循开放源代码的思想,将代码和系统在网络上公开,接受专家和网民的评价。9.鼓励自己设计算法(比如加密、签名和hash算法的设计)。10.及时与老师交流,以了解自己的设计是否符合要求,遇到的各种问题及时联系,课后可以采用email和即时通讯软件联系。11.学会搜索网上已有的类似软件,进行分析、比较、集成和创新。12.学生应当既把设计当作一个任务,又要注意更要掌握方法,锻炼多方面的能力,特别是在有限的时间和有限的条件下摸索的能力。五.工作阶段与考核方法大体上可分成五个阶段:1.资料查阅准备阶段(15%)2.分析设计阶段(35%)3.编程调试阶段(40%)4.课程设计报告书写阶段(10%)5.验收阶段考核方法:只有程序验收通过后,才能按以下方法核定本次课程设计的总成绩,因未能独立完成设计(尤其是抄袭)或概念不清的同学,总成绩将核定为不及格。总成绩由以下几个部分决定:1.考勤、纪律、实验室卫生2.工作量(代码量、功能多少、难度、经历的曲折)3.关键技术4.实用性、创新5.代码书写规范性(包括注释的质量、详尽程度和明晰性)6.程序界面、新技术引用、易用性7.课程设计报告(叙述、书写规范、字数)8.动手能力、分析问题解决问题能力9.答辩的情况(答辩时会问关于系统实现和本作品相关的理论知识的问题)10.在资源共享和互助协作方面的贡献及其体现的能力六.任务具体要求1、文件加密系统任务:设计一个文件加密系统,可以对不同的文件进行加密解密。基本要求:(1)可以正确对文件进行加解密;(2)加...