석사학위 논문

DMP와 MPEG-21 기반의 상호운용 가능한 DRM 시스템에 관한 연구

A Study on Interoperable DRM System based on DMP and MPEG-21

2006년 12월

배재대학교 대학원

컴퓨터공학과 컴퓨터공학전공

류 광 희

i

DMP와 MPEG-21 기반의 상호운용 가능한 DRM 시스템에 관한 연구

지도교수 정 회 경

배재대학교 대학원

컴퓨터공학과 컴퓨터공학전공

류 광 희

2006년 12월

ii 류광희의 석사학위논문을 제출함

류광희의 석사학위논문을 인준함

심사위원장 김 진 수 (인)

심사위원 조 인 준 (인)

심사위원 정 회 경 (인)

2006년 12월

배재대학교 대학원

iii DMP와 MPEG-21 기반의 상호운용 가능한 DRM 시스템에 관한 연구

류 광 희 지도교수 정 회 경

배재대학교 대학원 컴퓨터공학과

아날로그 콘텐츠의 디지털화는 개인 단말 기기들의 성능 향상으로 점차

가속화되는 현상을 보이고 있으며, 개인 사용자에 의한 콘텐츠 변형이

쉽게 이루어지고 있다. 이렇게 변형되거나 복제된 콘텐츠들은 초고속

인터넷 보급의 확산으로 단순한 유통 구조를 지니며 콘텐츠 시장에 미치는

부정적인 파급 효과를 증가시키는 원인으로 제시되고 있다. 그러므로

다양한 표준화 단체들과 콘텐츠 제공업체들은 불법적으로 유통되는 콘텐츠

및 저작자들의 저작권을 보호하기 위한 솔루션을 개발하고 있으며,

부분적인 상용화를 이루고 있는 상황이다.

그동안 MPEG(Moving Picture Experts Group)-1, MPEG-2, MPEG-4

등의 멀티미디어 데이터에 대한 성공적인 표준을 만든 MPEG 또한 디지털

콘텐츠를 보호하는 방법으로 기존 MPEG 표준들에 적용되는 IPMP

기술들을 개발하였다. 그러나 이러한 IPMP(Intellectual Property

Management and Protection) 기술들이 디지털 콘텐츠 보호에 대하여

만족할 정도의 기능을 제시하지 못하면서 이에 대한 대안으로

DMP(Digital Media Project) 표준이 제안되었다.

iv DMP 표준은 IPMP와 비교할 때 툴에 대한 은닉성을 가장 큰 차이로

설명할 수 있다. 기존 IPMP 표준들은 서로 다른 DRM(Digital Rights

Management) 기술들의 상호운용성(Interoperability)을 지원하기 위하여

인증(Authentication), 워터마킹(Watermarking), 암호화(Encryption) 등의

기능들을 모듈화하여 툴 정보와 API로 외부에 공개하였다. 그러나 이러한

방법은 DRM 시스템의 보안성을 저하시키는 원인이 될 수 있기 때문에

DMP에서는 툴들을 그룹화하고 그룹화한 툴을 사용하기 위하여 툴

에이전트 기술을 적용한 툴팩(ToolPack) 개념을 표준화하였다.

이에 본 논문에서는 상호운용성을 제공하기 위하여 MPEG의 IPMP

개념과 DMP의 툴팩 개념을 적용하여 시스템을 설계 및 구현하였다. 본

논문을 통하여 DMP 표준이 DRM 시장에서 갖는 활용성에 대한 분석 및

가능성이 검증되고, 보다 체계적인 표준화 작업의 참고 모델로 제시될

것으로 사료된다.

v 목차(Table of Contents)

요 약······························································································· i 목차(Table of Contents) ································································· iii

그림목차(List of Figures) ································································ vi

표목차(List of Tables) ·································································· viii

제 1 장 서 론·················································································1

1.1 연구의 배경 ········································································1

1.2 연구 목적 ···········································································3

1.3 연구 내용 및 범위 ·······························································4

1.4 논문의 구성 ········································································5

제 2 장 관련연구 ············································································6

2.1 DRM(Digital Rights Management)··········································6

2.1.1 개요··········································································6

2.1.2 개발현황····································································7

2.1.3 문제점·······································································8

2.2 MPEG의 IPMP ·································································· 10

2.2.1 MPEG IPMP의 개념 ·················································· 10

2.2.2 MPEG-2 IPMP ························································· 11

2.2.3 MPEG-4 IPMP ························································· 17

2.2.4 MPEG-21 IPMP ······················································· 21

2.3 DMP ················································································ 25

2.3.1 개요········································································ 25

vi 2.3.2 시스템 아키텍처 ······················································· 27

2.4 MPEG-21 REL(Rights Expression Language) ······················· 30

2.4.1 개요········································································ 30

2.4.2 데이터 모델 ····························································· 31

2.5 JMF ················································································· 33

2.5.1 개요········································································ 33

2.5.2 시스템 아키텍처 ······················································· 33

제 3 장 시스템 아키텍처 설계 ························································ 36

3.1 사용 시나리오 ··································································· 37

3.2 콘텐츠 전송 시스템···························································· 39

3.3 콘텐츠 소비 시스템···························································· 46

3.4 툴 전송 시스템·································································· 50

제 4 장 시스템 구현······································································ 52

4.1 시스템의 전체 구성···························································· 52

4.2 콘텐츠 전송 시스템···························································· 53

4.3 콘텐츠 소비 시스템···························································· 60

4.4 툴 전송 시스템·································································· 64

4.5 평가 분석 및 고찰 ····························································· 67

제 5 장 결 론··············································································· 71

참고문헌 ······················································································ 73

Abstract ······················································································ 76

감사의 글(Acknowledgement) ························································ 78

vii 그림목차(List of Figures)

그림 1. DRM 시스템의 상호운용성 부재 ...... 9

그림 2. MPEG-2 IPMP로 보호된 MPEG-2 시스템 콘텐츠 구조...... 13

그림 3. MPEG-2 IPMP 아키텍처...... 16

그림 4. MPEG-2와 MPEG-4 시스템의 차이점 비교 ...... 18

그림 5. MPEG-4 IPMP로 보호된 MPEG-4 시스템 콘텐츠 구조...... 19

그림 6. MPEG-4 IPMP 아키텍처...... 20

그림 7. DIDL의 IPMP DIDL 변환 처리 ...... 22

그림 8. IPMP 확장 시스템 구조 ...... 24

그림 9. DCF의 개념적인 모델...... 27

그림 10. DMP 시스템 아키텍처 ...... 28

그림 11. DRM 프로세서의 툴팩과 싱글 툴 개념...... 29

그림 12. REL 데이터 모델 ...... 32

그림 13. JMF 아키텍처 ...... 34

그림 14. 미디어 데이터의 플러그 인 프로세싱...... 34

그림 15. 전체 시스템 구성도...... 36

그림 16. 전송 시스템의 전체 작업 흐름도...... 40

그림 17. 전송 시스템의 툴 적용 처리 흐름도...... 42

그림 18. 전송 시스템의 스트림 처리 모듈의 구성도 ...... 44

viii 그림 19. 콘텐츠 소비 시스템의 전체 작업 흐름도...... 46

그림 20. 라이센스 문서의 스키마 구조...... 47

그림 21. 소비 시스템의 스트림 처리 모듈의 구성도 ...... 49

그림 22. 툴 전송 시스템 흐름도...... 50

그림 23. 전송 시스템 구현 화면...... 54

그림 24. 소비 시스템으로부터 전송 받는 라이센스 문서 구조 ...... 55

그림 25. 소비 시스템으로부터 전송 받은 콘텐츠 정보 구조 ...... 56

그림 26. 소비 시스템으로부터 전송 받은 권한 정보의 구조 ...... 57

그림 27. 소비 시스템 구현 화면...... 60

그림 28. 소비 시스템의 클래스 다이어그램...... 61

그림 29. 라이센스 문서 결재 화면...... 62

그림 30. 콘텐츠에 적용되는 플러그인 종류...... 63

그림 31. 툴 전송 시스템 구현 화면...... 64

그림 32. 툴 전송 시스템의 식별자 부재에 따른 문제 ...... 65

그림 33. MPEG의 IPMP와 DMP의 툴팩 개념 비교...... 68

ix 표목차(List of Tables)

표 1. IPMP가 적용된 MPEG-2 TS 구조...... 15

표 2. 디지털 미디어에 제안된 주요 표준 활동 사항...... 25

표 3. 라이센스 문서의 스키마 설명 ...... 47

표 4. 시스템 개발 및 시뮬레이션 환경 ...... 53

표 5. 컨트롤 포인트 리스트 ...... 59

표 6. 툴 전송 시스템의 툴 식별자 ...... 66

표 7. 기존 시스템과 비교 ...... 69

x 제 1 장 서 론

1.1 연구의 배경

컴퓨터의 보급화와 대중화는 디지털 관련 산업의 근간을 마련하였고,

네트워크 기술의 발전은 신규 서비스들의 제공을 통한 디지털 관련

산업의 확장 및 활성화를 이끌고 있다. 이러한 산업적인 변화는 아날로그

데이터의 디지털화 현상을 가속화 시키는 원인으로 작용하고 있다.

이미 게임, 음악, 영상, 방송, 텍스트 등의 콘텐츠들은 디지털화 및

온라인화가 이루어진 상태로 대중적으로 급속하게 유통되어 대규모의

디지털 콘텐츠 시장을 형성하고 있다. 2005년 디지털 콘텐츠의 제작,

관리, 저장, 유통과 관련된 국내 시장 규모가 8조 500억 원으로 성장하고

있으며, DMB(Digital Multimedia Broadcasting), WiBro(Wireless

Broadband Internet) 등의 신규 서비스들은 기존 서비스 영역을

확장하여 신규 시장을 조성함에 따라서 콘텐츠 시장의 전체적인 경쟁력

강화와 지속적인 성장 가능성이 전망되고 있다[1,2,3].

이와 같은 산업 조성과 성장을 주도한 원인인 아날로그 콘텐츠의

디지털화는 개인 사용자에 의한 변형이 용이하기 때문에 디지털 콘텐츠에

대한 보호 문제를 야기하며 산업 성장에 저해 요소로 작용하고 있다. 즉,

기존 아날로그 콘텐츠는 아날로그의 고유한 특성인 시간, 복제에 대하여

콘텐츠의 열화 현상이 발생시키는 제약 조건을 갖고 있지만, 디지털

콘텐츠는 시간이나 복제에도 원본과 동일한 수준의 콘텐츠를 생성할 수

있다. 오히려 향상된 영상 알고리즘 기술 개발로 원본보다 높은 질적

콘텐츠가 제작되는 현상이 발생하고 있다.

1 이러한 디지털 콘텐츠의 불법 복제와 신뢰성 있는 유통 체계의 비

확립은 디지털 콘텐츠 시장의 성장을 저해하는 것과 동시에 콘텐츠의

가치 사슬(Value chain)을 이루는 구성원들에게 부정적인 파급 효과를

증가시키기 때문에 콘텐츠를 제공하는 업체들은 콘텐츠를 보호하는

수단으로 DRM과 같은 보호 기술을 콘텐츠에 적용하여 유통시키고 있다.

DRM은 정의하는 곳에 따라서 다양한 개념으로 설명되지만,

일반적으로 디지털 콘텐츠를 보호하여 디지털 콘텐츠 시장의 보다

안정적인 수익 창출과 유통 과정에서 디지털 콘텐츠의 투명성 및

안전성을 확보할 수 있는 보호 기법으로 정리할 수 있다[4,5,6].

현재 DRM 시장을 주도하고 있는 단체는 MPEG, OMA[7]등의 국제

표준화 단체들과 Microsoft, IBM 같은 벤더(Vendor)들이 있다. 벤더들의

DRM은 해당 벤더들에서 기존에 사용자들에게 유통시킴으로써 사용

환경을 조성한 소프트웨어들에 대하여 자체 개발한 DRM 기술을

탑재하기 때문에 상용화가 보다 용이하며 이미 일부분에서는 상용화가

이루어지고 있다. 이에 비하여 국제 표준화 단체들은 기술의 빠른

상용화에 대하여 벤더 DRM 보다 취약하다고 평가되지만 기술의

통합이라는 측면에서 볼 때 상호운용성을 지원하는 강점을 갖고 있다.

특히 국제 표준화 단체인 MPEG은 멀티미디어 데이터에 대한 압축

기술 분야에서 다른 단체들과 비교하여 독보적인 위치를 차지하고 있으며,

이 기술을 통하여 많은 산업체들의 기반 환경을 조성하고 있다. 예를

들어 현재 보편적으로 사용하고 있는 MP3는 MPEG-1 audio layer-3의

약자로 아날로그 음악을 디지털화하는데 크게 기여하였고, MPEG-2는

디지털 방송 분야에서 멀티미디어 전송의 표준으로 사용하고 있다. 또한

2 MPEG-4는 전송 오류에 강하며 저대역폭에서 데이터 전송이 가능한

특징으로 이동 단말기기들의 통신에 활용되고 있는 상황이다.

이러한 MPEG 표준들은 원본 데이터와 비교하여 음질 및 화질의

열화가 없는 장점으로 대부분 성공적인 상업화와 대중화를 이루었지만,

또한 불법 복제의 문제를 확산하는 장애물로 지적되고 있다. 이에

MPEG에서는 디지털 콘텐츠를 보호하기 위한 기술로 IPMP를 개발하였다.

그러나 이러한 기술들이 기대치를 충족하지 못하였고, 표준화 단체와

벤더들의 보호 기술이 서로 상이한 솔루션을 갖는 상태로 개발되었기

때문에 개별적인 보호 기술을 적용한 시스템들 간에는 상호운용성의

부재라는 또 다른 문제가 발생하고 있다[8, 9].

1.2 연구 목적

MPEG은 디지털 콘텐츠를 보호하기 위하여 기본 MPEG-2, MPEG-4

표준에 적용되는 IPMP 표준을 개발하였으며, 현재 표준화가 진행중인

MPEG-21에도 IPMP 개념을 포함시켰다. 그러나 IPMP 기술만으로는

디지털 콘텐츠 보호에 대하여 만족할 정도의 기능을 제시가 힘들다는

판단 하에 이에 대한 대안으로 DMP 표준이 제안되었다.

DMP는 MPEG 의장이었던 Leonardo Chiariglione의 주도하에

시작되었고, 디지털 미디어 혁명의 촉진을 통하여 가치 사슬을 이루는

구성원들이 만족할 수준의 기능을 제공하는 것을 목적으로 한다[10].

이러한 목적을 실현하기 위하여 DMP의 주요 관심 대상도 상호운용

가능한 DRM 기술 개발로 설명할 수 있다.

3 표면상으로 DMP와 MPEG-21은 디지털 콘텐츠를 보호하기 위하여

독자적으로 DRM 기술을 개발하는 것처럼 보이지만 DMP의 표준 내용을

면밀하게 분석하면 많은 부분에서 MPEG-21의 표준 내용을 기반으로

표준화하는 것을 확인할 수 있다.

현재 DMP와 MPEG-21은 표준화가 완료되지 않았고, DMP는 MPEG과

같이 대중적으로 알려지지 않았기 때문에 DMP와 MPEG-21 표준

기술에 대한 연관 관계를 분석 및 적용한 시스템 구현이 미비하다.

이에 본 논문에서는 DMP와 MPEG-21에서 상호운용 가능한 시스템

구현에 주요 초점을 맞춰 표준 내용에 대한 분석 및 연구를 실행하였고,

이를 기반으로 DRM 시스템에 대한 아키텍처를 제안한다. 그리고

프로토타입 시스템 구축으로 제안한 아키텍처를 검증하여 아키텍처가

갖는 문제점을 도출함으로써 본 시스템이 DRM 시장에서 갖는 활용

가능성을 제시한다.

1.3 연구 내용 및 범위

본 논문의 연구 내용은 DRM 기술 간의 상호운용성을 보장함으로써

가치 사슬의 구성원들에게 신뢰성 있는 유통 체계와 시스템을 제공하기

위하여 DMP와 MPEG-21 표준 기반의 상호운용 가능한 DRM 시스템

아키텍처를 제안하는 것이다.

우선 표준 연구는 DMP의 툴팩 개념과 MPEG-21의 IPMP 분야를

분석하고, 분석된 내용을 기반으로 사용 시나리오를 설정하고, 이에 따른

전체적인 아키텍처를 설계하였다. 시스템은 크게 디지털 콘텐츠를 보호

관리하여 전송하는 디지털 콘텐츠 전송 시스템과 보호된 콘텐츠를 사용할

4 수 있도록 하는 소비 시스템 및 전송 시스템과 소비 시스템에서

자체적으로 보유하지 않은 툴 처리를 위한 툴 전송 시스템으로 구성된다.

디지털 콘텐츠 전송 시스템은 RTP(Real-Time Protocol)을 이용해서

보호되지 않은 콘텐츠 전송 시 실시간으로 보호 툴을 탑재하는 작업과

전송 전에 미리 콘텐츠에 보호 툴을 탑재하는 작업이 가능하도록 하였다.

디지털 콘텐츠 소비 시스템은 사용자 인증을 통하여 최종 사용자(end user)의 콘텐츠 접근성을 보장하고, 전송 시스템에서 전송되는 콘텐츠를

원활하게 랜더링(Rendering) 처리하도록 하였다.

툴 전송 시스템은 전송 시스템과 소비 시스템에서 콘텐츠에 대한 툴

적용 작업 과정에서 각각의 시스템 내부에 보유하고 있지 않은 툴이 요구

될 경우 이에 대한 툴 검색과 전송을 가능하도록 하였다.

이와 같이 본 논문의 연구 범위는 DMP와 MPEG-21의 표준을

기반으로 콘텐츠에 보호 툴 적용 및 소비 구조로 시스템 아키텍처를

제한하고, 아키텍처에 반영하지 않은 표준 기술들은 향후 연구를 통하여

확장이 가능하기 때문에 본 논문에서는 제외하였다.

1.4 논문의 구성

본 논문의 구성은 다음과 같다. 제2장에서는 DRM 시스템의 문제점을

분석하고, DMP와 MPEG-2, MPEG-4, MPEG-21의 IPMP 표준의

차이점을 기술한다. 제3장에서는 DMP와 MPEG-21 IPMP 표준을 연동할

수 있도록 적용한 시스템 아키텍처를 제안하고, 제4장에서 설계한

아키텍처를 기반으로 프로토타입 시스템을 구축하여 시스템에 대한

활용성을 검증한 후, 제5장에서 결론 도출 및 향후 연구 방향을 제시한다.

5 제 2 장 관련연구

본 장에서는 DRM의 개념과 DRM이 적용된 시스템이 갖는 문제점을

언급하고, 본 논문의 주요 관점인 DMP 표준의 보호 기술과 MPEG-2,

MPEG-4, MPEG-21 표준의 보호 기술들 사이의 차이점에 대하여

분석한다. 또한 본 논문에서 제안하는 DRM 시스템의 설계와 관련되어

요구되는 MPEG-21의 REL(Rights Expression Language)[11] 표준 및

시스템 구현에서 기반 기술로 이용된 JMF(Java Media Framework)

[12]의 구조적 특징을 기술한다.

2.1 DRM(Digital Rights Management)

2.1.1 개요

DRM은 일반적으로 디지털 콘텐츠를 보호하는 관점과 디지털 콘텐츠의

사용 권한을 보호하는 관점을 기준으로 표준화 단체들과 기타 여러

업체들의 개발 정책에 따라서 다양하게 정의된다. 그러나 개별적인 DRM

의 개념들 가운데 공통적으로 언급되는 내용을 정리하면 DRM은 디지털

콘텐츠의 정당한 사용자에게 암호화 기술을 통한 지속적인 권한 관리 및

투명하고 신뢰성 있는 유통환경을 보장하며, 허가된 권한 범위 내에서

콘텐츠 사용을 가능하게 하는 기술로 정리할 수 있다.

6 2.1.2 개발현황

초기 DRM 기술은 InterTrust[13], ContentGuard[14]의 주도하에

업체에서 개발하는 독자적인 DRM 기술을 단일 콘텐츠에 적용하는

것으로 디지털 콘텐츠의 보호 범위가 제한된 개념이었다. 그러나 현재

DRM 기술은 DRM을 적용하는 분야가 세분화되면서, 이에 따라 각

분야에 특화되는 다양한 DRM 기술들이 개발되는 개념으로 인식되고

있다. 그러므로 DRM을 분류하는 기준을 정립하는 것이 어렵고, 모호한

상태이기 때문에 본 논문에서는 DRM이 사용되는 환경을 기준으로 표

1에 DRM 기술들을 정리하였다.

표 1. DRM 기술 분류

사용 환경 설 명

애플리케이션 y 기업 DRM(Enterprise DRM) 응용 환경 y 상용 DRM(Commercial DRM)

y 스트리밍(streaming) DRM, 방송 서비스 환경 y VOD(Video On Demand) DRM (비즈니스 모델) y CAS(Conditional Access System) DRM

y 무선 DRM 네트워크 환경 y 유선 DRM y 유무선 통합 DRM

표 1에서 기업 DRM은 기업 내부의 디지털 문서 보호를 의미하고 상용

DRM은 음악, 영상과 같은 상업적인 콘텐츠의 저작권 보호 및 사용 제한

등의 보호를 의미한다. 방송 서비스 환경에서 사용되는 CAS는 방송

7 콘텐츠에 대하여 콘텐츠 자체를 보호하는 것이 아닌 사용자의 채널 접근

제어를 통하여 콘텐츠를 보호하는 개념이다. 그러므로 방송 콘텐츠를

보호하기 위한 방법은 스트리밍 DRM 및 VOD DRM 방식을 다중

적용함으로 단일 DRM이 갖는 문제에 대한 보완이 가능하다. 네트워크

환경은 소비자가 사용하는 단말 환경(PC, PDA, 핸드폰)에서 이용되는

네트워크 망으로 보호 방법을 구분할 수 있다[15, 16, 17, 18, 19].

이러한 DRM을 이용하여 가치 사슬의 구성원들에게 네트워크 환경에

따른 다양한 비즈니스 모델이 적용된 디지털 콘텐츠에 대하여 생성, 유통,

소비 과정에서 요구되는 불법적 접근으로부터 보호함으로써 신뢰성 있는

유통 체계를 확립하여 제공할 수 있다.

2.1.3 문제점

초기 DRM은 국제 표준화 단체들에 의하여 보호 개념 및 기술이

제안되었기 때문에 업체들은 표준화 단체의 표준 특허 기술을 이용한

기술 개발 및 보급을 통하여 DRM 시장을 조성하였다. 그러나 업체와

표준화 단체 간의 특허 기술 사용에 따른 로열티와 같은 이권 분쟁이

심화됨에 따라 DRM 시장에 변화가 발생하고 있다.

최근 DRM 시장의 경향은 표준화 단체들의 DRM 기술보다 Adobe와

마이크로소프트 등의 기존 소프트웨어 시장에서 거대한 장악력을 갖고

있던 대형 벤더들 중심으로 각각의 벤더 고유 포맷을 지원하는 형태의

폐쇄형 DRM 기술이 시장을 점유하고 있다.

이러한 폐쇄형 DRM들은 벤더들이 소프트웨어 보급으로 구축한 시장

환경에서 벤더 제품에 개별적으로 적용하기 때문에 빠른 상용화가

이루어지고 있는 상황이며, 이로 인한 DRM 시장의 지배력도 비약적으로

8 극대화되는 현상으로 진행되고 있다.. 그러므로 각 벤더들은 독자적으로

DRM 기술 사양을 정립하고 이를 확산해 나가는 형태의 표준 작업을

진행하고 있다[8, 9, 20].

그러나 폐쇄형 DRM의 내재하는 단점은 동일한 디지털 콘텐츠에 여러

업체들의 DRM 기술들이 적용되었을 경우 콘텐츠를 소비하는 사용자에게

업체 고유의 전용 소프트웨어 설치와 같은 불편한 절차를 요구하게 된다.

또한 그림 1과 같이 DRM 기술, 비즈니스 모델, 단말기, 디지털 콘텐츠

간 상호운용성을 보장하지 않게 됨으로써, 디지털 콘텐츠의 사용자

(구매자), 유통업자, 단말기 제조업자 사이에는 DRM 기술 사용에 따른

혼란이 야기되는 문제가 발생되고 있다.

그림 1. DRM 시스템의 상호운용성 부재

그림 1과 같은 상황에서 콘텐츠를 보호하려는 구성원들은 비즈니스

모델에 적합한 DRM 기술 개발에 따른 투자 자금 및 기존 기술 사용에

대한 로열티 지급 등의 비용 증가가 발생한다.

9 그리고 DRM 기술이 적용된 콘텐츠에 대한 이용 단말기의 종속성

문제로 소비자는 자신의 보유한 단말기가 콘텐츠에 적용된 DRM 기술과

호환성이 없을 경우, 콘텐츠 이용에 제한을 갖게 된다. 예를 들면, 음악

쇼핑몰인 아이튠(iTunes)의 음악 파일이 아이팟(iPod)에서만 재생되며,

마이크로소프트의 DRM 기술인 야누스(Janus)가 호환성을 갖지 않는

MP3 플레이어에서는 음악 재생이 불가능하다는 것으로 설명할 수 있다.

2.2 MPEG의 IPMP

2.2.1 MPEG IPMP의 개념

MPEG의 IPMP는 MPEG-4 표준화 작업이 진행되는 과정에서 논의된

개념으로 MPEG-21에서는 초기에 MPEG-4 IPMP를 확장하는 개념으로

IPMP를 표준화 계획에 반영하였다. 그러나 MPEG-2와 MPEG-4는

대부분의 표준화 작업이 종료된 이후였기 때문에 기존 MPEG-2와

MPEG-4의 표준들과 호환성을 유지하면서 다른 DRM 기술들을 포함하는

것이 표준 계획의 주요 쟁점 사항이었다.

그러므로 MPEG IPMP의 특징은 동일한 표준 규격으로 확립된 보호

기술 사이의 호환성(Intra DRM Interoperability) 및 서로 다른 표준

규격으로 확립된 보호 기술 사이의 호환성(Inter DRM Interoperability)을

지원하도록 정의한다[21, 22].

또한 디지털 콘텐츠 유통 모델의 가치 사슬 관계를 맺고 있는 구성

원들간에는 콘텐츠에 대한 소비자와 제공업자들의 관점에 따라서 소비자

관점의 상호운용성(C-Interoperability)과 제공업자 관점의 상호운용성

(M-Interoperability)으로 IPMP 개념을 구분한다.

10 소비자 관점의 상호운용성은 다양한 제공업자에 의하여 개별적인 보호

기술로 보호된 콘텐츠들을 소비자가 제공받을 때, 소비자는 보유하고

있는 단말 환경의 종류에 영향을 받지 않으며 해당 단말에서만 사용

가능하도록 하는 것을 의미한다.

제공업자 관점의 상호운용성은 단말기의 제공업자가 보호 기술로

콘텐츠를 보호함에 따라서 지원 가능한 단말 환경의 구조를 제작, 제공할

때 다양한 콘텐츠에 대하여 단말기의 구조적 변경 없이 소비자에게 사용

가능하도록 단말의 통합 환경을 제공하는 것을 의미한다.

2.2.2 MPEG-2 IPMP

2.2.2.1 개요

MPEG-2 시스템 표준은 HDTV 영상을 방송용 데이터에 이용하는

것을 목표로 하였고 현재 MPEG-2를 이용하여 고화질의 영상 데이터를

디지털 방송과 통신 분야에서 활용하고 있으며, DVD와 같은 저장매체

분야에도 확산되어 사용하고 있다.

일반적으로 MPEG-2 표준의 콘텐츠들은 방송 포맷으로 서비스되는

과정에서 콘텐츠를 보호하기 위한 방법으로 수신제한시스템(CAS)을

사용하였다. 그러나 수신제한시스템은 콘텐츠 자체에 대한 보호 기법이

아닌 사용자의 콘텐츠 접근을 제어하는 기법으로 콘텐츠가 사용자에게

전달된 이후의 콘텐츠 보호 방법에 대해서는 한계점을 갖고 있는

방법이다.

이에 MPEG에서는 표준화 작업을 진행하고 있던 MPEG-4 IPMP의

구조와 개념을 MPEG-2 시스템에 적용하는 MPEG-2 IPMP의 표준화

작업을 진행하였다. 그러므로 MPEG-2 IPMP는 MPEG-4의 구조에서

11 수신제한시스템을 포함할 수 있도록 고려하여 설계되었고, 기존 MPEG-2

시스템과의 상호운용성을 제공하도록 정의하고 있다.

이러한 MPEG-2 IPMP의 특징은 기존 수신제한시스템에 대한 상x하위

호환성(Forward and backward compatibility)을 지원하며, 콘텐츠를

보호하기 위한 인증, 워터마킹, 복호화(Decryption) 등의 보호 툴에

대하여 선택적인 다중 적용으로 유연한(Flexible) 구조를 갖는다.

또한 툴 리스트(Tool list)와 IPMP Descriptor(기술자)의 개념을

사용함으로써 툴의 갱신이 필요한 시점을 분석하여 툴 갱신을 가능하게

(Renewable) 하였고, 터미널과 보호 툴간의 메시지 전달을 공통적으로

정의함으로 상호운용성을 갖도록 하고 있다[23].

.

2.2.2.2 시스템 아키텍처

MPEG-2 시스템에서 콘텐츠를 전송하는 과정에서는 일반적으로

MPEG-2 TS(Transport Stream)를 이용한다. MPEG-2 TS의 구조는

크게 PSI(Program Specific Information)와 다중화된 콘텐츠 스트림으로

구성된다.

PSI는 콘텐츠 스트림에 대한 프로그램 정보를 담고 있으며, 콘텐츠

스트림은 오디오 스트림과 비디오 스트림에 대하여 각각 부호화 작업을

한 기본 스트림(ES: Elementary Stream)들을 다중화한 것을 의미한다.

그러므로 MPEG-2 IPMP 기술로 보호된 콘텐츠들은 MPEG-2 TS에

포함되어 각 시스템에서 사용된다. MPEG-2 IPMP로 보호되는 콘텐츠

정보들의 구조를 그림 2에 나타내었다.

12 툴IDs

파라메트릭 기술

IPMP 툴 리스트 대체 툴 IDs PSI IPMP 툴 컨테이너 정보 URL IPMP 제어 정보

IPMP 권한 컨테이너 사용 권한 PAT

PMT IPMP 기술자(s) ……

IPMP로 보호된 MPEG-2 콘텐츠 IPMP 제어 그래프 콘텐츠 스트림 프로그램 1 프로그램 2 IPMP 스트림 IPMP 데이터 ……

오디오 ES ES 1 ES 2 다양한 IPMP 데이터 …… 비디오 ES Opaque 데이터 …… …… 툴ID 컨트롤 IPMP 키 데이터 포인트 정보

권한 데이터

툴초기화데이터 ……

그림 2. MPEG-2 IPMP로 보호된 MPEG-2 시스템 콘텐츠 구조

그림 2에서 PSI는 IPMP 제어 정보(Control Information), 프로그램

관련 테이블(PAT: Program Association Table), 프로그램 맵 테이블

(PMT: Program Map Table)로 구성된다.

IPMP 제어 정보는 터미널에서 콘텐츠 소비에 필요한 툴 정보와

전송되는 툴, 그리고 사용자의 권리에 대한 정보를 포함하는 것으로써,

이러한 정보들은 각각 IPMP 툴 리스트, IPMP 툴 컨테이너(Tool

Container), IPMP 권한 컨테이너(Rights Container)의 구조로 포함되어

있다. 프로그램 관련 테이블은 다중화된 콘텐츠 스트림 정보의 시작

위치를 나타내며, 프로그램 맵 테이블은 오디오와 비디오 스트림에 대한

위치 정보를 표현한다.

13 IPMP 제어 정보에서 IPMP 툴 리스트는 개별적인 툴에 대한 고유한

아이디(Tool ID) 정보를 담고 있는 구조로써, 이러한 IPMP 툴 리스트는

터미널에서 요구하는 툴을 호출할 수 있도록 하는 기능을 담당한다.

그러므로 툴 리스트 내부에는 툴 아이디 이외에 툴의 위치를 명시하는

정보를 포함해야 하는데, 이 정보는 특정 파라미터 값에 따라 다른

기능을 보이는 툴 정보를 기술하는 파라메트릭 기술(Parametric

Description) 정보와 터미널에 특정 툴이 존재하지 않을 경우 대체

가능한 툴 정보를 표현하는 대체 툴(Alternative Tool) 정보로 구분해서

포함된다.

그리고 프로그램 제어 정보의 다른 구성 요소 중에서 IPMP 툴

컨테이너는 터미널에 존재하지 않는 툴 스트림을 전달되는 스트림 내부에

삽입하여 전송하는 기능이고, IPMP 권한 컨테이너는 의미 그대로 터미널

사용자의 콘텐츠에 대한 권한 정보를 기술한다.

이러한 IPMP로 보호된 콘텐츠를 사용자 터미널에서 이용하기

위해서는 크게 두 가지 초기화 정보가 요구된다. 첫 번째는 지금까지

설명한 내용으로 터미널에서 필요로 하는 툴을 획득하기 위한 IPMP

툴의 식별 정보이다. 이 정보를 통하여 사용자의 터미널은 보호된 콘텐츠

스트림 처리 이외에 터미널 내부에 존재하지 않는 툴에 대한 처리까지

수행하여 해당 툴을 터미널 내부로 위치시킬 수 있다.

두 번째는 터미널에 위치한 툴과 오디오 및 비디오 스트림과의 연결

정보이다. 즉, 어떠한 IPMP 툴이 각 스트림의 어느 위치의 처리

단계에서 동작할 것인지를 나타내는 것이다. 두 번째 정보와 관련해서는

PSI 구조에서 설명한 프로그램 맵 테이블이 상관 관계가 높다.

14 그러한 이유는 프로그램 맵 테이블이 오디오와 비디오 스트림의 위치

정보를 표현하고 있기 때문이다. 그러므로 프로그램 맵 테이블에

스트림의 연결 및 제어 정보를 나타내는 IPMP 기술자를 포함시킨다.

IPMP 기술자는 오디오와 비디오 스트림이 컨트롤 포인트 위치에 따른

IPMP 툴의 제어 정보 및 IPMP 툴 간의 우선 순위를 기술하는 역할을

담당한다. IPMP 개념에서 툴은 단일 컨트롤 포인트에 여러 개의 툴이

적용 가능하기 때문에 우선 순위에 대한 정보를 요구한다.

이와 같이 MPEG-2 IPMP는 IPMP 툴의 적용, 전송, 소비에 대한

세부적인 구조를 정의함으로써 콘텐츠의 보호를 지원하도록 하였다. 다음

표 1에 IPMP가 적용된 MPEG-2 TS의 구조를 정리하여 나타내었다.

표 1. IPMP가 적용된 MPEG-2 TS 구조 Tool ID

IPMP Parametric Description IPMP M Tool List Alternative Tool ID P Control Informative URL E PSI Information IPMP Tool Container G | IPMP Rights Container

2 PMT IPMP Descriptor

PAT T IPMP Stream S Content Audio ES Stream Video ES

15 MPEG-2 IPMP가 적용된 콘텐츠는 사용자의 터미널로 입력되어서

일련의 처리 과정에 따라 사용자에게 소비 가능하도록 처리되는데 이러한

처리 과정을 그림 3에 나타내었다.

MPEG-2 IPMP 터미널 콘텐츠 스트림

오디오 ES 오디오 오디오 랜더러 DB 디코드 랜더러

비디오 ES MR MR – 버퍼 역 비디오 비디오 DB 디코드 IPMP ES

… 다 Inter-디바이스 중 메시징콘텐츠, 툴, 권한 전송 화 PSI IPMP-Ds IPMP 제어 기 IPMP 인터페이스 정보 테이블 컨트롤 포인트 툴 리스트 IPMP DB IPMP 터미널

툴컨테이너 메시지 라우터/툴 매니저 권한 컨테이너 Embedded PMT IPMP 툴 A IPMP 기술자 …

툴 매니저 인터페이스 MR - TOOLS 메시징 인터페이스

획득 Missing IPMP 툴(s)

Missing IPMP IPMP IPMP IPMP 툴(s) 툴B 툴C 툴D

그림 3. MPEG-2 IPMP 아키텍처

그림 3에서 터미널로 입력된 MPEG-2 TS는 역다중화기(DEMUX:

Demultiplexer)를 거쳐 PSI 정보와 오디오, 비디오, IPMP 스트림으로

분리된다. 분리된 오디오 스트림과 비디오 스트림은 각각의 복호화

(Decode) 모듈에 입력되어 기본 스트림으로 변환되고, 변환된 기본

스트림들이 랜더링 모듈을 거쳐서 출력 장치와 연동하여 처리된다.

이와 같이 터미널에서 콘텐츠의 처리 작업이 진행되는 동안 IPMP

터미널은 IPMP 정보가 포함된 툴 스트림과 콘텐츠를 연결시키며, 이러한

16 처리를 위하여 터미널 및 툴 간의 통신을 담당하는 툴 매니저(Tool

Manager)와 메시지 라우터(Messages Router)로 구성된다.

툴 매니저는 IPMP 제어 정보에 기술된 툴 리스트를 분석하여

터미널의 콘텐츠 소비에 필요한 툴 들을 호출하거나 초기화한 후 메시지

라우터와 통신하여 툴과 컨트롤 포인트를 매핑시키는 작업을 한다. 이

과정에서 툴 리스트에 기술된 툴이 터미널에 존재하지 않은 경우, 툴이

포함된 IPMP 제어 정보의 툴 컨테이너에서 툴을 획득하거나, 외부의 툴

관리 서버와 상호 통신하여 툴의 수신 처리를 담당한다.

메시지 라우터는 터미널과 IPMP 툴 간의 메시지 통신을 위한

인터페이스를 갖고 있는데, IPMP 기술자를 분석하여 툴과 컨트롤

포인트의 매핑을 툴 매니저에서 요청한다. 그리고 콘텐츠 스트림에

적용된 IPMP 툴을 이용하여 콘텐츠를 소비할 수 있도록 한다.

2.2.3 MPEG-4 IPMP

2.2.3.1 개요

MPEG-4의 IPMP는 MPEG에서 IPMP 개념을 가장 먼저 적용한 표준

분야로써 MPEG-2 IPMP의 근간을 이루고 있다. 따라서 MPEG-2

IPMP에서 설명한 IPMP 툴, IPMP 기술자, IPMP 기본 스트림(ES) 등의

대부분의 개념들이 서로 동일한 특징을 갖는다[24].

그러므로 MPEG-4 IPMP와 MPEG-2 IPMP를 구분하여 이해하기

위해서는 IPMP 기술의 구조적 차이보다는 IPMP 기술을 적용하는

대상에 대한 차이를 이해하면 보다 쉽게 구분할 수 있다. 즉, MPEG-4와

MPEG-2 자체의 표준 기술에 대한 차이로 설명되는데, 각각의 표준

기술은 콘텐츠에 대한 구성 방법이 다르기 때문에 이러한 콘텐츠에

17 IPMP 정보를 포함시키는 것에서도 차이가 발생한다. MPEG-2와 MPEG-

4의 표준 기술의 다른 점을 분석하여 간략하게 설명하면 다음과 같다.

MPEG-2는 MPEG-1 표준에 대한 호환성을 고려하여 확장한 표준이며

방송용 포맷을 지향한다. 이에 따라 MPEG-2는 기존 콘텐츠 저장

스트림으로 사용된 프로그램 스트림(PS: Program Stream)에 방송

콘텐츠를 다채널로 전송하기 위한 188바이트 단위의 비트열로 구성하는

전송 스트림(TS) 표준을 규격화하였다.

그러나 화면 전체를 부호화하는 MPEG-2와 비교할 때 MPEG-4는

객체(object) 기반의 부호화 방식을 표준으로 규격화하였다. MPEG-4의

객체 기반 부호화는 부호화 대상의 장면을 각각의 개체 단위로 분리하여

분리된 개체에 따라 최적화된 부호화 기법을 이용한다. 따라서 한 화면을

구성하는 오디오, 비디오, 이미지, 텍스트 등의 객체 별 정보가 저장 및

표현 가능하다. MPEG-2와 MPEG-4의 차이를 그림 4에 나타내었다[25].

M MPEG 오디오/비디오 스트림을 다중화하기 위한

P 다중화 스트림 포맷 E G 오디오 패킷화 | 다중화 2 비디오 패킷화

미디어 객체 스트림을 다중화하기 위한

M 다중화 스트림 포맷 P 미디어 객체 스트림의 관련 정보를 기술하기 위한 E G 다중화 스트림 포맷

| 미디어 객체 스트림을 장면에 합성하기 위한 4 다중화 스트림 포맷

그림 4. MPEG-2와 MPEG-4 시스템의 차이점 비교

18 그러므로 MPEG-4 IPMP는 객체 개념이 적용된 콘텐츠 포맷에 IPMP

정보를 삽입하도록 구성되며, 터미널에서는 삽입된 IPMP 정보를 추출한

후 MPEG-4 콘텐츠 포맷을 지원하는 각 모듈의 단계별 처리 과정

사이에 추출한 IPMP 정보를 적용하여 사용한다.

2.2.3.2 시스템 아키텍처

MPEG-4 시스템은 다양한 객체의 부호화와 부호화된 비트 스트림의

다중화 및 장면 기술(Scene Description)에 따른 합성 작업을 처리하는

특징이 있다. 이에 따라 MPEG-4의 콘텐츠는 오디오와 비디오 같은

미디어에 대한 객체의 시공간 관계를 기술한 장면 기술과 장면 기술에

따른 미디어 객체의 연관 정보 및 복호에 필요한 정보를 저장하는 객체

기술자(Object Descriptor)로 구성된다. 그림 5에 IPMP 정보가 삽입된

MPEG-4 시스템의 콘텐츠 구조를 나타내었다.

툴IDs IPMP 제어 그래프 IOD OD A OD B 파라메트릭 기술 IPMP 툴 리스트 …… 대체 툴 IDs ES 1 ES 2 IPMP 툴 ESD 정보 URL …… IPMP 기술자(s) …… 툴ID 컨트롤 IPMP …… IPMP 기술자(s) 포인트 정보

콘텐츠 스트림 다양한 IPMP 데이터 Opaque 데이터 OD 스트림 키 데이터 IPMP 스트림 IPMP 데이터 권한 데이터

MPEG-4 스트림(s) 툴 초기화 데이터 …… ……

그림 5. MPEG-4 IPMP로 보호된 MPEG-4 시스템 콘텐츠 구조

19 그림 5에서 초기 객체 기술자(IOD: Initial Object Descriptor)는

MPEG-4 세션(session)에서 최초에 전송되는 데이터로 정의되며, 장면

기술자 스트림과 객체 기술자 스트림에 대한 정보를 가진다. 그러므로

초기 객체 기술자에는 IPMP 툴 리스트, IPMP 툴 기본 스트림

기술자(ESD: Elementary Stream Descriptor), IPMP 기술자 정보가

포함된다.

이와 같은 IPMP 정보를 포함하는 MPEG-4 콘텐츠가 터미널에

입력되어 랜더링 되는 구조를 그림 6에 나타내었다.

터미널 오디오 오디오 오디오 DB 디코드 CB 콘텐츠 DMIF 컴포지터 스트림 콘텐츠 랜더러 요청 비디오 비디오 비디오 MPEG-4 DB 디코드 CB 콘텐츠 스트림(s) 역다중화기OD DB OD IPMP 디코드 콘텐츠 콘텐츠 전달 스트림(s) BIFS BIFS BIFS 트리/ BIFS DB 디코드 CB 장면 그래프

툴ES IPMP IPMP 메시지 DESCR IPMP DB IOD 터미널-IPMP 메시지 라우터/툴 매니저 IPMP 툴리스트 툴DB 툴ID

대체 툴(S) IPMP 툴 매니저 인터페이스 터미널 메시지 라우터 인터페이스 파라메트릭 기술(S) 획득 Missing IPMP 툴(s) IPMP 툴 메시지

툴ESD Missing IPMP IPMP IPMP IPMP 툴A 툴B 툴C 툴(s)

그림 6. MPEG-4 IPMP 아키텍처

그림 6에서 콘텐츠 스트림이 입력되어 랜더링되는 과정과 툴을

적용하는 전체적인 방법은 MPEG-2의 아키텍처와 대부분 동일하다. 단지

MPEG-4는 MPEG-2와 비교할 때 객체에 대한 처리 과정이 추가된 것이

다르다.

20 우선 터미널은 콘텐츠 스트림을 수신한 후 역다중화기를 이용하여

개별적인 기본 스트림으로 분리된다. 분리된 기본 스트림을 보면

오디오와 비디오 스트림 이외에 MPEG-2에 없는 객체 기술자(OD)

스트림과 장면용 이진 포맷(BIFS: Binary Format for Scene) 스트림이

존재한다. 여기서 객체 기술자는 콘텐츠 구조를 설명할 때 기술한

개념이고, 장면용 이진 포맷은 화면에 구성된 객체들의 위치와 속성 및

모양 등의 표시 방법과 특성을 지정하는 장면 기술 언어이다. 이렇게

분리된 기본 스트림들은 해당되는 복호화 모듈에서 변환되고, 변환된

스트림들은 객체의 장면 합성을 위한 컴포지터(Compositor)를 통하여

합성된 후, 합성된 장면들이 랜더링되는 구조로 이루어져 있다.

이와 같이 MPEG-4의 IPMP 아키텍처는 객체 부호화 개념이 적용되어

좀더 다양한 범위의 컨트롤 포인트를 통한 툴 적용이 가능해진다. 즉,

장면, 객체, 스트림에 대하여 각 정보들과 관련된 컨트롤 포인트를

이용하면 MPEG-2와 비교할 때 보다 다양한 범위의 보호를 이룰 수

있다.

2.2.4 MPEG-21 IPMP

2.2.4.1 개요

MPEG-21 IPMP는 다양한 네트워크와 단말기를 통하여 디지털

아이템이 전송되는 동안 디지털 아이템과 관련하여 사용자의 권한에 대한

표현, 관리, 보호 기능을 제공한다. 또한 디지털 아이템의 생명 주기가

소멸되기 전까지 지속적인 안전성과 확신성을 제공하기 위한 목적으로

표준화 작업이 진행되고 있다.

21 표준화 대상은 암호 알고리즘(Encryption algorithm), 키(Key), 키

관리(Key management)와 같은 IPMP 툴에 대한 검색 방법과 툴과 툴

간의 메시지 교환 및 툴과 터미널 간의 메시지 교환 방법 등이다[22].

MPEG-21 IPMP의 스키마 구조는 기존 MPEG-21 DID(Digital Item

Declaration)[26] 규격에서 정의한 엘리먼트들에 대하여 IPMP의

엘리먼트가 포함되는 확장 개념으로 규격화하였다. 이와 같은 개념을

그림 7에 나타내었다.

DIDL IPMP DIDL 변환 처리 element element

IPMP 정보

didl:Item ipmpdidl:Item

“My song” Identifier

Album audio Album lyrics

didl:Item Audio info Text info “My song” Info

캡슐화 Album audio Album lyrics

“mysong.” Audio info Text info “mysong.txt”

“mysong.mp3” “mysong.txt” mysong.aac “ ” “mysong.aac”

그림 7. DIDL의 IPMP DIDL 변환 처리

그림 7의 구조에서 변환 처리되기 전의 음악과 관련된 디지털

아이템의 메타데이터는 MPEG-21 DIDL(Digital Item Declaration

Language)의 엘리먼트들로 표현하여 구조화된다. 이렇게 구조화된

메타데이터는 암호화 툴 정보, 키 정보 등의 IPMP 정보들을 삽입하는

변환 처리 시스템을 통과하여 IPMP 정보들이 기술된 데이터와 입력된

22 메타데이터를 매핑한다. 이 과정에서 입력되는 메타데이터는 암호화 툴에

의하여 보호된 상태로 IPMP 엘리먼트의 내부 데이터로 포함되는 구조로

변환된다.

2.2.4.2 시스템 아키텍처

표준화 작업이 선행된 MPEG-4 IPMP와 이를 근간으로 하는 MPEG-2

IPMP 개념을 고려하면, 일반적으로 MPEG-21 IPMP도 기존의 IPMP

개념에서 확장된 구조로 생각할 수 있다. 그러나 MPEG-21 프레임워크

(Framework)가 지향하는 표준화 성향은 MPEG-21 IPMP의 구조가 다른

MPEG 표준의 IPMP와 유사할 수 없는 원인이 된다.

초기에 MPEG-21 프레임워크에서는 IPMP 정책을 논의할 때 이미

표준 작업이 진행중인 MPEG-4 IPMP를 MPEG-21 IPMP 구조에

적용하는 MPEG-4 IPMP의 연장선으로 판단하였고, MPEG-4 IPMP에서

확장한 형태의 구조로 표준 정책을 확립하였다.

그러나 표준 작업이 진행될수록 MPEG-4 시스템의 구조가 MPEG-

21의 구조와 서로 상이한 문제라는 점이 발생하였고, 이에 표준화 작업을

전면적으로 수정하여 MPEG-21의 다른 표준 기술들의 구조에

병행하도록 정책을 재확립하였다. 새롭게 확립된 MPEG-21 IPMP의

개념은 디지털 아이템의 메타데이터에 IPMP 메타데이터가 삽입된

형태의 디지털 아이템을 랜더링할 때, 터미널의 내부 구조를 기본

상세하게 명시하지 않는다[27, 28, 29].

그림 8에 이러한 MPEG-21 IPMP 개념이 적용된 메타데이터를

처리하는 시스템의 구조를 나타내었다.

23 디지털 아이템

디지털 아이템 선언 IPMP 툴 요구 IPMP_제어_정보_기술자

IPMP 툴리스트 요구한 IPMP 툴 획득 IPMP 툴 ID(s)

대체 IPMP 툴 ID(s) IPMP 툴 관리자

파라메트릭 툴 터미널 기술자(s) IPMP 파서

IPMP 툴 보유자 “DI” 요구 REL 파서 IPMP 툴 ID(s) 컨텐츠표현툴 IPMP ToolBody “DI” 전달 DID 파서 Future Tool (TBI) MPEG-21 (역)다중화 MPEG-21 권한 보유자 권한툴ID(s) 터미널-IPMP 툴 메시지 권한 표현 교환 인터페이스

IPMP_기술자 터미널-IPMP 툴 통신 …

IPMP_기술자 IPMP 툴 1 IPMP 툴 2 … IPMP 툴 n

리소스 (s)

그림 8. IPMP 확장 시스템 구조

그림 8의 확장된 구조에서는 입력되는 디지털 아이템이 포함되는

데이터를 파싱하기 위한 최소한의 파서들에 대한 구조만이 정의되어 있을

뿐, MPEG-2와 MPEG-4와 같이 스트림을 제어하는 상세한 구조가

설계되어있지 않다.

우선 터미널에서는 디지털 아이템에서 메타데이터와 리소스를

분리하거나 패키징하기 위하여 MPEG-21 역다중화(Demultiplexing)

모듈과 다중화(Multiplexing) 모듈을 터미널의 외부에 위치시킨다.

디지털 아이템의 메타데이터는 DID 구조를 이루는 문서이기 때문에

분리된 메타데이터는 DID 파서에 의하여 파싱된다. 그리고 파싱된

데이터들은 각 데이터에 해당하는 파서들(IPMP, REL, DII 등)에 의하여

개별적으로 파싱 처리되며, 개발자는 이와 같은 구조에서 필요한

모듈들을 적용하여 확장할 수 있다.

24 2.3 DMP

2.3.1 개요

DMP는 MPEG-1에서 MPEG-21까지 전 범위에서 표준화를 주도했던

MPEG 의장인 Leonardo Chiariglione에 의하여 제안된 표준이다. DMP의

목적은 전체적으로 디지털 미디어에 대한 표준화 과정 관리 및 정책

수립과 상호운용 가능한 DRM 기술을 개발하는 것이다.

DMP를 표준화하기 위한 보다 다양한 관점에서 기존 DRM 기술들의

문제 분석과 목표를 체계화한 내용들은 디지털 미디어 선언(DMM:

Digital Media Manifesto)에 정의되어 있다. 디지털 미디어 선언에서는

DMP의 주요 표준 활동 범위를 네 개의 정책 활동(Policy Actions)과 세

개의 기술 활동(Technical Actions)으로 구분하여 정의하고 있으며,

이러한 내용은 표 2에 분류하여 나타내었다[10].

표 2. 디지털 미디어에 제안된 주요 표준 활동 사항

P1 전통적 사용자들의 권리 지원

P2 아날로그 형태의 것에 대한 단계적 폐지 정책 활동 P3 광대역 통신 인프라의 접근 및 전개

P4 표준의 활성화를 위한 표준 자격 수준 향상

T1 상호운용 가능한 DRM 플랫폼

기술 활동 T2 상호운용 가능한 최종 사용자의 매체

T3 단말과 단말 사이의 일치성 평가

25 표 2에서 정책 활동의 구체적인 의미는 다음과 같다. 전통적

사용자들의 권리 지원은 기존 DRM 환경을 이용하는 사용자들에서

신뢰성 있는 보호 환경을 조성하면서 사용자들의 권리를 지원하는 것을

의미한다. 그리고 아날로그 레거시들(Analogue Legacies)에 대한 단계적

폐지는 향후 디지털 미디어 시대에 장애 요소가 되는 기존 아날로그

미디어 시대에 사용되는 것들을 단계적으로 줄임으로써 디지털

멀티미디어의 분배를 원활하게 하는 것을 의미한다.

광대역(Broadband) 통신 인프라의 접근 및 전개에서는 디지털 미디어

시대의 기반 환경으로 광대역 인프라 구축의 필요성 및 디지털 미디어

서비스와의 연관 관계 제시한다. 그리고 표준의 활성화를 위한 표준 자격

수준 향상은 DMP의 표준이 원활한 보급으로 활성화를 이루기 위해서

표준을 적용할 비즈니스 모델의 분석을 통한 표준의 자격을 향상하도록

정의하고 있다.

기술 활동의 구체적인 의미는 다음과 같다. 상호운용 가능한 DRM

플랫폼(IDP: Interoperable DRM Platform)은 플랫폼 간의 DRM 솔루션이

상호 호환되도록 함으로써 비즈니스 모델의 가치 사슬을 이루는 구성

개체들 간의 소통을 원활하게 하고 권리를 보호하는 것을 의미한다.

그리고 이 기술 활동과 전체적인 의미는 같지만 사용자의 인터페이스를

보다 많이 고려하는 것이 상호운용 가능한 최종 사용자의 매체(IED:

Interoperable End-user Device)이다.

또한 단말과 단말 사이의 일치성 평가(End-to-end conformance)에서

는 비즈니스 모델의 가치 사슬 하에서 콘텐츠의 합법성과 비즈니스

규칙에 따른 일치성 및 보안성에 대한 것을 지원한다.

26 2.3.2 시스템 아키텍처

일반적으로 콘텐츠들은 구성 개체들 사이에 전달되는 과정에서 패키지

된 상태를 요구한다. DMP도 다른 표준들에서 지정하는 것처럼 콘텐츠의

전달 및 사용자의 매체에서 사용하기 위한 다양한 형태의 포맷을

지정하고 있다. 이러한 DMP의 콘텐츠 포맷(DMP Content Format)에

대한 내용을 그림 9에 나타내었다[30, 31].

콘텐츠 표현 식별자 표현 메타데이터 표현 DCF 리소스 표현 meta 식별자 표현 xml/bxml iloc 메타데이터 표현 DRM 정보 표현 DCI DRM 툴 표현 DRM Toolc Body 표현 디바이스 정보 표현 mdat mdat

라이센스 표현 오디오 리소스 1 오디오 리소스 2 Key Body 표현 콘텐츠를 위한 도메인 mdat mdat 콘텍스트 표현 비디오 리소스 이미지 리소스 Key 표현 Key Body 표현

그림 9. DCF의 개념적인 모델

그림 9에 표현된 DMP 콘텐츠 포맷(DCF)은 오디오, 비디오, 이미지

등의 다양한 콘텐츠 정보를 XML(eXtensible Markup Language)로

표현한 DMP 콘텐츠 정보(DCI: DMP Content Information)와 바이너리

형태의 리소스(Resource)가 패키징된 구조로써 이루어진다.

DMP 콘텐츠 정보는 콘텐츠에 대한 정보 및 사용자의 매체에서 콘텐츠

소비를 위하여 요구되는 정보를 MPEG-21 DIDL 기반으로 구성한다.

27 또한 DMP 콘텐츠 정보의 구조에는 다양한 네임스페이스

(Namespace)를 통하여 콘텐츠 정보를 표현하고, 콘텐츠 보호에

사용되는 DRM 툴 정보 및 키 정보를 포함한다.

그림 10에 사용자의 터미널에서 DRM 툴을 처리하는 시스템

아키텍처를 나타내었다.

랜더러 1에게 리소스 1 리소스 리소스 리소스 전달 버퍼 1 디코더 1

랜더러 2에게 리소스 2 리소스 리소스 리소스 전달 버퍼 2 디코더 2 DCF DRM 정보

DCB DCI DRM 툴 or 툴팩 Missing 라이센스 DRM 툴(s) DCS 키 요청 DRM 프로세서 라이센스 요청

파서 파서 DRM 툴(s)

DCF 시큐어 저장소 패키저 I/O 저장소

그림 10. DMP 시스템 아키텍처

그림 10은 사용자의 터미널에 콘텐츠가 전달되어 랜더링되는 과정을

표현하고 있는데, 전송되는 콘텐츠 포맷은 DMP 콘텐츠 포맷(DCF)외에도

전송 형태에 따라서 두 가지 형태가 더 존재한다. 두 가지 전송 포맷은

DMP 콘텐츠 정보(DCI)가 관련되는 리소스들을 패키징하는 과정에서

파일이나 스트림의 형태에 따라 광대역 방식의 DMP 콘텐츠(DCB: DMP

Content Broadcast)와 스트리밍 방식의 DMP 콘텐츠(DCS: DMP Content

28 Stream)로 구분된다. 광대역 방식의 DMP 콘텐츠는 MPEG-2 TS를

이용하며, 스트리밍 방식의 DMP 콘텐츠는 RTP를 규격으로 정의한다.

그러므로 터미널에서는 파서를 통하여 전송된 포맷을 분석하는 과정이

선행되어야 하고, 이 작업을 통하여 DMP 콘텐츠 정보(DCI)를 분리한다.

분리된 정보에서 리소스는 해당되는 복호화기를 통하여 랜더링 모듈로

소비되거나 패키저를 이용하여 사용자의 저장 매체로 콘텐츠를 저장한다.

이 과정에서 DMP 콘텐츠 정보(DCI) 가운데 콘텐츠 보호와 관련된 툴

정보 및 라이센스, 키 정보 등은 DRM 프로세서 모듈을 통하여 처리된

후 다양한 컨트롤 포인트로 연결된다. 이러한 작업은 DRM 프로세서를

통하여 처리하도록 정의되는데 그림 11에 DRM 프로세서의 내부 구조를

나타내었다.

터미널-DRM 툴 메시지 인터페이스

터미널-DRM 툴 공통 통신 메시지

툴 에이전트 툴 에이전트 툴 에이전트 메 메 메 시 시 시 싱글 DRM … 메시지 지 지 지 툴 툴그룹 툴그룹 툴그룹

툴팩 1 툴팩 2 툴팩 n

그림 11. DRM 프로세서의 툴팩과 싱글 툴 개념

그림 11에서 DMP는 MPEG의 IPMP들이나 기존 DRM 기술들과 같은

개념인 싱글(Single) 툴과 기존 DRM 기술들의 문제점을 보완한 툴팩

개념을 제공한다. 기존 DRM 기술 및 MPEG의 IPMP들과 비교했을 때

29 가장 큰 차이를 나타내는 툴팩은 툴의 그룹화 및 터미널과 툴 간의

메시지 통합을 통하여 툴의 정보를 은닉화하고 새로운 툴에 대한

확장성을 지원하는 개념이다. 툴팩은 기본 DRM 툴들을 개별적으로

제공하는 것보다 그룹화하는 것이 보다 현실적이라는 개념을 기반으로,

터미널과 툴 그룹 사이에 툴 에이전트(Tool Agent)를 위치시키고 이를

이용하여 툴 그룹을 동작시킨다.

2.4 MPEG-21 REL(Rights Expression Language)

2.4.1 개요

MPEG-21에서 사용자는 디지털 아이템의 분배에 관련된 모든 주체를

정의하는 개념으로 디지털 아이템의 창조자, 저작자, 유통업자, 최종

소비자 등이 포함된다. 이러한 사용자 간에는 디지털 아이템의 생명

주기가 유지되는 동안 디지털 아이템에 대한 사용자의 라이센스

(License)를 명시하는 기술이 필요하다.

즉, REL은 이러한 디지털 아이템에 대한 이용, 유통, 관리 및 사용

규칙 등을 표현한 표준 언어이다. 예를 들면 최종 사용자는 디지털

아이템의 기간, 사용 횟수 등의 사용 조건에 대한 제한적인 라이센스

구매를 통하여 라이센스가 허가하는 범위에서 디지털 아이템을 소비하는

과정을 거치는데, 이러한 제한적인 라이센스가 MPEG-21에서는 REL로

표현되며 다른 사용자 간에 교환하는 작업이 처리된다[32].

REL은 MPEG-21에서 표준화가 논의될 때 ODRL(Open Digital Rights

Language)과 XrML2.0 표준 가운데 XrML2.0을 REL 표준으로 선택하여

작업을 진행하였기 때문에, XrML2.0의 정보를 대부분 수용하였고, 이에

30 따라 스키마도 동일한 구조를 지닌다. 그리고 REL의 구조는 REL

코어(Core)를 기반으로 표준 확장(Standard Extension)과 멀티미디어

확장(Multimedia Extension) 등으로 확장 가능하다.

REL 코어는 루트 엘리먼트(Root Element) 라이센스를 비롯한 핵심

엘리먼트 및 REL 전체의 개념을 정의하고 있다. 그리고 REL 표준

확장은 소비에서 일반적이고도 광범위하게 사용할 수 있는 정보들을

정의하고 있으며. REL 멀티미디어 확장은 멀티미디어 자원에 대한 사용,

삭제 및 수정 등 자원에 대한 확장 처리 정보를 정의하고 있다.

REL을 사용하는 것으로 인하여 사용자의 저작권에 대한 작업을

용이하게 저작할 수 있으며, 이러한 저작권이 표준화되어 관리되기

때문에 다른 시스템 간의 상호운용성이 증대된다. 또한 표준화된

저작권은 높은 신뢰도를 기반으로 저작권 생성에 대한 유연성 및

확장성을 제공한다.

2.4.2 데이터 모델

REL은 4개의 기본 엔티티(entity)로 구성되어 있으며, 각 엔티티 간의

상호 작용을 통하여 권리(Grant)를 형성하고, 하나 또는 다수의 권리들의

포함된 라이센스를 정의한다.

4개의 기본 엔티티는 권한(Right), 소비자(Principal), 리소스

(Resource), 사용 조건(Condition)이며, 각 엔티티는 소비자가 리소스를

사용하기 위하여 리소스에 대한 동작과 제한 사항을 정의한 사용 조건을

구매하여 발급받음으로써 리소스 소비가 가능해지는 관계를 맺고 있다.

그림 12에 REL의 엔티티 간의 연관 관계를 표현하는 데이터 모델을

나타내었다.

31 라이센스

권리

발급하다 충족하다 권한

연관되다

소비자 리소스 사용조건

그림 12. REL 데이터 모델

그림 12에서 각각의 엔티티에 해당하는 소비자는 리소스에 대한

라이센스를 구매하여 발급받는 사용자를 지칭하지만, 단순한 리소스

구매자만을 의미하지 않고 애플리케이션 및 매체(device) 등도 포함하는

개념을 의미한다. 그리고 리소스는 소비자가 구매하여 소비하기를 원하는

디지털 콘텐츠(오디오, 비디오, 텍스트 파일)를 의미하고, 유통 모델에

따라서는 서비스와 같은 개념도 포함한다.

사용 조건은 소비자가 콘텐츠에 대한 권한을 통하여 리소스를 소비하기

전에 충족해야 되는 조건으로, 사용 조건이 충족되지 않으면 리소스를

소비할 수 없는 것을 의미한다. 이러한 사용 조건은 REL 표준 확장에

다양하게 정의되어 있는데, 주요하게 사용되는 것은 리소스에 대한 사용

금액과 제한 시간 및 사용 횟수 등이 이용된다.

권한은 리소스에 대하여 소비자가 사용 가능한 동작을 의미하며, REL

멀티미디어 확장에 정의되어 있다. 예를 들면, 텍스트 데이터의 경우는

View, Copy의 권한을 통해 리소스를 제어하고, 영상 데이터의 경우는

Play의 권한으로 리소스 제어가 가능하다.

32 2.5 JMF

2.5.1 개요

JMF는 1998년 Sun에서 플랫폼(Platform)에 중립적으로 구동되는

애플리케이션을 개발하기 위하여 자바 기반의 멀티미디어 프로그래밍을

지원하는 스펙(Spec)을 제안하였고, 스펙 작업이 진행되는 가운데 IBM이

참여함으로써 JMF 1.0 버전이 완성되었다.

JMF 1.0 버전은 동기화된 미디어 데이터에 대한 playback 기능을

제공하고, 이 버전의 기능을 확장하여 JMF 2.0 버전에서는 오디오와

비디오 데이터에 대한 캡처링(Capturing) 및 각각의 스트림 데이터에

대한 스트리밍(Streaming) 작업을 지원한다. 지금까지 발표된 최근

버전은 RTSP(Real-Time Streaming Protocol)와 비디오 스케일링

(Scaling)에 대한 기능이 보완된 JMF 2.1 버전이다.

2.5.2 시스템 아키텍처

JMF는 고 수준(High level)의 API를 제공하여 음성과 영상에 대한

캡처, 저장, 디스플레이(Display) 및 네트워크를 통한 전송이 가능한

기술이다. 또한 저 수준(Low level)의 API도 제공하여 개발자들에게

시스템에 대한 확장성을 높여주는 특징을 갖고 있다.

JMF는 역다중화기(Demultiplexer), 코덱(Codecs), 이펙트 (Effects),

다중화기(Multiplexer), 랜더러(Renderers)와 같은 추상화가 이루어진

플러그형(Pluggable) 기능을 제공하여 프로그래밍을 지원하는 특징이

있다. 이러한 특징을 보여주는 JMF의 아키텍처를 그림 13에 나타내었다.

33 Java Applications, Applets, Beans

JMF Presentation and Processing API

JMF Plug-In API

Demultiplexer Codecs Effects Multiplexer Renderers

그림 13. JMF 아키텍처

그림 13과 같이 플러그형 기능을 지원하는 것은 개발자들에게

입력되는 스트림 데이터에 대한 세밀한 작업을 보다 용이하게 해주는

역할을 한다. 이와 같이 JMF의 기본 아키텍처에 대한 추상화의 구조적

완성도가 높은 특징이 있으며, 그림 14와 같은 시스템을 구성할 수 있다.

랜더러 플러그 인 A Æ B

데이터소스 전처리 이펙트 코덱 후처리 이펙트 데이터소스 플러그 인 플러그 인 플러그 인

역다중화기 다중화기 플러그 인 A Æ B 플러그 인

랜더러 프로세서 플러그 인

그림 14. 미디어 데이터의 플러그 인 프로세싱

그림 14는 입력되는 미디어 데이터를 처리하기 위한 플러그 인의

구조를 나타낸다. 데이터소스(DataSource)는 JMF에서 오디오 및 비디오

34 캡처 스트림, 로컬에 위치한 미디어 파일, 네트워크로 전송 및 수신되는

스트림 등의 데이터 형태를 표현하는 클래스이다.

JMF의 스펙에는 스트림을 트랙(Track)으로 명시하나 본 논문에서

사용하는 스트림이라는 용어와 의미가 동일하기 때문에 용어의 혼동을

피하기 위하여 트랙을 스트림으로 표현하였다.

입력되는 데이터가 오디오와 비디오를 포함한 영상 데이터일 경우는

우선적으로 데이터소스에 역다중화기 플러그 인을 이용한 작업 처리로

각각의 오디오 스트림과 비디오 스트림으로 분리한다. 이렇게 분리된

스트림은 코덱 플러그 인을 적용하여 다른 포맷으로 변경이 가능하고,

이펙트 플러그 인의 적용을 통하여 스트림에 대한 다양한 효과가

지원된다.

코덱이나 이펙트 플러그 인으로 변환 처리된 스트림은 개별적인

스트림을 처리하는 랜더러 플러그 인을 이용하여 독립적으로 재생 처리가

가능하며, 다중화기 플러그 인으로 스트림을 다중화 처리하여 로컬

내부에 저장 및 전송이 가능하다.

이러한 JMF의 구조를 분석했을 때 본 논문에서 제안하는 아키텍처의

핵심 내용인 컨트롤 포인트와 툴 적용 개념을 처리하기에 적합하기

때문에 본 논문에서 제안한 아키텍처에 대한 검증 시스템은 JMF를

이용하여 구현하였다.

35 제 3 장 시스템 아키텍처 설계

본 장은 네 개의 절로 이루어진다. 1절에서는 시스템의 설계를 위한

사용 시나리오의 설정 및 내용을 기술한다. 사용 시나리오 분석을 통하여

전체 시스템은 세 3개의 시스템으로 구성하였는데. 2절에서는 콘텐츠를

실시간으로 전송하는 콘텐츠 전송 시스템을 설명하고, 3절에서는 수신

받은 콘텐츠를 랜더링하는 소비 시스템을 기술한다. 그리고 4절에서 전송

시스템과 소비 시스템과 연동되는 툴 전송 시스템에 대한 설계 내용을

상세히 설명한다.

각 시스템 간에 이루어지는 작업 처리 관계를 그림 15에 나타내었다.

RTP RTP 스트림 처리 모듈 전송 모듈 전송 모듈 스트림 처리 모듈 비디오 비디오 전송 모듈 수신 모듈 DRM 프로세서 모듈 DRM 프로세서 모듈 오디오 오디오 전송 모듈 수신 모듈 툴 에이전트 모듈 툴 에이전트 모듈

비디오 오디오 툴연동 툴연동 비디오 오디오 네트워크 인터페이스 모듈 툴모듈 툴모듈 모듈 모듈 툴모듈 툴모듈

데 툴검색모듈 관이 리터 모베 시스템 스트림 스트림 듈이 뷰어 모듈 재생 모듈 저장 모듈 스 툴 저장소

시스템 제어 모듈 시스템제어모듈 시스템 제어 모듈

콘텐츠 전송 시스템 툴 전송 시스템 콘텐츠 소비 시스템

그림 15. 전체 시스템 구성도

36 그림 15에서 콘텐츠 전송 시스템은 로컬에 위치한 콘텐츠 저장소에서

사용자가 요구하는 콘텐츠를 오디오와 비디오 스트림으로 분리 작업 후,

소비 시스템으로 전송하는 과정에서 각 스트림에 대하여 실시간으로

암호화 툴을 적용한다. 즉 콘텐츠 전송 시스템은 암호화된 콘텐츠

스트림을 소비 시스템으로 전송하는 일종의 방송 서버 역할을 담당한다.

콘텐츠 소비 시스템은 오디오와 비디오 스트림으로 수신되는 암호화된

콘텐츠 스트림을 실시간으로 복호화하며 랜더링함으로써 콘텐츠의 소비

권한이 있는 사용자에게 콘텐츠 소비가 가능하도록 지원한다. 또한

사용자가 콘텐츠에 대한 저장 권한을 갖고 있을 경우 콘텐츠를

암호화하여 사용자의 로컬로 저장하는 기능을 제공한다.

툴 전송 시스템은 콘텐츠 전송 시스템과 소비 시스템에서 콘텐츠

스트림의 암호화 및 복호화 기능을 담당하는 DRM 툴이 시스템 내부에

자체적으로 존재하지 않을 경우 툴의 정보를 이용하여 툴 검색과 전송을

담당한다.

3.1 사용 시나리오

기존 DRM 업체와 MPEG-21에서도 디지털 콘텐츠의 유통 모델을

정의하고 다양한 비즈니스 모델 검증을 위한 사용 시나리오를 설정한다.

일반적으로 참조되는 개념은 IMPRIMATUR에서 제안한 유통 모델이며

이를 확장 및 활용하고 있다.

이러한 유통 모델의 가치 사슬을 이루는 구성원은 별도의 독립적인

시스템으로 구성하여 시스템의 완성도를 높일 수 있다. 그러나 가치

사슬의 구성원에 해당하는 시스템을 모두 구현하기에는 범위가 넓으며,

37 본 논문에서 제안하는 아키텍처는 전체 유통 모델 중에 디지털 콘텐츠

보호화 같은 특정 부분 내용을 표현한다.

그러므로 사용 시나리오에 대한 내용도 콘텐츠 보호에 대하여 초점을

맞추고 유통 모델의 시나리오 가운데 일부분을 참고하여 다음과 같이

설정하였다[33, 34].

단계 1. 최종 사용자는 자신이 감상하고 싶은 영화 및 음악 데이터를

검색한 후, 콘텐츠에 대한 사용자의 제한 사항을 명시하는

사용 권한을 결재하여 라이센스 문서를 생성한다.

단계 2. 라이센스 문서의 구조는 MPEG-21 DID의 표준을 따르고 사용

권한은 MPEG-21 REL로 표현한다.

단계 3. 라이센스 문서에 포함되는 사용 권한 내용은 다음과 같다.

1. 소비 권한 : play(재생), save(저장)

2. 소비 횟수 : 제한 없음

3. 제한 시간 : 제한 없음

단계 4. 사용자에 의해 결재된 콘텐츠의 라이센스 문서에 대하여 고유

식별자를 부여한다.

단계 5. 콘텐츠를 전송하기 전에 암호화 작업에 대한 메타데이터를

생성한다.

단계 6. 만일 콘텐츠 전송 시스템 내부에 DRM 툴이 존재하지 않을

경우 툴 전송 시스템과 연동하여 작업을 처리한다.

단계 7. 사용자에게 전송 준비 완료 메시지와 함께 라이센스 문서 및

암호화에 대한 메타데이터를 전송한다.

단계 8. 사용자의 콘텐츠 소비 시스템은 전송 준비 완료 메시지와

메타데이터의 수신으로 시스템을 초기화한다.

38 단계 9. 암호화 작업에 대하여 기술된 메타데이터를 파싱하는 과정에서

만일 콘텐츠 소비 시스템 내부에 DRM 툴이 존재하지 않을

경우에는 톨 전송 시스템과 연동하여 작업을 처리한다.

단계 10. 초기화 작업이 완료되면 콘텐츠 소비 시스템은 사용자가 부여

받은 콘텐츠 식별자를 이용하여 해당 콘텐츠를 수신한다.

단계 11. 라이센스 문서를 분석한 후 DRM 툴을 이용하여 복호화

작업을 수행하고, 사용 권한 내에서 랜더링 처리한다.

단계 12. 사용자가 콘텐츠에 대한 저장을 원할 경우 라이센스 문서

내의 저장 권한을 확인한 후 콘텐츠에 암호화 작업을 수행하여

콘텐츠를 저장한다.

이와 같은 사용 시나리오에서 콘텐츠 또는 메타데이터에 대하여 고유한

식별자를 발급하고, 부여하는 기능은 별도의 시스템으로 구현하여야

하지만 본 논문의 시스템 아키텍처에서는 콘텐츠의 라이센스를 생성하는

시스템 내부에 이러한 기능을 포함시켜 설계하였다.

3.2 콘텐츠 전송 시스템

콘텐츠 전송 시스템은 사용자의 라이센스 정보 및 콘텐츠 정보 등의

요구 사항을 포함하는 메타데이터를 분석한 후 시스템 내부에 위치하는

콘텐츠 저장소에서 사용자의 소비 시스템으로 전송하기 위한 다양한

작업을 한다. 콘텐츠 전송 시스템과 다른 시스템 사이의 전체적인 작업

흐름을 그림 16에 나타내었다.

39

그림 16. 전송 시스템의 전체 작업 흐름도

그림 16에서 콘텐츠는 소비 시스템으로 전송하는 과정에서 실시간으로

보호되면서 전달되기 때문에 전송 시스템은 콘텐츠를 수신하기 전에 소비

시스템에게 콘텐츠를 암호화할 때 적용한 다양한 정보들을 전달해야 한다.

우선 콘텐츠 전송 시스템은 사용자의 소비 시스템으로부터 라이센스

문서를 수신하는데, 라이센스 문서에는 사용자가 선택한 콘텐츠 정보가

기술되어 있기 때문에 문서 분석을 통한 보호 작업의 처리 대상인 콘텐츠

정보를 획득할 수 있다.

전송 시스템의 내부에서 콘텐츠에 툴을 적용하기 위하여 처리되는 내부

작업은 다음 장에서 자세하게 기술하고, 툴을 적용할 때 로컬에 툴이

40 위치하지 않는 경우는 외부에 위치한 툴 전송 시스템과 연동하여 툴을

수신하고, 툴에 대한 초기화 작업을 진행한다.

툴의 초기화 완료는 툴을 적용할 준비가 끝난 경우를 의미하기 때문에

전송 시스템은 콘텐츠를 전송하기 위한 메시지를 전송한다. 또한

콘텐츠에 적용할 툴 정보와 툴이 적용되는 위치 정보인 컨트롤 포인트

정보가 포함된 메타데이터를 전송함으로써 소비 시스템에서 DRM 툴로

보호된 콘텐츠를 소비할 수 있는 초기화 정보를 제공한다.

소비 시스템은 초기화 정보를 통하여 콘텐츠 수신 준비를 하고, 작업이

완료되면, 콘텐츠 전송을 요청하는 메시지를 전송 시스템으로 전달한다.

전송 시스템은 콘텐츠 요청 메시지를 수신하면 초기화한 DRM 툴을

컨트롤 포인트에 따라서 오디오와 비디오 스트림에 실시간으로

적용하면서 소비 시스템으로 각각 전달한다.

전송 시스템과 소비 시스템에서 입력된 콘텐츠는 오디오와 비디오

스트림으로 분리하는 작업과 분리된 스트림에 대하여 툴을 적용하는

작업이 서로 동일한 과정으로 처리된다. 이러한 작업을 위하여 각

시스템은 시스템 제어 모듈, DRM 프로세서 모듈, 툴 에이전트 모듈, 툴

그룹 모듈, 스트림 처리 모듈을 이용한다. 각 모듈의 설명은 다음과 같다.

시스템 제어 모듈은 전송 시스템의 관리자에 의하여 외부 입력을 통한

시스템의 전체적인 제어를 담당하는 모듈이다. 주요 기능은 소비

시스템으로 전송되는 콘텐츠 정보 처리, 툴 전송, 콘텐츠 스트림 분리,

스트림에 대한 툴 적용, 스트림 전송 등의 제어 기능을 제공한다.

DRM 프로세서 모듈은 시스템 제어 모듈과 툴 에이전트 사이에

위치하여 툴 에이전트를 동적으로 생성하며 서로 통신하는 역할을

41 담당한다. 주요 기능은 로컬 툴 검색, 툴 정보를 이용한 툴 에이전트의

초기화 및 인증, 툴 에이전트로 암호화할 스트림 데이터의 전달 등이다.

툴 에이전트 모듈은 자신이 관리하는 툴 그룹에서 DRM 프로세서가

요청하는 툴들을 호출하고, 초기화하는 역할을 담당한다. 주요 기능은

DRM 프로세서로부터 전달된 컨트롤 포인트의 정보 분석, 툴에 대한

인증 및 초기화, 전달된 스트림에 대한 초기화된 툴 적용 등이다.

스트림 처리 모듈은 입력되는 콘텐츠를 오디오 스트림과 비디오

스트림으로 분리하는 역할을 담당한다. 그림 17에는 이러한 모듈 간의

작업 흐름을 나타내었다.

그림 17. 전송 시스템의 툴 적용 처리 흐름도

42 그림 17에서 콘텐츠에 대한 툴 매핑 작업은 소비 시스템으로부터

전송 받은 메타데이터 파서에 의하여 처리함으로써 파싱된 콘텐츠 정보를

시스템 제어 모듈에서 DRM 프로세서로 전달하는 것으로 시작된다.

시스템 제어 모듈에서 DRM 프로세서로 전달되는 정보에는 콘텐츠

정보 이외에 툴의 고유 아이디와 툴을 적용하는 컨트롤 포인트 리스트

정보가 포함된다. 컨트롤 포인트에 툴을 적용하기 위하여 DRM

프로세서는 툴 아이디로 로컬에 위치한 툴 저장소에서 해당되는 툴을

검색한다. 이 과정에서 툴이 로컬에 존재하지 않을 경우는 툴 전송

서버에 접속해서 필요한 툴을 전송 받는다. 툴을 위치시킨 후에는 툴

에이전트를 호출하여 컨트롤 포인트 리스트 정보를 전달하고 툴을

초기화하기 위한 초기화 작업을 수행한다.

컨트롤 포인트는 콘텐츠를 제공하는 시스템 별로 다양하게 정의될 수

있기 때문에 기본적인 컨트롤 포인트 리스트는 툴 에이전트에 포함된다.

그러므로 외부 시스템에서 전송되는 컨트롤 포인트는 툴 에이전트가

보유하는 컨트롤 포인트와 비교하여 컨트롤 포인트의 지원 가능성을

확인하는 작업이 선행되어야 한다.

이와 같이 툴 에이전트는 컨트롤 포인트에 대한 인증 작업을 수행한 후

DRM 프로세서와 툴에 대한 상호 인증 작업을 처리한다. 인증 작업이

완료되면 DRM 프로세서는 툴을 생성할 수 있는 초기화 작업을 툴

에이전트에 요청하고, 툴 에이전트는 자신이 관리하는 툴 그룹에서 툴

아이디에 적합한 툴을 호출하여 툴의 인스턴스를 생성한다.

이 과정까지 수행되면 툴을 컨트롤 포인트에 매핑할 수 있는 준비

작업이 완료되는 것을 의미하는 것으로 소비 시스템에 툴 정보, 컨트롤

포인트 정보, 콘텐츠 전송 준비 완료 메시지 등을 전송한다. 이 후

43 단계의 작업 처리는 그림 16에서 기술한 내용과 동일하다. 콘텐츠 전송

시스템의 스트림 처리 모듈의 구성도를 그림 18에 나타내었다.

R 보호된 RTP 보호된 Video Stream Video Stream 컨트롤 포인트 T P 전송기 보호된 RTP 보호된 Audio Stream Audio Stream

역다중화기비디오 스트림 보호된 스트림 비디오 디코더 비디오 인코더 다중화기 보호된 스트림

보호되지 않은 스트림 오디오 스트림 오디오 디코더 오디오 인코더

터미널-IPMP 툴 메시지 인터페이스

메시지 메시지

네트워크 인터페이스 툴에이전트

메시지 메시지

툴1 툴2 … 툴N 툴그룹 툴서버 툴팩

그림 18. 전송 시스템의 스트림 처리 모듈의 구성도

전송 시스템으로 입력되는 스트림 데이터는 DRM 툴로 보호되지 않은

원본 콘텐츠 스트림 데이터와 DRM 툴을 이용하여 보호된 콘텐츠 스트림

데이터의 두 종류로 구분된다. 원본 콘텐츠 스트림은 지금까지 기술한

시스템의 작업 내용과 연동되는 개념으로 콘텐츠를 전송할 때 각각의

데이터에 DRM 툴과 컨트롤 포인트를 적용하기 위한 콘텐츠이다. 그리고

보호된 콘텐츠 스트림은 원본 콘텐츠에 DRM 툴과 컨트롤 포인트를 미리

적용하여 전송 시스템의 로컬 저장소에 저장한 콘텐츠를 의미한다.

44 소비 시스템으로 데이터를 전송하는 과정에서 원본 콘텐츠 스트림을

이용하면 DRM 툴이 스트림 데이터에 실시간으로 적용되면서 처리되기

때문에 시스템의 처리 성능을 높게 차지하는 문제가 발생하지만 DRM 툴

적용에 따른 다양한 컨트롤 포인트 설정이 가능하다.

이와 비교하여 보호된 콘텐츠 스트림은 툴과 컨트롤 포인트가 콘텐츠에

이미 적용된 상태로 콘텐츠 전송 과정에서 실시간 보호 처리 작업을

요구하지 않기 때문에 시스템의 성능을 안정적으로 유지할 수 있으며

보다 향상된 처리 효율을 갖는다.

그러나 콘텐츠에 대한 툴과 컨트롤 포인트가 정형화된 상태로 저장된

구조를 갖기 때문에 툴과 컨트롤 포인트에 대한 다양한 적용이 요구되는

경우에 콘텐츠 자체를 다시 생성해야 하는 문제가 발생한다.

이러한 스트림들은 시스템 처리 과정에서 부분적인 차이가 존재하지만

대부분의 처리 과정이 유사하게 이루어진다. 일단 스트림 종류에 구분

없이 입력되는 스트림은 역다중화기 모듈을 통과하여 비디오 스트림과

오디오 스트림으로 분리하는 작업이 선행되어야 한다.

스트림의 종류에 따라 다르게 처리되는 작업은 역다중화기 모듈에서

분리된 스트림에 툴과 컨트롤 포인트를 연결하는 부분으로 보호된 콘텐츠

스트림은 툴이 이미 적용되어 있기 때문에 이 과정을 생략한다.

그러나 원본 콘텐츠의 경우는 분리된 스트림이 디코더 모듈과 RTP

전송 모듈을 통과하는 단계에서 툴과 컨트롤 포인트를 적용하는 처리

과정을 요구한다. 그리고 인코더 모듈과 다중화기 모듈을 이용하여 원본

콘텐츠를 보호된 콘텐츠로 생성하여 로컬 시스템 내부에 저장한다.

45 3.3 콘텐츠 소비 시스템

콘텐츠 소비 시스템은 사용자의 콘텐츠 소비 권한을 분석하여 암호화된

오디오와 비디오 스트림을 실시간으로 복호화하며 사용자에게 제공한다.

그림 19에 콘텐츠 소비 시스템이 다른 시스템과 연동되는 전체 작업의

흐름도를 나타내었다.

그림 19. 콘텐츠 소비 시스템의 전체 작업 흐름도

그림 19에서 사용자는 콘텐츠를 소비하기 위하여 콘텐츠 소비

시스템에서 제공하는 콘텐츠에 대한 권한을 결재하고 라이센스 문서를

생성한다. 라이센스 문서에는 콘텐츠에 대한 권한 정보 이외에 사용자의

46 인증 정보도 포함하고 있는데, 라이센스 문서의 구조는 MPEG-21 REL

스키마를 기반으로 설계하였다.

그림 20에 라이센스 문서의 스키마 구조를 나타내었다.

그림 20. 라이센스 문서의 스키마 구조

그림 20에서 라이센스 문서는 사용자 인증을 위한 기본 정보와 콘텐츠

소비에 필요한 다양한 권한을 갖도록 구성된다. 라이센스 문서의

엘리먼트 이름과 그에 대한 설명은 표 3에 나타내었다.

표 3. 라이센스 문서의 스키마 설명 엘리먼트 이름 설 명 grant 모든 권한 정보들을 포함하는 상위 엘리먼트 keyHolder 사용자의 식별 정보를 포함하는 상위 엘리먼트 Modulus RSA 공개키 쌍에서 지수를 암호화한 정보 Exponent RSA 공개키 쌍에서 계수를 암호화한 정보 play 리소스에 대한 사용자의 재생 권한 표현

47 save 리소스에 대한 사용자의 저장 권한 표현 deReference 리소스 정보를 갖는 식별자를 포함하는 엘리먼트 allCondition 리소스에 대한 모든 제한 조건 정보를 포함하는 상위 엘리먼트 amount 리소스의 결재 금액 정보를 표현 currency 리소스의 결재 금액인 화폐 정보를 표현 count 리소스의 사용 권한에 대한 사용 횟수를 표현 notBefore 권한의 유효한 시간 정보 (시작 시간) notAfter 권한의 유효한 시간 정보 (종료 시간)

이와 같은 라이센스 문서를 생성하면 소비 시스템은 전송 시스템에

라이센스 문서를 전달하여 툴과 컨트롤 포인트에 대한 정보를 수신

받는다. 그리고 수신 받은 정보를 이용하여 콘텐츠를 소비할 준비

단계로써 툴과 컨트롤 포인트를 초기화한다. 초기화하는 작업 중에 툴이

소비 시스템 내부에 존재하지 않을 경우는 툴 전송 시스템과 연동하여

시스템에서 필요한 툴을 다운로드 받는다.

툴과 컨트롤 포인트의 초기화가 완료되면 시스템에서 콘텐츠를 소비 할

수 있는 단계를 의미하기 때문에 전송 시스템으로 콘텐츠 요청 메시지를

전송하여 콘텐츠를 실시간으로 수신 받는다.

수신 받는 콘텐츠 스트림에 대하여 컨트롤 포인터의 위치에 툴을

연결하여 복호화된 스트림으로 변환하고 소비자에 콘텐츠를 제공한다.

소비 시스템에서 컨트롤 포인트를 이용하여 콘텐츠 스트림에 툴을

적용하는 동작 흐름은 그림 17의 전송 시스템에서 툴을 적용하는 과정과

동일하다. 그러나 소비 시스템에서는 사용자가 콘텐츠에 대한 재생

권한과 동시에 저장 권한을 보유하고 있는 경우, 콘텐츠를 재생하는

48 작업과 암호화하여 저장하는 작업이 동시에 처리되어야 하기 때문에 이를

고려하여 소비 시스템을 설계하였다.

그림 21에 소비 시스템에서 콘텐츠 스트림과 툴 및 컨트롤 포인트의

연동 작업을 처리하는 모듈의 구성도를 나타내었다.

보호된 RTP R 컨트롤 포인트 보호되지 않은 Video Stream 랜더러보호되지 않은 Video Stream T 스트림 P수신기 보호되지 않은 Audio Stream 보호된 RTP Audio Stream

역다중화기 비디오 디코더 비디오 인코더 다중화기 보호된 스트림 보호된 스트림

오디오 디코더 오디오 인코더

터미널-IPMP 툴 메시지 인터페이스

메시지 메시지

네트워크 인터페이스 툴에이전트

메시지 메시지

툴1 툴2 … 툴N 툴그룹 툴서버 툴팩

그림 21. 소비 시스템의 스트림 처리 모듈의 구성도

그림 21의 소비 시스템에서 툴과 컨트롤 포인트를 콘텐츠 스트림에

매핑하여 랜더링하는 작업도 그림 18의 전송 시스템의 처리 과정과

대부분 동일하다. 전송 시스템과의 차이는 RTP 수신기로 입력되는

스트림은 전송 시스템에서 이미 분리된 상태로 전송되기 때문에

역다중화기를 이용하지 않는 것이다. 또한 소비 시스템에서는 사용자에게

콘텐츠 스트림을 재생하기 위한 랜더러 모듈을 사용한다.

49 3.4 툴 전송 시스템

툴 전송 시스템은 콘텐츠 전송 시스템과 소비 시스템과 같은 외부

시스템에서 콘텐츠의 암호화 및 복호화 기능을 담당하는 DRM 툴에 대한

검색 및 전송 기능을 지원한다.

그림 22에 툴 전송 시스템의 전체 흐름도를 나타내었다.

그림 22. 툴 전송 시스템 흐름도

툴에 대한 검색을 위해서는 툴은 신뢰성 있는 인증 기관을 통하여

고유한 식별번호를 부여 받아야 한다. 그러나 인증 기관을 통한 식별

번호 발급은 인증 기관이 통일된 환경을 이루고 있지 않기 때문에 본

시스템에서는 MPEG-21의 DII(Digital Item Identification)[35]의 내용을

참고하여 툴에 고유 번호를 부여하였다.

50 툴 전송 시스템은 콘텐츠 전송 시스템이나 콘텐츠 소비 시스템 등의

외부 시스템에서 툴을 요청하는 것으로 작업이 시작된다. 일반적으로

전송 시스템은 콘텐츠에 대한 암호화 기능을 수행하는 툴을 요청하지만,

소비 시스템에서는 콘텐츠를 복호화하는 기능을 수행하는 툴이 요청된다.

툴 요청은 툴의 고유 식별자를 통하여 이루어지는데 수신된 식별자는

툴 검색 모듈로 전송되어 데이터베이스와 상호 메시지를 주고 받는다.

툴 검색 모듈에서 데이터베이스 관리 모듈로 툴의 식별자를 전송하면

데이터베이스 관리 모듈은 식별자를 이용하여 툴 리스트를 생성하고, 툴

검색 모듈로 툴 리스트를 전송한다.

콘텐츠를 암호화하는 전송 시스템은 시스템에서 요청한 툴을 검색할 때

상위 버전의 툴이 존재할 경우 이에 대한 리스트를 생성하여 툴 검색

모듈에서 툴 리스트를 분석한 후 최상위 버전의 툴을 전송한다.

그러나 소비 시스템은 요청한 툴과 다른 툴을 전송하게 되면 툴에 대한

상x하위 호환이 이루어지지 않아서 원활한 작업이 수행되지 못하는

경우가 발생할 수 있기 때문에 툴 리스트를 생성하지 않는다. 그림

22에서는 툴 리스트가 생성하지 않는 단일 툴 정보라도 툴 리스트의

구조로 표현되어 전송하기 때문에 별도의 작업 처리 흐름을 나타내지

않았다.

또한 툴 검색 모듈은 툴 리스트를 분석한 후 툴의 위치 정보를

네트워크 인터페이스로 전달하고, 네트워크 인터페이스는 툴을 요청한

시스템으로 해당 툴을 전송하기 위하여 툴의 위치 정보와 툴이 실제

저장된 위치의 툴을 매핑하여 전송하는 작업을 수행한다.

51 제 4 장 시스템 구현

4.1 시스템의 전체 구성

본 시스템은 콘텐츠 전송 시스템, 콘텐츠 소비 시스템, 툴 전송 시스템

등 세 개의 구조로 이루어진다. 콘텐츠 전송 시스템은 사용자가 요구하는

콘텐츠를 전송할 때 콘텐츠에 대한 불법적 접근 및 이용으로부터

콘텐츠와 사용자의 권리를 보호하기 위하여 실시간으로 암호화 처리하여

전송한다.

콘텐츠 소비 시스템은 사용자에게 콘텐츠에 대한 사용 권한 정보

결재와 사용 권한 정보에 따라 수신되는 암호화된 콘텐츠를 실시간으로

복호화하여 사용자에게 제공하거나 다시 암호화하여 사용자의 로컬에

저장이 가능하도록 한다.

툴 전송 시스템은 콘텐츠 전송 시스템과 소비 시스템에서 콘텐츠를

보호하는 DRM 툴이 시스템 내부에서 자체적으로 보유하고 있지 않을

경우 툴을 요청하는 시스템들과 연동하여 툴을 전송하도록 한다.

시스템을 구현하는 과정에서는 다음과 같은 사항들을 고려하며 작업을

진행하였다.

x 전송 시스템과 소비 시스템에서의 다양한 컨트롤 포인트 지원

x 전송 시스템과 소비 시스템에서 콘텐츠에 대한 재생 및 저장 작업

과정에서의 DRM 툴의 연속적인(Continuous) 프로세싱

x 실시간 콘텐츠 전송을 위한 RTP 데이터 처리

x 툴 전송 시스템과 다른 시스템의 모듈 간 자동화 및 유연성 지원

x 콘텐츠의 실시간 데이터 처리에 적합한 DRM 툴의 최적화

52 x 개념적으로 정의된 표준 규격 분석을 통한 시스템화

표 4에 본 시스템의 개발 환경 및 시뮬레이션 환경을 정리하였다.

표 4. 시스템 개발 및 시뮬레이션 환경 개발 도구 설 명 시스템 IBM-PC 호환 컴퓨터 OS Microsoft Windows XP SP2

파서 MSXML 개발 언어 Java 데이터베이스 Microsoft SQL Server 2000 SP3 SDK JMF 2.1

4.2 콘텐츠 전송 시스템

콘텐츠 전송 시스템은 소비 시스템과의 상호 통신을 통하여 소비

시스템에서 요구하는 멀티미디어 콘텐츠(오디오/비디오)를 실시간으로

암호화하여 전송하는 것과 전송 과정에서 스트림의 끊김 현상을 제거하는

것이 주요 목적이다.

그러나 콘텐츠 전송 시스템을 구현하는 과정에서 RTP를 이용한

스트림 전송은 JMF의 최근 버전에서도 오디오 스트림과 비디오 스트림을

같이 갖고 있는 멀티미디어 스트림 전송을 지원하지 않는 문제를

내포하고 있었다. 이러한 이유로 전송 시스템은 사전에 콘텐츠 저장소에

오디오 스트림과 비디오 스트림으로 분리하여 저장한 상태의 콘텐츠를

동시에 전송하는 방법과 멀티미디어 콘텐츠를 시스템 내부에서 오디오와

53 비디오 스트림으로 분리해서 동시에 전송하는 방법을 지원하도록

구현하였다. 그림 23에 전송 시스템의 전체적인 인터페이스를 나타내었다.

그림 23. 전송 시스템 구현 화면

그림 23에서 전체적인 구성은 암호화 되지 않은 멀티미디어 콘텐츠의

목록을 보여주는 멀티미디어 콘텐츠 표시부, 암호화된 비디오 콘텐츠

목록을 보여주는 암호화된 비디오 콘텐츠 표시부, 암호화 되지 않은

오디오 콘텐츠를 보여주는 원본 오디오 콘텐츠 표시부, 그리고 전송

시스템의 전체적인 제어 및 관리를 하는 시스템 제어부로 이루어진다.

54 콘텐츠 전송 시스템은 시스템의 동작 환경을 고려했을 때 방송 서버와

같은 역할을 수행하기 때문에 멀티캐스트(Multicast) 또는 브로드캐스트

(Broadcast) 방식으로 콘텐츠를 전송해야 한다. 그러나 오디오 스트림과

비디오 스트림의 데이터 싱크(Sync)를 안정적으로 제어하면서 소비

시스템으로 전송해야 되는 문제로 유니캐스트(Unicast) 개념을 적용하여

시스템을 구현하였다.

전송 시스템의 작업 처리는 크게 3 단계로 구분할 수 있다. 1 단계는

소비 시스템으로부터 라이센스 문서를 수신한 후 필요한 정보를 파싱하는

작업이다. 소비 시스템에서 콘텐츠를 사용하기 위하여 콘텐츠에 대한

라이센스 결재로 생성된 문서를 그림 24에 나타내었다.

그림 24. 소비 시스템으로부터 전송 받는 라이센스 문서 구조

55 그림 24에서 라이센스 문서는 현재 전송되는 라이센스 문서를

의미하는 식별자와 콘텐츠에 대한 권한 정보 및 콘텐츠 정보를

암호화하여 포함시킨 바이너리 데이터, 그리고 각각의 정보를 암호화할

때 사용한 툴 정보를 포함하고 있다.

전송 시스템에서는 라이센스 문서 내에 포함된 암호화된 데이터를

복호화하기 위하여 툴 정보와 키 정보를 요구하는데 이러한 정보는 문서

구조 내에서 포함되기 때문에 툴 서버와 연동하여 획득이 용이하다. 툴

과 키 정보를 이용하여 암호화된 콘텐츠 정보를 복호화하면 사용자가

요구한 콘텐츠 정보는 그림 25와 같은 구조를 갖고 있다.

그림 25. 소비 시스템으로부터 전송 받은 콘텐츠 정보 구조

그림 25의 콘텐츠 정보는 MPEG-21 DID 구조를 기반으로 소비자가

결재한 콘텐츠의 이름과 전송 시스템 내에서 콘텐츠의 위치정보를

포함하고 있다. 여기서 콘텐츠의 위치 정보는 소비 시스템에서 사용자가

전송 시스템에 존재하는 콘텐츠 목록을 검색할 때 같이 제공된 정보이다.

56 라이센스 문서에는 콘텐츠 정보 이외에 콘텐츠의 사용 권한 정보도

암호화 되어 있는데, 이 정보를 복호화하면 사용 권한 정보는 MPEG-21

REL 구조를 기반으로 그림 26과 같이 표현하였다.

그림 26. 소비 시스템으로부터 전송 받은 권한 정보의 구조

그림 26의 권한 정보는 콘텐츠를 결재한 사용자의 아이디와 패스워드

정보, 콘텐츠의 식별자 정보, 결재 요금과 화폐 정보, 사용 횟수 정보,

소비 권한 정보, 권한의 시작 시간과 만료 시간 정보 등을 갖고 있다.

그러므로 그림 26의 정보를 분석하면 다음과 같이 설명될 수 있다.

57 ‘소비 시스템의 admin이라는 아이디를 갖는 사용자가 superman이라는

콘텐츠에 대하여 2006년 10월 19일 12시 21분 55초부터 2006년 10월

19일 23시 59분 59초의 기간 내에서 콘텐츠를 5번 재생(play)하는

권한을 10000원(화폐단위: KRW)에 결재하고 이 정보를 암호화할 때 admin이라는 키를 사용하였다’.

이러한 라이센스 정보는 전송 시스템 내부에 있는 라이센스 저장소에

저장되어 시스템에서 콘텐츠를 전송하기 전에 소비 시스템으로 전송한다.

이와 같은 1 단계 과정을 통하여 전송 시스템은 소비 시스템에서

요구하는 콘텐츠 정보와 콘텐츠의 사용 권한 정보를 확인한다.

전송 시스템의 2 단계는 전송 시스템에서 콘텐츠 스트림에 적용할

툴과 컨트롤 포인트를 초기화하고, 콘텐츠의 라이센스 문서를 암호화하여

소비 시스템으로 전송한다.

툴과 컨트롤 포인트의 초기화는 초기화 된 툴이 컨트롤 포인트에

매핑되어 스트림에 직접적으로 적용되기 때문에 중요하게 처리되는

작업으로, 툴과 관련된 작업은 대부분 DRM 프로세서에 의하여 제어된다.

우선 시스템 제어 모듈에서 툴과 컨트롤 포인트 정보를 전달 받으면

DRM 프로세서는 해당되는 툴 에이전트를 동적으로 생성한다. 툴

에이전트는 DRM 툴을 그룹화하여 보유하고 있고, 적용할 수 있는

컨트롤 포인트가 설정되어 있다. 그러므로 DRM 프로세서는 시스템 제어

모듈로부터 전달 받은 컨트롤 포인트와 툴 에이전트에 설정된 컨트롤

포인트를 비교하여 확인하는 작업을 처리한다.

컨트롤 포인트는 스트림 데이터에 대하여 DRM 툴의 적용되는 위치를

정의하는 것으로 표 5에 컨트롤 포인트 리스트를 정리하여 나타내었다.

58 표 5. 컨트롤 포인트 리스트 컨트롤 포인트 위 치 0 No Control Point 1 Control Point Before Audio Decoding 2 Control Point After Audio Decoding 3 Control Point Before Video Decoding 4 Control Point After Video Decoding 5 Control Point Before Audio Encoding 6 Control Point After Audio Encoding 7 Control Point Before Video Encoding 8 Control Point After Video Encoding

툴 에이전트는 표 5의 컨트롤 포인트를 전부 보유하고 있을 수도 있고,

일부만을 보유할 수 있다. 그러므로 DRM 프로세서는 시스템 제어

모듈로부터 전달 받은 컨트롤 포인트 리스트와 툴 에이전트가 지원하는

컨트롤 포인트를 비교해야 한다. 이 과정에서 만일 DRM 프로세서가

요청하는 컨트롤 포인트가 툴 에이전트에서 지원하지 못하는 것일 경우는

초기화 작업이 실패되어 시스템 제어 모듈은 그 이후의 모든 작업을

중지시킨다.

툴과 컨트롤 포인트의 초기화가 처리되면 정보와 함께 암호화 한

라이센스 문서 정보를 소비 시스템에 제공하여 콘텐츠 스트림의 수신

대기 작업이 가능하도록 함으로써 2 단계 작업을 완료한다.

3 단계는 실제 콘텐츠 스트림인 오디오와 비디오 스트림에 컨트롤

포인트와 툴을 매핑하여 소비 시스템으로 각각 전송하는 작업을

처리하였다.

59 4.3 콘텐츠 소비 시스템

콘텐츠 소비 시스템은 사용자의 콘텐츠에 대한 사용 권한이 허용하는

범위에서 전송 시스템으로 수신 되는 콘텐츠 스트림을 소비할 수 있도록

제공하도록 구현하였고, 그림 27에 소비 시스템의 구현 화면을

나타내었다.

그림 27. 소비 시스템 구현 화면

그림 27에서 소비 시스템의 인터페이스는 크게 네 개의 구조로

이루어지는데 시스템 제어부는 현재 재생되는 콘텐츠와 관련된 정보 표시

및 재생과 관련된 전반적인 제어를 담당한다. 스트리밍 콘텐츠 제어부는

전송 시스템에서 수신 받은 초기화 정보를 이용해서 암호화된 오디오

60 스트림 또는 비디오 스트림의 복호화 작업을 설정한다. 그리고 로컬

콘텐츠 제어부는 현재 스트리밍 중인 스트림 데이터를 로컬로 암호화하여

저장하거나 로컬에 암호화되어 저장된 콘텐츠의 복호화 작업을

제어하면서 처리한다. 재생 목록 관리부는 로컬에 저장된 콘텐츠의

리스트를 관리하여 사용자에게 제공하는 것으로 리스트의 콘텐츠 목록을

선택하면 현재 재생되는 콘텐츠를 변경할 수 있도록 하였다.

그림 28에 이러한 인터페이스 모듈 이외에 소비 시스템에서 툴과

관련되어 이용한 모듈간의 관계를 클래스 다이어그램으로 표현하였다.

그림 28. 소비 시스템의 클래스 다이어그램

그림 28에서 DRMVideoTool은 비디오 스트림의 복호화를 처리하는

클래스이고 DRMAudioTool은 오디오 스트림의 복호화를 처리하는

클래스이며, 두 클래스는 DES 알고리즘을 기반으로 구현하였다.

61 소비 시스템의 전체적인 작업 과정은 콘텐츠에 대한 라이센스 결재와

콘텐츠 제어로 구분할 수 있다. 라이센스 결재하기 위해서 그림 29와

같이 인터페이스를 구성하였다.

그림 29. 라이센스 문서 결재 화면

그림 29에서 콘텐츠 목록은 소비 시스템이 시작될 때 전송 시스템에서

수신 받은 데이터로 표시하여 사용자에게 제공한다. 사용자가 설정할 수

있는 콘텐츠의 사용 권한은 소비 시간, 소비 횟수, 소비 권한, 결제

화폐의 종류이다. 실제 비즈니스 모델에서는 각각의 설정에 대하여

개별적으로 현실성 있는 금액이 설정되어야 하지만 본 시스템에서는

62 이러한 사항은 반영하지 않았다. 사용자에 의한 설정이 완료되어 결재

버튼이 실행되면 전송 시스템에서 설명한 그림 24와 같은 MPEG-21REL

구조 기반의 라이센스 문서가 생성되고, 이 문서를 전송 시스템으로

전송한다.

전송 시스템으로부터 초기화 정보를 수신 받으면 소비 시스템은 초기화

정보에 기반하여 스트림을 처리하기에 적합하도록 시스템을 설정하고

수신 대기 상태로 스트림 전송을 기다린다.

전송 시스템에서 암호화된 스트림 전송이 시작되면 소비 시스템은

초기화 정보로 사전에 준비된 DRMVideoTool 클래스와 DRMAudioTool

클래스를 컨트롤 포인트 정보에 따라서 스트림에 적용하여 복호화한 후

랜더링하여 사용자에게 제공한다. 이 과정까지의 콘텐츠를 처리하는데

등록된 플러그인의 종류를 뷰어를 통하여 그림 30에 나타내었다.

그림 30. 콘텐츠에 적용되는 플러그인 종류

그림 30에서 현재 소비 시스템의 컨트롤 포인트가 디코더 전단으로

설정되어 있고, 오디오 스트림과 비디오 스트림에 암호화된 콘텐츠이기

때문에 DRMAudioTool과 DRMVideoTool이 디코더 전단에 등록되어

동작하는 것을 확인할 수 있다.

63 4.4 툴 전송 시스템

툴 전송 시스템은 툴을 요구하는 시스템에게 원활한 툴 공급을 지원

하며, 시스템 관리자에 의한 제어 기능을 최소화하고 요구 시스템과 툴

전송 시스템 사이에 자동화된 작업 처리가 이루어지도록 하였다.

그림 31에 툴 전송 시스템의 전체적인 인터페이스를 나타내었다.

그림 31. 툴 전송 시스템 구현 화면

그림 31에서 전체적인 구성은 툴 전송 시스템 정보부와 접속한

시스템에 대한 정보를 보여주는 접속 시스템 정보부, 그리고 툴 전송

시스템의 로컬에서 보유하고 있는 툴을 관리하는 툴 관리부로 이루어진다.

64 툴 전송 시스템은 시스템에서 최초로 동작할 때 관리자에 의하여

특정한 식별자를 입력 받는데, 이 식별자는 시스템의 IP 주소와 결합하여

URN 형식으로 툴 전송 시스템의 고유 식별자를 정의한다. 예를 들어

관리자가 툴 전송 시스템이 최초 동작할 때 ‘HELLO’ 라는 특정

식별자를 입력하였고, 현재 전송 시스템의 IP가 ‘203.250.143.150’으로

설정되어 있다면 툴 전송 시스템은 ‘urn:203.250.143.150:HELLO’과

같은 고유 식별자를 갖게 된다.

이와 같이 툴 전송 시스템에 식별자를 부여하는 의미는 툴을 요청한

시스템과 툴 전송 시스템이 연동되는 과정에서 DRM 툴을 보다 명확한

구분을 가능하게 한다. 그림 32에 식별자가 없을 경우의 문제를

나타내었다.

요청 툴1 툴전송시스템A

수신 툴1 툴1 툴2 툴3

콘텐츠전송시스템

툴 전송 시스템 B

콘텐츠 툴1 툴1 툴2 툴3

콘텐츠소비시스템 툴1 ? ? 툴전송시스템C

툴1 툴2 툴3

그림 32. 툴 전송 시스템의 식별자 부재에 따른 문제

65 그림 32는 콘텐츠 전송 시스템이 툴 전송 시스템 A의 툴 1을 다운

받아서 패키징한 콘텐츠를 소비 시스템으로 전송했을 때 소비 시스템과

툴 전송 시스템들 간에 툴 1에 대한 요청이 불분명한 것을 나타낸다.

이러한 경우 툴 전송 시스템의 고유 식별자는 DRM 툴을 분배하는

경로를 보다 투명하게 하여 전체적인 신뢰도가 향상되는 환경을 조성한다.

또한 툴 전송 시스템이 보유하는 툴들도 각각의 고유한 식별자로

표현하는데, 본 논문에서 툴 전송 시스템은 암호화와 복호화 및

워터마킹과 디워터마킹 툴을 갖고 있다. 툴에 대한 식별자는 표 6으로

정리하였다.

표 6. 툴 전송 시스템의 툴 식별자 툴 종류 분 류 등록일 식별자 암호화 EncTool 20061019 urn:EncTool:20061019 복호화 DecTool 20061019 urn:DecTool:20061019 워터마킹 WatTool 20061019 urn:WatTool:20061019 디워터마킹 DewatTool 20061019 urn:DewatTool:20061019

일반적으로 툴은 알고리즘에 따라 동일한 이름을 갖고 있으면서도

조금씩 변형된 형태로 다양하게 존재하며 기능상 차이가 있다. 이러한

툴의 정보를 모두 포함하여 식별자로 지정하는 분류체계는 명확하게

정립되어 있지 않기 때문에 표 5에서는 툴을 기능과 시스템에 등록된

날짜를 기반으로 식별자를 정의하였다. 그리고 툴을 등록할 때 부가적인

정보를 등록하여 데이터베이스화 함으로써 툴의 독립성을 지원하고

중복성을 제거하였다.

66 또한 툴 전송 시스템은 이러한 툴이 전송 시스템과 소비 시스템에서

요청될 때 메인 화면의 접속 시스템 정보부에서 툴의 전송 과정의

모니터링이 가능하도록 인터페이스를 구성하였다.

4.5 평가 분석 및 고찰

본 논문은 디지털 콘텐츠를 보호하기 위해 구성되는 DRM 시스템들

간의 상호운용을 지원하는 방법으로 각 DRM 시스템들의 동일한

메타데이터 처리를 위한 MPEG-21 표준과 콘텐츠에 DRM 툴을

적용하는 과정에서 툴을 그룹화하여 제공하는 DMP의 툴팩 표준을

적용하였다. 즉, 툴을 콘텐츠에 적용하는 기술적인 문제는 DMP의 툴팩

개념을 이용하였고, 툴에 대한 메시지 통신 및 콘텐츠에 대한 사용 권한,

그리고 전반적인 메타데이터는 MPEG-21의 표준 기술들을 사용하였다.

기존 DRM 시스템에서는 콘텐츠가 사용자에게 전달되기까지 콘텐츠는

다양한 시스템들과 연관되어 각 시스템의 고유한 메타데이터 포맷으로

표현하였기 때문에 각 메타데이터 분석 및 처리에 따른 전체적인 시간

지연뿐만 아니라 시스템 사이의 유기적인 동작을 저해한다.

이에 콘텐츠의 유통 과정을 표준화 대상으로 하는 MPEG-21 표준을

본 시스템에 적용한 결과 콘텐츠의 생성, 유통, 인증, 소비와 관련된

시스템들 간에 메타데이터 처리 및 관리가 용이하게 이루어지고, 이와

함께 기존 유통 체계에 별도의 추가적인 시스템 확장성이 향상되었다.

그리고 DRM 툴에 대한 상호운용성 지원은 기존 DRM 시스템과

MPEG의 DRM 기술인 MPEG-2, MPEG-4, MPEG-21의 IPMP에서

공통적인 개념을 DMP의 툴팩 개념과 비교하여 그림 33에 표현하였다.

67 MPEG-2/4/21의 IPMP 개념 DMP의 툴팩 개념

Terminal-IPMP Tool Message Interface 터미널-IPMP 툴 메시지 인터페이스

공통 통신 메시지 메시지 메시지 메시지 통신 통신 통신 툴 에이전트 툴 에이전트 툴 에이전트 메 메 메 IPMP 툴 1 IPMP 툴 2 … IPMP 툴 n 시 시 시 지 지 … 지 툴그룹 툴그룹 툴그룹 툴팩 1 툴팩 2 툴팩 n

그림 33. MPEG의 IPMP와 DMP의 툴팩 개념 비교

그림 33에서 MPEG의 IPMP 기술은 디지털 콘텐츠를 보호하는 단위

기능을 툴이라는 개념으로 객체화하고, 이러한 툴과 터미널 간의

인터페이스를 정의함으로써 다양한 툴 사이의 상호운용성을 보장한다.

그러나 이 기술은 툴을 제공하는 입장에서는 터미널의 구조를 고려한

툴을 구현하여야 되고 이는 단일 터미널에 종속됨으로써 다른

터미널에서의 활용성을 떨어지게 한다. 즉, 툴과 터미널이 개별적인 툴에

대한 인터페이스 메시지를 알고 있어야 하기 때문에 새로운 툴에 대한

확장성이 어렵다는 것을 의미한다. 또한 툴에 대한 정보가 메시지를

통하여 외부로 노출될 수 있기 때문에 콘텐츠에 대한 보안이 위협받을 수

있다.

그러므로 본 시스템에서는 이러한 기술적인 문제에 대하여 보다 향상된

상호운용성의 개념을 지원하는 DMP의 툴팩 개념을 적용하였다. 툴팩

개념은 툴들을 개별적으로 제공하는 것보다 하나의 그룹으로 묶어서

제공한다. 그리고 이러한 툴 그룹의 제어는 툴 에이전트를 내부에

68 위치하여 하나의 패키지된 형태로 툴 그룹을 적용하기 때문에 툴에 대한

상호운용성을 보장하면서 기존 기술보다 현실적인 기술로 설명할 수 있다.

즉, 툴 그룹의 개별적인 툴에 대해서 적용할 툴의 검색과 초기화 등의

사전 준비 작업을 담당하는 툴 에이전트는 보유하는 툴 간의 통신을

위하여 내부 인터페이스를 정의하여 메시지를 교환하도록 하였다. 그리고

터미널과 툴 에이전트 간에 통신을 위하여 외부로 노출하는 인터페이스를

정의하여 메시지를 교환하는 방식으로 동작하도록 하였다.

이러한 구조는 다양한 툴 에이전트들이 위치하는 곳에 터미널에서

사용할 툴의 정보를 툴 에이전트들에게 전달하면 툴 에이전트가 툴

그룹에 정의된 정보와 비교하여 터미널에 적합한 툴 에이전트가 접근된다.

그러므로 기존 기술에 비하여 개별적인 툴이 그룹화를 통한 확장성이

지원되고, 툴의 중요한 정보들이 노출되지 않아서 보안성이 향상되었다.

지금까지 기술한 내용을 근거로 하여 기존 DRM 기술을 이용한

시스템과 본 논문에서 구현한 시스템의 비교를 표7에 나타내었다.

표 7. 기존 시스템과 비교 비교 항목 기존 시스템 본 시스템 상호운용성 폐쇄형/부분 개방형 전체 개방형 구성시스템 간의 관계 단일 모델의 종속화 다양한 모델의 독립화

메타데이터 표현 구성 시스템간 상이 구성 시스템간 동일

시스템/툴 확장성 낮음 높음 툴의 보안성 일부 낮음 높음

표 7에서 기존 시스템들은 상호운용성에 대하여 특정 벤더 중심적인

기술 구현을 통하여 시스템을 갖추기 때문에 폐쇄적인 성향을 갖고

69 있으며, 국제 표준인 MPEG의 IPMP 기술을 이용한 시스템의 경우에도

국제 표준이라는 특성에 기인하여 부분적으로는 개방적 성향을

지향하지만 기술적 한계를 내포한다. 그러나 본 시스템은 국제 표준인

MPEG의 기술과 MPEG의 기술적 한계를 보다 향상시킨 DMP 표준

기술을 이용함으로써 시스템이 전체적으로 개방형 성향을 유지하면서

상호운용성을 지원한다.

콘텐츠의 가치 사슬을 이루는 구성 시스템에서도 기존 시스템에서는

단일 비즈니스 모델을 기반으로 시스템이 단일 모델에 종속화되는 반면

본 시스템은 각 시스템의 독립적으로 운용될 수 있도록 구조화하여

구현하였으므로 다양한 비즈니스 모델에 부분적으로 활용 가능하다.

또한 기존 시스템은 각 시스템 간에 표현되는 메타데이터의 구조가

각각 개별적으로 서로 상이하여 시스템의 확장성을 저해하지만 본

시스템은 각 시스템의 메타데이터 구조를 MPEG-21을 기반으로 서로

동일하게 구현하였기 때문에 메타데이터 처리에 대하여 시스템 전체적인

구현이 용이함과 함께 효율성 및 확장성을 높였다. 시스템의 확장성과

함께 툴에 대해서도 기존 시스템은 툴을 이용하는 시스템에 툴이

종속화되면서 툴의 확장이 힘든 구조를 갖지만 본 시스템은 툴팩의

개념을 통하여 툴의 확장이 상대적으로 쉬운 구조적 특성을 갖는다.

이와 같이 다양한 특징으로 본 시스템은 비즈니스 모델의 가치 사슬을

이루는 구성원들에게 신뢰성 및 안정성을 보장하는 시스템 아키텍처를

제시하고, 현재 표준화가 진행 중인 DMP와 MPEG 표준 기술이 서로

통합되어 사용할 수 있는 가능성을 보임으로써 보다 완성도 있는 표준

작업 및 시스템 구현에 활용될 수 있다.

70 제 5 장 결 론

디지털 콘텐츠를 활용한 이용 분야가 확대되면서 고사양의 시스템과

향상된 알고리즘 등의 기술을 기반으로 불법 복제 및 유통이 점차

간단하게 이루어지고 있다. 이에 대해 콘텐츠를 보호하기 위한 DRM

기술들이 국제 표준화 단체와 대형 벤더들 중심으로 개별적으로 개발되고

일부분은 상용화되고 있다.

그러나 이런 독자적인 DRM 기술들은 서로 다른 기술간 상호운용성을

보장하지 못하기 때문에 콘텐츠의 보안성만을 강조하여 업체의

우선시하는 것에 따라 이를 이용해야 되는 사용자들은 지속적으로 콘텐츠

사용의 불편함의 문제를 제기하고 있는 상황이다.

이에 본 논문에서는 MPEG-21의 표준 기술과 DMP 표준의 툴팩

개념을 적용하여 디지털 콘텐츠 보호 시스템을 개발하였으며, 이

시스템을 통하여 표준화를 진행 중인 MPEG-21과 DMP 표준의 기술

적용에 따르는 디지털 콘텐츠의 보호 관리에 대한 신뢰성과 안정성의

관계를 제시하였다.

본 시스템은 디지털 콘텐츠 보호와 보호 기술 간의 상호운용성을

보장하기 위하여 메타데이터와 관련된 부분은 MPEG-21의 표준 내용을

적용하였고, DRM 툴의 통신 메커니즘과 관련된 부분은 DMP 표준

내용을 적용하였다. 그러므로 기존 DRM 기술과 비교하였을 때, 보다

향상된 안정성 및 투명성이 제공된다. 또한 DMP와 MPEG-21 표준이

DRM 시장에서 갖는 활용성이 검증 가능하며, 표준화 작업에 고려되어

체계적인 참고 모델로 제시될 것으로 사료된다.

71 향후 연구 과제는 본 시스템에서 DRM 툴을 스트림 데이터에

실시간으로 처리하면서 전송하는 과정에서 DRM 툴이 과도한 연산량을

요구하는 문제가 발생하여, DES 알고리즘을 기반으로 하는 단일 DRM

툴을 최적화하여 문제를 해결하였다. 그러므로 다양한 알고리즘을

기반으로 하는 DRM 툴에 대한 최적화 작업이 요구된다. 또한 현재

표준화 작업이 완료되지 않은 DMP 표준의 표준화 작업의 진행 사항에

맞는 시스템 확장에 대한 연구가 필요하다.

72 참고문헌

[1] “2005년도 국내 디지털 콘텐츠 산업 시장 조사 보고서”, 한국소프트 웨어 진흥원, 2005.

[2] “WiBro 서비스의 시장위상과 수요분석”, 안형택, 정보통신정책연구, Vol. 12 No. 1, 2005.

[3] “DMB 사업의 경제적 편익측정에 관한 연구”, 신철오, 산업경제연구, Vol. 18 No. 2, 2005.

[4] “The digital rights management challenge: effective DRM”, Chapman, S. Caunt, D. COPYRIHT WORLD, Vol.-No.158, 2006.

[5] “DRM”, Gesellschaft, f.r., INFORMATIK SPEKTRUM, Vol.29 No.1, 2006.

[6] [DRM] “DRM Working Group”, http://www.drmkorea.org.

[7] [OMA] http://www.openmobilealliance.org/

[8] “The Problems with DRM”, Catherine Stromdale, Entertainment Law Review vol. 17 No.1 2006.

[9] “국제 DRM 동향분석 및 대응전략” 강호갑, 정보과학회지 제23권 제8호, 2005.

[10] “The Digital Media Manifesto”, http://www.dmpf.org/manifesto

[11] “ISO/IEC 21000-5 Rights Expression Language”, ISO/IEC JTC1/SC29/WG11/ N5002, Sep. 2002.

[12] [JMF] http://java.sun.com/products/java-media/jmf/

[13] [InterTrust] http://www.intertrust.com/

73 [14] [ContentGuard] http://www.contentguard.com/

[15] “The use of a Digital Rights Management System for Document Supply”, Braid, A., IFLA Council and General Conference, No.71, 2005.

[16] “DRM 최신 국제 표준 기술사양 분석 및 세계 유명제품 동향과 전망에 관한 연구”, 한국소프트웨어진흥원, 2004.

[17] “DRM 기술 현황 및 콘텐츠 유통 인프라 구축방안” 윤기송, 정보과 학회지 제23권 제8호, 2005.

[18] “모바일 DRM 기술분석 및 시장 동향” 신용태, 장의진, 정인성 정보 과학회지 제23권 제8호, 2005.

[19] “A DRM system for network streaming and distribution of personal digital audiovisual content”, Lan, B. Tan, T., IEEE INTERNATIONAL CONFERENCE ON CONSU-MER ELECTRONICS, Vol. 23 No.-, 2005.

[20] “Public and Private Sectors Focus on DRM and Copy Protection”, Stromdale, C. ENTERTAINMENT LAW REVIEW, Vol. 17 No. 3, 2006

[21] “MPEG-21의 DRM 기술 표준화 현황 분석”, 정상원, 정보관리연구, vol. 35, no.2, 2004.

[22] “ISO/IEC 21000-4 IPMP Components FCD”, ISO/IEC JTC1/SC29/WG11/ N7196, April 2005.

[23] “White Paper on MPEG-2 IPMP”, ISO/IEC JTC1/SC29/WG11/N7503, July, 2005.

[24] “White Paper on MPEG-4 IPMPX”, ISO/IEC JTC1/SC29/WG11/N7503, July, 2005.

[25] “MPEG-4의 세계”, 미키 스케이치, 영풍문고, 1999.

74 [26] “ISO/IEC 21000-2 FDIS Digital Item Declaration”, ISO/IEC JTC1/SC29/WG1 1/N4813, 2002.

[27] “Management and protection of digital content with the flexible IPMP scheme- MPEG-21 IPMP:, Zhongyang Huang, Shengmel Shen, Ming Ji, Takanori Senoh, Proc. SPIE vol. 5960, p.1119-1129, July 2005.

[28] “Requirements form MPEG-21 IPMP” , ISO/IEC JTC1/SC29/ WG11/N6389, March, 2004.

[29] “Study of Text of CD ISO/IEC 21000-4 : 2001”, ISO/IEC JTC1/ SC29/WG11/ N4 717, Jeju, Mar. 2002.

[30] “Approved Document No. 2, WD 2.0 – Technical Reference: Architecture, Phase III”, The Digital Media Project, 2006.

[31] “Approved Document No. 3, WD 2.0 – Technical Specification: Interoperable DRM Platform, Phase III”, The Digital Media Project, 2006.

[32] “ISO/IEC FDIS 21000-5 Rights Expression Language”, ISO/IEC JTC1/SC29 /WG11N5839, July, 2003.

[33] “Study of ISO/IEC 21000-12/PDTR Test Bed for MPEG-21 Resource Delivery”, ISO/IEC JTC1/SC29/WG11/N6471, 2004.

[34] “MPEG-21 Use Case Scenario document”, ISO/IEC JTC1/SC29/ WG11/N4991, July, 2002.

[35] “ISO/IEC 21000-3 Digital Item Identification”, ISO/IEC JTC1/SC29WG11/ N4939, July 2002.

75 A Study on Interoperable DRM System based on DMP and MPEG-21

Kwang-Hee, Ryu

Department of Computer Engineering, Graduate School of

Paichai University Daejeon, Korea

(Supervised by Professor Hoe-Kyung, Jung)

Digitalize of analog contents is increasing gradually due to improve the performance of the computer's terminal units and the modification of the contents by individual user becomes common. The modified or reproduced contents are simply distributed through the ultrahigh speed internet and the negative pervasive effect on the contents market is increasing.

The solutions for copyright protection from illegally distributing contents are developing by various standardization groups and contents manufacturers and its commercial use is partly practiced.

Also, the MPEG which made the successful standard for multimedia data such as MPEG-1, MPEG-2, MPEG-4, was developing the IPMP technique to apply existed MPEG standards as a way of digital contents protection. However, as these IPMP techniques did not provide a satisfactory function for contents protection, the

76 DMP(Digital Media Project) standard was suggested as an alternative plan.

The major differences between IPMP and DMP are concealment of tool. The existed IPMP standards modularize the function of authentication, watermarking and encryption to support mutual application of different DRM techniques and open as the tool information and API. However, those methods can be a cause of security deterioration, so the DMP introduced a concept of ToolPack which is grouping the tools and provide the tool agent for using those tools.

Therefore, in this paper, the system is designed and materialized to apply the ToolPack concept of DMP which ensure the mutual application of DRM tool. With this paper, it is expected that the practical use and the possibility of the DMP standard in the DRM market would be verified and DMP standard may presents as a reference model for more systematic operations of standardization.

77