I am experimenting with using libtomcrypt to do RSA-2048 bit encryption. My current objective is to import a public key from a file. This file was generated using OpenSSL with the command:
$ openssl rsa -in private.pem -outform PEM -pubout -out public.pem
So I believe my public key is in PKCS#1 padding and in OpenSSL's PEM format.
I believe the function I need to use is rsa_import(), but that takes an in buffer, a length, and outputs an rsa_key pointer. Just to be clear, I believe what I need to do is as follows:
- Read in the contents of public.pem to a buffer
- Toss out the Header and Footers containing "Begin Public Key" etc.
- Decode data from base64.
- Pass in resulting data to rsa_import.
Is this correct? Can anyone who has used libtomcrypt for this purpose comment on this? Thanks.