mTLS (mutual TLS) — обе стороны проверяют сертификаты друг друга. Обычный TLS: только клиент проверяет сервер. mTLS: сервер тоже требует сертификат клиента. В Go сервер: tls.Config{ClientAuth: tls.RequireAndVerifyClientCert, ClientCAs: caPool}. Клиент: tls.Config{Certificates: []tls.Certificate{clientCert}}. Используется для service-to-service коммуникации, zero-trust сети. Каждый сервис имеет свой сертификат, подписанный внутренним CA. Istio/Linkerd делают mTLS автоматически через sidecar proxy. Без service mesh — управляй сертификатами через vault или cert-manager.