题目
密码:gndk€rlqhmtkwwp}z
提示:雷电
分析
其实是雷池加密,凯撒密码的一种变种,以ASCII码作为偏移量,每次执行偏移后的偏移量也会随之改变
一般来说密码应该是flag或bugku开头
如果是bugku的话,偏移量u没超过z的话,k也不会超过,除非是随机改变偏移量或使用密钥
所以先尝试flag
g-f=1
n-l=2
……
规律出来了,ASCII码每次加1
python:
#雷池密码(凯撒密码的变种,以ASCII码偏移
def leichi(string):
num=ord(string[0])-ord('f')
print(num)
for i in range(len(string)):
print(chr(ord(string[i])-num-i),end="")
#主函数
if __name__ == '__main__':
print("/*Begin*\\")
leichi("gndk€rlqhmtkwwp}z")
结果
flag₧lei_ci_jiami
第五个字符应该是{,末尾加}即可