例题
有手就行-2💁♀️
c = 34533624647193630459864898193867716746457242698156942414136896826169638045191
n = 38915622445322594788113853812230848083133274092845339659216148461050062802771
e = 65537
我们在这可以得到c,n,e的信息
可以发现n的值并不是很大,我们使用yafu分解n值
得到了q,p的值为
q = 210984885740565358250291732634631217851
p = 184447441856923584506972548629664462921
在通过RSA的解密算式解密就行了,我们只用通过p,q,求出ϕ(n)
通过ϕ(n)得到私钥d,解密一下就是m的内容了
from Crypto.Util.number import getPrime,bytes_to_long,long_to_bytes
import gmpy2
import libnum
import hashlib
q = 210984885740565358250291732634631217851
p = 184447441856923584506972548629664462921
c = 34533624647193630459864898193867716746457242698156942414136896826169638045191
n = 38915622445322594788113853812230848083133274092845339659216148461050062802771
e = 65537
n_ol = (p-1) * (q-1)
d = gmpy2.invert(e,n_ol)
m = gmpy2.powmod(c,d,n)
print(libnum.n2s(m))