文件的加解密处理

[复制链接]
查看11 | 回复1 | 2010-11-29 13:04:12 | 显示全部楼层 |阅读模式
文件的加解密处理
1系统的基本功能
编写一个对文件(由数字或字母组成)进行加密解密的程序。可以将所需要的内容(整个文件或者输入的一行字符)加密,也可以将存储的加密文件翻译回来。例如加密时可以将选取内容的每个字符依次反复加上”49632873”中的数字,如果范围超过ASCII码值的032(空格)—122(‘z’),则进行模运算(既N%122).解密与加密的顺序相反。
2、要求及提示
2.1 程序执行过程
(1)从键盘输入要进行加密的一行字符串或者需要加密的文件名。
(2)显示菜单:
1. 设置加密方法
2. 加密
3. 解密
4. 显示原始文件和解密文件
(3)选择菜单,进行相应的操作。加密方法是设置一加密字符串以及对文件的哪些部分进行加密;加密是将原始文件加密并保存到文件中;解密是将加了密的文件还原并保存到文件中,同时应比较与原始文件的一致性;显示是将文件在屏幕上显示出来,供人工校对。
2.2程序设计的具体要求
(1) 加密方法用结构表示
struct password
/*加密方法*/
{ char ps[10];
/*加密字符串*/
long l;
/*加密间隔字节数*/
long wd;}
/*加密的字节数*/
(2)定义原始文件sourse.txt、加密文件result.txt和还原文件recall.txt
(3) 程序模块及函数功能:
a) 在屏幕上显示文件 void printtxt();
b) 加密void encode();
c) 解密void decode();
d) 文件比较void cmptxt();
2.3 算法提示
(1)加密时,每个字符依次反复加上”49632873”中的数字,如果范围超过ASCII码值的032(空格)—122(‘z’),则进行模运算(即N%122).
例如:加密the
(t)116+4,(h)104+9,(e)101+6
变为xqk
(2) 解密:解密过程与加密过程的顺序正好相反,即从第一个字符开始,每个字符依次反复减去”49632873”中的数字,若执行减法后得到一个负数,则把这个负数加122然后取余,即 (N+122)%122, 其中N为负数。
例如:把xqk解密
(x) 120-4(q)111-9(k) 107-6
变为 the
2.3 其他要求
(1)变量、函数命名符合规范。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
网上的其他代码我都看过了,只有加密,我希望能给我按题来回答

回复

使用道具 举报

千问 | 2010-11-29 13:04:12 | 显示全部楼层
2) 解密:解密过程与加密过程的顺序正好相反,即从第一个字符开始,每个字符依次反复减去”49632873”中的数字,若执行减法后得到一个负数,则把这个负数加122然后取余,即 (N+122)%122, 其中N为负数。 例如:把xqk解密 (x) 120-4(q)111-9(k) 107-6 变为 the2.3 其他要求(1)变量、函数命名符合规范。(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。(3)程序的层次清晰,可读性强。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行