题目名称:奇怪的先生
题目描述:
描述:oss先生将三个培根的中间一只移到了左边,然后咬了一小口最后一根,说真好吃,真是个奇怪的先生!
密文:VlM5WnlXc0ZibEhmMmE1ZHYxMDlhVkdmMlk5WmtRPT0=
分析
应该是根据题目提示解出压缩包的密码,查看flag。
解题过程:
Step1:先进行Base64解密
第一次:
第二次:
分析
发现第二次解密失败,查看题目描述。三只培根,根据密码特征联想到栅栏密码。三个字符一组,最后剩两个等号,对应了咬了一小口。
继续根据描述将每一组的1,2个字符换位置。
Step2:按照描述的栅栏密码进行转换
s = 'VS9ZyWsFblHf2a5dv109aVGf2Y9ZkQ'
s = list(s)
temp = ''
for i in range(0, len(s), 3):
temp = s[i]
s[i] = s[i + 1]
s[i + 1] = temp
print(s)
s = ''.join(s)
print(s)
再次进行Base64解密,拿到了压缩包的密码
Step3:打开隐藏的文字
分析
观察这段字符中,有斜体(联想描述中的培根)。联想到培根密码:把斜体替换为B,非斜体替换为A。
培根密码
培根密码(Bacon’s Cipher)是一种替换密码,每个字母由5个这样的字符组成,形成一个二进制序列,其中每个字符代表一个二进制位。
Step4:将替换后的密码进行培根密码解密
相关资源
链接:https://pan.baidu.com/s/1Z44Xjbl0ML7Y6oVtTl5A8g
提取码:5674