dear all: i am trying to read the rsa key from the memory (rather than from a file). here is what i did:
1. use the "openssl genrsa -out key.pem 1024" to generate a rsa key in the file key.pem. 2. copy and paste the key from the "key.pem" to my code. 3. use a mem bio to read the key from the memory. my code to do this is like the following. the call to "PEM_ASN1_read_bio" always return null. anybody has any idea or similiar experience? thanks a lot chong peng /* copy and paste from key.pem */ char rsakey[] = "-----BEGIN RSA PRIVATE KEY-----\ MIICXAIBAAKBgQC0SF/4JTo3XzffsPeNPbglZ6sz/f/mlUO/CUtB8hk0DTz3V/9r\ iWagrVHjqaF/xikWFsxbzKecRyDDNyhgMWV8eeAVGpJSvmyJZH43MWO1zCiBXsi2\ MSHqQAJOfT803qTc3tPCb5k4UK5ytvwpQ8ZIyokrnQJS0FYKsonf3ASjKwIDAQAB\ AoGAMR3Sv6lsze8sKs5s81cQV2iCFT0rPegGuAJRNZs+0JaWuJCJ7wNVKYtu1wa9\ EDGtue3mKVB9ja83NthNML/kdOszLc1G6NVnWYSzgBPPsyPAJkSZw8TQKODmw+LF\ sqGFjC73s49/lWO12Tv8qA0Zf4sXRY9dMiqX5kA5m8OWXfECQQDYkv2B1xfNK41v\ PPeggVapasX53ZIiOdjc5UuaOWU7GDLhlyyFUCkDdx4eviBAEclWfNSueJNcK1Me\ pulScGFTAkEA1RoXxsYgFVbZsK1i9hjxEqoWzP7dQBJTWqi/77BaPQvqX12ctVk0\ pa0sR4XEKxGOBr11XJVlloTjpmm1hwLDyQJBAM25o1IpLhTZIDrgoSE4e0fngzQ9\ A0m7xYLf1RclGkIuVHbykXn5kVwXVOdDF4OE4cpkPeuV4fUVuplNWCnVUr0CQBWR\ a4ChwtOGE8hO9ComQhf6gQ5EaU43zJnrZGm09p0hHJqEVf0Ax1RRX57pif4166MA\ /+Tb9gky7/uCzW2ZuQkCQFUoAhZnV9sQoifQpkCE10J3fZNyNLEvHKU3b4/rwvn7\ 5W618+Fr0DiwBkH07YSWRCVvi8rsYrK2/25DXSbXbD8=\ -----END RSA PRIVATE KEY-----"; EVP_PKEY *pkey = NULL; int readRsaKey(void) { BIO *bio; if( (bio=BIO_new_mem_buf((void *)rsakey, sizeof(rsakey))) == NULL) { return(ERROR); } if( (pkey=PEM_ASN1_read_bio(d2i_PrivateKey, PEM_STRING_EVP_PKEY, bio, NULL, NULL, NULL)) == NULL) { return(ERROR); } BIO_free(bio); } ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]