JAVA利用”异或”运算的性质,对几个字符进行加密并输出密文,然后再解密。加密算法是:密钥是字符’8’,明文的每个字符和密钥进行异或运算,得到密文。密钥和密文的每个字符再次进行异或运算,重新得到明文
时间: 2024-01-21 11:16:23 浏览: 123
以下是JAVA代码实现:
```java
import java.util.Scanner;
public class XOREncryption {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要加密的明文:");
String plainText = sc.nextLine();
// 加密
String cipherText = "";
for (int i = 0; i < plainText.length(); i++) {
char c = plainText.charAt(i);
char key = '8';
char encryptedChar = (char) (c ^ key);
cipherText += encryptedChar;
}
System.out.println("加密后的密文为:" + cipherText);
// 解密
String decryptedText = "";
for (int i = 0; i < cipherText.length(); i++) {
char c = cipherText.charAt(i);
char key = '8';
char decryptedChar = (char) (c ^ key);
decryptedText += decryptedChar;
}
System.out.println("解密后的明文为:" + decryptedText);
}
}
```
运行程序后,输入要加密的明文,程序会输出加密后的密文和解密后的明文。
例如,输入明文为"hello world",程序输出:
```
请输入要加密的明文:
hello world
加密后的密文为:^_YYW_Y^Y_`Y
解密后的明文为:hello world
```
阅读全文