攻防世界crypto高手题之Decrypt-the-Message

攻防世界crypto高手题之Decrypt-the-Message

继续开启全栈梦想之逆向之旅~
这题是攻防世界crypto高手题的Decrypt-the-Message
攻防世界crypto高手题之Decrypt-the-Message

下载附件,是个.txt文件,内容是诗歌,下面是一行四不像的英文,后来发现是加密后的密文:
攻防世界crypto高手题之Decrypt-the-Message
.
.
(这里积累第一个经验)
诗歌类的加密,一开始还以为是唐伯虎点秋香中句子开头组成实际内容,结果发现不是。查了查资料,是poem codes加密,下面给出别人梳理好的加密过程:

(内容地址出处)https://blog.csdn.net/weixin_45530599/article/details/108027293

① 给出一首诗歌
.
for my purpose holds to sail beyond the sunset, and the baths of all the western stars until I die.
.
② 给出5个关键单词。
.
“for”, “sail”, “all”, “stars”, “die.”
.
对其进行拆散:
.
f o r s a i l a l l s t a r s d i e
.
接下来按照 字母表顺序 进行编号,若遇相同字母,则继续 +1
.
攻防世界crypto高手题之Decrypt-the-Message
.
③ 将要传递的消息进行加密。
.
We have run out of cigars, situation desperate。
.
先对其进行编码。因为给出的5个关键词,其长度为18.所以以18为一组。
.
若一组长度不满18,则用abc(不要求有序)进行补充。
攻防世界crypto高手题之Decrypt-the-Message
.
将排好的消息,按照之前给出的诗歌字母编号写下密文。
.
for my purpose holds to sail beyond the sunset, and the baths of all the western stars until I die.
.
如, for --> eud tdk oek 那么得到的又可以按照5个(适当个数)为一组进行重新分组,得到最后密文。
.
.
我的看法:
其实排序逻辑挺常规的,就是诗歌 --> 关键词原文 --> 参照顺序排列密文 --> 按诗歌关键词对原文映射取值

.
.
然后,我也不知道诗歌中关键词在哪,而且题目诗歌内容也太长了,所以只能用github的脚本了:(单独赋值poemcode.py是会报错的,因为文件中有其他依靠)

git clone git://github.com/abpolym/crypto-tools

.
.
(这里积累第二个经验)
用法:(python2,ctfpoem是诗歌,ctfcip是加密密文)

python2 poemcode.py examples/2/ctfpoem  examples/2/ctfcip

.
.
结果,在众多输出中找到通顺的句子,其实后面我也不知道后面开头的单词合不合理,英语太菜了~(哭 ~)
攻防世界crypto高手题之Decrypt-the-Message
.
.
总结:

1:
(这里积累第一个经验) 诗歌类的加密,一开始还以为是唐伯虎点秋香中句子开头组成实际内容,结果发现不是。查了查资料,是poem codes加密,下面给出别人梳理好的加密过程:
① 给出一首诗歌
.
for my purpose holds to sail beyond the sunset, and the baths of all the western stars until I die.
.
② 给出5个关键单词。
.
“for”, “sail”, “all”, “stars”, “die.”
.
对其进行拆散:
.
f o r s a i l a l l s t a r s d i e
.
接下来按照 字母表顺序 进行编号,若遇相同字母,则继续 +1
.
攻防世界crypto高手题之Decrypt-the-Message
.
③ 将要传递的消息进行加密。
.
We have run out of cigars, situation desperate。
.
先对其进行编码。因为给出的5个关键词,其长度为18.所以以18为一组。
.
若一组长度不满18,则用abc(不要求有序)进行补充。
攻防世界crypto高手题之Decrypt-the-Message
.
将排好的消息,按照之前给出的诗歌字母编号写下密文。
.
for my purpose holds to sail beyond the sunset, and the baths of all the western stars until I die.
.
如, for --> eud tdk oek 那么得到的又可以按照5个(适当个数)为一组进行重新分组,得到最后密文。
.
.
我的看法:
其实排序逻辑挺常规的,就是诗歌 --> 关键词原文 --> 参照顺序排列密文 --> 按诗歌关键词对原文映射取值

2:
(这里积累第二个经验) 用法:(python2,ctfpoem是诗歌,ctfcip是加密密文)

python2 poemcode.py examples/2/ctfpoem examples/2/ctfcip

解毕!敬礼!

上一篇:基础知识


下一篇:Linux基本命令