欢迎来到天天文库
浏览记录
ID:20275842
大小:47.50 KB
页数:3页
时间:2018-10-11
《数字签名信息安全技术实验4》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、贵州大学实验报告学院:职业技术学院专业:计算机科学与技术班级:计科101姓名学号实验组实验时间指导教师成绩实验项目名称数字签名实验目的1.掌握数字签名的基本原理2.掌握用RSA算法及其应用技术实验要求1.计算出A、B双方的公开密钥和秘密密钥。2.发送方A:用其自身的用户代号(101)作为身份向B发出一数字签名消息,实验要求用B的公开密钥进行加密。3.接收方B:对该数字签名进行解密和身份验证。4.要求列出计算。5.要求编程实现(语言不限)。6.要求提交程序清单和程序运行结果。实验环境计算机一台VC6.0以上的环境实验内容用RSA算法进行数字签名。设用户A和用户B的用户代号分别为101和10
2、2。并设:用户A:p=11q=17用户B:p=7q=11算法描述及实验步骤#includeintcandp(inta,intb,intc){intr=1;b=b+1;while(b!=1){r=r*a;r=r%c;b--;}printf("%d",r);returnr;}intmain(){intp,q,e,d,m,n,t,c,r;chars;printf("请输入p,q:");scanf("%d%d",&p,&q);n=p*q;printf("n为%3d",n);t=(p-1)*(q-1);printf("t为%3d",t);printf("请输入e:")
3、;scanf("%d",&e);if(e<1
4、
5、e>t){printf("e值错误,请再一次输入:");scanf("%d",&e);}d=1;while(((e*d)%t)!=1)d++;printf("计算出d的值为%d",d);printf("请输入密码11");printf("平原,请输入22");scanf("%d",&r);switch(r){case1:printf("输入要加密的明文数字m:");scanf("%d",&m);c=candp(m,e,n);printf("密码是%d",c);break;case2:printf("输入要解密的密文数字c:"
6、);scanf("%d",&c);m=candp(c,d,n);printf("密码是%d",m);break;}}调试过程及实验结果实验总结指导教师意见签名:年月日
此文档下载收益归作者所有