导航:首页 > 编程语言 > java凯撒加密

java凯撒加密

发布时间:2023-06-07 21:54:14

⑴ 请教啊!java加密算法!要求用户输入要加密的字符(英文字符其他的不考虑)题目如下:我主要问的是《加密

public class Swither {
public static void main(String[] args) {
System.out.println("ab,cdx;yz中国");
System.out.println(Encryption.encryption( "ab,cdx;yz中国"));
System.out.println(Decryption.decryption((Encryption.encryption( "ab,cdx;yz中国"))));
}
}
运行结果如下:
ab,cdx;yz中国
de,fga;bc中国
ab,cdx;yz中国

public class Encryption {

public static String encryption(String content)
{
if(content==null)
return null;
String temp="";
for(int i=0;i<content.length();i++)
{
char c=content.charAt(i);
//if(Character.isLetter(c))
if((c>='a' && c<='z')||(c>='A' && c<='Z'))
if(c=='x' || c=='y' || c=='z' || c=='X' || c=='Y' || c=='Z')
c=(char)(c-23);
else
c=(char)(c+3);
temp+=c;

}
return temp;
}

}

public class Decryption {

public static String decryption(String content)
{
if(content==null)
return null;
String temp="";
for(int i=0;i<content.length();i++)
{
char c=content.charAt(i);
//if(Character.isLetter(c))
if((c>='a' && c<='z')||(c>='A' && c<='Z'))
if(c=='a' || c=='b' || c=='c' || c=='A' || c=='B' || c=='C')
c=(char)(c+23);
else
c=(char)(c-3);
temp+=c;

}
return temp;
}

}

⑵ 用java 编写一个凯撒加密和解密

import java.util.Scanner;

public class Caeser {
private String table; // 定义密钥字母表
private int key; // 定义密钥key
public Caeser(String table, int key) {
// 根据不同的字母表和不同的密钥生成一个新的凯撒算法,达到通用的目的
super();
this.table = table;
this.key = key;
}
public String encrypt(String from) {
//凯撒加密算法,传入明文字符串,返回一个密文字符串
String to = "";
for (int i = 0; i < from.length(); i++) {
to += table.charAt((table.indexOf(from.charAt(i))+key)%table.length());
}
return to;
}

public static void main(String[] args) {
Caeser caeser = new Caeser("abcdefghijklmnopqrstuvwxyz", 3);
Scanner scanner = new Scanner(System.in);
System.out.println("请输入要加密的字符串");
String str =scanner.nextLine(); //输入字符串 security
String result = caeser.encrypt(str); //调用加密方法进行加密
System.out.print(result); // 可得结果 vhfxulwb
}
}

阅读全文

与java凯撒加密相关的资料

热点内容
拖拉式编程教学视频 浏览:793
服务器坏了硬盘数据如何取出 浏览:602
体积加密度等于质量吗 浏览:608
如何执行命令 浏览:859
速卖通指标源码 浏览:179
linux切换root登录 浏览:925
什么是有效的服务器地址 浏览:825
交通银行app如何信用卡额度查询 浏览:479
asp程序员收入 浏览:334
无线有密码显示未加密 浏览:212
检查服务器地址命令 浏览:599
编译过程和解释过程的图表形式 浏览:837
文明重启如何弄自己的服务器免费 浏览:912
服务器权限不足如何解决 浏览:373
少儿编程乐高主要是学什么 浏览:674
张家口人社app如何实名认证 浏览:296
淘宝图片怎么设置加密 浏览:314
pdf拼接器 浏览:786
只有程序员能看得懂 浏览:183
java打成jar包 浏览:214