Hi all
I am trying to upload privatekey from buffer in mem
I secseeded doing it with CAcert 
now I am trying to upload client-cert and privatekey for mutual authentication 
but I keep getting errors (connection failed - like it wont read and use it in 
the right way)

I know my key and cert are ok cause when I do it by files it turns out good.

can you please advise .

the code I tried is : (for privatekey)

     EVP_PKEY  *pkey = NULL;
     BIO * bio_client_Pkey;
     
      char myPkey_client[] = 
         "-----BEGIN RSA PRIVATE KEY-----\n"\
         "MIICXQIBAAKBgQDKst2ziMGFmAhVWSTTldHLHd9YZxLgFzA5t9PnW80R4p3ZwmqU\n"\
         "etEXJut4d8VXpyOO6h98gYHvW0AQzfnW7ZDRA8dbQjgu4yJ23P37xrRBfVfwh9Ir\n"\
         "keh0sX4xPRrQZf72h6+geTz4coes44+VZikq/jcQN50NHFU6UCTKfctFlwIDAQAB\n"\
         "AoGAS+C7N1rpPq5T6EcvjvkViNiM5BXprfNgPSsAayolUR2pA3xQ03ZKUUVjfjwv\n"\
         "polNuVERKlV8o3JgQCoq7XcO71QAH0Wp1/KIqq6X3LTb5e7yiWey46Sg2fn0egDf\n"\
         "74LB/Dl9h/l36QrU3V0CMu1R/r5DBIXM9/EzKnqBInxRiRECQQD7WBqm1NvIO9ER\n"\
         "mwM06eSPcCV4KDznjLIeaHe1FTt5Uh7pQ2R3Z29pKHs0hj7pgG8OLpNMnKxGg9Pt\n"\
         "ehw8EbLZAkEAznQUtaFv9tIuuAYuNTn0zQJ4vNQLSHaXpbTbllbS8/FxDzdocGde\n"\
         "VEOnfs+SHfveVsHN1Q/oeiAKd7Ui93WV7wJBAJhc4Esh3dmT6Tjy7w60eok5Qn2E\n"\
         "Zuc2swMb8PUk2djBn1toLw7y9OaaU5WTi6+g27GNKl3W29gjMeVTkKoZUIECQCZF\n"\
         "hJVLEQtrWTfKBYTecpASljlDAbh0K5aPWWmcPMz2BCRy/AxiTS1HwWQTrJ2cVFI2\n"\
         "6SZHJayGBgq87Hd9N8cCQQCIP9uJH1M2X/iG5KLEkbp3ruJyzMmCp2zIYyNK20EJ\n"\
         "UVLgPI7OVsUiNnxWEcbfzBqkiFMXIXrwfwbPAfzJZCex\n"\
         "-----END RSA PRIVATE KEY-----\n";

     if( (bio_client_Pkey=BIO_new_mem_buf((void *)myPkey_client, 
sizeof(myPkey_client))) == NULL)
         return -1 ;

     if( (pkey=PEM_read_bio_PrivateKey(bio_client_Pkey, NULL, NULL, NULL)) == 
NULL)
         return -1 ;

     BIO_free(bio);

        SSL_CTX_use_PrivateKey((SSL_CTX *)sslctx,pkey);

//--------------------------------------------------------------------
//and for the clientcertificate
//client certificate - uploading from memory and store in DB 
     X509_STORE * store_client;
     X509 * cert_client =NULL;
     X509_free(cert_client);
     BIO * bio_client;
     char * mypem_client = 
         "-----BEGIN CERTIFICATE-----\n"\
         "MIICxzCCAjCgAwIBAgIBBDANBgkqhkiG9w0BAQUFADBrMQswCQYDVQQGEwJVUzEL\n"\
         "MAkGA1UECBMCTlkxDzANBgNVBAoTBllvZ2dpZTEkMCIGA1UECxMbWW9nZ2llIFNl\n"\
         "Y3VyaXR5IFN5c3RlbXMgTFREMRgwFgYDVQQDEw9rY3MuZGVmYXVsdC5jb20wHhcN\n"\
         "MDkwMTEyMTg0NzMxWhcNMTkwMTEwMTg0NzMxWjBrMQswCQYDVQQGEwJVUzELMAkG\n"\
         "A1UECBMCTlkxDzANBgNVBAoTBllvZ2dpZTEkMCIGA1UECxMbWW9nZ2llIFNlY3Vy\n"\
         "aXR5IFN5c3RlbXMgTFREMRgwFgYDVQQDEw9rY3MuZGVmYXVsdC5jb20wgZ8wDQYJ\n"\
         "KoZIhvcNAQEBBQADgY0AMIGJAoGBAORMsv2T7s5GFwIKSn2iBBS7kl20rODz6/fW\n"\
         "0gbjS5AOPzcv/C6exWL5PF2xEbhLstW3+zANR1xw82bi2BpWuSiLmJBnmMLpKVBo\n"\
         "/VpjVbmUnchXXCMvPlqX8XGygyIR+zRi0Wc01/DI3VnHWW7jo0LM6VnhYex+MgCb\n"\
         "+vIPfxiFAgMBAAGjezB5MAkGA1UdEwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5T\n"\
         "U0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBR5FMMf2xpxYqtX7psu\n"\
         "O3JbTSc6uDAfBgNVHSMEGDAWgBQUaM0TkY8jQjSh8NG/SkRBKUTXHzANBgkqhkiG\n"\
         "9w0BAQUFAAOBgQA+y878KUAMETO4e6eSjEYmYGOQkX+TKinNK8AfSDuY8TtdrVLJ\n"\
         "xKodnp83qF0oE0jQaz66PYtN9qsctjp23NCQoXkPplyGAAIUjFLEAg+fhrlbizpu\n"\
         "wThLptBpqqbMdTyB9PWvWCAyLoZYOc+Q2ulutr8Yu+mg7q8Oealte6RFxA==\n"\
         "-----END CERTIFICATE-----\n";

     bio_client=BIO_new_mem_buf(mypem_client, -1);
     PEM_read_bio_X509(bio_client, &cert_client, 0, NULL);
     if (cert_client == NULL)
         return -1 ;
     if (SSL_CTX_use_certificate((SSL_CTX *)sslctx,cert_client) !=1 )
         return -1 ;

//---------------------------------------------------------------------------------

apriciate your advise
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to