Informacje o funkcji RTMPS

Funkcja RTMPS obsługuje różne algorytmy szyfrowania służące do bezpiecznego przesyłania strumieniowego RTMPS. Aby zapewnić kompatybilność z szeroką gamą serwerów docelowych, jest obsługiwanych kilka algorytmów szyfrowania, w tym takie, które mogą być niezgodne z bieżącymi najlepszymi praktykami bezpieczeństwa.

Algorytmy szyfrowania obsługiwane przez funkcję RTMPS

Obsługiwane są następujące algorytmy szyfrowania.

  • 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

Informacje na temat zalecanych algorytmów szyfrowania

W oparciu o zalecenia NIST (NIST SP 800-57 Part 1, Revision 5) i powiązane standardy bezpieczeństwa, zalecane są następujące algorytmy szyfrowania.

  • 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

Informacje o przestarzałych algorytmach

Funkcja RTMPS obsługuje także poniższe algorytmy ze względu na kompatybilność, ale zostały one uznane za przestarzałe na podstawie zaleceń NIST (NIST SP 800-57 Part 1, Revision 5) i powiązanych standardów bezpieczeństwa i mogą zostać usunięte w przyszłych wersjach.

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

Zgodność połączenia

Funkcja RTMPS została zaprojektowana tak, aby zapewnić równowagę między bezpieczeństwem a kompatybilnością. Obecnie obsługujemy przestarzałe algorytmy z następujących powodów, ale w przyszłych wersjach możemy je usunąć, aby zwiększyć bezpieczeństwo.

  • Aby korzystać z funkcji przesyłania strumieniowego RTMPS, trzeba łączyć się z różnymi serwerami, które obsługują transmisję RTMPS.
  • Należy zachować kompatybilność ze starszymi systemami i serwerami.
  • Zmiana ustawień algorytmu szyfrowania po stronie serwera jest złożona i nie wszyscy użytkownicy są przygotowani na przejście do bezpiecznych ustawień.
  • Ustawienia serwera RTMPS są często wspólne z innymi bezpiecznymi usługami, dlatego konieczne jest uwzględnienie wpływu na inne usługi na serwerze, a wprowadzenie zmian nie zawsze może być łatwe.
  • Aby zapewnić współdziałanie w różnych środowiskach, konieczna jest obsługa szerokiej gamy algorytmów kryptograficznych.

Algorytm szyfrowania używany podczas połączenia RTMPS jest ustalany na drodze automatycznego uzgadniania z serwerem docelowym, więc zależy on od ustawień serwera. Chociaż jesteśmy świadomi ryzyka związanego z bezpieczeństwem, obecnie priorytetowo traktujemy szeroką kompatybilność, aby sprostać różnorodnym potrzebom naszych użytkowników.

Zagrożenia bezpieczeństwa

Używanie przestarzałych algorytmów, w tym CBC i DHE, zwiększa ryzyko, że zaszyfrowane dane mogą zostać odszyfrowane przez atakującego, co naraża dane przesyłane strumieniowo na ujawnienie.

Zalecenia dotyczące bezpiecznego połączenia

W przypadku korzystania z funkcji przesyłania strumieniowego RTMPS, należy wcześniej sprawdzić, czy serwer, z którym się łączysz, obsługuje zalecane algorytmy szyfrowania. Wskazane jest, aby włączyć tylko zalecane algorytmy oraz wyłączyć po stronie serwera algorytmy niezalecane.


Źródła

  • 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).
TP1002071158