[ACTF新生赛2020]crypto-rsa0-WP
·
题目:

首先题目给了我们一个压缩包我们解压一下会获得几个zip压缩包和一些乱七八糟的东西
先不用管其他的压缩包我们先去看:(对了,其中一个文件提示了这是伪加密)

这个用010打开我们修改09 00 的伪加密

将搜出来的09 00全部换为00 00然后就可以去压缩.zip文件了
压缩后得到一个非常简单的rsa题目

from Crypto.Util.number import *
import random
FLAG=#hidden, please solve it
flag=int.from_bytes(FLAG,byteorder = 'big')
p=getPrime(512)
q=getPrime(512)
print(p)
print(q)
N=p*q
e=65537
enc = pow(flag,e,N)
print (enc)
"""
9018588066434206377240277162476739271386240173088676526295315163990968347022922841299128274551482926490908399237153883494964743436193853978459947060210411
7547005673877738257835729760037765213340036696350766324229143613179932145122130685778504062410137043635958208805698698169847293520149572605026492751740223
50996206925961019415256003394743594106061473865032792073035954925875056079762626648452348856255575840166640519334862690063949316515750256545937498213476286637455803452890781264446030732369871044870359838568618176586206041055000297981733272816089806014400846392307742065559331874972274844992047849472203390350
"""
给出了p,q,e,c那就非常简单了
第一步:求出n和模n
n = p * q
phi = (p - 1)*(q - 1)
第二步:计算私钥d
d = inverse(e,phi)
第三步:计算m并转换得出flag
m = long_to_bytes(pow(c,d,n))
print(m)
完整代码
#导入我们需要的库
from Crypto.Util.number import *
#已知
p = 9018588066434206377240277162476739271386240173088676526295315163990968347022922841299128274551482926490908399237153883494964743436193853978459947060210411
q = 7547005673877738257835729760037765213340036696350766324229143613179932145122130685778504062410137043635958208805698698169847293520149572605026492751740223
c = 50996206925961019415256003394743594106061473865032792073035954925875056079762626648452348856255575840166640519334862690063949316515750256545937498213476286637455803452890781264446030732369871044870359838568618176586206041055000297981733272816089806014400846392307742065559331874972274844992047849472203390350
e = 65537
#计算n和模n
n = p * q
phi = (p - 1)*(q - 1)
#计算私钥d
d = inverse(e,phi)
#计算m
m = long_to_bytes(pow(c,d,n))
#输出
print(m)
最后flag为
actf{n0w_y0u_see_RSA}
修改一下
flag{n0w_y0u_see_RSA}
更多推荐



所有评论(0)