题目
附件
打开一看,有点蒙了,这还是我认识的rsa吗,只好上网瞟一下大佬wp,发现原来这个前两个是n,e,后面是拆分的c,滚动拼接flag,有点意思。
先分解一下n,然后再验证一下这个ROOL,素数分解网站
前四个果然是flag,用代码拼接一下flag并输出
import libnum
from Crypto.Util.number import long_to_bytes
list1=[704796792,
752211152,
274704164,
18414022,
368270835,
483295235,
263072905,
459788476,
483295235,
459788476,
663551792,
475206804,
459788476,
428313374,
475206804,
459788476,
425392137,
704796792,
458265677,
341524652,
483295235,
534149509,
425392137,
428313374,
425392137,
341524652,
458265677,
263072905,
483295235,
828509797,
341524652,
425392137,
475206804,
428313374,
483295235,
475206804,
459788476,
306220148]
flag=""
n=920139713
p=49891
q=18443
e=19
for i in list1:
c=i
d = libnum.invmod(e, (p - 1) * (q - 1))
m = pow(c, d, n)
string = long_to_bytes(m)
flag+=string.decode()
print(flag)
结果如下:
成功拿到flag!!!