package com.security;
public class Caesar {
/**
* @param args
* 凯撒加密算法,将字母移动一定的位置实现加密,属于对称加密,加密解密的密钥是一样的
* 加密命令: java Caesar 明文 key
* 解密命令: java Caesar 密文 -key
*
* */
public static void main(String[] args) {
String str = args[0];
System.out.println(str);
int key = Integer.parseInt(args[1]);
String es = "";
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c >= 'a' && c <= 'z') {
c += key % 26;
if (c < 'a')
c += 26;
if (c > 'z')
c -= 26;
} else if (c >= 'A' && c <= 'Z') {
c += key % 26;
if (c < 'A')
c += 26;
if (c > 'Z')
c -= 26;
}
es += c;
}
System.out.println(es);
}
}
凯撒加密解密
最新推荐文章于 2021-05-17 08:47:59 发布