RSA解密過程

有問題可以評論

openssl rsa -pubin -text -modulus -in warmup -in pub.key

RSA Public-Key: (256 bit) Modulus: 00:c0:33:2c:5c:64:ae:47:18:2f:6c:1c:87:6d:42: 33:69:10:54:5a:58:f7:ee:fe:fc:0b:ca:af:5a:f3: 41:cc:dd Exponent: 65537 (0x10001) Modulus=C0332C5C64AE47182F6C1C876D42336910545A58F7EEFEFC0BCAAF5AF341CCDD writing RSA key -----BEGIN PUBLIC KEY----- MDwwDQYJKoZIhvcNAQEBBQADKwAwKAIhAMAzLFxkrkcYL2wch21CM2kQVFpY9+7+ /AvKr1rzQczdAgMBAAE= -----END PUBLIC KEY-----

Exponent: 65537 (0x10001) Modulus=C0332C5C64AE47182F6C1C876D42336910545A58F7EEFEFC0BCAAF5AF341CCDD

十進制:86934482296048119190666062003494800588905656017203025617216654058378322103517

 

  1. 網站:http://factordb.com/

  2. yafu破解,factor(86934482296048119190666062003494800588905656017203025617216654058378322103517)

     求出p,q

           P = 285960468890451637935629440372639283459

           Q = 304008741604601924494328155975272418463

python2腳本

#coding=utf-8
import math
import sys
from Crypto.PublicKey import RSA
arsa=RSA.generate(1024)
arsa.p=
arsa.q=
arsa.e=
arsa.n=arsa.p*arsa.q #可以用於檢驗
Fn=long((arsa.p-1)*(arsa.q-1))
i=1
while(True):
    x=(Fn*i)+1
    if(x%arsa.e==0):
           arsa.d=x/arsa.e
           break
    i=i+1
private=open('private.pem','w')
private.write(arsa.exportKey())
private.close()
 
openssl rsautl -decrypt -in flag.enc -inkey private.pem

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章