Marsの5εcur1ty備忘録

不定期的にCTF、脆弱性検証、バグバウンティレポート分析など、情報セキュリティを中心とした技術ブログを更新します。

Python: RSA暗号 Decrypt

Python:

def exgcd(m, n):
    if n>0:
        y,x,d = exgcd(n, m%n)
    return x, y-m/n*x, d
    else:
        return 1, 0, m

N = 97139961312384239075080721131188244842051515305572003521287545456189235939577
E = 65537
C = 77361455127455996572404451221401510145575776233122006907198858022042920987316

p = 299681192390656691733849646142066664329
q = 324144336644773773047359441106332937713
d = exgcd(E, (p-1)*(q-1))[0] % ((p-1)*(q-1))
P = pow(C, d, N)
print ("%x"%P).decode("hex")

 

 公開鍵:(N, E)

暗号メッセージ:C

N=p*q 

 

 

 

 

 

 

Copyright Mars 2019