关于这个问题:ROT-13 function in java?
在java中解码rot13的代码是什么? 我只是简单地扭转迹象吗?
下面是将String编码为rot13:
的代码public class Rot13 {
public static void main(String[] args) {
String s = args[0];
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c >= 'a' && c <= 'm') c += 13;
else if (c >= 'A' && c <= 'M') c += 13;
else if (c >= 'n' && c <= 'z') c -= 13;
else if (c >= 'N' && c <= 'Z') c -= 13;
System.out.print(c);
}
System.out.println();
}
}
答案 0 :(得分:8)
你没有扭转迹象。解码方法与编码方法相同。
例如:'a'被编码为'n'。如果你“编码”'n',它将被解码回'a'。
答案 1 :(得分:0)
因为基本拉丁字母中有26个字母(2×13),所以ROT13是它自己的反转;也就是说,要撤消ROT13,应用相同的算法,因此可以使用相同的动作进行编码和解码。该算法几乎不提供加密安全性,并且通常被引用为弱加密的典型示例
wikipedia文章很好地解释了