生成RSA私钥

 

openssl genrsa -out key.pem 1024 指定1024位

提取公钥
openssl rsa -in privkey.pem -pubout -out pubkey.pem

 

加密    (因RSA非对称加密特性,本人验证后256位密钥加密文字中字符数量不超过20)

openssl rsautl -encrypt -in 要加密的文件名 -inkey 密钥 -pubin -out 输出文件名 

  • 给出flag.enc       pub.pem    

    openssl >> rsa -pubin -text -modulus -in 公钥文件.pem              (-pubin    告诉openssl是公钥文件     -text 查看明文  -modulus 模数 )

 

解密 (公钥加密私钥解密)

 

openssl rsautl -decrypt -in 加密文件名 -inkey 私钥 -out 输出文件名             

 


N(大质数,模数)分解:

1.    cmd 下msieve.exe 大质数n  -v

2.yafu.exe

  命令是factor(n),将n值分解

yafu-x64 "factor(@)" -batchfile n.txt  

 

  yafu用于自动整数因式分解,在RSA中,当p、q的取值差异过大或过于相近的时候,使用yafu可以快速的把n值分解出p、q值,原理是使用Fermat方法与Pollard rho方法等。