文件加密系统课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
仲恺农业工程学院课程设计
文件加密
姓名浩斌
院(系)信息科学与技术学院
专业年级计算机132
学号201320244207
指导教师罗慧慧
职称学生
起止时间2015-6-15至2015-6-24 仲恺农业工程学院教务处制
目录
一.课程设计目的和要求3
1.1设计目的3
1.2设计要求4
1.3设计意义4
二.课程设计任务容5
2.1 背景5
2.2 功能需求5
三.模块设计6
3.1 系统模块6
3.2主函数流程图6
3.3 函数流程图8
3.3.1 加密函数流程图8
3.3.2解密函数流程图9
3.3.3显示函数流程图10
3.3.4 统计单词流程图11
四.软件使用说明13
4.1进入界面13
4.2加密文件14
4.3解密文件14
4.4显示文件16
4.5统计单词个数16
五.课程设计心得与体会17
5.1 关于对程序编写的心得17
5.2 对于课程设计的心得体会17
附录1:参考文献18
附录2:程序代码19
一.课程设计目的和要求
1.1设计目的
有时我们有些资料不希望别人看到,最常用的方法就是加密。对给定的相关文件进行加密可以对文件进行保护,可以防止某些重要信息不被别人所知道甚至窃取。对文件起到保护作用,可以方便用户使用某些只有自己能知道的信息,能够安全保护文件的相关容几信息不被外流。随着信息社会的到来,人们在享受信息资源所带来的巨大的利益的同时,也面临着信息安全的严峻考验。信息安全已经成为世界性的现实问题,信息安全问题已威胁到国家的政治、经济、军事、文化、意识形态等领域,同时,信息安全问题也是人们能否保护自己的个人隐私的关键。信息安全是社会稳定安全的必要前提条件。通过课程设计,使学生了解高级程序设计语言的结构,逐渐培养学生的编程能力、用计算机解决实际问题的能力,掌握基本的程序设计过程和技巧,掌握
基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。为后续各门计算机课程的学习和毕业设计打下坚实基础。
程序设计的主要任务是要求学生遵循软件开发过程的基本规,运用结构化程序设计的方法,按照课程设计的题目要求,分析、设计、编写、调试和测试程序及编写设计报告。
本课程设计的目标:
1. 巩固《高级语言程序设计》课程学习的容和加深学生对基本知识的理解和掌握。
2. 掌握编程和程序调试的基本技能。
3. 掌握软件设计的方法。
4. 提高运用程序设计解决实际问题的能力。
5. 培养独立思考、综合运用所学有关相应知识的能力。
6. 强化上机动手编程能力,闯过理论与实践相结合的难关!
1.2设计要求
1. 分析课程设计题目的要求,根据所要求的程序功能,画出程序的流程图。
2.对系统功能模块进行分析,写出详细设计说明文档。
3.对程序源代码进行调试与测试,使其能正确运行。
4.设计完成的软件要便于操作和使用。
5.设计完成后提交课程设计报告。
1.3设计意义
至今,密码技术是取得信息安全性最有效的一种方法, 密码技术是信息安全的
核心技术。通过数据加密,人们可以有效地保证通信线路上的容不被泄露,而且还可以检验传送信息的完整性。进一步,密码技术可以应用于数字签名、身份认证和信息鉴定,这些应用对于资源存取控制以及其它安全措施是必须而且有效的。相对于防病毒软件和防火墙软件来说,基于密码技术密码类产品、认证类产品份额相对较小,但随着金融、电信、政府等行业信息化建设对于网络安全整体解决方案需求的增加,将会有较大的增长。
二.课程设计任务容
2.1 背景
加密技术是电子商务采取的主要安全措施,是最常用的安全手段,利用技术手段把重要的数据变为乱码(加密)传送,到达目的地后再用相同或不同的手段还原(解密)。加密技术包括两个元素:算法和密钥。算法是将普通的文本(或者可以理解的信息)与一窜数字(密钥)的结合,产生不可理解的密文的步骤,密钥是用来对数据进行编码和解码的一种算法。在安全中,可通过适当的密钥加密技术和管理机制来保证网络的信息通讯安全。
2.2 功能需求
实现对文件的加密与解密,要求有图形用户界面。细则如下:
1.能够对一个文件进行加密。
2.加密后生成一个新文件,并且原文件删除。
3.能将加密生成的文件还原成原文件。
4.能够统计文件中单词个数。
三.模块设计
3.1 系统模块
包括四个模块:加密模块,解密模块,显示模块,统计单词模块
图3-1 系统模块图
3.2主函数流程图
在主函数中,利用switch语句实现对各个项目的函数调用。
图3-2 主函数流程图
3.3 函数流程图
3.3.1 加密函数流程图
先读取原文件数据,将原文件称需经过特定条件转换后存放到另一个文件夹。加密过程,即将读取文件的字符根据加密公式转化为别的字符实现加密。但由于后面的解密重要判断是否已经是加密文件,所以在文件末尾做记号标记。存到另一文件夹后关闭文件,最后用remove,rename两个函数实现删除源文件,将加密后文件命名为原文件名,这样只剩下一个加密文件了。
图3-3 加密函数流程图
3.3.2解密函数流程图
先判断是否已经加密,这时要利用加密函数中使用的标识符,可以用fseek函数读取文件末尾的标识符判断是否已加密。若是则解密,否则不解密。