RTCPeerConnection | DTLS

Uma vez que haja um par de candidatos válido (ambos os peers conseguem se conectar e trocar dados entre si), é hora de tornar a conexão segura. DTLS é um protocolo criptográfico que criptografa os dados para evitar a inspeção ou modificação do conteúdo dos dados trocados.

 

O DTLS requer as bibliotecas openSSL (a partir do openSSL 1.1+)

 

A configuração do DTLS pode ser encontrada na propriedade RTCOptions.DTLSOptions do TsgcRTCPeerConnection. Para habilitar o DTLS, defina a propriedade RTCOptions.DTLS como True. Veja abaixo as principais propriedades:

 

 

RootCertFile: caminho para o arquivo de certificado raiz.

CertFile: caminho para o arquivo de certificado.

KeyFile: caminho para o arquivo de chave do certificado.

VerifyCertificate: se o certificado deve ser verificado, habilite esta propriedade.

VerifyDepth: é uma propriedade Integer que representa o número máximo de links permitidos quando a verificação está

OpenSSL_Options: configuração das bibliotecas openSSL.

APIVersion: permite definir qual API OpenSSL será utilizada. Somente a API OpenSSL 1.1+ suporta DTLS.

oslAPI_1_1: usa a API 1.1 do OpenSSL, requer nossa biblioteca Indy personalizada e permite usar as bibliotecas OpenSSL 1.1.1 (com suporte a TLS 1.3).

oslAPI_3_0: utiliza a API 3.0 do OpenSSL, requer nossa biblioteca Indy personalizada e permite utilizar as bibliotecas OpenSSL 3.0.0 (com suporte a TLS 1.3).

LibPath: aqui você pode configurar onde estão localizadas as bibliotecas openSSL

oslpNone: este é o padrão, as bibliotecas openSSL devem estar na mesma pasta onde está o binário ou em um caminho conhecido.

oslpDefaultFolder: define automaticamente o caminho openSSL onde as bibliotecas devem estar localizadas para todas as personalidades do IDE.

oslpCustomFolder: se esta for a opção selecionada, defina o caminho completo na propriedade LibPathCustom.

LibPathCustom: quando LibPath = oslpCustomFolder, defina aqui o caminho completo onde estão localizadas as bibliotecas openSSL.

UnixSymLinks: habilita ou desabilita o carregamento de SymLinks em sistemas Unix (por padrão está habilitado, exceto no OSX64):

oslsSymLinksDefault: por padrão estão habilitados, exceto sob OSX64 (após o MacOS Monterey falha ao tentar carregar a biblioteca sem versão.).

oslsSymLinksLoadFirst: Carrega os SymLinks e faz isso antes de tentar carregar as bibliotecas de versão.

oslsSymLinksLoad: Carrega os SymLinks após tentar carregar as bibliotecas de versão.

oslsSymLinksDontLoad: não carrega os SymLinks.