xctf攻防世界 CRYPTO高手进阶区 cr3-what-is-this-encryption

"本文详细介绍了如何通过RSA算法解密,包括设置环境、导入库、关键步骤(p,q,e,n,d计算)及实际操作,最终揭示了密文 'c' 的明文 'ALEXCTF{RS4_I5_E55ENT1AL_T0_D0_BY_H4ND}
摘要由CSDN通过智能技术生成

1. 进入环境

题目给出了一长串字符,我们将其提出来,发现是p,q,e,c,因此猜测可能是RSA相关的解密问题。
查一查RSA的具体操作流程:
在这里插入图片描述

2. 代码解题

参考网上的wp,先安装两个包:

pip install libnum
pip install pycryptodome

接着上代码:

import libnum
from Crypto.Util.number import long_to_bytes

p = int(
    "0xa6055ec186de51800ddd6fcbf0192384ff42d707a55f57af4fcfb0d1dc7bd97055e8275cd4b78ec63c5d592f567c66393a061324aa2e6a8d8fc2a910cbee1ed9",
    16)
q = int(
    "0xfa0f9463ea0a93b929c099320d31c277e0b0dbc65b189ed76124f5a1218f5d91fd0102a4c8de11f28be5e4d0ae91ab319f4537e97ed74bc663e972a4a9119307",
    16)
e = int(
    "0x6d1fdab4ce3217b3fc32c9ed480a31d067fd57d93a9ab52b472dc393ab7852fbcb11abbebfd6aaae8032db1316dc22d3f7c3d631e24df13ef23d3b381a1c3e04abcc745d402ee3a031ac2718fae63b240837b4f657f29ca4702da9af22a3a019d68904a969ddb01bcf941df70af042f4fae5cbeb9c2151b324f387e525094c41",
    16)

c = 0x7fe1a4f743675d1987d25d38111fae0f78bbea6852cba5beda47db76d119a3efe24cb04b9449f53becd43b0b46e269826a983f832abb53b7a7e24a43ad15378344ed5c20f51e268186d24c76050c1e73647523bd5f91d9b6ad3e86bbf9126588b1dee21e6997372e36c3e74284734748891829665086e0dc523ed23c386bb520

n = p * q

# invmod就是求mod的逆,invmod(a, n)则返回 1 / a (mod n).
d = libnum.invmod(e, (p - 1) * (q - 1))

m = pow(c, d, n)
string = long_to_bytes(m)
print(string.decode())

得到最终答案为:ALEXCTF{RS4_I5_E55ENT1AL_T0_D0_BY_H4ND}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

l8947943

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值