How does client certificate authentication work?
Client certificate authentication requires a request for information from the server and a response from the browser to negotiate a trusted authentication relationship between the client (that is, a user’s browser) and the server application. This trusted relationship is built through the use of the exchange of trusted and verifiable credentials, known as certificates.
Unlike much of what we have seen up to this point, with client certificate authentication, the Servlet container or application server itself is typically responsible for negotiating the trust relationship between the browser and server by requesting a certificate, evaluating it, and accepting it as valid.
Client certificate authentication is also known as mutual authentication and is part of the Secure Sockets Layer (SSL) protocol and its successor, Transport Layer Security (TLS). As mutual authentication is part of the SSL and TLS protocols, it follows that...