Java逆向解密
步骤:
根据题目提示是java语言编写的程序,用jd-gui反编译一下
百度了一些java里的函数后读懂了这段程序的意思,将我们输入的字符串依次+‘@’,然后跟32异或,得到KEY数组里的值
知道了算法写解密exp
key=[180, 136, 137, 147, 191, 137, 147, 191, 148, 136, 133, 191, 134, 140, 129, 135, 191, 65]
flag=""
for i in range(len(key)):
flag+=chr((key[i]^32)-ord('@'))
print ('flag{'+flag+'}')
代码很简单,只要注意一下运算符的优先级即可