信息安全实验报告
:
学号:
班级:
教师:卫琳娜
2018-11-15
实验1:密码学实验
实验目的:
编程实现简单古典密码算法,加深对古典密码的理解
掌握简单加解密算法设计原则
实验内容:
编程实现凯撒密码,输入任意明文(26个英文字母中的任意一个,不区分大小写),观察明文密文关系。
程序代码:
#include <>
#include <>
int main()
{
char passwd[100],encrypted[100];
int i,k=3;
printf("请输入明文:");
gets(passwd);
for(i=0; i<strlen(passwd); i++)
{
if(passwd[i] >= 'A' && passwd[i] <= 'Z')
{
passwd[i] = ((passwd[i]-'A')+k)%26+'A';
}
else if(passwd[i] >= 'a' && passwd[i] <= 'z')
{
passwd[i] = ((passwd[i]-'a')+k)%26+'a';
}
else passwd[i]=' ';
}
printf("密文为:%s\n",passwd);
return 0;
}
运行结果:
编程实现单表代换密码,输入任意明文(26个英文字母中的任意一个,不区分大小写),观察明文密文关系。
程序代码:
#include <>
#include <>
int main()
{
char passwd[100],encrypted[100];
int i,k;
printf("请输入明文:");
gets(passwd);
printf("请输入移动的值(1-25):");
scanf("%d",&k);
for(i=0; i<strlen(passwd); i++)
{
if(passwd[i] >= 'A' && passwd[i] <= 'Z')
{
passwd[i] = ((passwd[i]-'A')+k)%26+'A';
}
else if(passwd[i] >= 'a' && passwd[i] <= 'z')
{
passwd[i] = ((passwd[i]-'a')+k)%26+'a';
}
else passwd[i]=' ';
}
printf("密文为:%s\n",passwd);
return 0;
}
运行结果:
自行设计并实现一种简单密码,输入任意明文字符串,输出密文。输入秘钥和密文字符串,输出明文。
程序代码:
#include <>
#include <>
#include <>
void jiami(char *passwd1)
{
int i,k;
printf("请输入移动的值(1-25):");
scanf("%d",&k);
for(i=0; i<strlen(passwd1); i++)
{
if(passwd1[i] >= 'A' && passwd1[i] <= 'Z')
{
passwd1[i] = ((passwd1[i])-'A'+k)%26+'A';
}
else if(passwd1[i] >= 'a' && passwd1[i] <= 'z')
{
passwd1[i] = ((passwd1
信息安全实验报告 来自淘豆网m.daumloan.com转载请标明出处.