欢迎光临
我们一直在努力

ISCTF2025 - miscrypto

ISCTF2025 – miscrypto

1. 地址:https://gz.imxbt.cn/games/32/challenges

2. 文件:miscrypto.zip 解压后三个文件c.png/n.txt/费马.py

3. 知识点:

3.1. 费马分解:任何一个奇合数都可以表示为两个平方数的差。

3.2. base64编码表

3.3. RSA 公钥指数(public exponent) 65537

解题思路

4. 思路:

4.1. n.txt文件是brainfuck,brainfuck加解密

在这里插入图片描述

4.2. c.png丢随波逐流,文件-foremost文件提取,了解到两个png文件拼接而成

在这里插入图片描述

4.3. c.png丢winhex,查找png文件尾 AE426082,包括两段字符串信息

在这里插入图片描述

base密文:fXGWkWSnLSQSAKbSeTXlUVQTGRi7KVS7jCOKTKHSXXSjHjmTABnXGLH6L1jnYLKQamTGSUCSDaOKiqe LHyD7IFO2IQGGSGbzKBUQMTe= base64编码表:CDABGHEFKLIJOPMNSTQRWXUVabYZefcdijghmnklqropuvstyzwx23016745+/89

4.4. 在线base64解码

在这里插入图片描述

c=7551149944252504900886507115675974911138392174398403084481505554211619110839551091782778656892126244444160100583088287091700792873342921044046712035923917

4.5. 编写RSA的解码程序

from Cryptodome.Util.number import *
import numpy as np
import gmpy2
p =
87430128338242598134172260625226774095596700493624565125749444668870272998101
q =
87430128338242598134172260625226774095596700493624565125749444668870272994709
# p和q是 两个大素数(prime numbers),RSA 密钥生成的起点。生成后立即计算 n = p × q,之后可丢弃(但解密时仍需用到)。
e =gmpy2.mpz(65537)
c =
7551149944252504900886507115675974911138392174398403084481505554211619110839551
091782778656892126244444160100583088287091700792873342921044046712035923917
# 加密后的结果(ciphertext),通常公开(攻击者能拿到的就是 n, e, c),合法接收者用私钥 d 计算 m = c^d mod n 来恢复明文。
n = p * q
# 模数(modulus),n = p × q。是公钥和私钥的共同组成部分。所有加密和解密运算都在模 n 下进行。公开性:✅ 公开(包含在公钥中)。安全性依赖:从 n 反推 p 和 q 在计算上是困难的(即“大整数分解难题”)。
fn = (p 1) * (q 1)
# fn(欧拉函数)用于计算私钥 d。原理:因为 p 和 q 是素数,所以小于 n 且与 n 互素的整数个数为 (p−1)(q−1)。保密性:❌ 必须保密(知道 φ(n) 就能轻易算出 d)
d = gmpy2.invert(e, fn) # e ** -1(mod fn)
# 私钥指数 计算方式:d = e⁻¹ mod φ(n),保密性:❌ 绝对保密(是私钥的核心!),用途:用于解密密文或生成数字签名。
m = gmpy2.powmod(c, d, n) # m=c**d(mod n)
# 原始消息(message)。形式:在 RSA 中,m 必须是一个整数,且满足 0 ≤ m < n。转换方式:通常通过 bytes_to_long(flag) 将字节串(如 b'ISCTF{…}')转为大整数。保密性:这是你想要保护或恢复的内容。
print (m)
flag=long_to_bytes(m)
print(flag)

得到flag=ISCTF{M15c_10v3_Cryp70}

【本文结束】

赞(0)
未经允许不得转载:171主机测评 » ISCTF2025 - miscrypto
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址