Home / Knowledge hub / mTLS
Knowledge hub
mTLS
A connection where both client and server prove who they are with certificates.
What it means
Mutual TLS, or mTLS, is TLS with proof in both directions. In an ordinary connection the browser checks the server's certificate. With mTLS the server also asks the client for a certificate and refuses the connection if it is missing or not trusted.
The result is that a service knows which machine or program is calling before any request is read. It is used mostly between services, in partner integrations and for devices, rather than for people at a keyboard. That makes it a good fit for machine-to-machine traffic, where nobody is there to type a password.
Why it matters
It lets you close a service to everyone except known callers, without relying on a secret that could be copied out of a log. A stolen password can be used from anywhere. A private key that never leaves the device is much harder to replay, which suits zero trust designs.
It is not a complete answer, because it proves a caller's identity, not what that caller may do. A trusted partner certificate that can read every customer's record is still a flaw. Authorisation has to be checked after the handshake, on every request.
How it shows up
You meet it between internal services, often handled by a service mesh, and in banking and partner APIs, where certificate-bound access tokens are defined in RFC 8705. The work is in running a certificate authority, issuing, renewing and revoking certificates, and not letting expiry take a service down.
Typical mistakes are trusting any certificate signed by a public authority rather than your own, skipping the check on the client name, never revoking a lost certificate, and terminating mTLS at a gateway that then forwards plain requests with a header saying who the caller was. Check that header cannot be set from outside.
Questions people ask
mTLS, answered
What is the difference between TLS and mTLS?
In TLS only the server proves its identity, which is what a browser checks. In mTLS the client proves its identity too, using its own certificate and private key.
Does mTLS replace API keys or tokens?
It can, for service-to-service calls, but it does not decide permissions. Many systems keep a token for authorisation and use mTLS to show that the caller is a known machine.
Is mTLS suitable for browsers and end users?
Rarely. Handing out and renewing certificates for people is hard to support. It is a better fit for services, devices and a small number of partners.
What happens when a client certificate expires?
The connection fails. This is why expiry is the most common mTLS outage. Track expiry dates, automate renewal and test what happens when a certificate is revoked.
How do we test it?
Try connecting without a certificate, with an expired one and with one from the wrong authority. Then check whether a valid certificate for one partner can read another partner's data.
Related
Terms that sit next to this one
TLS
The protocol that encrypts traffic between a browser and a server.
Zero trust
Assuming the network proves nothing, and checking every request.
Service mesh
A layer that handles encryption and identity between services in a cluster.
API authentication
How an API decides which caller is making a request before it does anything.
Public key cryptography
Encryption with a pair of keys: one shared openly, one kept private.
What can a trusted caller reach?
A client certificate proves who is calling, not what they may do. We test what each signed-in or trusted account can reach that it should not, with the request and response as proof. Book a pilot on one app.
Or start with a $199 pilot on one application: thirty days, success criteria agreed before day one, credited against the annual if you convert.