- 1、本文档共33页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
文件移位加密与解密系统C 课程设计
计算机学院计算机科学与技术专业
《程序设计综合课程设计》报告
(20010/2011学年 第一学期)
学生姓名:
学生班级:
学生学号:
指导教师:
2011年 01月 08日
文
件
移
位
加
密
与
解
密
系
统
目 录
第一章.课程设计目的和要求 1
1.1设计目的: 1
1.2 设计要求: 1
第二章.课程设计任务内容 2
第三章.详细设计说明 3
3.1模块描述 3
3.2 性能 3
3.3 输入项 3
3.4输出项 3
3.5算法 4
3.7接口 13
3.8数据文件存储说明 13
3.9注释设计 13
3.10限制条件 13
3.11测试计划 14
14
第四章.软件使用说明 17
第五章.课程设计心得与体会 18
附录1:参考文献 20
附录2:源代码 21
第一章.课程设计目的和要求
1.1设计目的:
提高程序设计和分析的能力。
深入了解c++程序设计的知识与技巧.
进一步掌握c++程序设计的思想.
初步了解程序加密与解密的思想.
1.2 设计要求:
完整的理解课程设计任务的要求.
用C语言实现系统.
函数功能要划分好(结构化程序设计).
设计的程序结构完整、简明、可读性强.
界面友好(良好的人机交互),加必要的注释.
设计的程序调试成功,能稳定的运行.
提供程序测试方案.
8.列出参考的文献和完整的程序清单.
第二章.课程设计任务内容
设计一个文件加密与解密的程序,主要功能主要包括以下内容:
1.文件加密:设计三种加密算法
2.文件解密。
3.实现主函数和子函数之间的参数传递.
第三章.详细设计说明
3.1模块描述
该模块是一个简单完整的程序,主要包括3个算法。其功能是将某一已知文件的内容(仅限于英文字母)以字符形式读出,根据密钥或密码(用户从键盘输入)将对应字符进行加密、解密操作并输出结果。
3.2 性能
(1)要求有较快的运算速度,能很快的执行函数功能;
(2) 要求程序运行稳定,无误;
(3) 要求程序有良好的人机互动.
3.3 输入项
包括以下内容:
(1)要加密的字符窜s,其类型为string类型。
(2)加密密匙或密码key;其中密匙为int类型,密码为string类型。
(3)解密密匙或密码key1;
(4)执行操作与否的判断 y/n;其类型为字符型。
所有的输入均有用户由键盘输入。
3.4输出项
包括以下内容:
(1)必要的提示数据:中文和*号;
(2)已加密的密文和解密后的明文;其类型均为string类型.
所有输出项都由显示器输出。
3.5算法
3.5.1单表移位算法:
就是明文的一个字符用相应的一个密文字符代替。加密过程中是从明文字母表到密文字母表的一一映射。
例如:加密:设原文为abcdef,密钥为5,则有abcdef每个字母按字母表
移动5位(注:z后接a)可得到密文(乱码)fghijkl;对该文件解密:文件内容为fghijk1,密钥为5,则有fghijk1每个字母向前移动5位(注a后接z),可得到原文abcdef。
凯撒密码就是单表代替密码,它的每一个明文字符都由其右边第3个(模26)字符代替(A由D代替,B由E代替,W由Z代替,X由A代替,Y由B代替,Z由C代替)。
单表代替密码是很容易破译的,因为它没有把明文的不同字母的出现频率掩盖起来。可以使用统计攻击。
3.5.2多表移位算法:
多表代替密码有多个单字母密钥,每一个密钥被用来加密一个明文字母。第一个密钥加密明文的第一个字母,第二个密钥加密明文的第二个字母等等。在所有的密钥用完后,密钥又再循环使用,若有20个单个字母密钥,那么每隔20个字母的明文都被同一密钥加密,这叫做密码的周期。
维吉尼亚密码是多表代替密码的例子。
例如:加密时,将每个字符的ascll码依次反复加上“2011”(密码, 由用
户自由输入)中的数字,并在32(‘ ‘)~122(’ z)之间做摸运算。
3.5.3置换算法(行列换位法)
算法的原理是不改变明文字符,只将字符在明文中的排列顺序改变,从而实现明文信息的加密。置换密码也叫换位密码。如矩阵换位密码。它的加密方法是将明文中的字母按照给定的顺序安排在一个矩阵中,然后用根据密钥提供的顺序重新组合矩阵中的字母,形成密文。
行列换位法采用密钥,假设密钥是5,明文是I am a Chinese boy那么就会以5位列数排成一个矩阵。
I a m a c
h i n e s
e b o y
那么密文就是ihe aib mno aey cs× ,最后一行不足的用随机字母
您可能关注的文档
最近下载
- 民用建筑通用规范GB55031-2022(完整清晰版).pdf
- SY_T 4113.1-2018 管道防腐层性能试验方法 第1部分:耐划伤测试.docx VIP
- 江苏省无锡市江阴市长泾片2024-2025学年七年级上学期期中考试语文试题(含答案).pdf VIP
- 燃气安全日常巡检与维护方法.pptx
- 市直机关单位整治群众身边不正之风问题集中整治工作阶段性工作总结.docx VIP
- 地下连续墙施工方案(附:工程临时用电施工方案).doc
- 汽轮发电机组转子找中心计算公式.xls VIP
- 惠州市高2024届高三第二次调研考试政治试卷(含答案).docx
- SY∕T 4113.8-2020 管道防腐层性能试验方法 第8部分:耐磨性能测试.pdf
- HRN日本报知机百仕达五斯消防主机操作说明书.pdf
文档评论(0)