作者 by Yichen / 2023-08-11 / 暂无评论 / 27 个足迹

题目如图
png文件头:89504E47
png文件尾:AE426082

看一下头尾发现尾部有反转的504b0304字样,判断为zip压缩包,把他反转回来

发现被加密,但有提示:
这是一个数学家爱上公主的故事
这封情书,是写给K的赞美诗
那么K是谁呢?
搜索笛卡尔第13封情书知道密码为Kristina
这里可能解码不匹配,本来文本叫情书的。。。
将字符串base64解码发现是乱码,猜测凯撒,挨个试发现13位可以,想到题目名也算是提示吧。。。
得到:
0.795%2C2.355%2C3.925%2C5.495%3B0.785%2C2.351%2C1.57%2C4.71%3B0.785%2C2.355%2C3.93%2C2.966%2C0.174%3B5.23%2C4.19%3B1.047%2C2.093%2C2.966%2C0.174%2C5.408%2C4.012%3B0.785%2C5.495%2C0.087%2C3.200%2C2.442%2C3.838%3B0.785%2C2.355%2C3.925%2C5.495%3B0.349%2C5.582%2C1.570%2C3.838%2C2.791%20
这一堆,整理一下
0.795 2.355 3.925 5.495
0.785 2.351 1.57 4.71
0.785 2.355 3.93 2.966 0.174
5.23 4.19 1.047 2.093 2.966 0.174 5.408 4.012
0.785 5.495 0.087 3.200 2.442 3.838
0.785 2.355 3.925 5.495
0.349 5.582 1.570 3.838 2.791
猜测可能是几组坐标,但是这个数字看起来很奇怪,加了一下发现是Π的倍数,按照角度作图

就得到了flag
做图脚本
import math
import numpy as np
import matplotlib.pyplot as plt
sin=math.sin
cos=math.cos
pi = math.pi
x=[[0.795,2.355,3.925,5.495],
[0.785,2.351,1.57,4.71],
[0.785,2.355,3.93,2.966,0.174],
[5.23,4.19],
[1.047,2.093,2.966,0.174,5.408,4.012],
[0.785,5.495,0.087,3.200,2.442,3.838],
[0.785,2.355,3.925,5.495],
[0.349,5.582,1.570,3.838,2.791]]
y=[]
z=[]
for i in range(0,len(x)):
y.append([])
z.append([])
for j in range(len(x[i])):
ty =sin(x[i][j])
tz =cos(x[i][j])
y[i].append(ty)
z[i].append(tz)
plt.figure(figsize=(2, 2))
plt.plot(z[i],y[i])
plt.show()每个坐标以x中的一个数字的cos值为横轴,sin值为高,每个数组构成一张图。
独特见解