版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/PerPLexlty/article/details/83349671
前言:做CTF难免会遇到各种奇葩的密码,今天就拿一道bugku中奇怪的密码来说说,对于初次见到这种题的人来说多少有些懵
1.呈上字符串"gndk€rlqhmtkwwp}z"
先不看后面的字符串,前四个“gndk”,脑洞越大越好,是不是像“flag”,那么怎么能把它转换成flag字样呢?凯撒密码?貌似不是,那就要想想是不是ascii。通过对照ascii表发现“g”与“f”差一位,“n”与“l”差两位,会不会是巧合,接着再比对就知道显然不是,以此类推,需要做到“g”对应的整数-1,“n”对应的整数-2,“d”对应的整数-3,…
2.写代码实现(python)
a = 'gndk€rlqhmtkwwp}z'
i = 0
flag = ''
while i < len(a):
num = ord(a[i])-(i+1)
flag+=chr(num)
i+=1
print(flag)
3.结果
去掉奇怪的部分即可