这是攻防世界新手练习区的第八题,题目如下:
就给了一串16进制的字符串。哎,又是不懂,看了一下官方WP,说是将每两位16进制数转换为10进制,再减去128再转换为ASCII码。直接上脚本
str1 = 'c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2'
flag = ''
for i in range(0, len(str1), 2):
s = "0x" + str1[i] + str1[i+1]
flag += chr(int(s, 16) - 128)
print(flag)
运行结果如下:
flag如下:
flag{hjzcydjzbjdcjkzkcugisdchjyjsbdfr}
以上就是我对这道题的解法。因本人菜鸡一只,如果有什么不对的地方,实属正常。还请各位大佬予以指正,谢谢!