一、看我回旋踢
拿到题目得到这么一个东西
synt{5pq1004q-86n5-46q8-o720-oro5on0417r1}
观察“synt”这个东西,认为是凯撒密码
尝试了一下,更加肯定了这个想法,毕竟这是一道简单题。Crypto会有什么坏心思呢?
然而这并不正确。
百度到“synt”和“rot-13”有关系
使用http://www.rot13.de/index.php
解得flag为:
flag{5cd1004d-86a5-46d8-b720-beb5ba0417e1}
二、变异凯撒
拿到题目以为是维吉尼亚密码,但是并没有给出密钥。
所以抱着试试的心态尝试来暴力破解一下
得到的这个东西看上去没什么规律。一提交,果然错了。
既然题目说的很清楚,那么这个题还是逃不过凯撒密码。
一起来复习一下凯撒密码:
明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。
那么这个题目中有下划线,那么肯定不能是根据字母表来转换的。
所以尝试通过ASCII表来试一试。
题目给了提示格式是"flag{}"。那么"afZ_"和"flag"之间必然有某种转换关系。
列出ASCII的转换关系
密文 |
明文 |
偏移量 |
a(97) |
f(102) |
+5 |
f(102) |
l(108) |
+6 |
Z(90) |
a(97) |
+7 |
_(95) |
g(103) |
+8 |
由此推断出密码与明文之间的偏移量是逐位加一的
生产python脚本
Crypto = 'afZ_r9VYfScOeO_UL^RWUc' j = 5 for i in Crypto: print( chr(ord(i) + j) , end = "")
运行得到flag
flag{Caesar_variation}
三、Quoted-printable
题目到手是一串带等号的十六位进制字符
=E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6
尝试删掉等号再进行字符串转换,结果得到了一串乱码。
遂大失所望。
百度Quoted-printable
发现这是一种编码方式
于是利用在线工具进行解码
那你也很棒棒哦
中文flagflag{那你也很棒棒哦}
若有收获,就点个赞吧