---
title: "멀티DRM 퀵스타트"
description: "본 문서는 도브러너 멀티DRM 서비스의 빠른 체험을 위해 콘텐츠 패키징과 DRM 라이선스 연동 및 재생 과정을 안내합니다."
---
> For the complete documentation index, see [llms.txt](/llms.txt).

import YouTubeEmbed from '../../../../../../components/YouTubeEmbed.astro';

본 문서는 도브러너 멀티DRM 서비스의 빠른 체험을 위해 **콘텐츠 패키징과 DRM 라이선스 연동 및 재생 과정을 안내**합니다.

퀵 스타트는 아래와 같은 세 가지 단계로 구성되어 있습니다. 가장 간단하고 빠르게 따라할 수 있도록 도브러너 CLI 패키저와 라이선스 토큰 연동으로 DRM 콘텐츠를 HTML5 플레이어에서 재생하는 과정을 설명합니다.

 - 1단계: 도브러너 트라이얼 계정 가입 및 테스트용 웹서버 준비
 - 2단계: 도브러너 CLI 패키저를 이용한 DRM 콘텐츠 패키징
 - 3단계: DevConsole 사이트를 통한 라이선스 토큰 생성 및 DRM 콘텐츠 재생

> 도브러너 CLI 패키저와 라이선스 토큰 연동에 대한 상세 설명은 다음 링크를 참고하시기 바랍니다.
>
> * 도브러너 CLI 패키저 가이드: https://docs.doverunner.com/ko/content-security/multi-drm/packaging/cli-packager/
> * 라이선스 토큰 연동 가이드: https://docs.doverunner.com/ko/content-security/multi-drm/license/license-token/

## 1단계 - 도브러너 트라이얼 계정 가입

퀵 스타트 진행을 위해서는 도브러너 서비스 사이트에 트라이얼 계정이 있어야 합니다. 아직 도브러너 서비스에 가입하지 않은 경우, 다음과 같은 과정을 통해 계정을 생성합니다.

### 1-1. 도브러너 멀티 DRM 트라이얼 가입

도브러너 콘솔 사이트 [회원 가입 페이지](https://console.doverunner.com/signup)에 접속 후 가입 양식을 입력하고 `확인` 버튼을 클릭합니다.

> 도브러너 콘솔 : 도브러너 서비스 가입 및 연동 관련 각종 설정과 조회를 할 수 있는 사이트입니다. 사이트 가입 후 이메일 인증을 해야 하며, 신규 가입한 계정의 경우 자동으로 트라이얼 플랜이 적용됩니다.
> [**도브러너 콘솔 바로 가기**](https://console.doverunner.com/)

### 1-2. 도브러너 계정 이메일 인증 및 트라이얼 사이트 생성

가입 시 입력한 이메일로 가입 환영 메일이 발송됩니다. 해당 메일의 `인증하기` 링크를 클릭해 이메일 인증을 수행합니다. 이메일 인증 후에는 트라이얼을 위한 사이트 정보가 자동으로 생성됩니다.

### 1-3. 트라이얼 사이트 정보 확인

도브러너 콘솔 사이트에 로그인 하여 `멀티 DRM` 메뉴의 `DRM 세팅` 화면으로 이동합니다. `설정 정보` 부분에 표시되는 `사이트ID`, `사이트 키`와 `액세스 키` 값을 메모장과 같은 곳에 별도로 복사해 둡니다. 또한 `멀티 DRM 설정` 부분의 `KMS 토큰` 값도 마찬가지로 복사해 둡니다.

이 값들은 이후 단계에서 DRM 연동에 사용됩니다.

### 1-4. 테스트용 웹서버 준비

DRM 콘텐츠의 재생을 테스트하기 위해서는 해당 콘텐츠 파일들을 업로드할 웹서버가 필요합니다. 임의의 위치에서 HTTPS URL로 콘텐츠 파일에 접근할 수 있도록, 외부 인터넷에서의 접근이 허용되고 SSL 인증서가 설치된 웹서버를 준비합니다.

> 별도의 테스트용 웹서버 준비가 어려운 경우 `AWS`, `Azure` 등의 클라우드 인프라 서비스를 이용하거나 [Netlify](https://www.netlify.com/), [Heroku](https://www.heroku.com/) 등 클라우드 플랫폼에서 제공하는 무료 HTTPS 호스팅을 활용할 수 있습니다.

## 2단계 - 도브러너 CLI 패키저를 이용한 DRM 콘텐츠 패키징

플레이어에서 DRM 콘텐츠 재생을 테스트하기 위해서는 우선 원본 영상에 DRM을 적용하는 패키징 과정이 필요합니다. 다음과 같은 과정을 통해 DRM 콘텐츠 패키징을 수행합니다.

<YouTubeEmbed videoId="F4ocVPv613c" />

### 2-1. CLI 패키저 다운로드 및 설치

본 사이트의 [패키저 / 샘플 다운로드 페이지](/ko/content-security/multi-drm/getting-started/downloads/)에서 `도브러너 Packager 다운로드` 버튼을 클릭해 CLI 패키저를 다운로드 합니다.

콘텐츠 패키징을 수행할 테스트 PC 또는 서버에 임의의 폴더를 생성하고, 다운받은 패키저 압축파일 내 `bin` 폴더의 OS별 실행 파일을 복사합니다. (예: ~/doverunner-test/DoveRunnerPackager )

> 도브러너 CLI 패키저는 64비트 기반의 윈도우즈와 리눅스(Ubuntu, CentOS) CLI(Command Line Interface) 환경을 지원합니다. 리눅스 환경의 경우, gcc와 g++ 라이브러리 6.0 버전 이상이 설치되어 있어야 합니다.

### 2-2. 원본 MP4 영상을 MPEG-DASH로 패키징

DRM 패키징과 재생 테스트에 사용할 MP4 (H264 AVC) 동영상 파일을 패키저 실행 파일이 저장된 폴더에 복사합니다. 

> 도브러너 CLI 패키저는 멀티 DRM용 `DASH-CENC`(Widevine, PlayReady), `HLS-AES`(FairPlay) 패키징과 NCG(Netsync Content Guard) DRM을 위한 NCG, NCG-HLS 패키징 기능을 지원합니다. 본 자습서에서는 간략한 테스트를 위해 DASH-CENC 패키징만 진행합니다.

아래와 같은 명령을 실행해 DASH 패키징을 수행합니다. 패키징 명령의 각종 입력값들에 대한 설명은 아래 표를 참고하시기 바랍니다.

```txt
./PallyConPackager --enc_token --content_id --dash -i -o
```

| 파라미터 | 입력 값 | 규격 | 예시 |
| :-------- | :------- | :---- | :---- |
| `--enc_token` | 도브러너 KMS와의 CPIX API 통신에 사용되는 KMS 토큰 값 | 문자열 | eyJhY2Nlc3Nfa2V5Ijoic05nMmF5UEXRlX2lkIjoiMFROQyJ9 |
| `--content_id` | DRM 패키징과 라이선스 발급 시 각 콘텐츠를 구분할 콘텐츠의 고유 아이디. 해당 아이디를 기준으로 DRM 암호화 키와 라이선스가 관리되며, 일반적으로 CMS (Content Management System) 에서 관리하는 콘텐츠 아이디가 입력되도록 연동 구현함. | 최대 200 자리 영문/숫자 문자열 | doverunner-intro |
| `-i` | 패키징할 원본 MP4 파일명. 패키저 실행 파일과 다른 경로에 있는 경우, 해당 경로를 포함한 파일명 입력 | 파일 경로 규격 | ~/doverunner-test/input/doverunner-intro.mp4 |
| `-o` | 패키징된 결과물이 저장될 경로 | 폴더 경로 규격 | ~/doverunner-test/output/doverunner-intro/ |

> 위 예시된 입력값에 따라 명령을 구성하면 아래와 같습니다. 예시로 표기된 KMS 토큰(enc_token) 값은 실제로는 동작하지 않으며 1단계에서 가입한 계정에 해당되는 값으로 교체하셔야 합니다.
> ```txt 
> ./PallyConPackager --enc_token eyJhY2Nlc3Nfa2V5Ijoic05nMmF5UEXRlX2lkIjoiMFROQyJ9 --content_id doverunner-intro --dash -i ~/doverunner-test/input/doverunner-intro.mp4 -o ~/doverunner-test/output/doverunner-intro/
> ```

패키징이 성공적으로 완료되면 도브러너 콘솔 사이트의 `DRM 패키징 이력` 페이지에 해당 이력이 표시됩니다.

### 2-3. 테스트용 웹 서버에 패키징된 DASH 콘텐츠 업로드

패키징이 완료되면 아웃풋 폴더 내 `dash` 폴더에 mpd 매니페스트 파일과 오디오/비디오 트랙으로 구성된 `MPEG-DASH` 형태의 결과물이 생성됩니다. 3단계의 DRM 콘텐츠 재생 테스트를 위해서는 해당 폴더를 테스트용 웹 서버에 업로드해야 합니다. CDN과 연결된 스토리지 또는 일반적인 웹 서버에 DASH 콘텐츠를 업로드 합니다.

> 크롬과 파이어폭스 등의 브라우저는 보안을 위해 미디어 스트리밍과 관련된 모든 URL에 필수적으로 HTTPS를 적용하도록 강제하고 있습니다. 3단계 재생 테스트를 위해서는 테스트용 웹 서버에도 SSL 인증서를 적용해 HTTPS URL을 사용해야 합니다.

## 3단계 - 라이선스 토큰 생성 및 DRM 콘텐츠 재생

[도브러너 DevConsole 페이지](https://devconsole.doverunner.com/)는 DRM 연동 개발에 도움이 되는 각종 테스트 기능을 제공합니다. 아래와 같은 과정을 통해 DRM 라이선스 발급에 필요한 토큰을 생성하고 2단계에서 패키징한 DRM 콘텐츠를 재생해봅니다.

### 3-1. DRM 라이선스 토큰 생성

패키징된 콘텐츠를 재생하기 위해서는 DRM 라이선스 연동을 통해 플레이어에 해당 콘텐츠의 라이선스가 발급되어야 합니다. 도브러너 멀티DRM은 토큰 또는 프록시 방식의 라이선스 연동을 지원하며, 본 자습서에서는 토큰 방식의 라이선스 연동으로 진행합니다.

<YouTubeEmbed videoId="GCVjXFEpiLQ" />

> 라이선스 발급 방식에 대한 상세 설명은 아래 링크된 온라인 가이드를 참고하시기 바랍니다.
> 
> * DRM 라이선스 발급 연동 가이드 : https://docs.doverunner.com/ko/content-security/multi-drm/license/

라이선스 요청에 사용되는 토큰은 정해진 규격에 따라 도브러너 멀티DRM이 적용될 동영상 서비스의 서버 사이드(백엔드)에서 생성되어 클라이언트의 플레이어 코드에 적용되어야 합니다.

본 자습서에서는 빠른 테스트 진행을 위해 도브러너 사이트의 `개발자 콘솔` 페이지에서 제공되는 `토큰 생성` 기능을 이용합니다. 아래 링크의 개발자 콘솔 페이지로 접속하여 각 항목들을 입력합니다.

- 토큰 생성 페이지 : https://devconsole.doverunner.com/drm-tools/license-token/#token-generator

| 항목 | 입력 값 | 규격 | 예시 및 비고 |
|-------|-------------------|----|----|
| SITE ID | 1단계에서 도브러너 콘솔 사이트의 `연동 설정` 화면에 표시된 트라이얼 사이트 ID | 4자리 영대문자 | ABCD |
| SITE Key | 도브러너 콘솔 사이트의 `연동 설정` 화면에 표시된 사이트 키 | 32자리 문자열 | 3H24FS8wdo3C7CWrSjcIhPYWpYaFu6Lh |
| ACCESS Key | 도브러너 콘솔 사이트의 `연동 설정` 화면에 표시된 액세스 키 | 32자리 문자열 | gktt7xArRiSrWXEvrommuBdUD6Ktk3cP |
| DRM Type | 재생할 클라이언트(브라우저)에서 지원되는 DRM을 입력 | Widevine / PlayReady / FairPlay | 크롬 / 파이어폭스: Widevine, IE11 / 엣지: PlayReady |
| CID | 2단계에서 CLI 패키저에 입력한 콘텐츠 ID | 최대 200자 영문/숫자 문자열 | doverunner-intro |
| USER ID | 콘텐츠 서비스 사용자의 권한 확인에 사용되는 고유한 사용자 ID. 토큰 방식의 연동에서는 콘텐츠 서비스 백엔드와 클라이언트 간에 직접 권한 확인이 완료된 후 토큰을 생성해야 함. | 최대 200자 영문/숫자 문자열 | test-user (임의로 입력) |
| Time stamp | 토큰의 유효성 발효 시간. 일반적으로 토큰 생성 시점으로 설정하며, 해당 시점 이후 기본 600초 동안 토큰이 유효함.(도브러너 콘솔 사이트에서 설정 가능) | yyyy-mm-ddThh:mm:ssZ (GMT 시간대 기준) | 2019-04-03T08:30:00Z |
| Response Format | 라이선스 요청에 대한 서버의 응답 형식을 선택. (퀵스타트에서는 `original` 선택) | `original` 또는 `json` | - `original`: 요청한 DRM 스펙에 따른 실제 라이선스 데이터를 응답<br/>- `json`: 라이선스 데이터와 추가 정보(클라이언트 기기 ID 등)를 포함한 JSON 형식으로 응답. 토큰 프록시 또는 클라이언트 SDK를 사용하는 경우에만 적용 가능.|
| Key Rotation | 라이브 스트림에 대한 키 로테이션 활성화 여부를 설정 (퀵스타트에서는 `false` 선택) | `true` 또는 `false` | |
| Token Rule | 라이선스 발급 시 적용될 각종 DRM 관련 룰 데이터 (상세 내용은 토큰 가이드 참조) | JSON 문자열 | {} |

위와 같이 토큰 생성에 필요한 값들을 입력하고 `REQUEST TOKEN` 버튼을 클릭하면 페이지 하단에 토큰 문자열이 생성됩니다. 해당 문자열을 복사해 다음 단계를 위해 별도로 저장해 둡니다.

> `DRM Type` 항목은 대소문자를 구분해 정확히 입력해야 하며, `Time stamp` 항목을 입력하지 않으면 현재 시간을 기준으로 토큰이 생성됩니다.

### 3-2. HTML5 플레이어를 통한 DRM 콘텐츠 재생

<YouTubeEmbed videoId="lBLIZqxZUZs" />

재생 테스트를 위해 DevConsole의 [HTML5 재생 테스트 페이지](https://devconsole.doverunner.com/drm-tools/tester/#web-player)로 이동합니다.

해당 페이지의 입력란에 아래와 같이 `DASH URL`과 `pallycon-customdata-v2` 항목을 입력합니다.

- DASH URL: 2단계에서 테스트용 웹 서버에 업로드한 DASH 콘텐츠의 매니페스트 파일(.mpd) URL을 입력
- pallycon-customdata-v2: 3-1 단계에서 생성된 라이선스 토큰 문자열을 입력

![데브콘솔 재생 테스트 페이지](/img/content-security/drm-quickstart-playback-test-ko.png)

> 위 캡쳐 화면의 입력값들은 예시를 위한 데모 콘텐츠에 해당하는 값으로, 실제 퀵 스타트 진행 시에는 이전 단계에서 직접 생성한 값들을 입력해야 합니다.

위 항목들이 정상적으로 입력된 경우, `PLAY` 버튼을 클릭하면 하단에 DRM 콘텐츠 영상이 재생됩니다.

## 재생 시 각종 오류 처리

3단계에서 DRM 콘텐츠가 재생되지 않고 오류가 발생한 경우, 아래와 같은 사항들을 확인합니다.

### 테스트용 웹 서버의 CORS 설정

DRM 콘텐츠와 웹 플레이어의 URL 도메인이 다를 경우, 콘텐츠가 업로드된 서버에서 크로스 도메인 접근이 허용되어야 합니다. 해당 설정이 되어있지 않을 때 발생하는 `CORS`(Cross Origin Request Sharing) 오류에 대한 자세한 설명과 처리 방법은 다음 링크를 참고하시기 바랍니다.

- HTTP 접근 제어 (CORS): https://developer.mozilla.org/ko/Web/HTTP/Access_control_CORS

### 라이선스 토큰의 DRM Type 설정

재생 테스트를 수행하는 웹 브라우저가 3-1 단계에서 설정한 라이선스 토큰의 DRM Type과 일치하는지 확인합니다.

크롬/파이어폭스 브라우저를 이용하는 경우에는 `Widevine`, IE11/엣지 브라우저의 경우는 `PlayReady`로 DRM Type 값이 입력되어야 합니다.

### 라이선스 토큰의 만료 여부

유효 기간이 지난 토큰으로는 DRM 라이선스를 발급받을 수 없습니다. 토큰 유효기간은 기본적으로 생성 시점으로부터 10분(600초)이며, 이 값은 도브러너 콘솔 사이트의 `사이트 설정 > 연동 설정` 화면에서 조절할 수 있습니다.

> 주의 사항 - 토큰의 유효 기간은 DRM 라이선스의 유효기간과는 다른 개념입니다.
> 
> - 토큰 유효 기간: 해당 토큰으로 DRM 라이선스를 발급 받을 수 있는 기간
> - 라이선스 유효 기간: 라이선스 발급 이후에 해당 라이선스로 DRM 콘텐츠를 재생할 수 있는 기간

## 다음 단계

축하합니다! 여기까지 문제없이 진행하셨다면 도브러너 멀티DRM 서비스를 적용하는데 필요한 전 과정을 체험하신 것입니다.

다음 단계로의 진행을 위해서는 아래 가이드들을 참고하시기 바랍니다.

- [콘텐츠 패키징 가이드](/ko/content-security/multi-drm/packaging/): 다양한 콘텐츠 패키징 방법들을 안내합니다.
- [라이선스 연동 가이드](/ko/content-security/multi-drm/license/): DRM 라이선스 발급을 위한 연동 방식들을 설명합니다.
- [클라이언트 연동 가이드](/ko/content-security/multi-drm/clients/): 다양한 클라이언트 기기들에서 DRM 콘텐츠를 재생하는 방법을 안내합니다.