资源描述:
《信息安全实验报告25934new》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、中北大学软件学院实验报告专业软件工程(电子商务系统规划与开发)课程名称信息安全技术学号0921040412姓名潘娜辅导教师李瑞红成绩实验日期2012-11-19实验时间8:00-12:001实验名称:古典密码算法2、实验目的通过编程实现替代密码算法和置换密码算法,加深对古典密码体制的了解,为深入学习密码学奠定基础3、实验要求要求上述密码算法最后的实现程序提供加密和解密两个接口:intencrypt()和intdecrypt()。当加密或者解密成功时返回CRYPT_OK,失败时返回CRYPT_ERROR。4、实验原理古典密码算法曾被广泛应用,大都比较简单,使用手工和机械操作来实现加
2、密和解密。它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密。下面介绍两种常见的具有代表性的古典密码算法,以帮助读者对密码算法建立一个初步的印象。⒈替换密码替换密码算法的原理是使用替代法进行加密,就是将明文中的字符用其它字符替代后形成密文。⒉置换密码置换密码算法的原理是不改变明文字符,只将字符在明文中的排列顺序改变,从而实现明文信息的加密。5、实验步骤⑴根据实验原理部分对替代密码算法的介绍,自己创建明文信息,并选择一个密钥,编写替代密码算法的实现程序,实现加密和解密操作。⑵根据实验原理部分对置换密码算法的介绍,自己创建明文信息,并选择一个密钥,编写置换密码算法的实现
3、程序,实现加密和解密操作。6、实验环境运行Windows操作系统的PC机,具有C语言编译环境。7、测试及结果替换密码:选择一个密钥k:#include"stdio.h"#include"conio.h"main(){intk,i=0;chara[100],b[100];printf("qingshurunidemiwen");gets(a);printf("qingshurumishi");scanf("%d",&k);printf("");do{b[i]=(char)(a[i]+k);if(b[i]>122){b[i]=(char)(b[i]-26);}i++;}w
4、hile(a[i]!=' ');puts(b);getch();}置换密码:#include#defineTRUE1#defineFALSE0#defineN1000#defineM50intGlength(char*a){char*pt;intnlen=0;pt=a;while((*pt)!=' '){nlen++;pt++;}returnnlen;}voidJia(char*a,intn,int*b){inti,j,k,t,x,y;charc[M][M],d[M][M];k=Glength(a);puts(a);t=k%n;if(t==0){x=k/n;
5、}else{x=(k/n)+1;}printf("%d",x);for(i=0;i96)&&(a[i*n+j]<123)){c[i][j]=a[i*n+j];printf("%c",c[i][j]);}else{c[i][j]='';printf("%c",c[i][j]);}}}printf("hehe");for(j=0;j6、",d[i][y]);}}printf("");for(i=0;i