一:题目描述
西安邮电大学第七届汇编语言程序设计竞赛题目
一、题目名称:
加密解密软件的设计与实现
二、题目要求:
1、采用8086汇编语言,设计并实现一个加密解密软件。
能利用软件中的加密功能,将待加密的文件数据变换为密文,利用解密功能,将密文还原为原文件数据。软件可针对某一种或某几种类型文件进行加密/解密;也可设计为通用加密/解密软件。
2、要求有相应的人机交互。
能选择进行加密或解密;能输入待加密/解密的文件名(包括路径及文件名);能由用户输入加密/解密密钥。
3、主要功能要求:能实现文件的加密/解密。
可自行设计加密解密算法,或采用经典的加密/解密算法,如 DES、AES、MD5等;可设计为通用加密/解密软件,也可针对某一种或某几种类型文件进行加密/解密。
4. 创新:
本次汇编竞赛支持创新,即提交的作品可以不限于以上主题,但必须保证原创性。
三、格式要求:
1、程序设计报告:
包括:整体设计结构框图,各子模块设计框图;各个任务模块的完成情况;任务调度程序的完成情况;整个系统联调的完成情况。
特别提醒:报告中要有加密解密程序运行过程的详尽截图,以及运行结果的详细截图。
2、源程序:
要求:格式规整;每个功能模块和主要代码处需有注释。
四、注意事项:
1、本次竞赛需上传的电子版文档有:加密解密软件汇编语言源程序,待加密文件,汇编连接后产生的exe文件,以及竞赛设计报告的word文档。设计报告还需提交一份纸质版,详见竞赛规程。
2、本次竞赛可使用的软件工具为:Masm.exe, Link.exe,Debug.exe, Debug.com ,Edit.com,记事本。
二:设计思路
http://www.yangbodong.cn/asm.pdf
三:程序代码
备注:马辉同学完成文件读写操作,我完成加密解密算法。
https://github.com/yangbodong22011/asm/blob/master/encry.asm