TsgcUDPCLient › Propiedades › DTLS
Habilita TLS de datagramas (DTLS) para cifrar el tráfico UDP enviado y recibido por este cliente.
property DTLS: Boolean read FDTLS write FDTLS;
—
Cuando es True, los datagramas se encapsulan en DTLS y se realiza un protocolo de enlace TLS con el par en el primer uso; cuando es False, el cliente envía y recibe UDP sin procesar. La compatibilidad con DTLS requiere la API OpenSSL 1.1 o 3.0 (configurada mediante DTLSOptions.OpenSSL_Options.APIVersion) y nuestra compilación personalizada de Indy, salvo que DTLSOptions.IOHandler sea iohNativeTLS, que selecciona el motor DTLS 1.2 nativo del paquete sgcCrypto y no carga ninguna biblioteca OpenSSL. DTLS solo está disponible en la edición Enterprise. El evento OnDTLSVerifyPeer se activa durante el protocolo de enlace para que la aplicación pueda validar el certificado del servidor, y esto solo ocurre cuando DTLSOptions.VerifyCertificate es True. La verificación ahora se aplica. Anteriormente, el resultado de la validación de la cadena se calculaba y luego se descartaba, por lo que se aceptaba cualquier certificado, incluido uno emitido por una autoridad no confiable. Una cadena que falla termina ahora el protocolo de enlace. VerifyCertificate es False de forma predeterminada, así que la configuración predeterminada no cambia. Llame a ClearDTLS para descartar la sesión DTLS en caché antes de conectarse a un par diferente.
oClient.DTLS := True;
oClient.DTLSOptions.VerifyCertificate := True;
oClient.DTLSOptions.RootCertFile := 'root.pem';