WP-Crypto-shanghai-维吉尼亚密码
题目考点
- 维吉利亚密码
解题思路
题目描述:
下载附件解压打开后获得一个.txt文件:
大致浏览了一下,在文章接近末尾处存在文本 '{' vvj 'zvkvrmtudabiecveaaxpp' grq '}' ,那么很可能这个就是flag。
然后第一行"bju lcogx fisep vjf pyztj sdgh 13 gifc qsxw. pkiowxc"中的“13”引起了我的注意,由于题目描述为“shanghai”,于是我在搜索引擎中搜索“上海 13”。搜索结果第一条为“上海地铁13号线(Shanghai Metro Line 13)”,其单词长度刚好与密文符合,于是我第一直觉是字母替换的单表替换密码。(啪的一下很快啊)打开quipqiup古典密码自动化爆破(词频分析),输入“sdgh=line”,但并没有给出语句通顺的结果。
看来不是词频分析,那还能是什么呢???于是开始百度关于文本的加密,在看了孳竹大佬写的总结博客后,其中的“维吉尼亚密码”引起了我的注意。所谓维吉尼亚密码就是在维吉尼亚密码表中,上边栏为明文,左边栏为密钥,交叉处为密文。如明文为“V“,密钥为”E”,那么密文就是“Z”(下图来自维吉尼亚加密/解密 - Bugku CTF)。特别的,如果密钥为多个字母,则在加密时一直重复即可。如明文为13位字母,密钥为“CTF”,则加密过程中的密钥选取为“CTFCTFCTFCTFC”。维吉尼亚密码的解密过程同理。
在清楚它为维吉尼亚加密后,想要解密则需猜测出它的密钥。由上可知“fisep vjf pyztj sdgh”可能对应“shang hai metro line”
密文:fisep vjf pyztj sdgh
密钥:nbsrj ojx dugcv hvtd
明文:shang hai metro line
但是当我推出“密钥”的那一刻我是懵的???这么多位了怎么密钥还没有重复???难道我又错了?于是我将目光转向了这一行
kxccxfkzcfcqi wymui zwbz cyiq ej e kcbxcregmfr ikt wg zlr wnmau qmue frxnimp 1914 qil 1940.
“frxnimp 1914 qil 1940”很像“between 1914 and 1940”,于是我又试着推了一下秘钥,这次得到了“enereic qvi”没错,它竟然还没有重复...(不过这次的单词数比上回少,不会重复挺正常),抱着最后一丝希望我对文本做了一下词频统计(结果如下),其中“glv”是出现频次最高的的组合,可以猜测它其实是“the”,那么对应密匙应该是“ner”!它竟然和“enereic qvi”重复了!!!
在盯着文本发呆了好一会之后,我看到了这个:"ma xyi 19bj szvzyec","kd opk 16xu gvrbwht"或许他们是“on/in the ??th century”?
orwquad mtxvvvpg dhjsk xui tmxjum ith cyspquxzl zlr xvgppylck ma xyi 19bj szvzyec, syb glzv keepziz, uehm yovpcil ehtxzeaeccavi xwapq stgiuyjvgpyc svmca opk gvtyiz kd opk 16xu gvrbwht.
由于前面的介词不定我去除了前两位,然后得到了“er eic qvigene”,“vig en ereicqv”
那么基本可以确定密匙的字母组成应该为“enereicqvig”,再考虑到这是维吉利亚密码,维吉利亚英文为(vigenère),那么很可能密匙字母顺序就是“vigenereicq”
将密文和密匙输入Bugku CTF的维吉尼亚加密/解密在线工具后,终于得到了flag:
FLAG
flag{vigenereisveryeasyhuh}
作者:ta0tie(转载请注明作者与来源)
欢迎大家批评指正
话说这道题明明和维吉尼亚有关它为什么叫shanghai???(╰(‵□′)╯︵┻━┻)