草之王qsnctfwp

文件内容(举例):
林间小路旁有一条小溪
草之王许下三个诺言
无人知晓神诏背后的真相
草之王许下三个诺言
===
林间小路旁有一条小溪
草之王许下三个诺言
林间小路旁有一条小溪
无人知晓神诏背后的真相
===
林间小路旁有一条小溪
...

  1. 打开文件发现内容被 === 分成多个小节,说明每个小节代表一个字符
  2. 发现每个小节都由数字描述,故可以翻译成一串数字:1303、1310、……
  3. 发现所有数字均不大于 4,故猜测其为四进制数
  4. 四进制转其他进制链接
  5. 发现生成的十六进制数可以转换成字符,十六进制转字符串链接, 即可获得 flag

或在下载的文件目录下执行以下 Python 程序获得 flag:

file = open('txt', 'r', encoding='utf-8').readlines()
numbers = []
strings = ""
for line in file:
    if line == "无人知晓神诏背后的真相\n":
        strings += '0'
    elif line == "林间小路旁有一条小溪\n":
        strings += '1'
    elif line == "两个传说在此发源\n":
        strings += '2'
    elif line == "草之王许下三个诺言\n":
        strings += '3'
    elif line == "===\n":
        numbers.append(int(strings, 4))
        strings = ""
strings = ""
for number in numbers:
    strings += chr(number)
print(f"flag{'{'}{strings}{'}'}")

-End-

posted @ 2023-05-02 20:38  SRIGT  阅读(50)  评论(0编辑  收藏  举报