关键词不能为空

当前您在: 主页 > 英语 >

网络安全常见的四种加密解密算法

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-13 15:37
tags:

-

2021年2月13日发(作者:wanna什么意思)


package mima;


import edReader;


import ption;


import treamReader;


import r;




public class Mainer {




































StringBuffer MStr = new StringBuffer(


//


加密字符串



StringBuffer CStr = new StringBuffer(


//


解密字符串




public static void main(String[] args) {




(


请 输入密钥:




Scanner s = new Scanner();






}


/**



*


加密



公式




*/



void E(int k) {



try {



n(


请输入一段明文:





char b[];




BufferedReader br2 = new BufferedReader(new InputStreamReader());




String str2 = ne();




b = Array();




char ch = ' ';




for (int i = 0; i < (); i++) {





if (b[i] >= 'a' && b[i] <= 'z') {






ch = (char) ((b[i] - 'a' + k) % 26 + 'a');





}





if(b[i] >= 'A' && b[i] <= 'Z'){






ch = (char) ((b[i] - 'A' + k) % 26 + 'A');





}





if(b[i]>='0'&&b[i]<='9')


int key = t() % 26; // %26


的意义是获取密钥的偏移值



Mainer ks = new Mainer();


ks.E(key); //


加密



ks.D(key);


/


/


解密









































































}


{


if(b[i]+k%10<='9')


{



ch=(char)(b[i]+k%10);//


当提取的字符在


9


之前的


n


位时



}


else


{ch=(char)('0'+((b[i]-( '9'-k)-1)%10));//


孤立出来的


n

< p>
个字符



}


ch=b[i];}


(ch);


//


拼接字符串





n(


密文为:





密匙为:




} catch (IOException e) {




n(sage());



}


}



/**



*


解密



公式




*/


void D(int k) {



try {




char b[];




b = ng().toCharArray();




char ch =' ';




for (int i = 0; i < (); i++) {





if (b[i] >= 'a' && b[i] <= 'z') {






ch = (char) ((b[i] - 'a' + 26 - k) % 26 + 'a');





}





if(b[i] >= 'A' && b[i] <= 'Z'){






ch = (char) ((b[i] - 'A' + 26 - k) % 26 + 'A');





}





if(b[i]>='0'&&b[i]<='9'){





if(b[i]-k%10>=' 0')//


当提取的字符在


0


之前的< /p>


n


个时






{



ch=(char)(b[i]-k%10);}





else{





ch= (char)('9'-((b[i]-(k-'0')-1)%10));//


操作孤 立出来的


n


个字符






}






ch=b[i];}





(ch);


//


拼接字符串





}




n(


明文:







}





}


} catch (Exception e) {



n(sage());


}




public static void main(String[] args) {




(


移位加密;


2


移位解 密





Scanner result = new Scanner();




int r=t();



















}


(


请输 入密钥:



Scanner s = new Scanner();


int key = t() % 26; // %26


的意义是获取密钥的偏移值



yiwei ks = new yiwei();


if(r==1){ks.E(key);}//


加密



else if(r==2)


{ks.D(key);}


//


解密



else (

< br>请选择正确选项(


1



2




移位:



package mima;


import edReader;


import ption;


import treamReader;


import r;




public class Mainer {









































StringBuffer MStr = new StringBuffer(


StringBuffer CStr = new StringBuffer(



public static void main(String[] args) {









}


/**



*


加密



公式




*/



void E(int k) {



try {








































n(


请输入一段明文:


char b[];


BufferedReader br2 = new BufferedReader(new InputStreamReader());


String str2 = ne();


b = Array();


char ch = ' ';


for (int i = 0; i < (); i++) {



if (b[i] >= 'a' && b[i] <= 'z') {




ch = (char) ((b[i] - 'a' + k) % 26 + 'a');



}



if(b[i] >= 'A' && b[i] <= 'Z'){




ch = (char) ((b[i] - 'A' + k) % 26 + 'A');



}



if(b[i]>='0'&&b[i]<='9')



{



if(b[i]+k%10<='9')



{




ch =(char)(b[i]+k%10);//


当提取的字符在


9


之前的


n


位时




}


(


请输入密钥:



Scanner s = new Scanner();


int key = t() % 26; // %26


的意义是获取密钥的偏移值



Mainer ks = new Mainer();


ks.E(key); //


加密



ks.D(key);


/


/


解密



//


加密字符串



//


解密字符串











































}
















}


else


{ch=(char)('0'+((b[i]-( '9'-k)-1)%10));//


孤立出来的


n

< p>
个字符



}}


(ch);


//


拼接字符串





n(


密文为:





密匙为:




} catch (IOException e) {




n(sage());



}


}



/**



*


解密



公式




*/


void D(int k) {



try {




char b[];




b = ng().toCharArray();




char ch =' ';




for (int i = 0; i < (); i++) {





if (b[i] >= 'a' && b[i] <= 'z') {






ch = (char) ((b[i] - 'a' + 26 - k) % 26 + 'a');





}





if(b[i] >= 'A' && b[i] <= 'Z'){






ch = (char) ((b[i] - 'A' + 26 - k) % 26 + 'A');





}





if(b[i]>='0'&&b[i]<='9'){





if(b[i]-k%10>=' 0')//


当提取的字符在


0


之前的< /p>


n


个时






{



ch=(char)(b[i]-k%10);}





else{





ch= (char)('9'-((b[i]-(k-'0')-1)%10));//


操作孤 立出来的


n


个字符






}}













}




(ch);


//


拼接字符串




}



n(


明文:



} catch (Exception e) {



n(sage());


}



vigenere


package mima;



import r;



public class vigenere {





public static void main(String[] args) {




// TODO Auto-generated method stub




@SuppressWarnings(




Scanner input = new Scanner();




n(


输入明文,要求用小写字母,不要打空格





String s = ne();//


输入明文,要求用小写字母,不要打空格





n(


输入 秘钥,要求用小写字母,不要打空格





String s2 = ne();//


输入秘钥,要求用小写字母,不要打空格





String s3 = encrypt(s, s2);//


使用加密算法,得到密文





n(s3);

















}


String s4=deciphering(s3,s2);//

< br>使用解密算法,实现解密



n(s4);


public static String encrypt(String s1, String s2) {



char[] ch1 = Array();



int length = //


明文长度




int[] in1 = new int[length];



for (int i = 0; i < i++) {







in1[i] = ch1[i] - 97;//


利用


ascii


变成


0-25


数字



}


char[] ch2 = Array();


int length2 = //


明文长度


-


-


-


-


-


-


-


-



本文更新与2021-02-13 15:37,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/651029.html

网络安全常见的四种加密解密算法的相关文章