WUSTCTF2020 babyrsa

1. 题目给了:

c = 28767758880940662779934612526152562406674613203406706867456395986985664083182
n = 73069886771625642807435783661014062604264768481735145873508846925735521695159
e = 65537

2. 直接利用http://www.factordb.com/index.php分解n,得到

p = 189239861511125143212536989589123569301
q = 386123125371923651191219869811293586459

3. 利用sage求e的乘法逆元d。

d = inverse_mod(e, (p-1)*(q-1))

得到:

d=30854876581442056228588093398155288897790570329196285069001545119486056472273

4. 有m=cd mod n ,则在sage中利用以下函数求得m

m=power_mod(c,d,n)

m=823989108254974202105161758566497786100048618619858843500160755662795645

5. 利用Python求出flag

1 from Crypto.Util.number import long_to_bytes
2 m = 823989108254974202105161758566497786100048618619858843500160755662795645
3 print(long_to_bytes(m))

wctf2020{just_@_piece_0f_cak3}

原文地址:https://www.cnblogs.com/vict0r/p/13307929.html