1.RSA
题目:
在一次RSA密钥对生成中,假设p=473398607161,q=4511491,e=17
求解出d作为flga提交
首先:
学习RSAtool2的使用:
1.
Number Base 设置为十进制
2.注意:Public Exponent这里要使用16进制的数,如果公钥e=17的话,就应该填入十六进制的11
3.给出p,q,e的话直接填入,再点击Calc.D,获得d
4.给出的是n和e的话,输入n和e,点击Factor N(分解),得到p,q,再重复第3步就能得到d了
解答:
注意e填进去是16进制,需要将17转hex得到11再填进去
2.rsarsa
题目:
|
解答:
类型:n+e+c+p+q= m
工具中的e65537要转成十六进制10001
然后再用python函数pow()即可求出flag
M = pow(C,d,n) #快速求幂取模运算
print(M)
直接脚本跑:使用n+e+c+p+q= m脚本
3.RSA1
题目:
|
解答:
https://blog.csdn.net/MikeCoke/article/details/105959599
类型:dp+dq+p+q+c = m 已知dp dq泄露
使用脚本dp+dq+p+q+c = m
hex to text转文本
noxCTF{W31c0m3_70_Ch1n470wn}
flag{W31c0m3_70_Ch1n470wn}
4.RSA3
题目:
|
解答:
类型:共模n攻击
使用脚本gongmo.py
5.RSA2
题目:
|
解答:
类型:dp+n+e+c = m dp泄露
RSA各题型脚本\dp+n+e+c = m
6.RSA
题目:
解答:
RSA
类型:n+e+c+p+q= m + 公钥提取
在线从rsa公钥中提取N和E
:
https://blog.csdn.net/weixin42135087/article/details/10544686
离线脚本:
7.RSAROLL
题目:
|
|
解答:
RSAROLL
类型:n+e+c+p+q= m + n分解
8.Dangerous RSA
题目:
|
解答:
类型:低加密指数攻击 e很小 n很大又不好分解
脚本:RSA各题型脚本\e=2-低加密指数攻击\低加密指数攻击.py
b’flag{25df8caf006ee5db94d48144c33b2c3b}’
9.[HDCTF2019]basic rsa
题目:
|
解答:
类型:n+e+c+p+q= m
注释中就是该脚本生成的c
使用脚本RSA各题型脚本\n+e+c+p+q= m
10.Rsa2
题目:
|
解答:
rsa2
类型:低解密指数攻击 e过大 n分解不出来 n+e=d.py
11.[BJDCTF 2nd]rsa0
题目:
解答:
rsa0
类型:根据等式 p、q\p+q p-q.py
12.RSA5
题目:
解答:
RSA5
类型:低加密指数广播攻击
加密指数e非常小
一份明文使用不同的模数n,相同的加密指数e进行多次加密
可以拿到每一份加密后的密文和对应的模数n、加密指数e
13.BabyRSA
题目:
解答:
BabyRSA
类型:根据等式 p+q (p+1)(q+1) d c.py
下面是查看这位博主的:
https://blog.csdn.net/MikeCoke/article/details/107206707
14.[NCTF2019]childRSA
题目:
|
类型:n+e+c+p+q= m + yafu-1.34_大数分解
解答:
解题思路:
1.py文件给了,n , c , e。为了求m 由算法pow(c,d,n),可知要先求出d来
由算法
gmpy2.invert(e,N) # N = (q-1)*(p-1)
可知我们要先求出p,q来,即分解n
用yafu进行素数分解,先把模n新建一个txt文件,文件末尾要进行换行
进入cmd,命令 cd Desktop 进入桌面
命令
yafu-x64 “factor(@)” -batchfile 1.txt 进行10进制大整数分解
当数比较小时 用命令 yafu-x64 factor(n)
15.[BJDCTF 2nd]rsa1
题目:
|
类型:根据等式 p+q (p+1)(q+1) d c.py
解答:
16.[HDCTF2019]bbbbbbrsa
题目:
|
|
类型:代码分析 + 已知pqnc 遍历e求明文 flag
解答:
1.第一张图给了 p,n,c,所以我们能够求出q
2.为了求出明文m ,我们先要求出d来
3.第二种图告诉我们 e 的范围在(50000,70000),我们可以对e进行遍历,爆破求出d
4. 对于每个符合条件的 e,都会得到一个与之对应的 m,我们知道 一般的 m中都会含有flag字符,所以用search()进行查找
|
flag{rs4_1s_s1mpl3!#}