Una vez que existe un par de candidatos válido (ambos pares pueden conectarse e intercambiar datos entre ellos), es momento de hacer la conexión segura. DTLS es un protocolo criptográfico que cifra los datos para evitar la inspección o modificación del contenido de los datos intercambiados.
DTLS requiere las bibliotecas openSSL (desde openSSL 1.1+)
La configuración de DTLS se encuentra en la propiedad RTCOptions.DTLSOptions de TsgcRTCPeerConnection. Para habilitar DTLS, establezca la propiedad RTCOptions.DTLS en True. A continuación se muestran las propiedades principales:
RootCertFile: ruta al archivo de certificado raíz.
CertFile: ruta al archivo de certificado.
KeyFile: ruta al archivo de clave del certificado.
VerifyCertificate: si se debe verificar el certificado, habilite esta propiedad.
VerifyDepth: es una propiedad Integer que representa el número máximo de enlaces permitidos durante la verificación
OpenSSL_Options: configuración de las bibliotecas OpenSSL.
APIVersion: permite definir qué API de OpenSSL se utilizará. Solo OpenSSL API 1.1+ es compatible con DTLS.
oslAPI_1_1: utiliza la API 1.1 de OpenSSL, requiere nuestra biblioteca Indy personalizada y permite usar las bibliotecas OpenSSL 1.1.1 (con soporte para TLS 1.3).
oslAPI_3_0: usa la API 3.0 de OpenSSL, requiere nuestra biblioteca Indy personalizada y permite usar las bibliotecas OpenSSL 3.0.0 (con soporte TLS 1.3).
LibPath: aquí puede configurar dónde se encuentran las bibliotecas openSSL
oslpNone: es el valor predeterminado; las bibliotecas openSSL deben estar en la misma carpeta donde se encuentra el binario o en una ruta conocida.
oslpDefaultFolder: establece automáticamente la ruta de openSSL donde deben ubicarse las bibliotecas para todas las personalidades del IDE.
oslpCustomFolder: si esta es la opción seleccionada, defina la ruta completa en la propiedad LibPathCustom.
LibPathCustom: cuando LibPath = oslpCustomFolder, defina aquí la ruta completa donde se encuentran las bibliotecas openSSL.
UnixSymLinks: habilita o deshabilita la carga de SymLinks en sistemas Unix (por defecto está habilitado, excepto en OSX64):
oslsSymLinksDefault: están habilitados por defecto excepto en OSX64 (tras MacOS Monterey, falla al intentar cargar la biblioteca sin versión.).
oslsSymLinksLoadFirst: Cargar los SymLinks antes de intentar cargar las bibliotecas de versión.
oslsSymLinksLoad: Cargar SymLinks después de intentar cargar las bibliotecas de versión.
oslsSymLinksDontLoad: no carga los SymLinks.