buu [AFCTF2018]One Secret, Two encryption
题目:
flag_encry1:
螲繓r??28爔#_f鑑V枫戟>?靆鰵?崃mk?k稽jRL@f_離峹??$?"鰌'曣誨?磈j鵾 挬"^>a4?缆鰿t?檣駼'?铯鮗籊邆w咗?玈獥鉹谸?饏s}?U4z?澴?F牶劰BS?,衃F=nP?
譅Q%(?y価?簃覮=€w]mWg嗧糢?]b?S菾?跹瑂a.鞸寖娿饟~'uN?D7
5斨C?Au>羋T??y(DM
flag_encry2:
?繨楺o偈?n(汏E*A聦t??`N`搯痲>0gh茅翭V筇旎畨 ?雧翍Om袥bZ?4鶒懍
x趽巂\紧Z€_┅颌J魓?汕苤t4q??aR幚鯞腻s'仩愓楫? sZ酨A咓蝘玧?留S?瓘顂eJv$洶[ yD噓蟟K棠嶅э毽 頶??e姲H屁3倔擿In6?弈Z跟誺F蠎 @偖??~v圣V??@`3扲瑭ir^?嘭l舑-繇?
public1:
-----BEGIN PUBLIC KEY-----
MIICIDANBgkqhkiG9w0BAQEFAAOCAg0AMIICCAKCAQAma/gXML+bivU20mJu55PZ
SjNAE6S0PQ2WV5sYIA7ZLbJ6lshW8cfohErN0TUIv+6O+hXSMFd4wrv27+f6akPE
qeNL6LWjKqcnC9I03vbyYDZuLkfeoPwM9UHIuRUfU/l/LDOCkjkOkHN5SMufg66y
OGc4wLDi9f8sET4QMerAVF/HZ7acpYYCu8QoWnOSy9KiVzKQMzKkaL+WcN2sbLsA
61zjixv7ybMHDmcyMKHb5VbfPsqMW19roYLV5luY3SlrhTogmyGg19Q3k7hYW3ca
Jc7WLEbPD/OnlHMDLArNUYMyB9t0CdLNZZCHE6pbiMaNGS+rwGcqxHbWCpGCS0vZ
AoIBAA0zxRVob0N2SXRSPv7GRHMzj/mpACiz3VrKtwKgm+MM1UrnvbtCpPcqjqw6
4w7HJqf6O/ccA7l0qY35jbvhOLD2II6rf8USZwkm27ygOuHA3SRS9XZyzpshUmRO
YyJtogGntK4R9R7wfW1HHJbIj5R3/HV/gYdT9XxKq7yICxFSVv3u1lgVBjNeUzTn
5MzOlX9tCEjcS54eq9OCGLEIetj24xTfsruKf/DDGNTRA1et8fU4H49NMsqqHL1R
ZdKvy1SEBWoOrj/XQycz0Dsyre0jcaDWnaywlulHGrPKXYc6ePAJ9S7IMOTKblCf
FU9nj28KAsm/RBAV3PEMkJ3edPM=
-----END PUBLIC KEY-----
public2:
-----BEGIN PUBLIC KEY-----
MIIBITANBgkqhkiG9w0BAQEFAAOCAQ4AMIIBCQKCAQASwScpBgKVbfU6JjRoIA9v
JkVCapA5hkllstoPZhO6T1mQZK5DSD+ggwMXu/Ivfa3qKsnQ9zFrvIULjWk52+/+
q1sckgVNXKE9K8RREuj0ChN1Qzx24dpmtz60ObxxQESRkSpLD8wvDTurAd1rolaK
qqS2uXxv9CzbrMzSZOD1UDEmKa/JSXy3YvQ67S4c3NOQVgwHcAmQuqWZTmVuFxsb
l1hwmWSPMgTcNkFpMcjeCx0+DuuN/lTqQWFygJGBRnAvLwSpXUuq747FQiilca5P
+7fiz2Tb2OEn2/WE41vjqMVHUjGxY+RseDpND71FOvkGl8ixWEq8ebflkadtVcK1
AgMBAAE=
-----END PUBLIC KEY-----
首先,我们审计题目,可以发现题目给了我们两组不同的c值,在打开c的文件后,c是不可见的,需要我们去对他进行解码,ne就是典型的公匙提取:
一、提取出我们所需的c
with open('flag_encry1','br')as f:f1=f.read()c1=bytes_to_long(f1)with open('flag_encry2','br')as f:f1=f.read()c2=bytes_to_long(f1)
二、提取公匙:
n,e=[],[]
for i in range(1,3):with open('public'+str(i)+'.pub','rb')as f:key = RSA.importKey(f.read())e.append(key.e)n.append(key.n)
三、找到两组题目给我们的数据后,下一步就是找出p,q值:
1、我们可以发现n1和n2有最大公约数
2、对n的取值查看其安全性,尝试分解
1
n1=n[0]
n2=n[1]
e1=e[0]
e2=e[1]p=gmpy2.gcd(n1,n2)
q=n2//p
phi=(p-1)*(q-1)
d=gmpy2.invert(e2,phi)
print(long_to_bytes(gmpy2.powmod(c2,d,n2)))
2
进行与上一个相似的操作即可;
得到:
OpenSSL is widely used\r\nflag is afctf{You_Know_0p3u55I}'
buu [AFCTF2018]One Secret, Two encryption相关推荐
- [AFCTF2018]One Secret, Two encryption(考点:公钥解析,gcd())
flag_encry1文件 螲繓r??28爔#_f鑑V枫戟>?靆鰵?崃mk?k稽jRL@f_離峹??$?"鰌'曣誨?磈j鵾挬"^>a4?缆鰿t?檣駼'?铯鮗籊邆w咗? ...
- buu [AFCTF2018]Morse
查看题目 很明显的一个摩斯密码,摩斯密码在线解密. 得到这些东西,我是先提交了一下发现错误 然后直接根据 十六进制转换文本 得到afctf{1s't_s0_345y} 题目上说的很明白要flag{}提 ...
- 2021-07-24
[AFCTF2018]One Secret, Two encryption 一份秘密发送给两个人不太好吧,那我各自加密一次好啦~~~ 素数生成好慢呀 偷个懒也--不会有问题的吧? public1.pu ...
- BUUCTF 打卡8
1.[AFCTF2018]One Secret, Two encryption 题目的意思是将一个明文进行两种不同的加密过程,生成两种不同的密文,所以我们只要求解其中一个即可. 先进行公钥解析求出两次 ...
- BMZCTF-crypto- writeup
BMZCTF -crypto- writeup 目录 BMZCTF -crypto- writeup Sudoku&Viginere Ook 栅栏密码 4进制 2018 AFCTF Morse ...
- postfix 554-5.7.0 Reject
主题: DELIVERY FAILURE: 554-5.7.0 Reject, id=01110-20 - BANNED:554 5.7.0 .exe,.exe-ms,GIS_V2.10.EXE 重要 ...
- C#的简单不安全双向“混淆”
我正在为某些数据寻找非常简单的混淆(如加密和解密但不一定是安全的)功能. 这不是关键任务. 我需要一些东西来保持诚实的人诚实,但比ROT13或Base64强一点. 我更喜欢已经包含在.NET fram ...
- RSA算法和RSA数字签名算法的实现
RSA算法和RSA数字签名算法的实现 http://blog.chinaunix.net/uid-21880738-id-1813146.html 顾婷婷 李涛 (四川大学计算机系(西区) 成都 61 ...
- Windows 2000 单词表
A A (address) resource record / A(地址)资源记录 AAL, ATM adaptation layer / ATM 适配层 ABR, area border route ...
最新文章
- HDU 1856 More is better【并查集】
- Knockout 监控数组对象属性
- Spring高级程序设计(Spring框架创始人倾情推荐的权威开发指南)
- Android 源码解析之AsyncTask
- nagios学习笔记(一)
- Java培训分享5个常用Java代码混淆器
- Java实现多线程售票
- FreeMarker笔记 第二章 数值和类型
- 脱欧临近引民众忧心食品短缺 英“脱欧生存包”热卖
- Oracle大神资料索引
- 小程序轮播图测试用例
- 形象易懂的傅里叶变换、短时傅里叶变换和小波变换
- 服务企业互联网化 打造社会化商业平台
- unity模型制作规范
- 苹果用Android发文,安卓和苹果怎么传文件 安卓和苹果传文件详细教程
- python控制示波器获取波形_三种方法教你用示波器快速捕获异常
- 定位服务器的功能是提供用户位置信息和什么,LBS是什么意思 LBS的现有模式和功能介绍...
- A nice speech——王强 at 36 Kr
- 眼球中心定位跟踪算法—eyelike
- postgresql大版本升级
热门文章
- 小米AI魔法分身解密(二)
- 高通平台8953 Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇)
- 多分类TPR, FPR, ROC计算与画图
- 关于历史电影电视剧的吐槽
- 计算机主板常用英语,[分享]计算机术语 主板类
- Windows电脑系统锁屏界面壁纸如何获取
- mathematica-基于过程编程
- 2 数据分析之Numpy模块(1)
- 重庆高校在线平台的计算机基础,重庆高校在线开放课程建设数字课程建设标准.pdf...
- UE4 快速找到打包失败的原因