攻防世界——Normal_RSA 【攻防世界——Normal_RSA】工具:qpenssl
文件:flag.enc,应该是密文。pubkey.pem,是公钥。
文章图片
1、打开后,拿到两个文件。enc文件和pem文件。pem文件需要用openssl打开。enc文件在哦脚本中打开
(如果是kali系统,直接用openssl解密enc文件即可,这里不做详细阐述)
2、先下载openssl,之后打开openssl-bin-openssl.exe,在命令框输入
rsa -pubin -text -modulus -in pubkey.pem
文章图片
Modulus代表的是N,E开头的代表e。
得到N后,先由16进制转为10进制,再进行整数分解。(转为十进制要用脚本,因为位数太多,一般的在线转换无法进行)
文章图片
由此得到p,q.
3、在rsa解密脚本中打开文件,跑一遍脚本。
文章图片
文章图片
发现报错,应该是打开文件时出了问题,提示在61的位置是错误的16进制。但看到输出的16进制明文后,发现7b,是‘{’的十六进制。探索后发现去掉前面的几位,从5043开始便是flag.
文章图片
推荐阅读
- 攻防世界——easychallenge
- 题解——冒泡+二分查找
- 题解——出栈序列统计
- POJ2773Happy2006题解--数论好题
- P5709 深基2.习6Apples Prologue 题解
- FZOJ4167 The Happy Prince and Other Tales 题解
- POJ3321 Apple Tree 题解
- ARC 100 C - Linear Approximation题解---三分法