RTMPS 기능 소개
RTMPS 기능은 다양한 암호화 알고리즘을 지원하여 RTMPS 스트리밍을 안전하게 보호합니다. 다양한 대상 서버와의 호환성을 보장하기 위해 여러 암호화 알고리즘이 지원되는데, 여기에 포함된 것이 현재의 보안 모범 사례에 부합되지 않을 수도 있습니다.
RTMPS 기능이 지원하는 암호화 알고리즘
다음과 같은 암호화 알고리즘이 지원됩니다.
- 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
권장되는 암호화 알고리즘 소개
NIST 권장 사항(NIST SP 800-57 Part 1, Revision 5) 및 관련 보안 표준을 토대로 다음과 같은 암호화 알고리즘이 권장됩니다.
- 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
더 이상 사용되지 않는 알고리즘 소개
또한 RTMPS 기능은 호환성을 위해 다음과 같은 알고리즘도 지원하지만, NIST 권장 사항(NIST SP 800-57 Part 1, Revision 5) 및 관련 보안 표준에 따라 더 이상 사용되지 않으며 이후 버전에서 제거될 수도 있습니다.
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
연결 호환성
RTMPS 기능은 보안과 호환성 사이의 균형을 맞추도록 설계되었습니다. 현재 당사는 다음과 같은 이유로 더 이상 사용되지 않는 알고리즘을 지원하고 있지만, 보안 강화를 위해 향후 버전에서 이러한 알고리즘을 제거할 수도 있습니다.
- RTMPS 스트리밍 기능을 사용하려면, RTMPS 전송을 지원하는 다양한 서버에 연결해야 합니다.
- 구형 시스템 및 레거시 서버와의 호환성을 유지해야 합니다.
- 서버 측에서 암호화 알고리즘 설정을 변경하는 것은 복잡하며, 모든 사용자가 보안 설정으로 변경할 준비가 되어 있는 것은 아닙니다.
- RTMPS 서버 설정은 다른 보안 서비스와 공유되는 경우가 많으므로, 서버의 다른 서비스에 미치는 영향을 고려해야 하며, 변경 사항을 구현하기가 까다로울 수 있습니다.
- 다양한 환경에서 상호 운용성을 보장하려면 광범위한 암호화 알고리즘을 지원해야 합니다.
RTMPS 연결 중에 사용되는 암호화 알고리즘은 대상 서버와의 자동 협상을 통해 결정되므로, 서버의 설정에 따라 암호화 알고리즘이 달라집니다. 당사는 보안 위험을 인식하고 있지만, 사용자의 다양한 요구를 충족하기 위해 현재는 광범위한 호환성을 우선시하고 있습니다.
보안 위험
CBC 및 DHE을 비롯하여 더 이상 사용되지 않는 알고리즘을 사용하면 암호화된 데이터가 공격자에 의해 해독될 위험이 높아지고, 스트리밍 중인 데이터가 노출될 수 있습니다.
보안 연결에 대한 권장 사항
RTMPS 스트리밍 기능을 사용하는 경우, 연결하려는 서버가 권장 암호화 알고리즘을 지원하는지 미리 확인하여 주십시오. 서버 측에서 권장되는 알고리즘만 활성화하고 권장되지 않는 알고리즘은 비활성화하는 것이 좋습니다.
참조
- 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).

