凯撒密码实现英文短句的加解密

1. 将“We are students.”这个英文词句用k=4的凯萨密码翻译成密码

1. 恺撒密码,

作为一种最为古老的对称加密体制,他的基本思想是:

通过把字母移动一定的位数来实现加密和解密。

例如,如果密匙是把明文字母的位数向后移动三位,那么明文字母B就变成了密文的E,依次类推,X将变成A,Y变成B,Z变成C,由此可见,位数就是凯撒密码加密和解密的密钥。

如:ZHDUHVWXGHQWV(后移三位)

2. 凯撒密码,

是计算机C语言编程实现加密和解密。挺复杂的。你可以研究一下哦。

2. 将凯撒密码(K=7)的加密、解密过程用C语言编程实现

/*

声明:MSVC++6.0环境测试通过

*/

#include<stdio.h>

#include<ctype.h>

#define maxlen 100

#define K 7

char *KaisaEncode(char *str)//加密

{

char *d0;

d0=str;

for(;*str!='\0';str++)

{

if(isupper(*str))

*str=(*str-'A'+K)%26+'A';

else if(islower(*str))

*str=(*str-'a'+K)%26+'a';

else

continue;

}

return d0;

}

char *KaisaDecode(char *str)//解密

{

char *d0;

d0=str;

for(;*str!='\0';str++)

{

if(isupper(*str))

*str=(*str-'A'-K+26)%26+'A';

else if(islower(*str))

*str=(*str-'a'-K+26)%26+'a';

else

continue;

}

return d0;

}

int main(void)

{

char s[maxlen];

gets(s);

puts(KaisaEncode(s));

puts(KaisaDecode(s));

return 0;

}

3. 将凯撒密码X的加密、解密过程用C语言编程实现

(2)kaiser加密算法 具体程序:#include#include char encrypt(char ch,int n)/*加密函数,把字符向右循环移位n*/ { while(ch>='A'&&ch<='Z') { return ('A'+(ch-'A'+n)%26); } while(ch>='a'&&ch<='z') { return ('a'+(ch-'a'+n)%26); } return ch; } void menu()/*菜单,1.加密,2.解密,3.暴力破解,密码只能是数字*/ { clrscr(); printf("\n========================================================="); printf("\n1.Encrypt the file"); printf("\n2.Decrypt the file"); printf("\n3.Force decrypt file"); printf("\n4.Quit\n"); printf("=========================================================\n"); printf("Please select a item:"); return; } main() { int i,n; char ch0,ch1; FILE *in,*out; char infile[20],outfile[20]; textbackground(BLACK); textcolor(LIGHTGREEN); clrscr(); sleep(3);/*等待3秒*/ menu(); ch0=getch(); while(ch0!='4') { if(ch0=='1') { clrscr(); printf("\nPlease input the infile:"); scanf("%s",infile);/*输入需要加密的文件名*/ if((in=fopen(infile,"r"))==NULL) { printf("Can not open the infile!\n"); printf("Press any key to exit!\n"); getch(); exit(0); } printf("Please input the key:"); scanf("%d",&n);/*输入加密密码*/ printf("Please input the outfile:"); scanf("%s",outfile);/*输入加密后文件的文件名*/ if((out=fopen(outfile,"w"))==NULL) { printf("Can not open the outfile!\n"); printf("Press any key to exit!\n"); fclose(in); getch(); exit(0); } while(!feof(in))/*加密*/ { fputc(encrypt(fgetc(in),n),out); } printf("\nEncrypt is over!\n"); fclose(in); fclose(out); sleep(1); } if(ch0=='2') { clrscr(); printf("\nPlease input the infile:"); scanf("%s",infile);/*输入需要解密的文件名*/ if((in=fopen(infile,"r"))==NULL) { printf("Can not open the infile!\n"); printf("Press any key to exit!\n"); getch(); exit(0); } printf("Please input the key:"); scanf("%d",&n);/*输入解密密码(可以为加密时候的密码)*/ n=26-n; printf("Please input the outfile:"); scanf("%s",outfile);/*输入解密后文件的文件名*/ if((out=fopen(outfile,"w"))==NULL) { printf("Can not open the outfile!\n"); printf("Press any key to exit!\n"); fclose(in); getch(); exit(0); } while(!feof(in)) { fputc(encrypt(fgetc(in),n),out); } printf("\nDecrypt is over!\n"); fclose(in); fclose(out); sleep(1); } if(ch0=='3') { clrscr(); printf("\nPlease input the infile:"); scanf("%s",infile);/*输入需要解密的文件名*/ if((in=fopen(infile,"r"))==NULL) { printf("Can not open the infile!\n"); printf("Press any key to exit!\n"); getch(); exit(0); } printf("Please input the outfile:"); scanf("%s",outfile);/*输入解密后文件的文件名*/ if((out=fopen(outfile,"w"))==NULL) { printf("Can not open the outfile!\n"); printf("Press any key to exit!\n"); fclose(in); getch(); exit(0); } for(i=1;i<=25;i++)/*暴力破解过程,在察看信息正确后,可以按'Q'或者'q'退出*/ { rewind(in); rewind(out); clrscr(); printf("==========================================================\n"); printf("The outfile is:\n"); printf("==========================================================\n"); while(!feof(in)) { ch1=encrypt(fgetc(in),26-i); putch(ch1); fputc(ch1,out); } printf("\n========================================================\n"); printf("The current key is: %d \n",i);/*显示当前破解所用密码*/ printf("Press 'Q' to quit and other key to continue。

\n"); printf("==========================================================\n"); ch1=getch(); if(ch1=='q'||ch1=='Q')/*按'Q'或者'q'时退出*/ { clrscr(); printf("\nGood Bye!\n"); fclose(in); fclose(out); sleep(3); exit(0); } } printf("\nForce decrypt is over!\n"); fclose(in); fclose(out); sleep(1); } menu(); ch0=getch(); } clrscr(); printf("\nGood Bye!\n"); sleep(3); }。

4. 怎样编写程序:实现恺撒密码加密单词"julus"

用下面程序:新建个txt,放进去任意单词,设置#define N 5中的值,实现字母移位,达到加密目的。

本程序提供解密功能/************************************************************************//* 版权所有:信息工程学院 王明 使用时请注明出处!! *//* 算法:凯撒密码体制 e799bee5baa6e4b893e5b19e31333264643062 *//************************************************************************/#include #define N 5void jiami(char namea[256]) { FILE *fp_jiami,*fp_file2; char c; fp_jiami=fopen(namea,"rb"); fp_file2=fopen("file2.txt","wb"); while(EOF!=(fscanf(fp_jiami,"%c",&c))) { if((c>='A'&&c<='Z')||(c>='a'&&c<='z')) { c=c+N; if (!((c>='A'&&c<='Z')||(c>='a'&&c<='z')))c=c-26; if(c>='a'&&c<='z')c=c-32; } fprintf(fp_file2,"%c",c); } fclose(fp_file2); fclose(fp_jiami); } void jiemi(char en_name[256]) { FILE *fp_jiemi,*fp_file3; char c; fp_jiemi=fopen(en_name,"rb"); fp_file3=fopen("file3.txt","wb"); while(EOF!=(fscanf(fp_jiemi,"%c",&c))) { if((c>='A'&&c<='Z')||(c>='a'&&c<='z')) { c=c-N; if (!((c>='A'&&c<='Z')||(c>='a'&&c<='z')))c=c+26; if(c>='A'&&c<='Z')c=c+32; } fprintf(fp_file3,"%c",c); } fclose(fp_file3); fclose(fp_jiemi); }int main(){ char name[256]; int n; printf("输入你要操作的TXT文本:"); gets(name); printf("\n请选择需要进行的操作:\n"); printf(" 1:加密 2:解密 \n"); printf("输入你的选择:"); scanf("%d",&n); switch(n) { case 1:{jiami(name);printf("\t加密成功!!\n\n"); break;} case 2:{jiemi(name);printf("\t解密成功!!\n\n"); break;} default:{printf("输入操作不存在!");} } return 0;}。

5. 谁有PYTHON编写的凯撒密码的加密和解密代码

给你写了一个.

def convert(c, key, start = 'a', n = 26):

a = ord(start)

offset = ((ord(c) - a + key)%n)

return chr(a + offset)

def caesarEncode(s, key):

o = ""

for c in s:

if c.islower():

o+= convert(c, key, 'a')

elif c.isupper():

o+= convert(c, key, 'A')

else:

o+= c

return o

def caesarDecode(s, key):

return caesarEncode(s, -key)

if __name__ == '__main__':

key = 3

s = 'Hello world!'

e = caesarEncode(s, key)

d = caesarDecode(e, key)

print e

print d

运行结果:

Khoor zruog!

Hello world!

转载请注明出处短句子网 » 凯撒密码实现英文短句的加解密

句子

清洁美化家园短句

阅读(4060)

本文主要为您介绍清洁美化家园短句,内容包括“清洁环境,美丽家园”的文明短信或警示语,10条够了马上采搜,关于“爱护家园”的句子,关于“清洁环境,美化校园”的标语。环境保护,人人有责。2、保护环境是一项必须长期坚持的基本国策。3、实施

句子

关于平安夜的短句子

阅读(383)

本文主要为您介绍关于平安夜的短句子,内容包括告诉我一些关于圣诞节的短语.(InEnglish),平安夜的句子,圣诞节祝福语(短句)。圣诞老人说所谓幸福是一个有健康的身体,有深爱你的人,一帮可依赖的朋友,当你收到此信息时,一切随之拥有。2、一生平安,是我

句子

英语风趣的短句带翻译

阅读(616)

本文主要为您介绍英语风趣的短句带翻译,内容包括英语小幽默,要带翻译的,英语幽默小故事(带翻译的),英语幽默短文、警句带翻译。Sooner or laterA: How many things did you steal?你偷了多少东西?B: More and

句子

关于友情的简短句子大全

阅读(416)

本文主要为您介绍关于友情的简短句子大全,内容包括谁知道描写亲情或友情的诗句(要简短一点的),关于友谊的短句子,求关于友谊的短句。1.慈母手中线,游子身上衣.临行密密缝,意恐迟迟归.谁言寸草心,报得三春晖.(孟郊:《游子吟》) 2.煮豆燃豆萁,豆在釜中

句子

适合二年级的英文话剧短句

阅读(3308)

本文主要为您介绍适合二年级的英文话剧短句,内容包括适合小学二到四年级的英文小话剧,谁有两三个适合小学一二年级的英语短剧,求适合小学生的英文短剧剧本要简单点的,时间差不多2分多钟爱问知。(道具:小床、门) Mum: Tom get up ! Tom Yes ,mu

句子

四周年纪念的短句

阅读(801)

本文主要为您介绍四周年纪念的短句,内容包括恋爱四年纪念日的情话,为四周年纪念日在一起写一段话,为四周年纪念日在一起写一段话。恋爱四年纪念日的情话一:l 往后余生 风雪是你 平淡是你 清贫是你 l 荣华是你 心底温柔是你 目光所至 也是你l

句子

慰藉心灵的英文短句

阅读(637)

本文主要为您介绍慰藉心灵的英文短句,内容包括触碰心灵的英语名言佳句,触动人心的英文名言短句,一些很震颤心灵的英语的美丽句子。触碰心灵的英语名言佳句He gave up only one city, day shone, went to a life or de

句子

关于秋季的超短句子

阅读(422)

本文主要为您介绍关于秋季的超短句子,内容包括关于秋天的短句子大全,关于秋天短的句子大全,有关秋天的短句子大全。描写秋天的句子仰望天空,只见有一群大雁从北方飞来,又向南方飞去。它们排列着整齐的队伍,变换着阵容在空中飞翔着,一会儿排列成

句子

英语名言感恩短句

阅读(440)

本文主要为您介绍英语名言感恩短句,内容包括关于“Thanksgiving的英文句子,感恩英语句子大全,写感谢父亲的优美的英文句子带上翻译~。关于感恩的英语名言10句1.We should never remember the benefits we have offered

句子

微信动态感情短句

阅读(938)

本文主要为您介绍微信动态感情短句,内容包括微信上最近很火的心情句子,你最喜欢哪一句,微信伤感说说动态:好好的爱情,怎么就变成,关于微信说说心情短语。①任何值得去的地方都没有捷径可选,有梦别怕疼,想赢别喊停。②一个人至少拥有一个梦想,有

句子

无声天使短句子

阅读(432)

本文主要为您介绍无声天使短句子,内容包括有没有关于天使的经典句子啊,多写几个.,有关天使的句子,关于天使的句子。我愿变成童话里美丽的天使,用洁白的翅膀把你裹在我的怀里,不让你受到一丝丝的伤害.每一个天使都有一对美丽嘚翅膀天使嘚羽翼

句子

有没有关于花的短句50字

阅读(523)

本文主要为您介绍有没有关于花的短句50字,内容包括描写花草盛开的句子,不少于个50字,关于花的短句子,写花的句子,带有比喻句和拟人句,至少50字。梅花有五片花瓣,有单瓣的,也有双瓣的,它的花蕊是一丝一丝的,上面有一个比芝麻还小的小点,像一顶小

句子

赞美mlb的服装短句

阅读(416)

本文主要为您介绍赞美mlb的服装短句,内容包括赞美服装的句子,赞美服装的句子,赞美衣服的句子。恬静的淑女气质。2、您皮肤白这件衣服你穿上再合适不过了。3、活泼又不失雅致。4、更显青春朝气。5、嗬这件衣服一穿上这位先生显得更英气逼人

句子

心语心愿短句

阅读(459)

本文主要为您介绍心语心愿短句,内容包括求星语心愿经典台词,心愿的句子,有关心语星愿的诗句。《心语心愿》里的:你可以不爱我,但不可以不理我! 生命中存在着许多巧合,两条平行线也有相交的一天。我只记得“意外中我得到你的爱,当我想拥

句子

清洁美化家园短句

阅读(4060)

本文主要为您介绍清洁美化家园短句,内容包括“清洁环境,美丽家园”的文明短信或警示语,10条够了马上采搜,关于“爱护家园”的句子,关于“清洁环境,美化校园”的标语。环境保护,人人有责。2、保护环境是一项必须长期坚持的基本国策。3、实施

句子

关于平安夜的短句子

阅读(383)

本文主要为您介绍关于平安夜的短句子,内容包括告诉我一些关于圣诞节的短语.(InEnglish),平安夜的句子,圣诞节祝福语(短句)。圣诞老人说所谓幸福是一个有健康的身体,有深爱你的人,一帮可依赖的朋友,当你收到此信息时,一切随之拥有。2、一生平安,是我

句子

英语风趣的短句带翻译

阅读(616)

本文主要为您介绍英语风趣的短句带翻译,内容包括英语小幽默,要带翻译的,英语幽默小故事(带翻译的),英语幽默短文、警句带翻译。Sooner or laterA: How many things did you steal?你偷了多少东西?B: More and

句子

关于友情的简短句子大全

阅读(416)

本文主要为您介绍关于友情的简短句子大全,内容包括谁知道描写亲情或友情的诗句(要简短一点的),关于友谊的短句子,求关于友谊的短句。1.慈母手中线,游子身上衣.临行密密缝,意恐迟迟归.谁言寸草心,报得三春晖.(孟郊:《游子吟》) 2.煮豆燃豆萁,豆在釜中

句子

适合二年级的英文话剧短句

阅读(3308)

本文主要为您介绍适合二年级的英文话剧短句,内容包括适合小学二到四年级的英文小话剧,谁有两三个适合小学一二年级的英语短剧,求适合小学生的英文短剧剧本要简单点的,时间差不多2分多钟爱问知。(道具:小床、门) Mum: Tom get up ! Tom Yes ,mu

句子

四周年纪念的短句

阅读(801)

本文主要为您介绍四周年纪念的短句,内容包括恋爱四年纪念日的情话,为四周年纪念日在一起写一段话,为四周年纪念日在一起写一段话。恋爱四年纪念日的情话一:l 往后余生 风雪是你 平淡是你 清贫是你 l 荣华是你 心底温柔是你 目光所至 也是你l

句子

慰藉心灵的英文短句

阅读(637)

本文主要为您介绍慰藉心灵的英文短句,内容包括触碰心灵的英语名言佳句,触动人心的英文名言短句,一些很震颤心灵的英语的美丽句子。触碰心灵的英语名言佳句He gave up only one city, day shone, went to a life or de

句子

韩语短句情话含蓄

阅读(383)

本文主要为您介绍韩语短句情话含蓄,内容包括韩文情话最暖心短句,韩语情话最暖心短句,适合女生用的韩语情话句子。너와 함께 한 시간 모두 눈부셨다. 和你在一起的时光,全部都很耀眼2、날이 적당해서 모든 날이 좋았다. 因为天气刚刚好 每一