入门"/>
buu RSA入门
题目:在一次RSA密钥对生成中,假设p=473398607161,q=4511491,e=17
求解出d作为flag提交
首先,审计题目,已知p,q,e要让我们求解d,那么我们首先必须求出phi-n=(p-1)*(q-1)
然后求解e关于phi-n的逆向;有两种方法,如下;
一、使用工具:RAS-Tool 2 by te!
需要注意的是在 public Exponent中需要将17改为11(由于输入的为16进制数)、其次需要选择number base(数的进制)
二、python编程
在此,发现一个求解rsa很好用的库——gmpy2
了解:gmpy2 可去如下网站学习gmpy2的基本用法,(2条消息) Python3中gmpy2常用的函数及功能_Cony_14的博客-CSDN博客_gmpy2 invert函数
import gmpy2
p=473398607161
q=4511491
e=17
n=(p-1)*(q-1)
d = gmpy2.invert(e,n)
print(d)
于是,可以求解flag。
更多推荐
buu RSA入门
发布评论