当前位置: 首页 > article >正文

攻防世界baigeiRSA

打开题目附件

import libnum
from Crypto.Util import number
from secret import flag

size = 128
e = 65537
p = number.getPrime(size)
q = number.getPrime(size)
n = p*q

m = libnum.s2n(flag)
c = pow(m, e, n)

print('n = %d' % n)
print('c = %d' % c)

n = 88503001447845031603457048661635807319447136634748350130947825183012205093541
c = 40876621398366534035989065383910105526025410999058860023908252093679681817257

首先用yafu分解n 

得到p和q然后直接上脚本

import gmpy2
import libnum
from Crypto.Util.number import long_to_bytes
e = 65537
n = 88503001447845031603457048661635807319447136634748350130947825183012205093541
c = 40876621398366534035989065383910105526025410999058860023908252093679681817257
q = 322368694010594584041053487661458382819
p = 274539690398523616505159415195049044439
a = (p-1)*(q-1)
d = gmpy2.invert(e,a)
m = pow(c,d,n)
print(long_to_bytes(m))

运行得到HSCTF{@Zh3n_Ba1_G3i!@}


http://www.kler.cn/a/536393.html

相关文章:

  • 攻防世界 文件上传
  • HTML之CSS三大选择器
  • [ESP32:Vscode+PlatformIO]添加第三方库 开源库 与Arduino导入第三方库的区别
  • 【LeetCode】152、乘积最大子数组
  • 2.Mkdocs配置说明(mkdocs.yml)【最新版】
  • 大语言模型的个性化综述 ——《Personalization of Large Language Models: A Survey》
  • 【补充】RustDesk一键部署及账号登录配置
  • 深入理解Python上下文管理器:从基础到高级应用
  • java版本
  • 8.stack和queue
  • Linux交叉编译gpsd移植至arm板
  • CI/CD相关概念
  • AWS 上的 Red Hat OpenShift 服务
  • uniapp 使用 tree.js 解决模型加载不出来的问题
  • Python办公笔记——将csv文件转Json
  • c#对接deepseek 聊天AI接口
  • 使用数学工具和大模型结合训练专有小模型(有限元算法和大模型微调)
  • 使用 Docker 部署 RabbitMQ 的详细指南
  • 紧跟潮流,将 DeepSeek 集成到 VSCode
  • Windows 电脑安装 mysqldump 的详细教程
  • 数据结构与算法面经
  • ZooKeeper相关知识点
  • C++ Primer 递增和递减运算符
  • 配置#include “nlohmann/json.hpp“,用于处理json文件
  • 【c++】析构函数
  • pytest-xdist 进行多进程并发测试!