Seccon 2018 Rsa_is_power Writeup

LeeDoHyun · March 27, 2020

문제는 N, E, C값이 주워집니다.

N = 97139961312384239075080721131188244842051515305572003521287545456189235939577
E = 65537
C = 77361455127455996572404451221401510145575776233122006907198858022042920987316

간단한 RSA라는것을 알 수 있습니다. N값을 소인수 분해하고, p와 q값을 구해 phi와 d값을 구해 디크립트 하면될꺼같습니다.

solve.py

from Crypto.Util.number import *

N = 97139961312384239075080721131188244842051515305572003521287545456189235939577
E = 65537
C = 77361455127455996572404451221401510145575776233122006907198858022042920987316
P = 299681192390656691733849646142066664329
Q = 324144336644773773047359441106332937713

PHI = (P - 1) * (Q - 1)
D = inverse(E, PHI)
DEC = pow(C, D, N)
print ("%x" % DEC).decode("Hex")

Twitter, Facebook