这题也是一道分析ASCII码的题
总结一下经验,对于一些看到能认出来的编码直接就进行相应的解密即可
对于一些编码如果没有见过,然后优先尝试古典密码,如果是英文字符,优先比对ASCII码
即将题目字符的ASCII码全部转换出来,然后与固定格式例如flag{}进行对应位置比对,一般就能发现猫腻
例如此题
拿到题目后不知所措,没有一点思路,那就转换成ASCII码看看有没有切入点
转换成ASCII码的python代码
str="gndk€rlqhmtkwwp}z"
str2="flag{}"
for i in str:
print(ord(i),end=' ')
print()
for i in str2:
print(ord(i),end=' ')
print()
转换之后我们再和flag{}的ASCII码进行比对
我们发现flag和gndk相差的ASCII码依次减一
我们就按照这个规律进行尝试
代码如下:
str="gndk€rlqhmtkwwp}z"
num=1
for i in str:
print(chr(ord(i)-num),end='')
num+=1
运行结果发现是可读字符串
补全flag{}提交正确。
|