대다수 경쟁 브라우저들과 콘텐츠 산업은 W3C의 암호 미디어 확장(Encrypted Media Extension) 표준을 지원하고 있어 Mozilla는 사용자가 모든 콘텐츠를 즐길 수 있도록 하는 접근성을 개선하고자 W3C EME 표준을 지원을 해야하는 어려운 선택을 하였습니다. 이 글에서는 그 배경과 방법에 대해 설명하고자 합니다.

디지털 저작권 관리(DRM)은 어려운 문제입니다. 콘텐츠 소유자 입장에서는 저작권 제한을 강제하기 위해 사용자들이 콘텐츠를 공유하는 것을 제어할 기술적 장치를 가져야 한다고 주장하고 있고, 다른 한편으로는 사용자가 하나의 콘텐츠를 구매해서 다른 장치에 재생하는 데 복잡한 절차와 제한을 가하고 있어 불편한 상황입니다.

DRM과 웹은 어색한 사이는 아닙니다. 이미 대부분 PC 사용자는 어도비 플래시 및 마이크로소프트 실버라이트가 설치된 플러그인을 가지고 있고, 둘다 DRM 기능을 이미 탑재해서 DRM이 걸린 콘텐츠를 재생하기 위해 과거로 부터 이들 플러그인이 사용중입니다.

2013년에 구글과 마이크로소프트는 넷플릭스 같은 여러 콘텐츠 제공사와 함께 웹 표준에 포함시킬 DRM 기능을 W3C에 암호 미디어 확장(Encrypted Media Extension)이라는 이름으로 제안했습니다.

W3C EME 스펙은 HTML5 <video> 요소로 부터 DRM 콘텐츠를 재생하는 방법, 즉 웹에서 어떻게 콘텐츠 복호 모듈(Content Decryption Module)을 사용할 수 있는지에 대한 것입니다. 그러나, 이 스펙은 단지 CDM에 접근하는 자바스크립트 API만 가지고 있지 실제로 CDM 그 자체는 상업적인 제품이고 EME에서는 다루고 있지 않습니다. 이점은 Mozilla를 비롯하여 많은 이들의 비판을 받았습니다.

Mozilla는 사용자를 중심에 두고 그들의 온라인 경험을 직접 제어할 수 있는 오픈웹을 믿습니다. 많은 전통적인 DRM 방식은 사용자의 제어권을 박탈하고 콘텐츠 제공자의 이익에 따라 통제될 수 있기 때문에 문제가 많습니다. 이러한 DRM 방식 대신 우리는 워터 마킹 같은 콘텐츠 배포 방식을 오랫동안 대안으로 주장해 왔습니다. 워터마킹은 사용자의 신분 정보를 미디어에 태깅해서 콘텐츠의 공유 방식은 자유롭게 하면서 같은 사용자의 다른 기기 지원이 손쉽게 해주게 됩니다.

Mozilla는 콘텐츠 산업이 특정 기기에 콘텐츠를 가두는 방식에서 벗어나 우리가 원하는 대안으로 이동하기를 권고해왔습니다.

하지만, 구글과 마이크로소프트는 W3C EME 방식을 탑재하고 대다수 콘텐츠 제공자들이 이를 제공함에 따라 Firefox 사용자는 (넷플릭스, 아마존 비디오, 훌루와 같은) DRM 제한 콘텐츠를 시청할 수 없는 위기에 바졌습니다. 이는 북미 트래픽의 30% 이상에 해당합니다.

Mozilla가 W3C EME 스펙을 구현하지 않으면, 사용자는 이를 지원하는 다른 브라우저를 선택할 수 밖에 없다는 결론에 도달했습니다.

DRM 산업 지형이 변화하는 데 Mozilla가 이를 무시하기는 어렵습니다. Mozilla가 철학적으로 콘텐츠 소유자가 웹 상에서 공유를 제약하는 것을 반대하는 입장이더라도, Firefox는 웹 사용자가 콘텐츠에 쉽게 접근하고 즐길 수 있도록 도와 주는 소프트웨어이기 때문입니다.

따라서, 우리는 W3C EME를 우리 제품내에 구현하기로 결정하고 이를 데스크톱 버전에 먼저 적용할 예정입니다. 이는 오픈웹이라는 우리의 사명에 비추어 매우 어렵고 불편한 결정입니다. 하지만 DRM 산업의 현재 상태에서 직접 들어가 우리 사용자의 권리를 최대한 확장하는 논쟁을 계속하는 기회를 가지는 것이 중요합니다. 현재 구글과 마이크로소프트가 구현한 W3C EME 방식은 오픈 소스로 공개되어 있지 아니며 사용자에게 투명성이 부족합니다. 이 두 가지 모두 신뢰를 위한 웹에서 필수 불가결한 사항입니다.

앞서 말씀 드린 대로 W3C EME 스펙은 콘텐츠 복호 모듈(CDM)을 통해 제한된 콘텐츠를 재생합니다. CDM의 목적은 사용자가 정밀하게 내부 구조를 조사하여 (DRM을 무력화하는) 변조를 행하지 못하도록 하기 위한 목적이므로, EME 구조상 소스 코드가 공개될 수 없게 되어 있지만 사용자 보안, 개인 정보 관리와 그 투명성에 대해서는 심각히 고민해야 합니다.

보안적 측명에서 Mozilla는 브라우저내 모든 코드가 공개되어 사용자 및 보안 연구자들도 이를 조사할 수 있어야 한다고 생각합니다. 그러나, DRM 시스템은 노골적으로 소스 코드가 공개되지 않음을 전제하고 개인 정보 영역에서도 처리 방식이 우호적이지 않습니다. DRM에서 기기를 제어하는 방식 중 가장 많이 쓰는 것이 바로 “핑거프린팅(fingerprinting)”입니다. 이는 사용자 기기에 대한 유일한 인식 정보를 만드는 것인데 이는 비공개 코드를 통해 투명하지 않는 방식으로 수집되어, 이를 저장하는 DRM 서버가 얼마나 취약한지 말하기 어려운 상태입니다.

우리는 콘텐츠 제공자의 이해애 만족하면서도 가능한 사용자의 제어권과 투명성을 보장하는 방식으로 W3C EME 스펙 구현 방식을 설계했습니다. W3C EME 구조 상 어쩔 수 없이 비공개 코드를 가진 CDM을 탑재할 수 밖에 없고, Firefox의 CDM 제공사로 어도비를 선택하였습니다. 이는 어도비가 대부분 콘텐츠 제공사와 계약이 되어 있기 때문입니다.

mozilla-w3c-eme

Firefox는 Adobe CDM 모듈을 직접 로딩하지 않습니다. 대신 우리는 소스코드를 공개한 샌드박스 시스템을 사용할 것입니다. 우리가 구현한 방식에서는 Adobe CDM이 사용자 하드 디스크나 네트웍에 직접 접근할 수 없고, 대신 샌드박스가 Firefox가 정한 통신 채널로만 CDM과 암호화된 데이터를 받아 그 결과를 표시하게 됩니다.

기존에는 DRM 시스템이 사용자 기기로 부터 직접 식별 정보를 수집하여, 콘텐츠가 다른 기기로 이동 되었다면 재생을 금지시키는 방식을 사용하고 있습니다.

반대로 Firefox 샌드박스는 CDM이 직접 사용자 기기의 식별 정보 수집을 막고 샌드박스가 직접 기기당 식별 정보를 제공합니다. 샌드박스가 생성한 식별 정보는 CDM이 특정 콘텐츠와 연결해서 콘텐츠 소유자가 제어할 수 있긴 하지만 사용자나 사용자 기기에 대한 (더 자세한 정보 수집 같은) 알 수 없는 행위는 차단합니다. 또한, 샌드박스가 제공한 식별정보를 가지고 웹 사이트에서 사용자를 추적하기 어렵게 하기 위해 각 사이트마다 다른 식별자를 생성해서 전달 합니다.

어도비와 콘텐츠 제공사들은 우리가 만든 샌드박스가 오픈소스로 공개되기 때문에 그 과정을 확인할 수 있고 자신들의 과정을 사용자들이 직접 믿을 수 있도록 할 수 있습니다. 이러한 것에는 식별 정보의 처리, 스트리밍 데이터의 이용 제한, 사용자 콘텐츠 저장 제한 등이 포함되어 있습니다. Mozilla는 이러한 샌드박스를 함께 배포하고, 개발자가 대안으로 CDM을 포함한 빌드를 사용할 수 있도록 할 예정입니다. 하지만 CDM 플러그인 그자체는 어도비가 배포하며 Firefox에 포함되지 않습니다. 웹 브라우저 사용자가 직접 어도비로 부터 CDM을 다운로드 받아 직접 활성화해야 합니다.

우리는 궁극적으로 DRM 없는 웹을 원하지만, Firefox 사용자는 원하는 콘텐츠에 접근할 권리도 있습니다. (샌드박스 방식을 통해) 어도비 CDM을 연결하는 우리의 결정은 사용자가 콘텐츠 제공사가 원하는 제한된 콘텐츠를 접근하는 중에서도 투명성을 극대화하고 사용자 통제권을 확보하기 위한 방법입니다.

W3C EME 스펙이 계속 확대될 것 같고 이를 지원하는 것은 웹 상에서 기존 플러그인의 사용 범위를 제한하는 것에 부합하며, 궁극적으로 플러그인을 완전히 제거할 수 있게 될 것입니다. 웹은 포괄적이고 효율적인 기술 플랫폼으로 진화해 왔으며, 플러그인 같은 네이티브 확장에 의존하는 것에서 탈피할 것입니다.

W3C EME 기반 DRM은 한동안 우리가 사는 웹 세상에 존재하겠지만 우리는 궁극적으로 워터마킹 같은 더 나은 시스템을 믿고 앞으로도 계속 홍보해 나갈 것입니다. 이는 사용자의 선택과 편의성에 부합하고 콘텐츠 비지니스에도 좋기 때문입니다. Mozilla는 이러한 변화를 가져오기 위한 표준과 기술 개발에도 계속 매진할 것입니다.

이 글은 Mozilla의 CTO인 Andreas Gal의 Reconciling Mozilla’s Mission and W3C EME의 한국어 번역입니다.

  1. ingeeKim wrote on 5월 15th, 2014 at 1:09 오후:

    모질라가 어려운 결정을 했군요. CDM을 샌드박스 위에 놓는 아이디어는 훌륭하다고 생각합니다.

  2. Pingback from The State of HTML5 Video – EME (Encrypted Media Extensions) | kklee79 on 5월 18th, 2015 at 9:35 오후:

    […] Mozilla의 사명과 W3C EME 스펙의 조화, http://hacks.mozilla.or.kr/2014/05/reconciling-mozillas-mission-and-w3c-eme/ […]

답글 남기기