Sobre a função RTMPS

A função RTMPS suporta uma variedade de algoritmos de encriptação para transmissões RTMPS seguras. Para garantir a compatibilidade com uma vasta gama de servidores de destino, são suportados vários algoritmos de encriptação, incluindo alguns que podem não estar em conformidade com as melhores práticas de segurança atuais.

Algoritmos de encriptação suportados pela função RTMPS

São suportados os seguintes algoritmos de encriptação.

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256
  • TLS_AES_128_CCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_ECDSA_WITH_AES_256_CCM
  • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_DHE_RSA_WITH_AES_256_CCM
  • TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_128_CCM
  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
  • TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_DHE_RSA_WITH_AES_128_CCM
  • TLS_DHE_RSA_WITH_AES_128_CBC_SHA256

Sobre os algoritmos de encriptação recomendados

Com base nas Recomendações NIST (NIST SP 800-57 Part 1, Revision 5) e nas normas de segurança relacionadas, recomendam-se os seguintes algoritmos de encriptação.

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256
  • TLS_AES_128_CCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_ECDSA_WITH_AES_256_CCM
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_128_CCM
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

Sobre os algoritmos obsoletos

A função RTMPS também suporta os seguintes algoritmos por razões de compatibilidade, porém, estes algoritmos estão obsoletos com base nas Recomendações NIST (NIST SP 800-57 Part 1, Revision 5) e nas normas de segurança relacionadas e podem ser removidos em versões futuras.

Key exchange algorithms

  • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_DHE_RSA_WITH_AES_256_CCM
  • TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
  • TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_DHE_RSA_WITH_AES_128_CCM
  • TLS_DHE_RSA_WITH_AES_128_CBC_SHA256

Compatibilidade de ligação

A função RTMPS foi concebida para equilibrar segurança e compatibilidade. Atualmente, suportamos algoritmos obsoletos pelos seguintes motivos, mas podemos remover estes algoritmos em versões futuras para reforçar a segurança.

  • Para utilizar a função de transferência RTMPS, é necessário ligar-se a vários servidores que suportam a entrega de RTMPS.
  • A compatibilidade com sistemas mais antigos e servidores legados deve ser mantida.
  • Alterar as definições do algoritmo de encriptação no lado do servidor é complexo e nem todos os utilizadores estão preparados para mudar para uma definição segura.
  • As definições do servidor RTMPS são frequentemente partilhadas com outros serviços seguros, pelo que é necessário ter em conta o impacto noutros serviços do servidor, e as alterações nem sempre são fáceis de implementar.
  • Para assegurar a interoperabilidade em diferentes ambientes, é necessário apoiar uma vasta gama de algoritmos criptográficos.

O algoritmo de encriptação utilizado durante a ligação RTMPS é determinado pela negociação automática com o servidor de destino, pelo que depende das definições do servidor. Embora estejamos cientes dos riscos de segurança, atualmente damos prioridade a uma ampla compatibilidade, de modo a satisfazer as diversas necessidades dos nossos utilizadores.

Riscos de segurança

A utilização de algoritmos obsoletos, incluindo CBC e DHE, aumenta o risco de que os dados encriptados possam ser desencriptados ou adulterados por um atacante, expondo os dados que estão a ser transmitidos.

Recomendações para uma ligação segura

Ao utilizar a função de transmissão RTMPS, verifique previamente se o servidor ao qual se está a ligar suporta os algoritmos de encriptação recomendados. Recomendamos que ative apenas os algoritmos recomendados e desative os algoritmos não recomendados no lado do servidor.


Referências

  • Recommendation for Key Management, Special Publication 800-57 Part 1 Revision 5, NIST, 2020.
  • Transitioning the Use of Cryptographic Algorithms and Key Lengths, Special Publication 800-131A Revision 2, NIST, 2019.
  • Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication, Special Publication 800-38B, NIST, 2005 (includes updates as of 10/06/2016).
TP1002071118