欢迎来到天天文库
浏览记录
ID:17387342
大小:105.50 KB
页数:7页
时间:2018-08-30
《信息安全技术实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、信息安全技术实验报告实验名称:公钥加密算法的实现------------------------------------------------------------------------------一、实验目的分析指数加密、背包加密算法和RSA加密算法流程并写出源程序代码,理解指数加密、背包加密算法和RSA加密算法算法原理。二、实验环境(软件、硬件及条件)硬件:运行Windows操作系统的计算机软件:操作系统:WindowsXP环境:JCreator三、实验步骤1)分析----源程序----编译-----调试。四、实验分析1、RSA加密算法的实现:publicclassRSATe
2、st{publicstaticvoidmain(Stringargs[]){intm=13;//明文RSArsa=newRSA();System.out.println("明文:"+m);System.out.println("密文:"+rsa.rsaJia(m));System.out.println("加密后解密的明文:"+rsa.rsaJie(rsa.rsaJia(m)));}}classRSA{intp=3;intq=5;intr=0;intd=1;inte=11;intpq=0;//(p-1)(q-1)intC=0;//密文intP=0;//明文RSA(){r=p*q;pq=
3、(p-1)*(q-1);while(true){if((e*d)%pq==(1%pq)){break;}d++;}System.out.println("r="+r);System.out.println("d="+d);System.out.println("(p-1)(q-1)="+pq);}publicintrsaJia(intP){C=(int)Math.pow(P,e)%r;returnC;}publicintrsaJie(intC){P=(int)Math.pow(C,d)%r;returnP;}}2、背包加密算法的实现:publicclassBeibaoTest{publ
4、icstaticvoidmain(Stringargs[])throwsException{Beibaobeibao=newBeibao();int[]m=newint[]{0,0,1,1,1};System.out.print("明文:");for(intb:m){System.out.print(b);}System.out.println();System.out.println("密文:"+beibao.jiami(m));System.out.print("加密后再解密的明文:");for(inta:beibao.jiemi(beibao.jiami(m))){System.
5、out.print(a);}}}classBeibao{int[]a=newint[]{3,6,10,22,44};int[]b;int[]bww;//b乘以ww,再求模intm=89;intw=67;intww=4;Beibao(){b=newint[a.length];bww=newint[a.length];for(inti=0;i6、b:b){System.out.print(bb+"");}System.out.println();}publicintjiami(int[]m)throwsException{intsum=0;if(m.length!=a.length){thrownewException("m和a的长度不一致!");}for(inti=0;i7、length-1;i>=1;i--){intsum=0;//for(intj=0;j0){x[0]=1;}else{x[0]=0;}returnx;}}3、指数加密算法的实现:importjava.math.BigInteger;publicclassZhishuTest{publicstaticvoi
6、b:b){System.out.print(bb+"");}System.out.println();}publicintjiami(int[]m)throwsException{intsum=0;if(m.length!=a.length){thrownewException("m和a的长度不一致!");}for(inti=0;i7、length-1;i>=1;i--){intsum=0;//for(intj=0;j0){x[0]=1;}else{x[0]=0;}returnx;}}3、指数加密算法的实现:importjava.math.BigInteger;publicclassZhishuTest{publicstaticvoi
7、length-1;i>=1;i--){intsum=0;//for(intj=0;j0){x[0]=1;}else{x[0]=0;}returnx;}}3、指数加密算法的实现:importjava.math.BigInteger;publicclassZhishuTest{publicstaticvoi
此文档下载收益归作者所有