跳转至

ZJUCTF 2024

约 313 个字 预计阅读时间 1 分钟

Abstract

浙江大学 2024 年信息安全校赛。

  • 比赛链接:ZJUCTF 2024 - ZJU::CTF
  • 比赛时间:2024 年 10 月 15 日 20:00 - 2024 年 10 月 22 日 20:00
  • 成绩:总分数 1435,总排名 33 / 377,浙江大学组内排名 20 / 185

Crypto

FIB 1

斐波那契数列矩阵性质应用。题目定义 \(\mathit{fib}(n, p) = (f_n, f_{n+1}) \pmod p\)

利用斐波那契数列的矩阵形式:

\[ \begin{pmatrix} f_{n-1} & f_n \\ f_n & f_{n+1} \end{pmatrix} = \begin{pmatrix} 0 & 1 \\ 1 & 1 \end{pmatrix}^n \]

Case 1

已知 \(\mathit{fib}(a, p)\)\(\mathit{fib}(b, p)\),求 \(\mathit{fib}(a+b, p)\)

利用矩阵乘法:

\[ \begin{pmatrix} f_{a+b} \\ f_{a+b+1} \end{pmatrix} = \begin{pmatrix} f_{b-1} & f_b \\ f_b & f_{b+1} \end{pmatrix} \begin{pmatrix} f_a \\ f_{a+1} \end{pmatrix} \]

Case 2

已知 \(\mathit{fib}(a, p)\)\(k\),求 \(\mathit{fib}(ka, p)\)

利用矩阵快速幂:

\[ \begin{pmatrix} f_{ka} \\ f_{ka+1} \end{pmatrix} = \begin{pmatrix} f_{a-1} & f_a \\ f_a & f_{a+1} \end{pmatrix}^{k-1} \begin{pmatrix} f_a \\ f_{a+1} \end{pmatrix} \]

Case 3

已知 \(\mathit{fib}(a, p)\)\(\mathit{fib}(a+c, p) = (0, 1)\),求 \(\mathit{fib}(c, p)\)

\[ \begin{pmatrix} 0 \\ 1 \end{pmatrix} = \begin{pmatrix} f_{a-1} & f_a \\ f_a & f_{a+1} \end{pmatrix} \begin{pmatrix} f_c \\ f_{c+1} \end{pmatrix} \]

左乘逆矩阵求解。行列式 \(\det = f_{a-1}f_{a+1} - f_a^2 = (-1)^a\)。由于 \(a\) 未知,需分类讨论行列式为 \(1\)\(-1\),爆破即可。

评论区