首页
社区
课程
招聘
[原创]CTF2017 第十三题 readyuCrackMe 解题报告
发表于: 2017-6-29 12:55 4649

[原创]CTF2017 第十三题 readyuCrackMe 解题报告

2017-6-29 12:55
4649

回忆之前对 ECC 的理解,就是初始化的时候选个标准曲线,然后生成公私钥么。等做到这道题的时候,才知道要去真正的理解什么是有限域,什么是椭圆曲线,学习资料1 学习资料2

程序使用的算法库是 MIRACL,但我在 IDA 全部人肉标记完了之后,才搜索到这个方法,之前,我是通过一个函数(其实是 reduce2)内部的判断有限域参数的时候(就是看到 571、1223)才知道是 ECC 库的,然后去 github 上搜索相关的库,只找到这个库支持 1223,之前还找到了个 relic 库,不过不支持 103,然后对比源码标记函数名

程序是很简单的 win32 对话框工程,在对话框初始化消息中,设定了 user 输入框的内容为 readyu,并隐藏。然后在 Check 事件处理中,判断输入必须开头不为 0(过滤掉多解),必须大写和数字,然后进入重要的 check(code, user) 函数

起初搜索到这个  有限域的时候,搜索到一个ECC2K-130挑战,发现题目中给出的常量都是取自这个挑战,我还以为这题是要求 ECDLP 问题,但是这个分布式挑战还在跑还没有解啊,后面仔细看了看题发现不是,因短时间理解有限,不正确的地方请指出

先用 python 求解 h0、h1、h2 以及 t①

用 MIRACL 库求解 X


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 4
支持
分享
最新回复 (1)
雪    币: 11705
活跃值: (975)
能力值: ( LV12,RANK:779 )
在线值:
发帖
回帖
粉丝
2
非常清晰,  完美还原了出题的思路。  赞!
2017-6-29 15:08
0
游客
登录 | 注册 方可回帖
返回
//