|Pathologically Eclectic Rubbish Lister|
Re^5: RSA encrypt but no decrypt. What is the problem? (updated)by haukex (Bishop)
|on May 08, 2021 at 20:19 UTC||Need Help??|
Can I do without this function in Perl and set the parameters n, e, d myself?
Yes, my code outputs these parameters and like I said, when I used them in your code, it worked, meaning the values of your parameters appear to be incorrect, but otherwise initializing the keys like you did basically works.
Does your method mean that in Perl for RSA I must use the generate_key() function to generate keys?
No, there are plenty of other ways to generate RSA keys.
I tried adding one line to your code: my $plaintext = $rsa2->public_decrypt($ciphertext); but unfortunately this script gives an error
That a message enrypted with a public key needs to be decrypted with the matching private key is a pretty essential fact of Public-key cryptography, so you probably want to read up on that. Perhaps you're thinking of Symmetric-key algorithms instead? RSA is not one of those. Maybe have a look at e.g. Crypt::Cipher::AES?
Minor edit for clarification in first paragraph.
* Update 2: Confirmed: openssl genrsa 512 | openssl rsa -text -noout gives the following values: modulus=n, publicExponent=e, privateExponent=d, prime1=p, prime2=q. Of course you probably want to use more than 512 bits, but I just did that to be in line with your example in the root node.