实验二rsa公钥密码体制

实验二rsa公钥密码体制

ID:24157628

大小:101.85 KB

页数:4页

时间:2018-11-13

实验二rsa公钥密码体制_第1页
实验二rsa公钥密码体制_第2页
实验二rsa公钥密码体制_第3页
实验二rsa公钥密码体制_第4页
资源描述:

《实验二rsa公钥密码体制》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实胗工,完公翎密鹆加、解密技术一,实狯fl的通过编写RSA算法(小素数)程序,并运行此程序对实验数据进行加密和解密操作,使学生进一步掌握RSA公钥密码体制。工、实臉要求(1)用VC++写出加密、解密程序代码。(要求完成加密和解密,明文仅限为英文字母、数字、空格和标点符号):(2)运行自己编写的程序,输入素数p=7,q=13:明文为最多两位整数学号:如2,23等,得出和应的密文,并对其解密,验证解密后得到的明文是否与输入的学号相Mo三、相襄知识1976年,W.DiffieM.E.Heilman提出了公钥密码学的思想。在公钥密码体制中,加密密钥和

2、解密密钥是不一样的,加密密钥可以公幵传播而不危及密码体制的安全性。公钥密码体制主要有三种:RSA公钥密码体制、EIGamal公钥密码体制、Menezes-Vanstone公钥密码体制。本次实验内容是关于RSA公钥密码体制。RSA公钥密码体制的安全性是基于大整数的素分解问题的难解性。其有自身的优缺点,优点是加密密钥可以公幵传播,缺点是运算速度较慢。算法描述:(本次试验只要求对小素数实现RSA算法)1.密钥的产生1)找出两个相异的素数P和Q,$N=PXQ,1=(P-1)(Q—1)。2)找出与M互素的整数E,且1〈E〈M利用欧氏算法计算出整数D,

3、使DXE=1MODMo欧氏算法:①nl-M,n2-E,bl-0,b2-l;②k=[nl/n2],r*-nl-k*n2;③如果1^0,则nl^-n2,n2<-r,t<-b2,b2—bl-k*b2,bl—t;转第②步;④如果n2#l,则E模M不存在逆元;⑤如果n2=l,则E模M的逆元为b2modM为什么有:E模M的逆元为b2modM根据课本屮定理5.6,只要E,M互素且1〈E

4、a2(0)nl(0)+b2(0)n2(0)假设时成立,则有nl(j)=al(j)nl(O)+bl(j)n2(0)n2(j)=a2(j)nl(0)+b2(j)n2(0)当i=j+l时有:nl(j+l)=n2(j)=a2(j)nl(0)+b2(j)n2(0)n2(j+l)=nl(j)-q(j)n2(j):al(j)nl(0)+bl(j)n2(0)-q(j){a2(j)nl(0)+b2(j)n2(0)}=(al(j)-q(j)a2(j))nl(0)+(bl(j)-q(j)b2(j))n2(0)这样循环下去,直到q(i)=0,n2(i)=l则b2(i

5、)满足:b2(i)氺E+a本M=1令:b2=b2(i)modM,则b2*EmodM=1故:b2是E关于模M的逆元3)丢弃P和Q,公开E,D和N。E和N即加密密钥,D和N即解密密钥。2.明文加密字符a属于明文集A,进行c=a"EMODN运算。c就是密文数据的一个字符块,将所有密文块合并起來,就得到丫密文数据C。3.密文解密C-字符块c属于密文C,进行a=cFilesBicrosoftVisualStudioMyProjectsgfgsdgsD

6、ebuggf.卜****RSA加密瑕密才程的'演示障输入小整数萌文:3入两个小素数P,q:35计算后得到:卜=15sn=8睛输入与卯互素的小整数。时7/*RSAalgorithm*/#include^include#include^include#include〈stdio.h>〈iostream〉〈math.h>usingnamespacestd;intgcd(intx,inty)/*求xy的最大公因子*/{intt;while(y)t=x,x=y,y=t%y;returnx;longcmp(longa

7、)/*求与a互素的数*/{longx,y;for(longi=3;i〈a;i++){y=i;x=gcd(i,a);/*如果两个数的最大公因子为1则这两个数互素*/if(x==l)break;}returny;}intniyuan(intsn,inte){intd,nl,n2,b2=l,bl=0,k,r,t;nl=sn;n2=e;while(1){k=nl/n2;r=nl-k氺n2;if(r!=0)nl=n2;n2=r;t=b2;b2=bl_k氺b2;bl=t;else{break;if(n2!=l){cout〈〈"e关于模sn的逆元不存在。"

8、<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。