I need to setup a 2 way SSL communication channel between a .NET/WCF application and a third party web server. Right now I am trying get a successful handshake with the host in order to validate that all the elements are setup correctly (client certificate, server certificate authority, network communication...). I'm using the openSSL command line tool to try and validate this, using the s_client command.
Here is what is stopping me, and what I don't understand:
- whatever I do, openSSL is expecting to find a private key for the client certificate
- the client certificate was given to me by the third party, but it does not contain any private key
- if I just generate my own private key file using openSSL, I'm getting a key values mismatch error
Keep in mind that I have just started getting my hands into SSL so I have a very basic understanding of the whole protocol. From what I've been reading, it seems that both server and client need their private key in a 2 way SSL setting. However, I can't figure out how to get a working private key on my client (working with the client certificate that was given to me). I would very much appreciate if somebody could shed some light on client certificate private keys, as this is giving me a major headache.