TsgcUDPCLient › Propriétés › DTLS
Active le TLS datagramme (DTLS) pour chiffrer le trafic UDP envoyé et reçu par ce client.
property DTLS: Boolean read FDTLS write FDTLS;
—
Lorsque True, les datagrammes sont encapsulés dans DTLS et une poignée de main TLS est effectuée avec le pair lors de la première utilisation ; lorsque False, le client envoie et reçoit des UDP bruts. La prise en charge DTLS nécessite l'API OpenSSL 1.1 ou 3.0 (configurée via DTLSOptions.OpenSSL_Options.APIVersion) et notre build Indy personnalisé, sauf si DTLSOptions.IOHandler vaut iohNativeTLS, qui sélectionne le moteur DTLS 1.2 natif du pack sgcCrypto et ne charge aucune bibliothèque OpenSSL. DTLS est disponible uniquement dans l'édition Entreprise. L'événement OnDTLSVerifyPeer est déclenché pendant la poignée de main afin que l'application puisse valider le certificat du serveur, et cela ne se produit que lorsque DTLSOptions.VerifyCertificate vaut True. La vérification est désormais appliquée. Auparavant, le résultat de la validation de la chaîne était calculé puis ignoré, n'importe quel certificat était donc accepté, y compris un certificat émis par une autorité non fiable. Une chaîne qui échoue met désormais fin à la poignée de main. VerifyCertificate vaut False par défaut, la configuration par défaut est donc inchangée. Appelez ClearDTLS pour ignorer la session DTLS mise en cache avant de se connecter à un pair différent.
oClient.DTLS := True;
oClient.DTLSOptions.VerifyCertificate := True;
oClient.DTLSOptions.RootCertFile := 'root.pem';