文档介绍:《网络安全编程》实践教学环节任务书一、题目: 文件加密系统的设计与实现二、目的与要求 1. 目的: (1) 使学生进一步理解和掌握网络基本原理和基础知识, 能够熟练掌握协议层次和各协议的工作原理; (2) 了解网络安全的基本需求, 掌握常用对称密钥和公钥算法的运行原理, 掌握认证和数字签名的基本方法; (3) 使学生掌握网络通讯和套接字编程的方法, 可以通过编程实现网络计算机的通信和资源共享; (4) 可以使用典型的网络开发包实现网络的收包和发包; (5) 使学生掌握使用各种计算机资料和有关参考资料, 提高学生进行程序设计的基本能力。 2. 要求基本要求: (1) 理解基本工作原理和网络安全基本知识, 具备数论基本演算能力; (2) 学生有自学参考书籍,查阅手册、图表和文献资料的能力; (3) 掌握简单软件的分析方法和设计方法, 具备一定的编程能力; (4) 了解与课程有关的工程技术规范,能正确解释和分析实验结果; (5) 题目具有足够的工作量。创新要求: (6) 在基本要求达到后, 可进行创新设计, 如良好的用户交互界面, 充分利用面向对象知识,图形界面设计,新知识和技术的应用等。三、信息描述要求设计实现一个文件加密系统, 可以实现典型的对称加密和公钥加密算法,实现对文件的加密和解密功能。四、功能描述 1. 能够进行文件的选择和浏览。 2. 能够进行文件的加密解密。 3. 可以对加密方式进行选择,至少包括: DES, AES 和 RSA , 其它可选加密算法包括 MARS, TwoFish, ECC 等。五、解决方案 1. 分析程序的功能要求,划分程序功能模块。 2. 画出系统流程图。 3. 代码的编写。定义数据结构和各个功能子函数。 4. 程序的功能调试。 5. 完成系统总结报告以及使用说明书六、进度安排此次课程设计时间一周,分以下几个阶段完成: 1. 选题与搜集资料:每人选择一题,进行课程设计课题的资料搜集。 2. 分析与概要设计: 根据搜集的资料, 进行相关知识的学习和算法原理的理解、并在此基础上进行实现程序功能的算法设计。 3. 程序设计:运用掌握 C/C++ 语言进行 GUI 程序编写,实现各个模块功能。 4. 调试与测试:调试程序,并记录测试情况。 5. 完成课程设计报告。 6. 验收与评分:指导教师对每个同学的开发的系统进行综合验收,并由学院考核小组进行随机抽查评分。七、撰写课程设计报告或课程设计总结课程设计报告要求: 课程设计报告要求规范书写,应当包括如下 6 个部分: 1. 问题描述 2. 基本要求 3. 系统分析与设计 4. 测试数据及结果 5. 总结 6. 附录:源程序清单八、参考资料 1. [ M] .北京:清华大学出版社, 2011 , 6 2. William Stallings. Cryptography work Security[M]. 北京:电子工业出版社, 2012 3. Stevens. TCP/IP 协议详解(共三卷) [M]. 北京:机械工业出版社, 20 00 4. Stevens. Unix 网络编程[M]. 北京:人民邮电出版社, 2010 . TCP/IP 网络编程[M]. 北京:人民邮电出版社, 2014 6.