I'm a bit of a newbie to WCF and web security, so I'd really appreciate a clear explanation of the following concepts:
I understand that if I want to create a secure connection to a web site, I need to have an SSL certificate from a trusted authority, e.g. Verisign, Thawte, etc.
Now I'm writing a SaaS app that has a central web service, and and number of client applications that connect to the central web service. I want to conduct all communication between client and server securely, so I have got a SSL certificate on my server.
But WCF now comes with this concept of a "client-side certificate", which appears to be required to validate my server-side certificate, and which I totally don't understand. The client is going to be downloaded by some anonymous guy halfway across the world. I have no idea what certificates he will or won't have installed - nor do I care! All I want is for the communication between the client and server to be secure. Am I supposed to install my own certificate on the client somehow?
Can somebody please explain these concepts to me?
(And while you're at it, I have a related question here with a bounty on it.)