题目描述: 菜狗截获了一份报文如下c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2,生气地掀翻了桌子(╯°□°)╯︵ ┻━┻
?? 观察报文,都是数字和字母的组合,而且字母只有abcdef,猜测为基于16进制的编码,我们进行每两个为一对的组合,其十进制数的范围为0–255,由于我们熟悉且常用的ASCII编码在这个范围内,因此我们进行尝试
解法一:
code = "c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2"
flag = ""for i in range(0, len(code), 2):flag += chr(int(code[i : i + 2], 16) - 128)print(flag) ## Hi, FreshDog! The flag is: hjzcydjzbjdcjkzkcugisdchjyjsbdfr
得到flag{Hi, FreshDog! The flag is: hjzcydjzbjdcjkzkcugisdchjyjsbdfr}
解法二:
??我们用WinHex这一个工具来进行解答
打开WinHex随便创建一个大小的文件
将电文粘贴,选择ASCII Hex选项
然后会出现下面的情况
这是因为ASCII码的范围是0–127,因此我们要进行调整,快捷键Ctrl + T,选择十六进制,输入80
得到题解