RSA1 密码学writeup

RSA1

感受一下密码学对你的关爱

nc后得到

This is a RSA challenge Please input a number

随机输入数字发现仅1-10存在输出密文c,其余全部输出

0x0L

同时e=0x10001不变

还有一个每次都会新生成的n

由此得是已知e,n和密文c求明文m

使用factordb.com

对n进行因数分解得到p,q,计算出欧拉函数 φ (n)

再利用gmpy2库求d

import gmpy2

d = gmpy2.invert(e,(p-1)*(q-1))

计算出M值后转换为明文

from Crypto.Util.number import bytes_to_long, long_to_bytes

M=pow(c,d,n)

string = long_to_bytes(M) # m明文

从1到10每次输出4个字母,全部组合即为flag

posted @ 2020-12-28 13:29  fRozenW  阅读(624)  评论(0编辑  收藏  举报