Utilicé el comando openSSL para crear 2 archivos: 1 para clave pública RSA & 1 para clave privada RSA. ¿Cómo recupero las claves RSA usando C?Cargar claves RSA desde los archivos
En concreto, tienen las siguientes funciones:
RSA_public_encrypt(read_num, in_buf, out_buf, public_key, RSA_PKCS1_PADDING);
RSA_private_decrypt(read_num, in_buf, out_buf, private_key, RSA_PKCS1_PADDING);
El cuarto argumentos, public_key y private_key, necesitan estar en el tipo RSA. Pero lo que tengo son sólo 2 archivos de texto generados por el comando OpenSSL:
File 1:
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQDP78B9GZ9ZFG6OnZ1PU+9BPoyLRuYJr3rSX470XjbJhmlq9DTn
NvG1pxWxrd5tjlmMWD4AkHqD7E87AafvQEiABdUXwf30LatT1w6tlyQWkM/HCN5k
....
npF+nDtKmGteLJVp5x7HHMnZaRbvcV2oUtgdmIMbqVYgbPkwO2tUfUPA6zg1fzhy
nNzQ35e/Hi0fgSHZib0CQEe4e4txXzkezomkWqwuGL8Qqp8iCbBn44mzxXTBvAQl
muFu93C/ULMzRoq4cpPgl3sS0F9s7+zR18SERerFvfc=
-----END RSA PRIVATE KEY-----
File 2:
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDP78B9GZ9ZFG6OnZ1PU+9BPoyL
RuYJr3rSX470XjbJhmlq9DTnNvG1pxWxrd5tjlmMWD4AkHqD7E87AafvQEiABdUX
wf30LatT1w6tlyQWkM/HCN5kmK5WzPUYbI1q5xGy7Eox9sJ6cNwMUOT+MSDhErgB
gkgF6uG1yGrxuEVk/QIDAQAB
-----END PUBLIC KEY-----
Ahora, leo estos 2 archivos en una matriz de caracteres []. Lo que tengo que hacer a continuación es convertir estas 2 matrices en 2 claves RSA (clave pública en el cliente & private_key en el servidor) para que pueda usar las funciones RSA_public_encrypt y RSA_private_decrypt.
Gracias.
¿Qué quiere decir por recuperar, recuperar = leer? – RageZ
¡Cuidado, no debe exponer su clave privada, ni siquiera parcialmente! – mjv
[ingrese la descripción del enlace aquí] (http://stackoverflow.com/questions/30621457/how-to-translate-pem-public-key-into-openssl-rsa-structure/39216814#39216814) Eche un vistazo a esta publicación – ANDRE