개념
2013.01.22 10:17

OMA DRM에서 DCF 란?

조회 수 12247 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

http://blog.daum.net/baramjin/5486085

 

DCF는 사실 암호화된 컨텐츠의 확장자로 더 많이 보인다.

 

우리가 핸드폰에서 유료 서비스로 받은 음악 파일의 확장자는 mp3, wma가 아닌 dcf로 되어 있는 경우가 많다.

 

사실 DCF는 DRM Contents Format의 약자로 OMA DRM에서 컨텐츠를 암호화하는 방법을 말하며

암호화 방법은 Symmetric encryption 방법을 사용한다.

(Symmetric encryption에 대해서는 암호화를 전문으로 하는 사람만 관심있을 것 같다. 저기 다른 글에서 스크랩 해 놓았다.)

 

DCF 방식에서 파일 구조는 헤더(Header), 컨텐츠로 구분되며 간혹 컨텐츠 뒤에 특정 데이터가 더 있는 경우도 있다. 헤더는 암호화 되어 있지 않으며 컨텐츠만 암호화 되어 있어야 하며, 헤더는 단순 문자열 정보로 컨텐츠 타입, 암호화 방식이나 기타 정보들이 저장된다.

 

이 부분은 직접 파일을 뜯어 보지 않았는데 문서가 하나 있어서 대충 훝어 보면 다음과 같이 정보가 나열되어 있는 것 같다.

 

1. Media Type

2. Application/vnd.oma.drm.content

1) Version (uint8)

2) ContentTypeLen (uint8)

3) ContenURILen (uint8)

4) ContentType

5) ContentURI

6) HeadersLen (uintvar)

7) DataLen (uintvar)

8) Headers

9) Data

 

Data가 나오기 전까지가 앞에서 말한 헤더라고 생각하면 될 것 같고

여기에서 나온 Header는 추가의 메타 정보를 저장하고 있는 부분이라고 생각하면 될 것 같다.

메타 정보에는 Encryption method, Right issue, Content Name, Content Description, Content Vendor, Icon-URI 등이 있다.

 

관심있는 사람은 DCF 파일 하나 구해서 열어서 계산해 봐도 재미있을 듯..

 


Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
311 Android [GIT 사용법] Git Tutorial 2011.12.26 96656 0
310 Android [GIT 사용법] Git Log 활용하기 2012.05.08 12971 0
309 Android [GIT 사용법] Dreamy의 요약 2 secret 2012.04.20 158 0
308 MFC [C] Unicode 사용에 대하여 2006.04.14 47215 0
307 HTML5 [CSS] 선택자(Selector)의 이해 2017.12.29 9928 0
306 MFC [Collection] CMap 템플릿 클래스 사용하기 2010.06.23 50579 0
305 MFC [Collection] CList 템플릿 클래스 사용하기 2010.06.24 46959 0
304 MFC [Collection] CArray Class 사용법 2017.01.25 15966 0
303 MFC [Collection] ArrayList 예제 2017.01.25 6648 0
302 C# [C#] (System.Collections.Generic) ArrayList 2012.05.23 15348 0
301 Pi [Arduino] 아두이노 나노 Arduino Nano Spec 1 file 2016.09.07 20140 0
300 Pi [Arduino] Timer 라이브러리 사용하기 2016.10.25 14084 0
299 Pi [Arduino] millis() 함수로 시간 재기 2016.10.25 9764 0
298 Android [apk분석] 개발자가 아니더라도 쉽게 apk를 분석해보자 2014.05.08 18901 0
297 Python zip() 함수 2014.04.30 22411 0
목록
Board Pagination ‹ Prev 1 ... 9 10 11 12 13 14 15 16 17 18 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5