攻防世界-OldDriver
一、题目
二、解题
1、观察特征:低指数,多密文
使用低指数广播攻击
2、中国剩余定理
剩余定理求解代码:
def crt(remainders, moduli):
"""
中国剩余定理实现
:param remainders: 余数列表 [r1, r2, ...]
:param moduli: 模数列表 [m1, m2, ...]
:return: 满足所有条件的最小非负整数解 x
"""
# 确保余数和模数数量一致
if len(remainders) != len(moduli):
raise ValueError("Remainders and moduli must have the same length.")
# 计算模数的乘积
M = reduce(lambda x, y: x * y, moduli)
# 计算解
x = 0
for r, m in zip(remainders, moduli):
Mi = M // m
# 求 Mi 关于模 m 的逆元
Mi_inv = pow(Mi, -1, m) # 使用 Python 3.8+ 的内置模逆函数
x += r * Mi * Mi_inv
return x % M
3、对求得的sol进行开10次方即可
三、答案
flag{wo0_th3_tr4in_i5_leav1ng_g3t_on_it}