What it is#
Standard TLS authenticates the server to the client. adds client certificate authentication on top: during the handshake the server requests a certificate, the client presents one, and both sides verify the other’s certificate chain before the connection is trusted. The result is a cryptographically strong, bidirectional proof of identity that survives past the handshake for the duration of the session.
Why it matters#
is the usual transport authentication in service meshes and in partner integrations where bearer tokens are considered too weak. Because private keys never leave the client, stealing a cookie or a no longer reaches the target service. It is also the recommended pattern for high-assurance APIs in regulated industries.
Mitigation direction#
Treat the private CA as production-critical: rotate issuing keys, monitor certificate issuance, and revoke aggressively. Pin exact certificate subjects on the server side — accepting “any certificate signed by our CA” is a common misconfiguration because it equates to trusting every peer with a CA-signed cert, not just the intended peer.