ctf Wiener tricky

 

这题题目是wiener Tricky,这是维纳滤波??

没学过,,懵x

给了publickey,于是想先找出n,e

然后求出d

然后,真是为难我的小电脑了,yafu拆解,一开始几分钟,然后,20分钟,然后2个半小时,

这些我都让他跑完了!!

然后给我显示20小时。。。

断了yafu

老老实实看那个代码

然后看出来他是可以直接求出d,有d就直接算就好了

然后需要openssl 解析出n ,e;都非常大

把n,e带入,可以求出d,特别快!!!

(提一下,直接在他那个test里写,就是这个)

就这种感觉:

得到d。

然后向上次那样,直接算就好了

代码:

import rsa
from rsa import transform
def FastMod(c,d,n):
    res = 1
    t = c
    while d:
        if d & 1:
            res = (res * t) % n
        t = (t * t) % n
        d>>=1
    return res


e = 355949428044394011416525580640727209012115496460578082591540362115366141425837528189633616844162877584613018030741854275756897461200378167436571547815767157785675778909581575938939615940299471388870845995538439614911452236868092605005352109203362643524505566443025399407973408444593940143560487529347856187923
n = 949603686045205715277174628136022115711156979860824039383799385101249348289935491073325953355239683776503155414384435860534465117430864566291387794089216559280434116213181181405857171075971236007710276483079389558212315153404594351264107147803340895025164316798193753138427414374746336511224920322316865644907
d = 28616787893962875870396586430679270222323477959831994257138015460199396633187
c = open('flag.enc','rb').read()
c = transform.bytes2int(c)
m = FastMod(c,d,n)
m = transform.int2bytes(m)
print(m)

比较坑的是!!

解出来后,看不出来flag!

在一堆乱码的最后》???!!!《

本来以为啥都没有,还要解码的。。

 

转载于:https://www.cnblogs.com/zhibin123/p/10609552.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值