收藏 分享(赏)

信息安全实验报告25934new.doc

上传人:dreamzhangning 文档编号:2290997 上传时间:2018-09-09 格式:DOC 页数:10 大小:64KB
下载 相关 举报
信息安全实验报告25934new.doc_第1页
第1页 / 共10页
信息安全实验报告25934new.doc_第2页
第2页 / 共10页
信息安全实验报告25934new.doc_第3页
第3页 / 共10页
信息安全实验报告25934new.doc_第4页
第4页 / 共10页
信息安全实验报告25934new.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、中北大学软件学院实 验 报 告专 业 软件工程(电子商务系统规划与开发) 课程名称 信息安全技术 学 号 0921040412 姓 名 潘娜 辅导教师 李瑞红 成绩 实验日期 2012-11-19 实验时间 8:00-12:001 实验名称 :古典密码算法2、实验目的通过编程实现替代密码算法和置换密码算法,加深对古典密码体制的了解,为深入学习密码学奠定基础3、实验要求要求上述密码算法最后的实现程序提供加密和解密两个接口: int encrypt ( ) 和 int decrypt ( ) 。 当加密或者解密成功时返回 CRYPT_OK,失败时返回 CRYPT_ERROR。4、实验原理古典密码算

2、法曾被广泛应用,大都比较简单,使用手工和机械操作来实现加密和解密。它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密。下面介绍两种常见的具有代表性的古典密码算法,以帮助读者对密码算法建立一个初步的印象。 替换密码替换密码算法的原理是使用替代法进行加密,就是将明文中的字符用其它字符替代后形成密文。 置换密码置换密码算法的原理是不改变明文字符,只将字符在明文中的排列顺序改变,从而实现明文信息的加密。5、实验步骤 根据实验原理部分对替代密码算法的介绍,自己创建明文信息,并选择一个密钥,编写替代密码算法的实现程序,实现加密和解密操作。 根据实验原理部分对置换密码算法的介绍,自己创建明文信

3、息,并选择一个密钥,编写置换密码算法的实现程序,实现加密和解密操作。6、实验环境运行 Windows 操作系统的 PC 机,具有 C 语言编译环境。7、测试及结果替换密码:选择一个密钥 k:#include “stdio.h“#include “conio.h“main()int k,i=0;char a100,b100;printf(“qing shu ru ni de mi wen n“);gets(a);printf(“qing shu ru mi shi n“);scanf(“%d“,printf(“n“);dobi=(char)(ai+k);if(bi122)bi=(char)(bi

4、-26);i+;while(ai!=0);puts(b);getch();置换密码:#include#define TRUE 1 #define FALSE 0 #define N 1000#define M 50 int Glength(char *a) char *pt;int nlen=0; pt=a; while(*pt)!=0) nlen+;pt+; return nlen; void Jia(char *a,int n,int *b) int i,j,k,t,x,y; char cMM,dMM; k=Glength(a);puts(a); t=k%n; if (t=0) x=k/n

5、; else x=(k/n)+1; printf(“%dn“,x); for(i=0;i96)-i) change=FALSE; for(j=0;jaj+1) nTemp=aj;aj=aj+1; aj+1=nTemp;change=TRUE; i=0; while(ci)!=0) for(k=0;kusing namespace std;unsigned long momi(unsigned long a,unsigned long e,unsigned long m)unsigned long x,e,n;x= 1; e= a; n= e;while(n)if (nn= 1;e = (e*e

6、)%m;return x;int main(int argc, char* argv)for(int i = 0; i #includevoid main()int p,q,e,i,d,k,n,c,m;printf(“please write numbers p q en “);scanf(“%d%d%d“,n=p*q;k=(p-1)*(q-1);printf(“n=%dnk=%dn“,n,k);for(i=0;i=n;i+)if(k*i+1)%e=0)break;d=(k*i+1)/e;printf(“d=%dn“,d);printf(“please write number mn“);scanf(“%d“,c=(int)pow(m,e)%n;printf(“c=%dn“,c);m=(int)pow(c,d)%n;printf(“m=%dn“,m);8、心得通过实践,初步掌握了 RSA 算法的相关知识。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报