2024-DKCTF-wp-crypto
2024-DKCTF-wp-crypto
很有意思。
Crypto_签到
简单lcg,换元解即可
1 |
|
只需要注意generate变换了两次,直接贴官方解吧。
1 |
|
Matrix_revenge
1 |
|
有限域下矩阵是否有类似欧拉定理的性质呢?
论文 https://www.gcsu.edu/sites/files/page-assets/node-808/attachments/pangia.pdf
我们发现当二阶方阵行列式不整除n时,在一般线性群下有阶
$$g=(p^2-1)(p^2-p)(q^2-1)(q^2-q)$$
其更一般的形式为
$$g=\prod_{k=0}^{s-1}(p^s-p^k)\cdot\prod_{k=0}^{s-1}(q^s-q^k).$$
简单推导
第一列向量可以是 $\mathbb{F}_q^n$中的任何非零向量,所以,第一列有$q^{n}-1$种选择。
第二列向量与第一列向量线性无关,第一列向量生成子空间中包含$q$个向量,所以第二列向量有$q^{n}-q$种选择。
同理,第三列向量有$q^{n}-q^{2}$种选择,第四列为$q^{n}-q^{3}$.
推广可得$$g=\prod_{k=0}^{s-1}(p^s-p^k)\cdot\prod_{k=0}^{s-1}(q^s-q^k).$$
这说明g为群中元素的数量,也就是群的阶
由拉格朗日定理我们知道子群的阶一定是群的阶的约数,所以元素阶整除群的阶,所以群中任意元素的g次幂必定为e。
(费马小定理就是拉格朗日定理在模p群下的表现)
所以同理于RSA我们同样可以在阶下找一个e的逆元d,用与RSA一样的方法来做matrixRSA。
其实这题在hnctf出过了,但是我没做,我就奇怪这题算是最复杂的了怎么会有这么多解
(那么当方阵行列式整除n时,是否有类似于amm的算法呢?)
(如果e很大,是否有类似于维纳攻击的方法呢?)
(亟待研究)
1 |
|
EzDES
懒得喷 做得最久的一题
1 |
|
1 |
|
MidRSA
非常简单的推导,新生赛题吧
1 |
|
我们知道$c_i\equiv m^{e_i}\quad\mathrm{mod~}n$
取两个不同的$c_i^{e_j}\equiv c_j^{e_i}\mod n$
$c_i^{e_j}-c_j^{e_i}=kn$
所以取两个ij gcd完就是n
得到n之后右移300位就是flag
根据裴蜀定理,一定存在$xe_1+ye_2=gcd(e_1,e_2)$
所以$$c_{1}^{x}\times c_{2}^{y}\equiv m^{e_{1}x+e_{2}y}\equiv m^{gcd(e_1,e_2)}\mod n$$
但是gcd(e1,e2) != 1
所以理论上还要再来一次,但是不知道为什么这里直接通了
1 |
|
Myencrypt
简单格密码 hgameweek4的水平
1 |
|
我们发现n可以直接写成r的式子
$$n=r^{13}-r^{12}-6r^{11}-r^{10}-12r^9+4r^8-27r^7+4634r^6-13970r^5-4670r^4-6r^3+4610r^2-4659r-27918$$
直接用sagemath的解方程得r
得P
然后这个格
已知低位
$$H_{n+1}*2^{16}+L_{n+1}\equiv a(H_{n}*2^{16}+L_{n})+b\mod p$$
$$H = 2^{16}$$
$$H_{n+1}*H+L_{n+1}\equiv a(H_{n}*H+L_{n})+b\mod p$$
$$H_{n+1}\equiv aH_n+(aL_n+b-L_{n+1})*H^{-1}\mod p$$
$$H_{2}\equiv aH_1+(aL_1+b-L_2)*H^{-1}\mod p$$
$$H_{3}\equiv aH_2+(aL_2+b-L_3)*H^{-1}\mod p$$
可以化简
$$A_{n} = a^{n}$$
$$B_{n} = a*B_{n-1}+(aL_{n-1}+b-L_n)*H^{-1}$$
直接构造 (其实跟那个HNP完全是一个思路 只是多了一个高位而已 由此看来 DKRCTF<Hgameweek3(确信
$$
\begin{pmatrix}
P &0 &\ldots &0 &0 &0\\
0 &P &\ldots &0 &0 &0\\
\vdots&\vdots&\ddots&\vdots&\vdots&\vdots\\
0&0&\ldots&P&0&0\\
A_1&A_2&\ldots&A_n&1&0\\
B_1&B_2&\ldots&B_n&0&\frac{P}{2^{n}}\\
\end{pmatrix}
$$
也就轻松拿下H1
也就拿下seed了
1 |
|