题面
import hashlib
import sympy
from Crypto.Util.number import *
flag = 'GWHT{************}'
flag1 = flag[:19].encode()
flag2 = flag[19:].encode()
assert(len(flag) == 38)
P1 = getPrime(1038)
P2 = sympy.nextprime(P1)
assert(P2 - P1 < 1000)
Q1 = getPrime(512)
Q2 = sympy.nextprime(Q1)
N1 = P1 * P1 * Q1
N2 = P2 * P2 * Q2
E1 = getPrime(1024)
E2 = sympy.nextprime(E1)
m1 = bytes_to_long(flag1)
m2 = bytes_to_long(flag2)
c1 = pow(m1, E1, N1)
c2 = pow(m2, E2, N2)
output = open('secret', 'w')
output

本文介绍了RSA加密中的低解密指数攻击,利用连分数展开寻找e/n的渐进分数,从而可能找到k/d的匹配项。在一道具体的题目中,通过N1/N2的连分数展开寻找满足条件的ti/si,以此解决加密问题。文章强调理论知识的重要性以及持续学习的必要性。
最低0.47元/天 解锁文章
4228

被折叠的 条评论
为什么被折叠?



