题目链接:RSAROLL
题目描述:
data:
{920139713,19}
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
{920139713,19} 是公钥 {n,e}
先分解n,然后通过脚本得到flag
import gmpy2
p = 18443
q = 49891
e = 19
n = 920139713
d = gmpy2.invert(e,(p-1)*(q-1))
c = [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 = ''
for i in c:
x = pow(i,d,n)
flag += chr(x)
print(flag)
flag:flag{13212je2ue28fy71w8u87y31r78eu1e2}