ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 지금 내가 하고있는 일.. (PMP, Firmware 제작 등)
    IT topics 2007. 1. 9. 14:09
    반응형
    하고있는 일이 있다. 지금 회사에서 일하고 있는 것, 바로 DRM이다. DRM은 Digital Rights Management의 약자로 디지탈저작권관리정도로 생각하면 되겠다. 간단히 얘기하면 허가된 사용자 이외에는 다른 사람이 해당 사이트(혹은 기관)에 등록되어있는 음악이나 동영상, 그림, 그 외의 기타 컨텐츠들을 보거나 들을 수 없도록 하는게 DRM의 목적이라 할 수 있겠다.

    그 중에서 내가 맡은것은 임베디드 디바이스 DRM (Embeded Device DRM)이다. 뭐, 무지 거창해 보이기도 하겠다만, 꼭 그렇지도 않다. 주로 사용하는 것이 PMP계열쪽이고 가끔 MP3P나 핸드폰도 다룬다. 요즘 한참 잘 알려져있는 멜론, 뮤직온, 도시락 등이 바로 이러한 DRM이다. 위에서 언급한 것은 주로 MP3P, 또는 핸드폰에 관련된 부분이고, 내가 주로 다루는 것은 동영상 컨텐츠를 제어하는 부분이다. 업계에서 MediaShell DRM(혹은 TerutenDRM이라 불린다)이라고 하면 그래도 꽤 잘 알려졌다고 한다. 우리 외에 이런 동영상 DRM을 다루는 업체로는 마크애니와 한마루 등을 들 수 있다. PC에서도 저런 DRM을 적용할 수 있고, 내가 다루는 일인 단말기(주로 PMP)에서 DRM을 다루는 일도 있다. 내가 하는 일은 PC로부터 다운로드 받은 동영상(혹은 음악) 컨텐츠를 해당 단말기에서만 실행할 수 있도록 하는 일이다.

    예를 들어, 내가 PC로부터 A라는 단말기에 123.avi라는 동영상을 다운로드 받았다. 그럼 다운로드 받은 123.avi는 A에서만 재생이 가능하도록 하고 B, C(그 외의 기타 단말기)에서는 재생이 되지 말아야 한다(사용자가 A로 받은 123.avi를 B, C로 복사했을 때의 이야기다). 그렇게 할려면 다운로드 받은 123.avi은 A에서만 재생이 가능하도록 설정되어있어야 한다. 그 설정하는 작업이 바로 내가 하는 일이다.

    설정뿐만 아니라 설정되어있는 것을 해당 단말기에서 재생가능하도록 풀어내는 것까지가 내 일이 되겠다. 일반적으로 다운로드받은 파일을 암호화를 한다. 요즘 가장 많이 쓰이고 있는 암호화는 AES 알고리즘 암호화이다(여기서 그걸 다 다루지는 못한다. 언젠가 시간되면 한번 다루도록 할 예정이다). 그런데 우리 회사의 경우, 단말기의 시스템 사양이 일반 PC보다는 썩 좋은 환경이라고 할 수 없다. 그래서 무거운 AES 알고리즘을 사용하지 않고 가벼운 TEA 알고리즘을 사용한다(TEA에 대한것 역시 나중에 다뤄보겠다). 파일을 암호화했으니 그 암호화에 대한 정보들이 파일 어딘가에 있어야 한다. 일반적으로는 파일의 앞부분(흔히들 헤더라 불리는 부분)에 암호화에 대한 정보(복호화 키 정보 등)가 들어있지만, 우리의 경우에는 파일의 마지막 부분에 풋터라는 부분을 두어 거기에 암호화에 대한 정보들을 기록한다.

    예전의 DRM은 그저 해당 단말기에서만 재생할 수 있도록 하는 기능만 갖고 있었다. 하지만 지금의 DRM은 그 기능도 많아져서 많은 정책들을 적용할 수 있다. 대표적인 것이 바로 기간제한이다. 해당 컨텐츠를 언제부터 언제까지 약 며칠간만 볼 수 있도록 제약을 둘 수 있는 것이다. 이렇게 제약을 두게되면 기간이 지나면 해당 컨텐츠를 재생할 수 없기 때문에 다시 다운로드를 해야한다. 서비스 업체들은 바로 그것을 노린 것이다. 다운로드 할때마다 매번 돈을 주고 사도록 하고 있다. 그래서 결제하는 금액에 따라 재생 가능 기간을 조절할 수 있도록 하고 있다(거의 대부분의 서비스 업체들이 그렇게 하고 있다). 그 외에도 재생 횟수 제한도 있다. 즉, 다운로드 받은 컨텐츠의 재생 횟수를 제한해서 몇번 이상 재생하면 더 이상 재생이 안되도록 제한을 두는 것이다. 이거 역시 기간제한처럼 서비스 업체에서 많이 사용하고 있는 정책이다. 그 외에 단말기에서 TV나 모니터로 송출할 수 없도록 제한하는 부분이나, 단말기에서 재생중에 화면에 특정 문자를 보이게 하는 워터마크 방식이나 기타 등등의 정책들을 적용할 수 있다. 위에서 언급한 모든 것을 다 내가 하는 것이다(물론 단말기에서 실행하는 것은 각 단말업체의 프로그램이 하는것이지만 말이다).

    뭐 위에서 열거한것처럼 내가 하고 있는 일이 이렇다보니 내가 하는 일에 대해 정리해서 블로그에 올려놓을까 하는데 어떻게 정리해야할지 난감해하고 있다. 뚜렷히 기술이 정의된 것도 아니고 언어와 같이 정리할 수 있는것도 아니고 하니까 말이다. 뭐 DRM에 들어가는 기술이나 종류등을 쭉 정리해볼 생각이기는 하지만, 쓸려고 보니 막막한 심정이기는 하다. 어떻게 할까나.
    반응형

    댓글

Designed by Tistory.