Lab
  • DRM 패키징 튜토리얼코스
  • 멀티 DRM 기술에 대해 알아야 할 5가지코스
  • DoveRunner Anti Piracy 시작하기코스
  • DoveRunner 포렌식 워터마킹 시작하기코스
  • DoveRunner 모바일 앱 보안 시작하기코스
  • DoveRunner 멀티DRM 시작하기코스
  • DoveRunner Transcoding & Packaging 시작하기코스
  • DRM CLI Packager로 콘텐츠 패키징하기레슨 · DRM 패키징 튜토리얼
EN

Widevine DRM의 개념과 동작 방식

Google Widevine DRM의 구성 요소와 보안 레벨, 라이선스 정책 기반 활용 사례, 지원 플랫폼을 알아봅니다.

레슨 27분

Widevine DRM이란?

Widevine DRM은 프리미엄 미디어를 보호하기 위한 구글의 콘텐츠 보호 시스템으로, 전 세계 주요 콘텐츠 서비스에서 사용되고 있습니다. Widevine은 Chrome, Firefox, Edge 브라우저와 Android 기기, Chromecast와 Google TV, 그리고 다양한 스마트 TV와 OTT 기기에 내장되어 있습니다.

간략한 역사

Widevine은 스마트카드 기반의 콘텐츠 보안 기술을 대체하기 위해 Widevine Technologies가 개발한 기술이며, 2010년 구글이 이 회사를 인수했습니다. 초기의 Widevine Classic(.WVM 포맷)은 이미 오래전에 지원이 종료되었고, 현재의 Widevine DRM(과거 명칭 Widevine Modular)은 DASH, HLS, CMAF와 HTML5 EME/MSE 표준을 기반으로 합니다.

Widevine에는 하나의 제품 버전이 없으며, 각 구성 요소가 개별적으로 버전을 관리합니다. 대표적으로 기기가 구현한 CDM 버전과 OEMCrypto API 버전이 있습니다.

구성 요소와 동작 방식

Widevine은 라이선스 서버, 라이선스 프록시, 클라이언트 기기로 구성됩니다.

  • 라이선스 서버: DRM 라이선스를 생성하고 발급합니다. 구글의 Widevine License Server SDK로 구축되며, DoveRunner 같은 Widevine 파트너 업체나 콘텐츠 서비스 사업자가 직접 호스팅합니다. 라이선스 서버를 호스팅하려면 Widevine 계약과 인증 정보가 필요합니다.
  • 클라이언트 기기: Android 폰과 TV, 셋톱박스, 브라우저 등이 해당됩니다. 기기 제조사는 Widevine과 별도 계약을 맺고 Widevine CDM과 OEMCrypto를 탑재합니다.

구글은 최근 자체 Cloud License Service와 이 서비스로 요청을 전달하던 Proxy SDK의 지원을 중단(deprecated)했습니다. 따라서 현재 Widevine 라이선스는 파트너 업체나 콘텐츠 서비스 사업자가 직접 운영하는 License Server SDK를 통해서만 발급됩니다.

구글은 파트너를 위한 선택형 교육 프로그램으로 CWIP(Certified Widevine Implementation Partner)를 운영하고 있습니다. (참고 1) DoveRunner는 Widevine 공식 파트너입니다.

보안 레벨

Widevine 클라이언트는 다음 세 가지 보안 레벨 중 하나를 가집니다.

  • L1: 복호화와 비디오 디코딩이 모두 기기의 '신뢰 실행 환경'(Trusted Execution Environment, 이하 TEE) 안에서 처리됩니다. 대부분의 서비스에서 HD/UHD 프리미엄 콘텐츠를 재생하려면 L1이 필요합니다.
  • L2: 복호화만 TEE에서 처리되며, 거의 사용되지 않습니다.
  • L3: 모든 처리가 소프트웨어로 이루어집니다.

PC의 Chrome, Firefox, Edge 브라우저는 Widevine L3를 사용합니다. 이 때문에 재생 해상도가 제한되고 화면 녹화에 취약하며, Windows 브라우저에서 하드웨어 기반 4K 재생은 Widevine이 아니라 PlayReady SL3000으로 이루어집니다. 또한 PC 브라우저에는 VMP(Verified Media Path)가 적용되고 구글이 오래된 CDM 버전을 주기적으로 폐기하기 때문에, 업데이트하지 않은 브라우저에서는 Widevine 콘텐츠가 재생되지 않습니다.

라이선스에 출력 단의 HDCP(예: UHD에는 HDCP 2.2)를 요구하도록 설정하면, 보호되지 않은 디스플레이에서는 콘텐츠가 재생되지 않습니다.

활용 사례

Widevine 라이선스 서버는 라이선스를 발급할 때 콘텐츠 재생 기간에 대해 다음과 같은 규칙을 설정할 수 있습니다. (참고 2)

  • License Duration: 라이선스의 유효 기간으로, 해당 라이선스로 콘텐츠를 얼마나 오래 재생할 수 있는지를 의미합니다. 아래의 모든 시나리오에 공통으로 적용됩니다.
  • Playback Duration: 콘텐츠를 처음 재생한 시점부터 라이선스가 유효한 기간입니다. 오프라인 시나리오나 라이선스 갱신 시나리오에서 사용됩니다.
  • Rental Duration: 콘텐츠를 처음 재생하기 전까지 라이선스가 유효한 기간입니다. 오프라인 시나리오에서 사용됩니다.

기본 스트리밍

스트리밍 시나리오에서는 재생 기기가 항상 인터넷에 연결되어 있다고 보고, License Duration으로 재생 가능 시간을 제한합니다.

(예: License Duration 180분 → 3시간 동안 재생 가능)

라이선스 갱신

라이브(리니어) 콘텐츠나 동시 재생 제한을 지원하려면, 스트리밍 재생 중에 라이선스를 주기적으로 갱신할 수 있습니다. 전체 재생 가능 시간을 Playback Duration으로 지정하고 Renewal Delay를 그보다 짧게 설정하면, 해당 간격마다 라이선스가 갱신됩니다.

(예: Playback Duration 180분, Renewal Delay 15분 → 15분마다 라이선스를 재발급하며 최대 3시간 재생)

오프라인(대여)

다운로드한 콘텐츠를 오프라인으로 재생하는 경우, Rental Duration과 Playback Duration으로 '다운로드한 콘텐츠를 얼마나 보관할 수 있는지'와 '얼마나 재생할 수 있는지'를 각각 지정할 수 있습니다.

(예: Rental Duration 30일, Playback Duration 3시간 → 다운로드 후 30일 이내에 시청, 재생 시작 후 최대 3시간)

지원 플랫폼과 콘텐츠 포맷

  • 브라우저: Windows, macOS, Linux, ChromeOS의 Chrome, Firefox, Edge(L3). Safari는 Widevine을 지원하지 않으며, 애플 플랫폼에서는 FairPlay를 사용합니다.
  • 모바일: Android 앱과 Android용 Chrome(기기에 따라 L1 또는 L3)
  • OTT: Android TV와 Google TV, Chromecast, Fire TV, Roku, 그리고 삼성 Tizen, LG webOS 같은 스마트 TV

플랫폼별 최신 지원 정보는 DoveRunner 지원 환경 문서를 참고하시기 바랍니다.

콘텐츠 포맷

  • 스트리밍 포맷: fMP4 또는 WebM 컨테이너 기반의 MPEG-DASH, HLS, CMAF
  • 암호화 모드: cenc(가장 넓은 지원 범위), cbcs(Android 7 이상, Chromecast, 브라우저 등 대부분의 최신 기기)
  • 비디오 코덱: AVC(H.264), HEVC(H.265), VP9, AV1
  • 오디오 코덱: AAC, AC3, E-AC-3, Opus

구글이 시작한 오픈소스 웹 플레이어인 Shaka Player는 대부분의 브라우저에서 Widevine, PlayReady, FairPlay 콘텐츠를 재생할 수 있습니다.

DoveRunner 멀티 DRM은 PlayReady, Widevine, FairPlay 라이선스를 하나의 연동으로 통합 관리할 수 있는 클라우드 기반 SaaS입니다.