La poignée de main TLS/SSL est le processus par lequel un client et un serveur établissent une connexion cryptée. Elle authentifie le serveur, négocie les paramètres cryptographiques et établit un matériel de clé partagé. Les sites Web et les outils de sécurité peuvent identifier un client à partir des paramètres qu'il offre lors de cette poignée de main, tels que sa version TLS, ses suites de chiffrement et ses extensions.
C'est la base du "fingerprinting TLS" en tant que technique de détection : des méthodes telles que JA3 construisent un fingerprint à partir de la version TLS, des suites de chiffrement, des extensions, des courbes elliptiques et des formats de points de courbes elliptiques qu'un client propose lors de sa poignée de main.
La poignée de main négocie également une clé de session partagée utilisée pour chiffrer tout ce qui suit, donc un proxy qui ne relaye que la connexion ne peut pas lire le trafic résultant à moins qu'il ne termine lui-même la poignée de main.