

看着像rsa

分解n :103461035900816914121390101299049044413950405173712170434161686539878160984549 = p*q = 282164587459512124844245113950593348271 * 366669102002966856876605669837014229419
以为这个函数是加密函数


最后发现其实是十进制转十六进制的算法。。。。
# encoding=utf-8
import gmpy2
# gmpy2报错没事。。。
c = int('ad939ff59f6e70bcbfad406f2494993757eee98b91bc244184a377520d06fc35', 16)
n = 103461035900816914121390101299049044413950405173712170434161686539878160984549
e = 65537
p = 282164587459512124844245113950593348271
q = 366669102002966856876605669837014229419
phi = (p - 1) * (q - 1)
d = gmpy2.invert(e, phi)
m = pow(c, d, n)
flag = hex(m)[2:]
flag = flag.decode("hex")
print(flag)
#suctf{Pwn_@_hundred_years}