【发布时间】:2018-11-29 15:16:23
【问题描述】:
我正在尝试破译 Vigenere_Cipher
当我输入BEXR TKGKTRQFARI 时,输出为JAVAPROGRAMMING 但我想要
像JAVA PROGRAMMING这样放置空间。
我的代码
public static String VigenereDecipher(String text) {
String keyword = "SECRET";
String decipheredText = "";
text = text.toUpperCase();
for (int i = 0, j = 0; i < text.length(); i++) {
char c = text.charAt(i);
if (c < 'A' || c > 'Z') continue;
decipheredText += (char)((c - keyword.charAt(j) + 26) % 26 + 'A');
j = ++j % keyword.length();
}
return decipheredText;
}
【问题讨论】:
-
当我输入
BEXR TKGKTRQFARI时,我得到TI ZIXDYOVIUYSVK- 当我输入JAVA PROGRAMMING时,我得到BEXR TKGKTRQFARI- 所以这里的示例有些问题。 -
对不起,这是加密的,我编辑它。
-
这种密文会泄露明文的信息。
标签: java encryption vigenere