Mutual TLS (mTLS): Two-Way Trust
1) What mTLS Is: Standard TLS proves only the SERVER's identity to the client (one-way). mTLS adds the reverse: the CLIENT also presents a certificate, so BOTH sides prove who they are before any data flows. Mental model: a normal handshake is you checking the shop's ID; mTLS is both of you showing passports at the door. 2) The Handshake: Client and server each hold a certificate signed by a trusted Certificate Authority (CA). During the handshake the server sends its cert, then REQUESTS the client's cert. Each side validates the other's cert chain against the CA it trusts. No valid cert, no connection. 3) Where It Shines: Service-to-service auth inside microservices and zero-trust networks (e.g. a service mesh like Istio/Linkerd), IoT device fleets, and B2B APIs. It removes shared secrets and bearer tokens that can leak: identity is bound to a cryptographic key, not a copyable string. 4) The Real Cost: Certificate LIFECYCLE is the hard part, not the crypto. You must issue, rotate, and REVOKE certs at scale; expired certs cause silent outages. Rule: automate rotation (SPIFFE/cert-manager) from day one and monitor expiry, or mTLS becomes your outage generator.