第3题地址:https://fun.coolshell.cn/unix.html
今时今日,现在二维码已经随处可见,随便找个网站解析它。
得到以下内容,感觉就是一种字符映射。
[abcdefghijklmnopqrstuvwxyz] <=> [pvwdgazxubqfsnrhocitlkeymj]
随即再用JavaScript写了一个解码器。
var table = [];
var source = "pvwdgazxubqfsnrhocitlkeymj";
var target = "abcdefghijklmnopqrstuvwxyz";
for (var i = 0; i < source.length; ++i) {
table[source[i]] = target[i];
}
var code = 'Wxgcg txgcg ui p ixgff, txgcg ui p epm. I gyhgwt mrl lig txg ixgff wrsspnd tr irfkg txui hcrvfgs, nre, hfgpig tcm liunz txg crt13 ra "ixgff" tr gntgc ngyt fgkgf.';
var answer = "";
for (var i = 0; i < code.length; ++i) {
if (table[code[i]]) {
answer += table[code[i]];
} else {
answer += code[i];
}
}
console.log(answer);
翻译句子后得到内容。
Where there is a shell, there is a way. I expect you use the shell command to solve this problem, now, please try using the rot13 of "shell" to enter next level.
还要把shell用ROT-13加密一下。
var table = [];
var source = "abcdefghijklmnopqrstuvwxyz";
// ROT13替换密码
var target = "nopqrstuvwxyzabcdefghijklm";
for (var i = 0; i < source.length; ++i) {
table[source[i]] = target[i];
}
var code = 'shell';
var answer = "";
for (var i = 0; i < code.length; ++i) {
if (table[code[i]]) {
answer += table[code[i]];
} else {
answer += code[i];
}
}
console.log(answer);
输出furyy,第4题地址:https://fun.coolshell.cn/furyy.html
收获:知道了最简单的替换加密算法。