KR101593569B1 - 콘텐츠 오브젝트 구성 방법 및 시스템 - Google Patents

콘텐츠 오브젝트 구성 방법 및 시스템 Download PDF

Info

Publication number
KR101593569B1
KR101593569B1 KR1020090008130A KR20090008130A KR101593569B1 KR 101593569 B1 KR101593569 B1 KR 101593569B1 KR 1020090008130 A KR1020090008130 A KR 1020090008130A KR 20090008130 A KR20090008130 A KR 20090008130A KR 101593569 B1 KR101593569 B1 KR 101593569B1
Authority
KR
South Korea
Prior art keywords
content
packaging
pilot
drm
header
Prior art date
Application number
KR1020090008130A
Other languages
English (en)
Other versions
KR20100088965A (ko
Inventor
방성훈
이경근
이병래
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020090008130A priority Critical patent/KR101593569B1/ko
Priority to US12/697,447 priority patent/US20100198687A1/en
Priority to EP10152348.8A priority patent/EP2214116A3/en
Publication of KR20100088965A publication Critical patent/KR20100088965A/ko
Application granted granted Critical
Publication of KR101593569B1 publication Critical patent/KR101593569B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services; Handling legal documents
    • G06Q50/184Intellectual property management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • H04N21/63345Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8355Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing

Abstract

본 발명은 파일럿 콘텐츠와 타겟 콘텐츠로 이루어진 새로운 패키징 콘텐츠 및 상기 패키징 콘텐츠를 구성하는 방법 및 시스템에 관한 것으로, 이러한 본 발명은 콘텐츠 오브젝트 포맷 구성 시스템에 있어서, 타겟 콘텐츠 오브젝트와; 특정 광고 데이터를 포함하는 파일럿 콘텐츠 오브젝트를 하나의 패키징 콘텐츠로 구성하고, 상기 패키징 콘텐츠 구성 시 상기 타겟 콘텐츠 오브젝트와 상기 파일럿 콘텐츠 오브젝트의 위치 지정 및 부가 정보를 포함하는 CPM 헤더를 추가 구성한다.
OMA, DRM, 파일럿 콘텐츠, 타겟 콘텐츠, 공통헤더, CPM 헤더, DCF

Description

콘텐츠 오브젝트 구성 방법 및 시스템{SYSTEM AND METHOD FOR CONFIGURATING OF CONTENT OBJECT}
본 발명은 디지털 콘텐츠 서비스를 제공하는 방법 및 시스템에 관한 것으로, 특히 DRM(Digital Rights Management) 콘텐츠와 특정 광고를 포함하는 광고 콘텐츠로 이루어진 패키징 콘텐츠(packaging content)를 제공하고, 상기 광고 콘텐츠의 시청(청취)에 의해 상기 DRM 콘텐츠의 실행이 가능하도록 하는 디지털 콘텐츠 서비스 제공 방법 및 시스템에 관한 것이다.
휴대단말에서 이용되는 유료 콘텐츠의 무단 복제나 재배포를 막기 위해, 디지털 저작권 관리(Digital Rights Management, 이하 'DRM'이라 칭함)라는 기술이 제안되었다. 상기 DRM이란 문서, MP3파일, 벨소리, 동영상, 게임 등의 다양한 콘텐츠에 대해 암호화 기술을 적용하여 저작권자의 권리 보호를 가능케 하는 기술이다.
따라서 DRM 기술이 적용된 콘텐츠(이하, DRM 콘텐츠)는 항상 암호화된 상태로 존재하며, 인증된 사용자만이 해당 DRM 콘텐츠를 복호화하여 사용할 수 있도록 한다. 즉, DRM 콘텐츠를 사용하기 위한 권리객체(Rights Object, 이하 'RO'라 칭함)라는 특정 라이선스(license)에 의해 인증된 사용자만이 해당 DRM 콘텐츠를 사 용할 수 있도록 제어함으로써, DRM 콘텐츠에 대한 불법 복제 등을 방지할 수 있다.
상기 RO는 RI(Rights Issuer)라는 권리객체발행서버에서 생성되어 사용자에게 판매된다. 상기 RO는 DRM 콘텐츠와 분리되어 휴대단말에 저장됨으로써 해당 DRM 콘텐츠의 실행을 제한할 수 있다. 상기 RO의 종류에는 카운트(count) 방식, 구간(interval) 방식, 시간-횟수(timed-count) 방식, 누적(accumulate) 방식 등이 있다.
상기 RO는 콘스트레인트(constraint)를 포함하는데, 상기 콘스트레인트란 보호된 DRM(DRM-protected) 콘텐츠의 사용을 한정하는 정보로서 RO 내의 특정 필드(field)에 저장된다. 예컨대, 특정 MP3 파일 구입 시, 총 10회 재생(play)이 가능하다면, 카운트 방식의 RO에 10회의 콘스트레인트가 설정된다. 이 경우 MP3 파일이 재생될 때마다 카운트는 1씩 줄어들게 된다. 이후, 10회째 재생에 따라 카운트가 '0'이 되면 더 이상 이 파일의 재생은 불가능하며, RO를 추가로 구매해야만 파일 재생이 가능해진다.
한편, 전술한 바와 같이 DRM 콘텐츠의 경우 RO 구매에 의한 인증된 사용자만이 실행할 수 있다. 이에 따라, 사용자는 DRM 콘텐츠 이용을 위해서 일정 금액을 지불하여야 한다. 즉, 일정 금액의 RO를 구매하여야만 해당 DRM 콘텐츠의 이용이 가능하며, 또한 해당 DRM 콘텐츠의 RO가 만료되면 다시 일정 금액의 RO를 갱신하여야만 이용이 가능하다. 따라서 사용자는 DRM 콘텐츠 이용에 따른 비용 지출을 발생해야 하며, 이로 인해 사용자의 DRM 콘텐츠 이용에 많은 제약이 따른다.
본 발명의 목적은 광고기반 콘텐츠 서비스를 제공할 수 있는 방법 및 시스템을 제공함에 있다.
본 발명의 다른 목적은 DRM 콘텐츠를 사용자가 무료로 이용할 수 있도록 하는 디지털 콘텐츠 서비스 제공 방법 및 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 특정 광고를 포함하는 파일럿 콘텐츠와 DRM 콘텐츠로 이루어진 패키징 콘텐츠를 제공하며, 상기 광고 콘텐츠의 광고 시청(청취)에 의하여 상기 DRM 콘텐츠를 무료로 이용할 수 있도록 하는 콘텐츠 서비스 제공 방법 및 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 DRM 콘텐츠 포맷을 이용하여 광고 기반 콘텐츠 서비스를 위한 새로운 콘텐츠 오브젝트 포맷을 구성하는 방법 및 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 파일럿 콘텐츠와 타겟 콘텐츠로 이루어진 패키징 콘텐츠의 구성 시 파일럿 콘텐츠에 대한 부가정보를 지시하는 CPM 헤더의 구성 방법 및 시스템을 제공함에 있다.
상기와 같은 목적들을 달성하기 위한 본 발명의 실시 예에 따른 시스템은, 콘텐츠 오브젝트 포맷 구성 시스템에 있어서, 타겟 콘텐츠 오브젝트와; 특정 광고 데이터를 포함하는 파일럿 콘텐츠 오브젝트와; 하나의 콘텐츠 오브젝트에 구성되는 상기 타겟 콘텐츠 오브젝트와 상기 파일럿 콘텐츠 오브젝트의 위치 지정 및 부가 정보를 포함하는 헤더를 포함한다.
상기와 같은 목적들을 달성하기 위한 본 발명의 실시 예에 따른 방법은, 다수개의 콘텐츠들로 이루어진 패키징 콘텐츠 구성 방법에 있어서, 타겟 콘텐츠 오브젝트와, 특정 광고 데이터를 포함하는 파일럿 콘텐츠 오브젝트를 하나의 패키징 콘텐츠로 구성하는 과정과; 상기 패키징 콘텐츠 구성 시 상기 패키징 콘텐츠의 구성 타입에 대응하여 상기 타겟 콘텐츠 오브젝트와 상기 파일럿 콘텐츠 오브젝트에 대한 위치 지정 및 부가 정보를 포함하는 헤더를 추가하는 과정을 포함한다.
상기와 같은 목적들을 달성하기 위한 본 발명의 실시 예에 따른 방법은, 휴대단말의 콘텐츠 재생 방법에 있어서, 특정 콘텐츠 요청을 감지할 시, 상기 콘텐츠의 파일럿 콘텐츠 오브젝트를 지시하는 헤더의 존재 여부를 확인하는 과정과; 상기 헤더가 존재할 시 상기 헤더의 지시 정보에 의하여 파일럿 콘텐츠 오브젝트를 추적하여 재생하는 과정과; 상기 파일럿 콘텐츠 오브젝트 재생에 의해 획득하는 복호화키에 의하여 타겟 콘텐츠 오브젝트를 재생하는 과정을 포함한다.
본 발명의 실시 예에 따르면, 상기 타겟 콘텐츠 오브젝트와 상기 파일럿 콘텐츠 오브젝트는 하나의 DRM 콘텐츠 포맷(DCF)으로 구성되며, 상기 DCF 파일 구성 방식에 대응하여 상기 헤더의 메타 데이터 정보가 지정되는 것을 특징으로 한다.
본 발명의 실시 예에서, 상기 헤더는 텍스추얼 헤더(Textual Headers)를 이용하여 구성하거나, 또는 DCF의 확장성을 이용하여 구성하며, 각 구성 방식에 대응하는 메타 데이터 정보를 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따르면, 상기 파일럿 콘텐츠 오브젝트를 상기 패키징 콘텐츠의 콘텐츠 영역 내에서 상기 타겟 콘텐츠 오브젝트의 앞 또는 뒤에 연결(concatenate)하여 구성하며, 이러한 경우 상기 파일럿 콘텐츠 오브젝트의 오프 셋을 구분할 수 있는 정보를 상기 헤더에 포함하여 구성한다.
본 발명의 실시 예에 따르면, 상기 패키징 콘텐츠를 멀티파트 DCF로 구분하고, 상기 멀티파트 DCF 중 제1파트 DCF의 콘텐츠 영역에 상기 타겟 콘텐츠 오브젝트를 포함하여 구성하고, 상기 멀티파트 DCF 중 제2파트 DCF 또는 그 이후의 멀티파티 DCF의 콘텐츠 영역에 상기 파일럿 콘텐츠 오브젝트를 포함하여 구성하며, 이러한 경우 상기 파일럿 콘텐츠 오브젝트에 대한 파일럿 콘텐츠 식별자를 상기 헤더에 포함하여 구성한다.
본 발명의 실시 예에 따르면, 상기 패키징 콘텐츠에 확장된 박스(Extended Box)를 추가 구성하고, 상기 확장된 박스에 상기 파일럿 콘텐츠 오브젝트를 포함하여 구성하며, 이러한 경우 상기 확장된 박스에 상기 파일럿 콘텐츠 오브젝트가 위치함을 지시하는 정보를 상기 헤더에 포함하여 구성한다.
본 발명의 실시 예에 따르면, 상기 패키징 콘텐츠를 포함하는 적어도 하나의 DCF 뒤에 뮤터블 정보 박스(Mutable Information Box)를 추가하고, 상기 뮤터블 정보 박스에 상기 파일럿 콘텐츠 오브젝트를 포함하여 구성하며, 이러한 경우 상기 뮤터블 정보 박스에 상기 파일럿 콘텐츠 오브젝트가 위치함을 지시하는 정보를 상기 헤더에 포함하여 구성한다.
상술한 바와 같이 본 발명에서 제안하는 디지털 콘텐츠 서비스 제공 방법 및 시스템에 따르면, OMA DRM 콘텐츠 포맷을 이용하여 새로운 패키징 콘텐츠 포맷을 제공함으로써, 표준 규격에 따르면서 새로운 광고기반 무료 DRM 콘텐츠 서비스를 제공할 수 있다. 본 발명에 따르면, 광고 콘텐츠를 모두(이율배반 방식) 또는 일부(임계 방식)를 시청(청취)할 경우, 사용자 희망에 따른 DRM 콘텐츠용 복호화키를 획득할 수 있다. 이에 의해, 사용자는 광고 시청에 따라 DRM 콘텐츠를 무료로 이용할 수 있으며, 사용자가 임의로 광고 데이터(영상, 오디오 등)의 스킵과 같은 행위를 방지함으로써, 광고주는 보다 확실한 광고효과 및 회계수집이 가능하다.
본 발명에 따르면 특정 광고를 시청(청취)하여야만 부가적인 콘텐츠를 실행할 수 있도록 함으로써, 경제적 측면에서 소비자에게 매력적인 대안을 제시할 수 있다. 즉, 수초 내지 수십초의 광고 시청(청취)으로 DRM 콘텐츠 재생에 필요한 라이선스 구매 비용을 경감하거나 대체할 수 있다. 또한 사용자에게 광고 콘텐츠의 시청(청취)에 대한 서비스 선택권을 부여함으로써, 사용자의 편의를 도모할 수 있다. 즉, <광고 콘텐츠(전체)+DRM 콘텐츠=무료>, <광고 콘텐츠(일부)+DRM 콘텐츠=할인>, <광고 콘텐츠(없음)+DRM 콘텐츠=유료> 등과 같은 다양한 서비스를 제공함에 따라 사용자에게 다양한 서비스 선택권을 제시할 수 있다.
또한, 본 발명에 따르면 사용자의 광고 무시를 방시하여 광고 시청(청취)에 따른 집중도를 향상시킬 수 있으며, 이에 의해 광고주의 요구 사항을 충족 및 광고효과를 향상시킬 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음에 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다.
제안하는 본 발명은 디지털 저작권 관리(DRM, Digital Rights Management) 기술이 적용된 콘텐츠(이하, DRM 콘텐츠)의 생성 방법 및 시스템에 관한 것이다. 특히, 본 발명의 실시 예에 따르면, 특정 광고에 대한 영상/오디오 데이터를 포함하는 광고 콘텐츠와, 상기 광고 콘텐츠와 함께 구성되며 사용자가 실제 재생하길 희망하는 DRM 콘텐츠로 이루어진 패키징 콘텐츠(packaging content) 및 이를 생성하는 콘텐츠 패키징 메커니즘(CPM, Content Packaging Mechanism)을 제안한다. 이하, 본 발명의 실시 예에서는 본 발명의 타겟 콘텐츠(target content)용 암호화키 생성을 위해 암호화 되는 광고 콘텐츠를 파일럿 콘텐츠(pilot contents)라 하고, 상기 파일럿 콘텐츠에 의해 암호화되는 DRM 콘텐츠를 상기 타겟 콘텐츠(target contents)라 한다.
특히, 본 발명의 실시 예에서 상기 파일럿 콘텐츠는, 타겟 콘텐츠용 복호화키(decryption key)를 생성할 수 있도록 적어도 하나의 데이터 블록으로 구분되어 암호화(encryption)되는 광고 콘텐츠를 나타낸다. 아울러, 본 발명의 실시 예에 따라 상기 파일럿 콘텐츠와 타겟 콘텐츠를 그룹으로 제공하는 콘텐츠를 상기 패키징 콘텐츠(packaging contents)라 한다. 즉, 상기 패키징 콘텐츠는 상기 파일럿 콘텐츠와 상기 타겟 콘텐츠로 이루어진 콘텐츠를 나타낸다.
본 발명의 실시 예에 따르면, 패키징 서버(packaging server)에서 파일럿 콘텐츠와 타겟 콘텐츠로 이루어진 패키징 콘텐츠를 생성하여 휴대단말로 제공하고, 상기 휴대단말에서는 상기 패키징 콘텐츠가 포함하는 파일럿 콘텐츠에 대한 재생을 수행함으로써, 상기 타겟 콘텐츠의 재생을 위한 복호화키를 획득할 수 있도록 한다. 이에 의해, 사용자는 상기 파일럿 콘텐츠에 대한 시청(청취)을 행함으로써, 사용자가 희망하는 타겟 콘텐츠를 무료(free)로 이용할 수 있다.
즉, 사용자는 파일럿 콘텐츠에 의한 광고 시청(청취)을 통해 타겟 콘텐츠의 복호화키를 획득할 수 있다. 이에 의해, 사용자는 DRM 콘텐츠 재생을 위한 별도의 비용 지불 없이 무료에 의한 DRM 콘텐츠의 재생이 가능하다. 결국, 사용자 측면에서는 DRM 콘텐츠의 라이선스 구매에 따른 비용 절감 효과를 가질 수 있으며, 광고주 측면에서는 광고효과를 높일 수 있으며, 서비스 사업자는 사용자 및 광고주에게 새로운 비즈니스 모델을 제시할 수 있다. 이에 따라, DRM 콘텐츠 서비스 이용율을 높일 수 있으며, DRM 콘텐츠 서비스 활성화에 기여할 수 있다.
그러면 이하에서, 본 발명의 실시 예에 따른 시스템 구성 및 상기 시스템 구성에서 본 발명의 실시 예에 따른 동작을 하기 도 1 내지 도 3을 참조하여 살펴보기로 한다.
도 1은 본 발명의 실시 예에 따른 시스템 구성을 개략적으로 도시한 도면이다.
상기 도 1을 참조하면, 본 발명의 실시 예에 따른 시스템은, 크게 광고서버(100)와, 패키징 서버(200)와, 휴대단말(300) 및 RI(Rights Issuer)(400)를 포함 하여 이루어질 수 있다.
상기 광고서버(100)는 특정 광고를 오디오 데이터(예컨대, 음성광고), 오디오/비디오 데이터(동영상/영상 광고), 텍스트 데이터(예컨대, 텍스트 광고) 중 적어도 하나의 데이터 형태의 광고 데이터를 포함하는 광고 콘텐츠를 제공하는 서버를 나타낸다. 상기 광고서버(100)는 적어도 하나의 광고 콘텐츠를 저장하며, 아울러, 상기 적어도 하나의 광고 콘텐츠를 상기 패키징 서버(200)에 등록할 수 있다.
상기 패키징 서버(200)는 일반 콘텐츠, 광고 콘텐츠, 광고 콘텐츠를 암호화(encryption)한 파일럿 콘텐츠, DRM 기술이 적용된 DRM 콘텐츠, 타겟 콘텐츠, 파일럿 콘텐츠와 타겟 콘텐츠가 결합된 패키징 콘텐츠를 데이터베이스(DB, Data Base)에 저장한다. 상기 패키징 서버(200)는 상기 휴대단말(300)의 요청에 대응하는 해당 콘텐츠를 제공한다. 아울러, 상기 패키징 서버(200)는 패키징 콘텐츠에 대응하는 라이선스를 저장하거나, 상기 패키징 콘텐츠에 대한 라이선스 생성을 상기 RI(400)로 요청할 수 있다.
상기 패키징 서버(200)는 상기 광고서버(100)와 연동하여 광고 콘텐츠를 획득하고, 상기 광고 콘텐츠를 후술하는 바와 같은 암호화에 의거하여 파일럿 콘텐츠로 생성하여 저장할 수 있다. 상기 패키징 서버(200)는 상기 파일럿 콘텐츠에 의하여 타겟 콘텐츠용 암호화키(encryption key)를 생성하고, 상기 암호화키에 의하여 상기 타겟 콘텐츠를 암호화할 수 있다.
상기 패키징 서버(200)는 상기 휴대단말(300)의 요청에 응답하여 미리 생성하여 저장된 패키징 콘텐츠를 전송하거나, 상기 휴대단말(300)의 요청에 대응하는 파일럿 콘텐츠 및 타겟 콘텐츠를 이용하여 패키징 콘텐츠를 생성한 후 전송할 수 있다. 본 발명의 실시 예에서, 상기 패키징 콘텐츠는 DRM 기술이 적용되어 있음을 가정한다. 상기 DRM이 적용되었다는 의미는 사전 규정된 암호화키 및 암호화 형식을 이용하여 상기 패키징 콘텐츠가 암호화되어 있다는 의미이다.
상기 패키징 서버(200)는 상기 패키징 콘텐츠 생성 시, 상기 패키징 콘텐츠를 구성하는 파일럿 콘텐츠의 재생을 위한 라이선스에 파일럿 콘텐츠의 복호화키를 포함하여 생성할 수 있다. 또는 상기 패키징 서버(200)는 상기 패키징 콘텐츠를 상기 휴대단말(300)로 전송 시, 상기 패키징 콘텐츠의 파일럿 콘텐츠에 대한 라이선스를 생성할 것을 상기 RI(400)로 요청하여, 상기 RI(400)로 하여금 상기 파일럿 콘텐츠에 대한 라이선스를 상기 휴대단말(300)로 전송하도록 할 수 있다. 아울러, 상기 패키징 서버(200)는 상기 패키징 콘텐츠 전송 시 라이선스에 관련된 동작은 생략하고, 라이선스 획득에 대한 권한을 휴대단말(300)에 일임할 수도 있다.
상기 휴대단말(300)은 상기 패키징 서버(200)에 접속하여 사용자 요청에 대응하는 콘텐츠를 수신한다. 이때, 상기 수신하는 콘텐츠는 패키징 콘텐츠, 광고 콘텐츠, 타겟 콘텐츠(DRM 콘텐츠) 및 일반 콘텐츠 중 적어도 하나일 수 있다.
특히, 상기 휴대단말(300)은 패키징 콘텐츠 재생 시 패키징 콘텐츠의 헤더 파싱(header parsing)을 통해 본 발명에서 정의하는 CPM(Content Packaging Mechanism) 헤더의 존재 여부를 확인하고, 이후 CPM 헤더가 존재할 시 타겟 콘텐츠용 복호화키를 획득하는 절차를 수행할 수 있다. 여기서, 상기 패키징 콘텐츠의 헤더는 DRM 콘텐츠의 DCF(DRM Contents Format) 헤더 중 공통헤더(Common Headers)를 나타낼 수 있다. 본 발명의 상기 CPM 헤더 및 이를 구성하는 메커니즘에 대해서는 후술하기로 한다.
즉, 상기 휴대단말(300)은 패키징 콘텐츠 재생 시 상기 패키징 콘텐츠를 구성하는 파일럿 콘텐츠에 대한 재생을 우선적으로 수행할 수 있다. 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생 시 상기 패키징 콘텐츠의 라이선스에 의한 복호화를 통해 재생할 수 있다.
이때, 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 복호화 시 상기 패키징 콘텐츠를 구성하는 타겟 콘텐츠의 복호화를 위한 복호화키를 획득할 수 있다. 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생에 따라 획득하는 상기 복호화키에 의하여 상기 패키징 콘텐츠의 타겟 콘텐츠를 재생할 수 있다.
상기 파일럿 콘텐츠의 라이선스(복호화키)는 무료에 의해 획득 가능하며, 상기 패키징 서버(200) 또는 상기 RI(400)와 연동하여 상기 파일럿 콘텐츠에 대한 라이선스를 획득할 수 있다.
상기 휴대단말(300)은 획득하는 복호화키를 이용한 타겟 콘텐츠 재생 이전에, 상기 복호화키의 정상 여부를 판단할 수 있다. 즉, 상기 획득하는 복호화키가 사용자의 불법적인 행위에 의해 생성된 복호화키인지 여부를 판단하고, 그에 따라 상기 타겟 콘텐츠에 대한 재생 여부를 결정할 수 있다. 상기 휴대단말(300)은 획득하는 복호화키가 비정상적인 경우 상기 비정상의 원인이 파일럿 콘텐츠 자체(데이터 유실 등)에 따른 문제인지, 사용자의 불법적인 행위에 의한 것인지 판단할 수 있다. 만약, 파일럿 콘텐츠의 문제인 경우 상기 휴대단말(300)은 해당 파일럿 콘텐 츠의 복원을 위한 절차를 진행할 수 있다. 상기 복원은 상기 파일럿 콘텐츠와 동일한 다른 파일럿 콘텐츠를 패키징 서버(200)로부터 다운로드 하는 절차 등일 수 있다.
상기 RI(400)는 파일럿 콘텐츠 및 타겟 콘텐츠(DRM 콘텐츠)에 대한 각각의 라이선스를 관리하는 서버일 수 있다. 상기 라이선스는 소정의 DRM 기술에 의해 암호화된 콘텐츠들에 대한 사용권한을 부여하는 권리증으로서, 해당 콘텐츠를 복호화하는데 사용되는 복호화키 및 사용제한정보를 포함할 수 있다. 따라서 상기 휴대단말(300)은 DRM 시스템에서 규정한 라이선스(복호화키)를 부여받아야만 DRM이 적용된 콘텐츠를 재생할 수 있다.
상기 RI(400)는 라이선스 획득을 요청하는 상기 휴대단말(300)의 사용자가 해당 콘텐츠에 대한 정당한 사용자인지를 인증하고, 정당한 사용자이면 DRM 기술이 적용된 콘텐츠(파일럿 콘텐츠, DRM 콘텐츠 등)에 대한 라이선스를 생성하여 상기 휴대단말(300)로 전송한다. 이때, 상기 라이선스에는 상기한 바와 같이 해당 콘텐츠에 대한 복호화키 및 사용제한정보가 포함되어 전송된다. 본 발명의 실시 예에서 상기 라이선스는 파일럿 콘텐츠의 재생을 위한 무료 라이선스와, 타겟 콘텐츠(DRM 콘텐츠)의 재생을 위한 유료 라이선스로 구분할 수 있다. 특히, 본 발명의 실시 예에서 상기 타겟 콘텐츠의 상기 유료 라이선스는 상기 파일럿 콘텐츠의 재생에 의해 생성되는 라이선스로 대체할 수 있다.
이상에서는 본 발명의 실시 예에 따른 시스템 구성에 대하여 개략적으로 살펴보았다. 다음으로 이하에서는 상기 도 1을 참조한 시스템 구성에서 상기 광고서 버(100)와, 상기 패키징 서버(200)와, 상기 휴대단말(300) 및 상기 RI(400) 간의 시그널링에 대하여 하기 도 2 및 도 3을 참조하여 살펴보기로 한다. 하지만, 본 발명의 시스템의 각 구성들이 하기에서 기술하는 예시에 한정되는 것은 아니므로, 상기 및 하기의 실시 예에 의거하여 다양한 실시 예들에 적용할 수 있음에 유의하여야 한다.
도 2는 본 발명의 실시 예에 따른 콘텐츠 서비스 제공 방법을 도시한 도면이다.
상기 도 1 및 도 2를 참조하면, 먼저 휴대단말(300)은 사용자 요청에 응답하여, 패키징 콘텐츠 획득을 위해 해당 패키징 콘텐츠를 제공하는 패키징 서버(200)에 접속하고, 상기 패키징 서버(200)로 상기 패키징 콘텐츠의 획득을 요청할 수 있다(201단계). 그러면 상기 패키징 서버(200)는 상기 휴대단말(200)의 요청에 대응하는 패키징 콘텐츠를 추출 또는 생성한다(203단계).
여기서, 상기 패키징 콘텐츠 추출 또는 생성은, 상기 패키징 서버(200)에 이미 구성되어 있는 해당 패키징 콘텐츠를 추출하거나, 또는 상기 휴대단말(300)의 요청에 대응하는 파일럿 콘텐츠와 타겟 콘텐츠의 결합에 의하여 새로운 패키징 콘텐츠를 생성하거나, 또는 상기 휴대단말(300)의 요청에 대응하는 타겟 콘텐츠와 랜덤(random)하게 추출하는 임의의 파일럿 콘텐츠의 결합에 의하여 새로운 패키징 콘텐츠를 생성하는 등의 과정일 수 있다.
상기 패키징 콘텐츠 생성 시 DRM 콘텐츠 포맷을 이용하여 본 발명에서 정의하는 새로운 CPM 포맷에 의하여 생성할 수 있다. 상기 CPM 포맷을 간략하게 설명하 면, 상기 CPM 포맷은 기존 DRM 포맷에 새로운 헤더 즉, 본 발명의 CPM 헤더가 추가된 포맷을 나타낸다. 이때, 상기 패키징 콘텐츠는 설정 방식에 따라 하나 또는 두 개의 데이터 포맷으로 구성할 수 있으며, 이러한 CPM 포맷에 대해서는 후술하기로 한다.
이때, 상기 패키징 서버(200)는 상기 휴대단말(300)로부터 특정 광고 콘텐츠 지정에 의한 패키징 콘텐츠가 요청될 시, 상기 특정 광고 콘텐츠를 파일럿 콘텐츠로 변환 즉, 암호화하는 절차를 진행할 수 있다. 상기 파일럿 콘텐츠의 암호화에 대해서는 후술하기로 한다.
다음으로, 상기 패키징 서버(200)는 상기 패키징 콘텐츠를 상기 휴대단말(300)로 전송하는 시점에서, 상기 패키징 콘텐츠의 파일럿 콘텐츠에 대한 라이선스 생성을 요청하는 메시지를 상기 RI(400)로 전송할 수 있다(205단계). 그러면, 상기 RI(400)는 상기 파일럿 콘텐츠에 대한 라이선스를 생성하고, 시스템 구성에 따라 상기 라이선스를 해당 휴대단말(300)로 전송하거나, 또는 상기 휴대단말(300)의 라이선스 획득에 대한 요청을 대기할 수 있다. 이어서, 상기 패키징 서버(200)는 상기 생성하는 패키징 콘텐츠를 상기 휴대단말(300)로 전송한다(207단계).
다음으로, 상기 휴대단말(300)은 상기 패키징 서버(200)로부터 상기 패키징 콘텐츠를 수신하면, 상기 패키징 콘텐츠의 재생 특히, 상기 패키징 콘텐츠 내 파일럿 콘텐츠의 재생을 위한 라이선스를 상기 RI(400)로 요청한다(209단계). 그러면, 상기 RI(400)는 상기 휴대단말(300)의 요청에 응답하여, 요청되는 라이선스를 상기 휴대단말(300)로 전송한다(211단계). 상기 라이선스는 상기 파일럿 콘텐츠의 복호 화에 사용되는 복호화키를 포함한다. 상기 복호화키는 상기 파일럿 콘텐츠의 암호화 시 이용되는 특정 암호화키에 대응할 수 있다.
다음으로, 상기 휴대단말(300)은 사용자 요청에 응답하여 상기 패키징 콘텐츠에 대한 재생 수행 시, 상기 패키징 콘텐츠의 파일럿 콘텐츠에 대한 재생을 먼저 수행할 수 있다(213단계). 이때, 상기 휴대단말(300)은 상기 RI(400)로부터 수신하는 라이선스에 의하여 상기 파일럿 콘텐츠에 대한 재생을 수행할 수 있다. 여기서, 상기 휴대단말(300)은 타겟 콘텐츠의 복호화를 위한 복호화키를 상기 파일럿 콘텐츠의 재생에 의해 획득할 수 있다.
즉, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생에 따른 복호화(215단계) 시, 상기 파일럿 콘텐츠를 구성하는 각 데이터 블록(data block)들과 그에 할당된 마일스톤(milestone)들로부터 분할키들(partial keys)을 획득하여 버퍼링(buffering)할 수 있다.
상기 분할키는 상기 파일럿 콘텐츠를 구성하는 데이터 블록과 그에 매핑되는 마일스톤에 의해 획득되는 임시키로, 타겟 콘텐츠용 복호화키 도출을 위해 상기 파일럿 콘텐츠의 복호화 시 발생하는 임시키를 나타낸다. 상기 분할키는 상기 파일럿 콘텐츠를 구성하는 데이터 블록들 중 복호화되는 데이터 블록의 개수(또는 마일스톤의 개수)에 대응하게 획득될 수 있다. 만약, 상기 파일럿 콘텐츠를 구성하는 데이터 블록의 개수가 n개라 하고, 상기 파일럿 콘텐츠에 대한 전체 재생이 완료될 시 즉, n개의 데이터 블록들이 복호화될 시 그에 대응하여 n개의 분할키들이 생성될 수 있다. 이후, 상기 파일럿 콘텐츠의 복호화에 따라 획득하는 상기 분할키들을 이용하여 타겟 콘텐츠의 복호화를 위한 최종 복호화키를 획득할 수 있다. 이에 대한 상세한 설명은 후술하기로 한다.
다음으로, 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 재생이 완료되면(217단계), 상기 파일럿 콘텐츠 복호화에 따라 생성하는 상기 분할키들을 이용하여 상기 패키징 콘텐츠의 타겟 콘텐츠 재생을 위한 복호화키를 획득한다(219단계). 상기 복호화키는 상기 패키징 서버(200)에서 상기 타겟 콘텐츠 암호화 시 이용되는 암호화키 즉, 상기 파일럿 콘텐츠의 암호화에 따라 생성하는 암호화키에 대응한다. 본 발명의 실시 예에 따른 상기 암호화키 및 복호화키 획득 방법에 대한 상세한 설명은 후술하기로 한다.
다음으로, 상기 휴대단말(300)은 상기 획득하는 복호화키에 의해 상기 타겟 콘텐츠를 복호화하여 상기 타겟 콘텐츠에 대한 재생을 수행한다(221단계).
이상에서는 휴대단말(300)이 패키징 서버(200)에 구성된 패키징 콘텐츠를 다운로드하여 재생하는 과정에 대하여 살펴보았다. 다음으로 이하에서는 패키징 서버(200)가 특정 광고 콘텐츠를 광고서버(100)로부터 획득하여 파일럿 콘텐츠로 암호화한 후 특정 타겟 콘텐츠와 함께 패키징 콘텐츠로 구성하고, 이후 해당 패키징 콘텐츠를 상기 휴대단말(300)로 전송하는 과정에 대하여 하기 도 3을 참조하여 살펴보기로 한다.
도 3은 본 발명의 실시 예에 따른 패키징 콘텐츠에 의한 콘텐츠 서비스 제공 방법을 도시한 도면이다.
상기 도 1 내지 도 3을 참조하면, 먼저 휴대단말(300)은 사용자 요청에 응답 하여, 패키징 콘텐츠 획득을 위해 해당 패키징 콘텐츠를 제공하는 패키징 서버(200)에 접속하고, 상기 패키징 서버(200)로 상기 패키징 콘텐츠의 획득을 요청할 수 있다(301단계). 그러면 상기 패키징 서버(200)는 상기 휴대단말(200)의 요청에 대응하는 패키징 콘텐츠를 구성할 수 있다. 즉, 상기 패키징 서버(200)는 상기 휴대단말(200)이 요청하는 파일럿 콘텐츠를 판단하고(303단계), 자신에게 등록된 파일럿 콘텐츠를 추출한다(305단계).
이때, 상기 요청되는 파일럿 콘텐츠가 존재하지 않을 시, 상기 패키징 서버(200)는 광고서버(100)로 상기 파일럿 콘텐츠에 대응하는 광고 콘텐츠를 요청할 수 있다(307단계). 그러면 상기 광고서버(100)는 상기 패키징 서버(200)의 광고 콘텐츠 요청에 응답하여, 해당 광고 콘텐츠를 추출하여 상기 패키징 서버(200)로 전송한다(309단계).
다음으로, 상기 패키징 서버(200)는 상기 광고서버(100)로부터 획득하는 광고 콘텐츠를 파일럿 콘텐츠로 변환 즉, 암호화하는 절차를 진행할 수 있다(311단계). 상기 파일럿 콘텐츠의 암호화는 랜덤(random)하게 지정되는 암호화키를 이용하여 암호화를 진행할 수 있으며, 상기 파일럿 콘텐츠의 암호화에 대해서는 후술하기로 한다. 여기서, 상기 도 3에서는 생략하였으나, 상기 패키징 서버(200)는 상기 획득하는 광고 콘텐츠 및 상기 광고 콘텐츠를 변환하는 상기 파일럿 콘텐츠를 저장하는 과정을 더 수행할 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 변환하는 파일럿 콘텐츠와 상기 휴대단말(300)의 요청에 대응하는 타겟 콘텐츠를 포함하여 패키징 콘텐츠로 생성한 다(313단계). 이때, 상기 패키징 콘텐츠 생성 시 DRM 콘텐츠 포맷을 이용하여 본 발명에서 정의하는 새로운 CPM 포맷에 의하여 생성할 수 있다. 상기 CPM 포맷은 기존 DRM 포맷에 새로운 헤더 즉, 본 발명의 CPM 헤더가 추가된 포맷을 나타낸다. 상기 패키징 콘텐츠는 설정 방식에 따라 하나 또는 두 개의 데이터 포맷으로 구성할 수 있으며, 이러한 데이터 포맷에 대해서는 후술하기로 한다.
이어서, 상기 패키징 서버(200)는 상기 패키징 콘텐츠의 상기 파일럿 콘텐츠에 대한 라이선스 생성을 요청하는 메시지를 상기 RI(400)로 전송할 수 있다(315단계). 그러면, 상기 RI(400)는 상기 파일럿 콘텐츠에 대한 라이선스를 생성하고, 시스템 구성에 따라 상기 라이선스를 해당 휴대단말(300)로 전송하거나, 또는 상기 휴대단말(300)의 라이선스 획득에 대한 요청을 대기할 수 있다. 이어서, 상기 패키징 서버(200)는 상기 생성하는 패키징 콘텐츠를 상기 휴대단말(300)로 전송한다(317단계).
다음으로, 상기 휴대단말(300)은 상기 패키징 서버(200)로부터 상기 패키징 콘텐츠를 수신하면(319단계), 상기 패키징 콘텐츠의 재생 특히, 상기 패키징 콘텐츠 내 파일럿 콘텐츠의 재생을 위한 라이선스를 상기 RI(400)로 요청한다(321단계). 그러면, 상기 RI(400)는 상기 휴대단말(300)의 요청에 응답하여, 요청되는 라이선스를 상기 휴대단말(300)로 전송한다(323단계). 상기 라이선스는 상기 파일럿 콘텐츠의 복호화에 사용되는 무료 라이선스 일 수 있다. 상기 라이선스에 포함된 복호화키는 상기 파일럿 콘텐츠의 암호화 시 이용되는 특정 암호화키에 대응할 수 있다.
다음으로, 상기 휴대단말(300)은 사용자 요청에 응답하여 상기 패키징 콘텐츠에 대한 재생 수행 시, 상기 패키징 콘텐츠의 파일럿 콘텐츠에 대한 재생을 먼저 수행한다(325단계). 이때, 상기 휴대단말(300)은 상기 RI(400)로부터 수신하는 라이선스에 의하여 상기 파일럿 콘텐츠에 대한 재생을 수행한다. 여기서, 상기 휴대단말(300)은 타겟 콘텐츠의 복호화를 위한 복호화키를 상기 파일럿 콘텐츠의 재생에 의해 획득할 수 있다.
즉, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생에 따른 복호화(327단계) 시, 상기 복호화하는 파일럿 콘텐츠를 구성하는 각 데이터 블록들과 그에 할당된 마일스톤들로부터 분할키들을 획득하여 버퍼링할 수 있다. 상기 분할키에 대한 설명은 상기 도 2를 참조한 해당 설명 부분에서 설명한 바에 대응한다.
다음으로, 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 재생이 완료되면, 상기 파일럿 콘텐츠 복호화에 따라 생성하는 상기 분할키들을 이용하여 상기 패키징 콘텐츠의 타겟 콘텐츠 재생을 위한 복호화키를 획득한다(329단계). 상기 복호화키는 상기 패키징 서버(200)에서 상기 타겟 콘텐츠 암호화 시 이용되는 암호화키에 대응한다. 상기 암호화키는 상기 파일럿 콘텐츠의 암호화에 따라 생성하는 암호화키일 수 있다. 본 발명의 실시 예에 따른 상기 암호화키 및 복호화키 획득 방법에 대한 상세한 설명은 후술하기로 한다.
다음으로, 상기 휴대단말(300)은 상기 획득하는 복호화키에 의해 상기 타겟 콘텐츠를 복호화하여 상기 타겟 콘텐츠에 대한 재생을 수행한다(331단계).
이상에서는 도 1 내지 도 3을 참조하여 본 발명의 시스템 구성 및 각 구성 요소 간의 동작 흐름에 대하여 설명하였다. 다음으로, 이하에서는 본 발명에 따른 상기 패키징 서버(200)의 상세 동작에 대하여 하기 도 4 내지 도 12를 참조하여 살펴보기로 한다. 하지만, 본 발명의 패키징 서버(200)가 하기에서 기술하는 예시에 한정되는 것은 아니므로, 하기의 실시 예에 의거하여 다양한 실시 예들에 적용할 수 있음에 유의하여야 한다.
도 4는 본 발명의 실시 예에 따른 패키징 서버의 처리 동작을 개략적으로 도시한 도면이다. 상기 도 4에서는 사용자가 패키징 콘텐츠를 구성하는 타겟 콘텐츠 및 파일럿 콘텐츠를 직접 선택하고, 상기 패키징 서버(200)는 상기 사용자 선택에 대응하여 패키징 콘텐츠를 생성하는 동작의 예시를 나타낸 것이다.
상기 도 1 내지 도 4를 참조하면, 먼저 패키징 서버(200)는 특정 휴대단말(300)로부터 특정 콘텐츠에 대한 요청을 수신하면(401단계), 상기 요청되는 특정 콘텐츠가 패키징 콘텐츠인지 일반 DRM 콘텐츠 즉, 타겟 콘텐츠인지 판단한다(403단계). 이때, 상기 도 4의 설명에서는 생략하지만, 상기 패키징 서버(200)는 상기 휴대단말(300)의 요청에 응답하여 DRM 기술이 적용되지 않은 일반 콘텐츠에 대한 처리도 수행할 수 있음은 물론이다.
상기 판단결과, 상기 휴대단말(300)에 의해 요청되는 콘텐츠가 타겟 콘텐츠이면, 상기 패키징 서버(200)는 상기 휴대단말(300)이 요청하는 해당 타겟 콘텐츠를 추출하여 상기 휴대단말로 전송한다(405단계). 상기 판단결과, 요청되는 콘텐츠가 패키징 콘텐츠이면, 상기 패키징 서버(200)는 상기 휴대단말(300)에 의해 요청되는 타겟 콘텐츠 및 파일럿 콘텐츠를 선택하고(407단계), 상기 선택하는 타겟 콘 텐츠 및 파일럿 콘텐츠의 결합 및 설정된 암호화 절차에 의하여 패키징 콘텐츠를 생성한다(409단계). 즉, 사용자 요청에 대응하는 패키징 콘텐츠를 생성한다.
이어서, 상기 패키징 서버(200)는 상기 생성하는 패키징 콘텐츠를 상기 휴대단말(300)로 전송한다(411단계). 이때, 상기 패키징 서버(200)는 RI(400)로 상기 파일럿 콘텐츠에 대한 라이선스 생성을 요청하는 메시지를 더 전송할 수도 있다. 여기서, 상기 패키징 서버(200)가 상기 패키징 콘텐츠 전송 시 설정된 데이터 포맷으로 변환하는 방법에 대해서는 후술하기로 한다.
한편, 상기 도 4에서는 사용자가 패키징 콘텐츠를 구성하는 파일럿 콘텐츠 및 타겟 콘텐츠를 직접 지정하는 경우의 예시를 나타낸다. 즉, 패키징 콘텐츠를 구성하는 타겟 콘텐츠와 파일럿 콘텐츠가 사용자 희망에 의해 직접 선택되고, 상기 패키징 서버(200)는 상기 사용자 선택에 의한 타겟 콘텐츠와 파일럿 콘텐츠를 이용하여 패키징 콘텐츠를 구성하는 경우의 예시를 나타낸 것이다. 따라서 상기 패키징 서버(200)에 구성되어 있는 특정 패키징 콘텐츠에 대한 사용자 요청이 있을 시, 상기 패키징 서버(200)는 상기 휴대단말(300)이 요청하는 해당 패키징 콘텐츠를 추출하여 상기 휴대단말(300)로 바로 전송하는 절차를 수행할 수도 있다.
도 5는 본 발명의 실시 예에 따른 패키징 서버의 처리 동작을 도시한 도면이다. 상기 도 5에서는 패키징 서버(200)가 광고서버(100)와 연동하여 획득하는 광고 콘텐츠를 파일럿 콘텐츠로 변환한 후, 상기 파일럿 콘텐츠와 타겟 콘텐츠를 이용하여 패키징 콘텐츠로 구성하는 동작의 예시를 나타낸 것이다.
상기 도 1 내지 도 5를 참조하면, 먼저 패키징 서버(200)는 특정 휴대단 말(300)로부터 패키징 콘텐츠에 대한 요청을 수신하면(501단계), 상기 요청되는 패키징 콘텐츠가 데이터베이스(DB, Data Base)에 존재하는지 체크할 수 있다(503단계). 여기서, 상기 패키징 콘텐츠에 대한 요청은 사용자가 희망하는 타겟 콘텐츠를 지정하고, 이후 상기 타겟 콘텐츠의 획득을 패키징 콘텐츠에 의한 획득 방식으로 요청하는 경우일 수 있다.
만약, 상기 요청되는 패키징 콘텐츠가 DB에 존재하면, 상기 패키징 서버(200)는 해당 패키징 콘텐츠를 선택하고(505단계), 상기 선택하는 패키징 콘텐츠를 상기 휴대단말(300)로 전송한다(525단계).
반면, 상기 패키징 서버(200)의 DB에 미리 구성된 패키징 콘텐츠가 존재하지 않으면, 상기 패키징 서버(200)는 상기 사용자 요청에 따른 타겟 콘텐츠와 함께 패키징 콘텐츠를 구성할 파일럿 콘텐츠에 대한 검색(507단계)을 통해, 소정의 파일럿 콘텐츠가 DB에 존재하는지 확인할 수 있다(509단계).
상기 확인결과, 상기 파일럿 콘텐츠가 존재하면, 상기 패키징 서버(200)는 상기 파일럿 콘텐츠를 선택하고(511단계), 상기 사용자 요청에 따른 타겟 콘텐츠와 상기 선택하는 파일럿 콘텐츠를 이용하여 패키징 콘텐츠 생성을 위한 패키징 절차를 수행할 수 있다(519단계). 상기 패키징 절차는 상기 파일럿 콘텐츠를 이용하여 상기 타겟 콘텐츠용 암호화키를 생성하고, 상기 암호화키에 의하여 상기 타겟 콘텐츠를 암호화하는 절차를 포함할 수 있으며, 이에 대한 상세한 설명은 후술하기로 한다.
상기 확인결과, 상기 파일럿 콘텐츠가 존재하지 않으면, 상기 패키징 서 버(200)는 광고서버(100)와 연동하여 패키징 콘텐츠를 구성할 특정 광고 콘텐츠를 요청한다(513단계). 이어서, 상기 패키징 서버(200)는 상기 광고서버(100)로부터 획득하는 광고 콘텐츠를 파일럿 콘텐츠로 변환한다(515단계). 상기 파일럿 콘텐츠 변환은 랜덤하게 지정되는 암호화키에 의하여 암호화를 진행할 수 있으며, 상기 파일럿 콘텐츠 변환에 대해서는 후술하기로 한다. 상기 패키징 서버(200)는 상기 광고 콘텐츠 및 상기 광고 콘텐츠을 변환하는 상기 파일럿 콘텐츠를 상기 DB에 저장할 수 있다(517단계).
다음으로, 상기 패키징 서버(200)는 상기 사용자 요청에 따른 타겟 콘텐츠와 상기 파일럿 콘텐츠를 이용하여 패키징 콘텐츠 생성을 위한 패키징 절차를 수행할 수 있다(519단계). 즉, 상기 패키징 서버(200)는 상기 파일럿 콘텐츠와 타겟 콘텐츠의 결합 및 설정된 암호화 절차를 수행할 수 있다. 이어서, 상기 패키징 서버(200)는 상기 패키징 절차에 의하여 패키징 콘텐츠를 생성하고(521단계), 상기 생성하는 패키징 콘텐츠를 상기 DB에 저장할 수 있다(523단계). 이어서, 상기 패키징 서버(200)는 상기 패키징 콘텐츠를 상기 휴대단말(300)로 전송한다(627단계). 이때, 상기 패키징 서버(200)는 RI(400)로 상기 파일럿 콘텐츠에 대한 라이선스 생성을 요청하는 메시지를 더 전송할 수도 있다.
도 6은 본 발명의 실시 예에 따른 패키징 서버의 패키징 콘텐츠 생성 절차를 도시한 도면이다. 상기 도 6은 전술한 도 1 내지 도 5를 참조한 설명 부분에서 설명한 바와 같은 패키징 콘텐츠 생성 시 파일럿 콘텐츠에 의해 생성하는 암호화키를 이용하여 타겟 콘텐츠를 암호화하는 절차를 도시한 도면이다.
상기 도 1 내지 도 6을 참조하면, 먼저 상기 패키징 서버(200)는 패키징 콘텐츠를 구성할 광고 콘텐츠를 선택한다(601단계). 이때, 상기 광고 콘텐츠는 본 발명의 실시 예에 따라 적용되는 파일럿 콘텐츠이거나, 또는 후술하는 바와 같이 암호화되지 않은 일반적인 광고 콘텐츠일 수 있다. 아울러, 상기 광고 콘텐츠는 상기 패키징 서버(200)의 DB에 미리 저장된 콘텐츠이거나, 또는 광고서버(100)로부터 수신하여 저장하는 콘텐츠일 수 있다. 또한, 상기 광고 콘텐츠는 사용자에 의해 지정되는 콘텐츠이거나, 랜덤 방식에 의해 상기 패키징 서버(200)가 임의로 지정하는 콘텐츠일 수 있다.
다음으로, 상기 패키징 서버(200)는 광고 콘텐츠의 암호화 방식을 결정한다(603단계). 여기서, 본 발명의 실시 예에 따른 암호화 방식은 크게 두 가지로 구분할 수 있다. 즉, 본 발명의 실시 예에 따르면 파일럿 콘텐츠에 대하여 전체 재생 또는 일부 재생에 따라 타겟 콘텐츠용 복호화키를 획득할 수 있다. 즉, 사용자가 파일럿 콘텐츠를 전체 시청(청취)하거나 또는 일부 시청(청취)하는 경우 타겟 콘텐츠용 복호화키를 획득할 수 있다.
이에 따라, 본 발명의 상기 암호화 방식은, 상기 파일럿 콘텐츠에 대하여 전체 재생하는 경우에 타겟 콘텐츠용 복호화키가 획득되는 이율배반(all or nothing) 방식과, 상기 파일럿 콘텐츠에 대하여 설정된 일부 구간 이상 재생하는 경우에 타겟 콘텐츠용 복호화키가 획득되는 임계(threshold) 방식으로 구분할 수 있다.
상기 이율배반 방식은 파일럿 콘텐츠에 대하여 전체 재생이 이루어져야지만 타겟 콘텐츠의 재생을 위한 복호화키가 생성되도록 하는 방식을 나타낸다. 상기 임 계 방식은 파일럿 콘텐츠에 대하여 설정된 임계 이상의 일부 재생이 이루어지면 타겟 콘텐츠의 재생을 위한 복호화키가 생성되도록 하는 방식을 나타낸다. 상기 임계 방식에서는 예를 들어, 상기 파일럿 콘텐츠를 구성하는 데이터 블록이 n개일 때, 상기 n개의 데이터 블록 중 t개
Figure 112009006452415-pat00001
이상의 데이터 블록들에 대한 복호화가 이루어질 시 상기 타겟 콘텐츠용 복호화키를 획득할 수 있다. 상기 이율배반 방식과 상기 임계 방식에 대한 상세 암호화 방식에 대해서는 후술하기로 한다.
다음으로, 상기 패키징 서버(200)는 상기 이율배반 방식 또는 임계 방식 중 어느 하나의 암호화 방식이 결정되면, 상기 광고 콘텐츠를 블록화 한다(605단계). 즉, 상기 패키징 서버(200)는 상기 광고 콘텐츠를 설정된 개수(예컨대, n개, n은 자연수)의 데이터 블록들(data blocks)로 구분하여 나눈다.
다음으로, 상기 패키징 서버(200)는 상기 결정하는 암호화 방식에 따라 상기 광고 콘텐츠의 각 데이터 블록별로 마일스톤(milestone)을 할당한다. 상기 마일스톤은 파일럿 콘텐츠 내에 포함되는 부가정보로, 사용자의 고의적인 패스트 포워드(fast forward) 등과 같은 행위를 방지하기 위해 할당된다.
다음으로, 상기 패키징 서버(200)는 각 데이터 블록별로 할당된 상기 마일스톤으로부터 분할키(partial key)들을 생성하여 저장한다(609단계). 이어서, 상기 패키징 서버(200)는 상기 분할키에 의하여 타겟 콘텐츠용 제1암호화키를 생성하고(611단계), 상기 제1암호화키를 이용하여 상기 타겟 콘텐츠를 암호화한다(613단계). 즉, 상기 패키징 서버(200)는 상기 제1암호화키에 의하여 사용자 희망에 따른 특정 DRM 콘텐츠를 암호화함으로써, 상기 패키징 콘텐츠에 이용되는 본 발명의 상 기 타겟 콘텐츠를 생성할 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 설정된 개수의 데이터 블록으로 구분되고, 각 데이터 블록별로 마일스톤이 할당된 광고 콘텐츠의 암호화를 위한 제2암호화키를 랜덤하게 선택한다(615단계). 이어서, 상기 패키징 서버(200)는 상기 광고 콘텐츠를 상기 제2암호화키로 암호화하여 파일럿 콘텐츠를 생성한다(617단계).
다음으로, 상기 패키징 서버(200)는 상기 파일럿 콘텐츠와 상기 타겟 콘텐츠의 패키징(619단계)에 의하여, 본 발명의 패키징 콘텐츠로 생성한다(621단계). 상기와 같이 생성하는 패키징 콘텐츠의 포맷(format)의 예시가 하기 도 7 내지 도 10 나타나 있다.
도 7은 본 발명의 실시 예에 따른 패키징 콘텐츠 포맷의 개략적인 예시를 나타낸 도면이다.
상기 도 7을 참조하면, 본 발명의 실시 예에 따른 패키징 콘텐츠(700) 포맷은 헤더(header)(710)와, 파일럿 콘텐츠 오브젝트(730) 및 타겟 콘텐츠 오브젝트(750)를 포함할 수 있다.
상기 헤더(710)는 크게 공통헤더(common headers)와 CPM(Content Packaging Mechanism) 헤더로 이루어지며, 상기 CPM 헤더는 상기 공통헤더에 포함될 수 있다. 이에 대한 상세 구성에 대해서는 후술하기로 한다. 이러한 상기 헤더(710)는 상기 콘텐츠가 패키징 콘텐츠임을 나타낼 수 있다. 즉, 패키징 서버(200)는 본 발명의 패키징 콘텐츠 구성 시 파일럿 콘텐츠와 타겟 콘텐츠를 설정된 콘텐츠 오브젝트 포 맷(content object format)으로 구성하고, 상기 콘텐츠 오브젝트 포맷의 공통헤더에 CPM 헤더를 추가하여 구성한다.
이에 따라 휴대단말(300)은 상기 CPM 헤더의 존재 여부에 따라 콘텐츠 타입이 패키징 콘텐츠인지 여부를 확인하고, 그에 따른 재생을 수행할 수 있다. 상기 헤더(710)는 상기 패키징 콘텐츠가 이율배반 방식에 의한 것인지 임계 방식에 의한 것인지에 대한 정보 및 상기 패키팅 콘텐츠 포맷 타입에 따라 파일럿 콘텐츠 오브젝트(750)의 위치를 나타내는 위치정보 등을 포함할 수 있다.
아울러, 상기 헤더(710)는 상기 패키징 콘텐츠 재생 시 상기 파일럿 콘텐츠 오브젝트(730)의 재생을 우선으로 수행하도록 하는 정보 및 상기 파일럿 콘텐츠 오브젝트(730)의 재생을 위한 라이선스(770)를 획득할 수 있는 서버(예컨대, 패키징 서버, RI 등)의 주소정보 등을 포함할 수 있다. 상기 주소정보는 해당 서버의 URL(Uniform Resource Location) 정보일 수 있다. 이에 의해, 휴대단말은 파일럿 콘텐츠의 라이선스(복호화키)(770)를 획득할 서버를 선택할 수 있으며, 선택된 서버의 URL로 웹 브라우징 등을 통해 상기 파일럿 콘텐츠(730)의 재생을 위한 라이선스(770)를 획득할 수 있다.
상기 도 7에서 나타낸 바와 같이, 본 발명의 실시 예에 따르면, 상기 파일럿 콘텐츠(730)는 무료 라이선스에 포함된 파일럿 콘텐츠의 복호화키(770)에 의해 복호화되어 재생할 수 있다. 아울러, 상기 타겟 콘텐츠(750)는 상기 복호화키에 의한 파일럿 콘텐츠(730)의 재생에 따라 생성되는 복호화키에 의해 복호화되어 재생할 수 있다.
그러면 이하, 상기 도7에 나타낸 바와 같은 기본적인 포맷 형태를 이용하여 본 발명의 콘텐츠 패키징 메커니즘(CPM, Content Packaging Mechanism)에 따라 CPM 헤더를 가지는 콘텐츠 오브젝트 포맷(content object format)의 상세 예시들을 하기 도 8 내지 도 11을 참조하여 살펴보기로 한다.
이하에서는, 상기 도 8 내지 도 10을 설명하기에 앞서, 표준 규격에서 정의하고 있는 DRM 콘텐츠 포맷(DCF, DRM Content Format)에 대하여 개략적으로 살펴보기로 한다. 즉, 이하에서는 OMA DRMv1.0에 따른 DCF(이하, 'DRMv1.0 DCF'라 칭함) 및 OMA DRMv2.x에 따른 DCF(이하, 'DRMv2.x DCF'라 칭함)에 대하여 개략적으로 먼저 살펴보고, 이를 참조하여 본 발명에서 제안하는 콘텐츠 오브젝트 포맷에 대하여 후술하여 살펴보기로 한다.
먼저, 상기 DRMv1.0 DCF에 대하여 살펴보면, DRMv1.0 DCF는 포워드 락(Forward-lock) 메소드(method), 결합 전송(Combined delivery) 메소드, 분리 전송(Separate delivery) 메소드와 같은 DRM 메소드들을 가진다.
상기 메소드들 중 상기 포워드 락 메소드와 결합 전송 메소드는 DRM 메시지(message) 형태로 HTTP(Hypertext Transfer Protocol)를 통하여 다운로드(download)되며, 암호화(encrypted)는 되지 않는다.
상기 분리 전송 메소드는 해당 콘텐츠 오브젝트(contents object)가 DCF 형태로 암호화되어 HTTP를 통해 다운로드되며, RO(Lincense)는 XML(eXtensible Markup Language)이나 wbxml(WAP Binary XML) 형태로 WAP 푸시(Push)를 통하여 휴대단말(300)로 전달된다. 여기서, 상기 분리 전송 메소드의 DCF는 하기 <표 1>과 같은 필드들(fields)로 구성될 수 있다.
Figure 112009006452415-pat00002
상기 <표 1>에서 'Headers' 필드는 해당 콘텐츠 관련 추가적인 메타 데이터(meta data) 정보를 가지고 있는데, 이러한 메타 데이터 정보는 네임-밸류 쌍(name-value pairs) 형태로 텍스추얼 인코딩(textual encoding)되어 있다. 상기 'Headers' 필드에는 Encryption-Method header, Rights-Issuer header, Content-Name header, Content-Descriptiopn header, Content-Vendor header, Icon-URI header 및 Unsupported headers 등과 같은 정보들이 포함되어 있다. 특히, 상기 헤더들 중에서 상기 'Unsupported headers'를 이용하여 DCF의 추가적인 확장이 가능하다.
다음으로, 상기 DRMv2.x DCF는 ISO Base Media File Format specification[ISO 14492-12]를 기반으로 한다. 상기 ISO base media file format은 박스(box)라는 오브젝트 기반 디자인으로 이루어진 구조를 가진다. 상기 박스는 타입(type)과 사이즈(size)라는 필드를 가지는데, 상기 사이즈(size)는 박스(box)의 사이즈를 나타내며, 상기 타입(type)은 박스(box)의 구분자로서 설정된 바이트(예컨대, 4bytes(Four Character Code))로 구성된다. 또한 상기 DRMv2.x DCF는 확장성을 위하여 버전 필드(version field)와 플래그 필드(flags field)를 가지는 풀 박스(FullBox)도 사용될 수 있다.
상기 DRMv2.x DCF는 크게 DCF 프로파일(profile)과 PDCF 프로파일로 구분될 수 있다. 상기 DCF 프로파일은 어떤 콘텐츠라도 포장(wrapping) 가능한 포맷을 나타내며, 콘텐츠를 전체로 암호화하는 형태를 가진다. 상기 PDCF 프로파일은 오디오(audio)나 비디오(video)와 같은 패킷화된 미디어(packetized media)를 위한 포맷을 나타내며, 패킷 단위로 암호화하는 형태를 가진다.
한편, 상기 DRMv2.x DCF에서, 하나의 콘텐츠 오브젝트(content object)는 하나의 컨테이너 박스(Container Box)에 포함되며, 하나의 DCF 파일은 한 개 이상의 컨테이너 박스를 포함할 수 있다. 이와 같이, 다수의 컨테이너 박스들을 포함하는 DCF 파일을 멀티파트(Multipart) DCF라 부른다. 상기 컨테이너 박스는 하기 <표 2>와 같이 정의되고 있다.
Figure 112009006452415-pat00003
상기 <표 2>에 나타낸 바와 같이, 상기 컨테이너 박스는 해당 콘텐츠 오브젝트의 메타(meta) 정보를 포함하는 하나의 'OMA DRM Discrete Headers' 박스와 해당 콘텐츠 오브젝트 전체를 암호화한 'OMA DRM Content Object' 박스 및 새로운 박스들이 추가될 경우를 위한 'Extensions' 영역으로 구성된다.
상기 'OMA DRM Discrete Headers' 박스는 하기 <표 3>에 나타낸 바와 같이 하나의 공통헤더(Common Headers) 박스를 포함하는데, 여기에 해당 콘텐츠 오브젝트에 관한 메타 데이터 정보(meta data info)가 저장되어 있다. 상기 'OMA DRM Content Object' 박스는 하기 <표 4>에 나타낸 바와 같이 해당 콘텐츠 오브젝트 전체를 암호화한 데이터(콘텐츠 오브젝트)를 가진다.
Figure 112009006452415-pat00004
Figure 112009006452415-pat00005
다음으로, 이상에서 살펴본 바와 같은 상기 DRMv2.x DCF에서 상기 공통헤더(Common Headers)에 대하여 살펴보면 다음과 같다.
먼저, DCF와 PDCF는 모두 하기 <표 5>에 나타낸 바와 같은 풀 박스(FullBox)를 상속받은 공통헤더(Common Headers) 박스를 가질 수 있다.
Figure 112009006452415-pat00006
상기 <표 5>에 나타낸 바와 같이, 상기 'Common Headers' 박스는 Encryption Method, Encryption padding, Plaintext Length, Content ID & Length, Rights Issuer URL & Length, Textural Headers & Length 및 Extended Headers 등과 같은 메타 데이터 정보가 포함되어 있다. 특히, 상기 'Textural Headers'는 상기 DRMv1.0 DCF의 헤더 필드(Headers field)와 동일하게 네임-밸류 쌍(name-value pairs) 형태로 텍스추얼 인코딩(textual encoding)되어 있으며, 상기 'Textural Headers'는 'Content-Location header'와 'Custom headers'를 포함할 수 있다. 이때, 상기 'Textual Headers' 박스의 상기 'Custom headers'를 이용하여 헤더의 추가 확장이 가능하며, 또한 상기 'Common Headers' 박스의 'Extended Headers'에 새로운 박스를 추가하는 방식으로 헤더의 확장도 가능하다.
그러면 이하에서는, 전술한 바와 같은 기존 DRM DCF에 근거하여 본 발명에서 제안하는 콘텐츠 오브젝트 포맷 즉, 패키징 콘텐츠 포맷 및 공통헤더에 추가하는 CPM 헤더에 대하여 구체적으로 살펴보기로 한다.
본 발명의 상기 콘텐츠 오브젝트 포맷은 기존 DCF에 새로운 헤더 즉, CPM 헤더의 추가만으로 구성함으로써, 기존 DRM 방식을 그대로 유지할 수 있도록 한다. 특히, 본 발명에서 제안하는 콘텐츠 오브젝트 포맷에서, 전술한 도 7에서 살펴본 바와 같은 파일럿 콘텐츠 오브젝트(730)의 구성은, 상기 DRMv1.0 DCF를 고려한 오프 셋(offset) 정보를 이용하여 구성하는 방식(하기 도 8) 및 상기 DRMv2.x DCF의 확장성을 기반으로 구성하는 방식(하기 도 9 내지 도 11)으로 구분할 수 있다. 상기 DRMv2.x DCF의 확장성을 기반으로 구성하는 방식은 멀티파트(Multipart) DCF 형태로 파일럿 콘텐츠 오브젝트를 구성하는 방식(하기 도 9), OMA DRM 컨테이너 박스(Container Box) 내에 파일럿 콘텐츠 오브젝트를 구성하는 방식(하기 도 10) 및 뮤터블(Mutable) 영역(editable space)에 파일럿 콘텐츠 오브젝트를 구성하는 방식(하기 도 11)으로 구분할 수 있다.
도 8은 본 발명의 실시 예에 따른 패키징 콘텐츠 포맷의 예시를 나타낸 도면이다.
특히, 상기 도 8은 본 발명의 실시 예에서 오프셋(offset) 정보를 이용하여 콘텐츠 오브젝트 즉, 파일럿 콘텐츠 오브젝트와 타겟 콘텐츠 오브젝트에 의한 패키징 콘텐츠를 구성하는 경우의 예시를 나타낸 것이다.
상기 도 8에 나타낸 바와 같이, 본 발명의 오프셋 정보를 이용한 콘텐츠 오브젝트 포맷 즉, 패키징 콘텐츠 포맷은 하나의 컨테이너 박스(800)에 DCF 헤더 영역(810)과 DRM 콘텐츠 영역(820)으로 구성될 수 있다. 상기 DCF 헤더 영역(810)은 공통헤더(811)와 사용자 데이터(User Data)(813)를 포함하며, 상기 DRM 콘텐츠 영역(820)은 타겟 콘텐츠 오브젝트(821) 및 파일럿 콘텐츠 오브젝트(823)를 포함한다. 특히, 상기 파일럿 콘텐츠 오브젝트(823)는 상기 DRM 콘텐츠 영역(820)에서 상기 타겟 콘텐츠 오브젝트(821)의 앞 또는 뒤에 연결(concatenate)될 수 있으며, 이러한 파일럿 콘텐츠 오브젝트(821)의 위치를 지시하는 오프 셋 정보가 상기 공통헤더(811) 내에서 구성되는 CPM 헤더(815)에 포함될 수 있다.
상기 도 8을 참조하면, 먼저 전술한 바에서 살펴본 바와 같이, 상기 DRMv2.x DCF는 멀티파트 DCF(Multipart DCF)를 지원할 뿐만 아니라 확장성도 보장한다. 반면, 상기 DRMv1.0 DCF는 현재 하나의 DCF에 하나의 콘텐츠 오브젝트만 포함할 수 있는 구조를 가진다.
따라서 본 발명의 실시 예에 따라 타겟 콘텐츠 오브젝트(821)와 파일럿 콘텐츠 오브젝트(823)를 하나의 DCF에 패키징(packaging)하게 되면, 상기 파일럿 콘텐츠 오브젝트(823)의 오프 셋을 구분할 수 있는 정보를 헤더(header)에 추가하여야 한다. 여기서, 상기 헤더는 상기 도 8에서 CPM 헤더(815)일 수 있다.
이러한, 상기 CPM 헤더(815)의 추가는 상기와 같이 새로운 헤더로 추가할 수 있다. 또한 상기 CPM 헤더(815)의 추가는 기존의 'Content Location header' 필드를 이용할 수 있다. 즉, 상기 타겟 콘텐츠 오브젝트(821)와 파일럿 콘텐츠 오브젝트(823)가 하나의 DCF에 포함된 경우, 상기 파일럿 콘텐츠 오브젝트(823)의 오프 셋 정보를 상기 'Content Location header' 정보에 포함할 수도 있다. 이러한 본 발명의 파일럿 콘텐츠 오브젝트(823)에 대한'Content Location Header'는 하기 <표 6>과 같이 정의하는 메타 데이터 정보를 포함할 수 있다.
Figure 112009006452415-pat00007
상기 <표 6>에 나타낸 바와 같이, 상기 'AD-Content'는 본 발명에서 정의하는 콘텐츠(예컨대, 파일럿 콘텐츠)를 표현하기 위해 나타낸 것이며, 반드시 상기한 표현 형태에 한정되는 것은 아니다. 상기 'AD-Content-uri'는 유일한 구분자(주소) 형태임을 나타내는 표현이다. 상기 'token'은 DCF 파일의 상대적인 위치를 지시하며, 빈 문자열(the empty string), 즉 해당 파일 내에 존재하게 된다. 상기 'start_byte'는 해당 DCF 파일에서 파일럿 콘텐츠 오브젝트(823)의 첫 번째 바이트(first byte in the file)를 나타내며, 상기 'end_byte'는 해당 DCF 파일에서 파일럿 콘텐츠 오브젝트(823)의 마지막 바이트(last byte in the file)를 나타내며, 상기 'n_byte'는 파일럿 콘텐츠 오브젝트(823)의 길이를 나타낸다.
상기에서와 같이, 본 발명에서는 파일럿 콘텐츠 오프셋(pilot content offset) 정보를 텍스추얼(textual) 형태로 구성하게 되면, DRMv1.0 DCF의 헤더 및 DRMv2.x DCF의 헤더에 모두 추가가 가능하다. 따라서 이와 같은 경우는 상기 도 8에 나타낸 바와 같이, 상기 파일럿 콘텐츠 오브젝트(823)를 단순히 상기 타겟 콘텐츠 오브젝트(821)의 앞이나 뒤에 연결(concatenate)하는 방식으로 구성할 수 있다.
도 9는 본 발명의 실시 예에 따른 패키징 콘텐츠 포맷의 다른 예시를 나타낸 도면이다.
특히, 상기 도 9는 본 발명의 실시 예에서 DRMv2.x DCF의 확장성을 기반으로 구성하는 방식 중 멀티파트(Multipart) DCF 형태 즉, 다수의 컨테이너 박스를 이용하여 콘텐츠 오브젝트 즉, 파일럿 콘텐츠 오브젝트와 타겟 콘텐츠 오브젝트에 의한 패키징 콘텐츠를 구성하는 경우의 예시를 나타낸 것이다.
상기 도 9에 나타낸 바와 같이, 본 발명의 멀티파트 DCF 형태의 콘텐츠 오브젝트 포맷 즉, 패키징 콘텐츠 포맷은 다수의 컨테이너 박스들(910, 920)로 이루어질 수 있다. 즉, 타겟 콘텐츠 오브젝트(945)를 하나의 컨테이너 박스(910)로 구성하고, 파일럿 콘텐츠 오브젝트(965)를 다른 하나의 컨테이너 박스(920)로 각각 구성할 수 있다. 상기 컨테이너 박스들(910, 920)은 각각 DCF 헤더 영역(930, 950)과 DRM 콘텐츠 영역(940, 960)으로 구성된다.
상기 컨테이너 박스(910)의 상기 DCF 헤더 영역(930)은 공통헤더(931)와 사용자 데이터(933)를 포함하며, 상기 컨테이너 박스(910)의 상기 DRM 콘텐츠 영역(940)은 타겟 콘텐츠 오브젝트(945)를 포함한다. 특히, 상기 공통헤더(931)는 상기 파일럿 콘텐츠 오브젝트(965)에 대한 부가정보(예컨대, 위치 정보 및 파일럿 콘텐츠 오브젝트에 관한 메타 정보 등)를 지시하는 CPM 헤더(935)를 포함한다.
상기 컨테이너 박스(920)의 상기 DCF 헤더 영역(950)은 공통헤더(931)와 사용자 데이터(953)를 포함하며, 상기 컨테이너 박스(920)의 상기 DRM 콘텐츠 영역(960)은 파일럿 콘텐츠 오브젝트(965)를 포함한다. 이때, 상기 공통헤더(951)에는 CPM 헤더가 생략될 수 있다.
상기 도 9를 참조하면, 먼저 전술한 바에서 살펴본 바와 같이, 상기 DRMv2.x DCF에는 하나의 DCF 파일에 다수의 컨테이너 박스들을 가질 수 있다. 즉, 본 발명에 따르면 상기와 같은 멀티파트 DCF 방식으로 파일럿 콘텐츠 오브젝트(965)와 타겟 콘텐츠 오브젝트(945)의 패키징이 가능하다. 이와 같이, 상기 멀티파트 DCF 방식으로 콘텐츠 오브젝트가 구성될 경우, 파일럿 콘텐츠 식별자(pilot content identifier)가 필수적으로 필요하며, 휴대단말(300)에서는 타겟 콘텐츠 오브젝트(945)의 공통헤더(931) 내의 CPM 헤더(935)에 지정된 상기 파일럿 콘텐츠 식별자를 기준으로, 해당 파일럿 콘텐츠 오브젝트(965)를 찾을 수 있다.
도 10은 본 발명의 실시 예에 따른 패키징 콘텐츠 포맷의 또 다른 예시를 나타낸 도면이다.
특히, 상기 도 10은 본 발명의 실시 예에서 DRMv2.x DCF의 확장성을 기반으로 구성하는 방식 중 컨테이너 박스 내에 콘텐츠 오브젝트 즉, 파일럿 콘텐츠 오브젝트와 타겟 콘텐츠 오브젝트에 의한 패키징 콘텐츠를 구성하는 경우의 예시를 나타낸 것이다. 즉, 상기 도 10은 하나의 컨테이너 박스 내에 확장 가능한 영역(extended Box)에 새로운 박스(box)를 추가하는 방식으로 콘텐츠 오브젝트를 구성하는 경우의 예시를 나타낸 것이다.
상기 도 10에 나타낸 바와 같이, 본 발명의 컨테이너 박스를 이용한 콘텐츠 오브젝트 포맷 즉, 패키징 콘텐츠 포맷은 하나의 컨테이너 박스(1000)에 DCF 헤더 영역(1010)과 DRM 콘텐츠 영역(1020) 및 확장된 박스 영역(1030)으로 구성될 수 있다. 상기 DCF 헤더 영역(1010)은 공통헤더(1011)와 사용자 데이터(1013)를 포함하며, 상기 DRM 콘텐츠 영역(1020)은 타겟 콘텐츠 오브젝트(1025)를 포함하며, 상기 확장된 박스 영역(1030)은 파일럿 콘텐츠 오브젝트(1035)를 포함한다.
특히, 상기 공통헤더(1011)는 상기 파일럿 콘텐츠 오브젝트(1035)에 대한 부가정보(예컨대, 위치 정보 및 파일럿 콘텐츠 오브젝트에 관한 메타 정보 등)를 지시하는 CPM 헤더(1015)를 포함한다. 이러한 본 발명의 확장된 박스 영역(1030)을 하기 <표 7>에 나타낸 바와 같이 해당 파일럿 콘텐츠 오브젝트(1035) 전체를 암호화한 데이터를 가진다.
Figure 112009006452415-pat00008
상기 도 10을 참조하면, 먼저 전술한 바에서 살펴본 바와 같이, 컨테이너 박스(1000)에는 콘텐츠 오브젝트 박스(DRM 콘텐츠 영역(1020)) 뒤에 추가적인 박스 즉, 상기 확장된 박스 영역(1030)을 포함할 수 있도록 하는 확장성을 가지고 있다. 따라서 본 발명의 실시 예에서는 상기 파일럿 콘텐츠 오브젝트(1035)에 관한 박스를 추가적으로 정의하여, 하나의 컨테이너 박스(1000) 안에 타겟 콘텐츠 오브젝트(1025)와 파일럿 콘텐츠 오브젝트(1035)를 함께 구성할 수 있다.
도 11은 본 발명의 실시 예에 따른 패키징 콘텐츠 포맷의 또 다른 예시를 나타낸 도면이다.
특히, 상기 도 11은 본 발명의 실시 예에서 DRMv2.x DCF의 확장성을 기반으로 구성하는 방식 중 뮤터블 영역에 콘텐츠 오브젝트 즉, 파일럿 콘텐츠 오브젝트와 타겟 콘텐츠 오브젝트에 의한 패키징 콘텐츠를 구성하는 경우의 예시를 나타낸 것이다. 즉, 상기 도 11은 뮤터블 정보 박스(Mutable Information Box)를 이용하여 콘텐츠 오브젝트를 구성하는 경우의 예시를 나타낸 것이다.
상기 도 11에 나타낸 바와 같이, 본 발명의 뮤터블 정보 박스를 이용한 콘텐츠 오브젝트 포맷 즉, 패키징 콘텐츠 포맷은 다수개의 컨테이너 박스들(1110, 1150)과, 상기 컨테이너 박스들(1110, 1150) 뒤에 형성되는 뮤터블 정보 박스(1120)로 구성될 수 있다.
상기 컨테이너 박스들(1110, 1150)은 각각 DCF 헤더 영역(1130)과 DRM 콘텐츠 영역(1140)을 포함하고, 상기 DCF 헤더 영역(1130)은 공통헤더(1131)와 사용자 데이터(1133)를 포함하며, 상기 DRM 콘텐츠 영역(1140)은 타겟 콘텐츠 오브젝트(1145)를 포함한다. 특히, 상기 공통헤더(1131)는 상기 파일럿 콘텐츠 오브젝트(1123)에 대한 부가정보(예컨대, 위치 정보 등)를 지시하는 CPM 헤더(1135)를 포함한다. 이때, 상기 CPM 헤더(1135)는 앞쪽에 위치하는 컨테이너 박스(1110)의 공통헤더(1131)에만 포함될 수 있다. 상기 뮤터블 정보 박스(1120)는 RO(1121)와 파일럿 콘텐츠 오브젝트(1123)를 포함할 수 있다.
상기 도 11을 참조하면, 먼저 전술한 바와 같이, DRMv2.x DCF는 컨테이너 박스들(Container Boxes)(1110, 1150) 뒤에 뮤터블 DRM 정보 박스(Mutable DRM Information Box)(1120)라는 편집할 수 있는 공간(editable space)을 제공한다.
상기 DRMv2.x DCF에서는 상기 공간(editable space)에 트랜잭션 추적 박스(Transaction Tracking Box), RO 박스(Rights Object Box) 및 사용자 데이터 박스(User-Data Box) 등이 포함될 수 있으며, 해당 정보들은 휴대단말(300)에서 추가 및 수정이 가능하다. 이와 같이 휴대단말(300)이 수정할 수 있는 상기 공간에 대한 정의를 살펴보면 하기 <표 8>과 같이 나타낼 수 있다.
Figure 112009006452415-pat00009
한편, 상기 도 7 내지 도 11과 같은 구성에 의하여, 본 발명의 실시 예에 따른 CPM에 의해 구성되는 파일럿 콘텐츠 오브젝트(1123)의 무결성(integrity)이 보호되지 않은 경우, 새로이 파일럿 콘텐츠 오브젝트만 다운로드 받을 수 있다. 이러한 경우에는 하기 <표 9>에 나타낸 바와 같은 박스를 뮤터블 DRM 정보 박스(1120)에 추가할 수 있다.
Figure 112009006452415-pat00010
상기 <표 9>에 나타낸 바와 같이, 본 발명의 뮤터블 DRM 정보 박스(1120)는 특히 다운로드 하고자 하는 파일럿 콘텐츠 오브젝트에 대한 콘텐츠 식별자(CID, Content ID)를 나타내는 'ADContentID'가 포함됨을 알 수 있다.
이상에서는 도 7 내지 도 11을 참조하여 본 발명에서 제안하는 파일럿 콘텐츠와 타겟 콘텐츠 및 상기 파일럿 콘텐츠를 지시하는 정보를 가지는 CPM 헤더를 포함하는 콘텐츠 오브젝트 포맷의 예시들에 대하여 살펴보았다. 즉, 본 발명의 실시 예에 따르면 하나의 DCF 파일을 파일럿 콘텐츠와 타겟 콘텐츠로 구성하고, 상기 파일럿 콘텐츠와 타겟 콘텐츠의 위치를 구성하는 방안을 제시한다. 본 발명의 실시 예에서는 상기 파일럿 콘텐츠와 타겟 콘텐츠의 위치 지시를 이상에서 살펴본 바와 같은 CPM 헤더에 의해 지시할 수 있다.
본 발명에서 상기 CPM 헤더의 구성은 전술한 바와 같이 텍스추얼 헤더(Textual Headers)를 이용하여 구성할 수 있다. 이와 같이 텍스추얼 헤더에 추가하는 경우, 상기 CPM 헤더가 포함할 수 있는 메타 데이터 정보의 예시는 하기 <표 10>과 같이 나타낼 수 있다.
Figure 112009006452415-pat00011
상기 <표 10>에 나타낸 바와 같이, 상기 'block-size'는 블록의 사이즈(size of a block)를 나타내며, 상기 'block-num'은 블록들의 전체 개수(total numbers of the blocks)를 나타내며, 상기 'milestones-num'은 마일스톤들의 전체 개수(total numbers of the milestones)를 나타내며, 상기 'prime'은 임계(threshold) 방식에 사용되는 프라임 값(prime value)을 나타내며, 상기 'plaintextLength'는 파일럿 콘텐츠의 바이트(byte)에서 평문 길이(plaintext length)를 나타내며, 상기 'Hash1'은 해시함수1(Hash1)에 사용된 방식을 나타내며, 상기 'Hash2'는 해시함수2(Hash2)에 사용된 방식을 나타낸다.
이때, 상기 <표 10>을 참조하여, 만약 상기 프라임 값이 0(prime == 0)이고, 블록들의 전체 개수와 마일스톤들의 전체 개수가 같으면(block-num == milestones-num)이면, 전술한 바와 같이 구성되는 파일럿 콘텐츠 오브젝트 포맷이 이율배반(All or nothing) 방식으로 암호화된 것임을 나타낼 수 있다.
또한, 상기 프라임 값이 0보다 크고(prime > 0), 블록의 전체 개수가 마일스톤들의 전체 개수보다 크면(block-num > milestones-num), 전술한 바와 같이 구성되는 파일럿 콘텐츠 오브젝트 포맷이 임계(Threshold) 방식으로 암호화된 것임을 나타낼 수 있다.
또한, 본 발명에서 상기 CPM 헤더의 구성은 전술한 바와 같이 DRMv2.x DCF의 확장성을 기반으로 구성할 수 있다. 즉, 상기 DRMv2.x DCF의 공통헤더 박스(Common Headers Box)에는 추가적인 박스에 대한 확장성을 보장한다. 따라서 본 발명의 실시 예에서는 하기 <표 11>에 나타낸 바와 같이 CPM 헤더 박스를 정의하여 추가할 수 있다.
Figure 112009006452415-pat00012
상기 <표 11>에 나타낸 바와 같이, 상기 'CPM 헤더' 박스는 Encryption Method, Encryption padding, Plaintext Length, Content ID & Length, Content URL & Length, Content ID, Content URL, block Length & Number, milestone Number 및 prime 등과 같은 메타 데이터 정보가 포함되어 있다.
이때, 상기 <표 11>를 참조하여, 만약 상기 프라임 값이 0(prime == 0)이고, 블록들의 전체 개수와 마일스톤들의 전체 개수가 같으면(blockNum == milestonesNum)이면, 전술한 바와 같이 구성되는 파일럿 콘텐츠 오브젝트 포맷이 이율배반(All or nothing) 방식으로 암호화된 것임을 나타낼 수 있다.
또한, CPM 헤더의 지시 정보 중, 상기 프라임 값이 0보다 크고(prime > 0), 블록의 전체 개수가 마일스톤들의 전체 개수보다 크면(blockNum > milestonesNum), 전술한 바와 같이 구성되는 파일럿 콘텐츠 오브젝트 포맷이 임계(Threshold) 방식으로 암호화된 것임을 나타낼 수 있다.
또한, 상기 블록의 전체 개수가 마일스톤들의 전체 개수보다 작으면(blockNum < milestonesNum), 콘텐츠 오브젝트 포맷이 잘못 구성된 에러(error)임을 나타냄으로써, 파일럿 콘텐츠 오브젝트에 대한 다운로드를 수행할 수 있도록 할 수 있다.
다음으로 이하에서는 상기 도 1 내지 도 11을 참조한 설명 부분에서 설명한 바와 같은 본 발명의 파일럿 콘텐츠 및 타겟 콘텐츠에 대한 암호화에 대하여 구체적으로 살펴보기로 한다.
도 12는 본 발명의 실시 예에 따른 파일럿 콘텐츠 구성 및 상기 파일럿 콘텐츠를 이용한 타겟 콘텐츠의 암호화 동작을 설명하기 위해 도시한 도면이다.
이하에서는, 상기 도 1 내지 도 12를 참조하여 본 발명의 이율배반 방식 및 임계 방식 각각에 따른 동작으로 구분하여 설명하기로 한다.
먼저, 상기 도 1 내지 도 12를 참조하여 본 발명의 이율배반(all or nothing) 방식에 따른 패키징 콘텐츠 생성 동작에 대하여 살펴보기로 한다.
상기 도 1 내지 도 12를 참조하여 살펴보면, 먼저 패키징 서버(200)는 임의의 광고 콘텐츠를 상기 도 12에 나타낸 바와 같이 임의의 설정된 개수의 데이터 블록(b1 내지 bn)으로 나눈다. 이하, 상기 설정된 개수가 n개(n은 자연수)인 것으로 가정한다.
다음으로, 상기 패키징 서버(200)는 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)에 할당할 마일스톤(m1 내지 mn)(1220)을 선택한다. 여기서, 상기 선택하는 마일스톤(m1 내지 mn)(1220)의 개수는 상기 광고 콘텐츠를 구분하는 데이터 블록(b1 내지 bn)의 개수(n개)에 대응할 수 있다. 또한, 상기 데이터 블록(b1 내지 bn)별로 할당하는 마일스톤(m1 내지 mn)(1220)의 크기는 128비트(bit)를 가정할 수 있으나, 반드시 이에 한정되는 것은 아니며, 그 크기는 가변될 수 있음은 물론이다.
다음으로, 상기 패키징 서버(200)는 상기 마일스톤(m1 내지 mn)(1220)을 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)에 랜덤하게 할당한다. 상기 도 12에서는 상기 마일스톤(m1 내지 mn)(1220)이 순차적으로 할당된 것으로 나타내었으나, 본 발명이 이에 한정되는 것은 아니며, 상기 마일스톤(m1 내지 mn)(1220)은 임의의 순서에 따라 랜덤하게 할당될 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)과, 각 데이터 블록(b1 내지 bn)에 할당되는 상기 마일스톤(m1 내지 mn)(1220)으로부터 각 분할키들(partial keys)(K1 내지 Kn)(1230)을 계산한다. 상기 분할키들(K1 내지 Kn)(1230)은 타겟 콘텐츠의 암호화를 위한 최종 키 즉, 타겟 콘텐츠용 복호화키 도출을 위해 상기 파일럿 콘텐츠의 암호화 시 발생하는 임시키들일 수 있다. 상기 분할키들은 상기 파일럿 콘텐츠를 구성하는 데이터 블록들(b1 내지 bn) 또는 상기 데이터 블록들(b1 내지 bn)별로 할당하는 마일스톤들(m1 내지 mn)(1220)의 개수에 대응하게 획득될 수 있다. 상기와 같이 파일럿 콘텐츠를 구성하는 데이터 블록의 개수가 n개라 할 시, 상기 획득하는 분할키의 개수 역시 n개가 될 수 있다.
즉, 상기 분할키는 상기 데이터 블록과 마일스톤을 이용하여 하기의 <수학식 1>과 같이 계산할 수 있다.
Figure 112009006452415-pat00013
상기 <수학식 1>에서, 상기 Ki는 임의의 데이터 블록(bi)과 임의의 마일스톤(mi)으로부터 계산되는 분할키를 나타내고, 상기 bi는 상기 임의의 데이터 블록을 나타내며, 상기 mi는 상기 임의의 마일스톤을 나타내며, 상기 Hash는 해시함수(cryptographic hash function)를 나타내며, 상기 Hash1은 상기 해시함수가 광고 콘텐츠의 데이터 블록을 압축하는 용도로 사용되는 해시함수임을 나타낸다.
여기서, 상기 해시함수는 임의의 길이를 가지는 비트 스트링(bit string)을 입력하여 일정한 길이의 랜덤 비트 스트링(random bit string)을 출력하는 함수를 나타낸다. 상기 해시함수는 암호학적으로 안전하기 위해, 특정 출력 값으로부터 입력 값을 예측할 수 없도록 하거나, 또한 동일한 출력을 가지는 서로 다른 입력 값의 계산이 불가능하도록 설계되는 알고리즘이다. 상기 해시함수에 이용되는 알고리즘으로는 많은 알고리즘들이 고안되었으며, 미연방표준인 SHA-1 알고리즘이 가장 널리 사용제품에 사용되고 있으며, RSA 사의 MDS와 유럽표준인 RIPEDMD, 국내표준인 HAS-160 등도 잘 알려진 알고리즘이다.
다음으로, 상기 패키징 서버(200)는 상기 <수학식 1>에 의해 계산하는 각 분할키들(K1 내지 Kn)(1230)로부터 타겟 콘텐츠용 암호화키(CEKt)를 생성한다. 상기 타겟 콘텐츠용 암호화키(CEKt)는 하기 <수학식 2>에 의거하여 생성할 수 있다.
Figure 112009006452415-pat00014
상기 <수학식 2>에서, 상기 CEKt는 타겟 콘텐츠를 암호화하기 위한 암호화키를 나타내고, 상기 K1 내지 Kn은 <수학식 1>에 의해 계산되는 각 분할키를 나타내며, 상기 Hash는 해시함수를 나타내며, 상기 Hash2는 상기 해시함수가 타겟 콘텐츠용 암호화키를 생성하는 용도로 사용되는 해시함수임을 나타낸다.
다음으로, 상기 패키징 서버(200)는 상기 <수학식 2>와 같이 산출하는 타겟 콘텐츠용 암호화키(CEKt)를 이용하여, 상기 타겟 콘텐츠를 암호화한다. 이때, 상기 암호화키를 이용한 타겟 콘텐츠의 암호화 과정은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 광고 콘텐츠를 암호화하기 위한 파일럿 콘텐츠용 암호화키(CEKp)를 랜덤하게 선택한다. 상기 파일럿 콘텐츠용 암호화 키(CEKp)는 일반적으로 128비트(bit) 스트링을 가지는 키(symmetric key)일 수 있다. 이어서, 상기 패키징 서버(200)는 상기 광고 콘텐츠를 상기 파일럿 콘텐츠용 암호화키(CEKp)로 암호화하여 파일럿 콘텐츠(1210)를 생성한다. 상기 파일럿 콘텐츠용 암호화키(CEKp)를 이용한 상기 광고 콘텐츠의 암호화 과정은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 파일럿 콘텐츠와 상기 타겟 콘텐츠를 이용하여 상기 도 7 내지 도 11에 나타낸 바와 같은 패키징 콘텐츠를 생성한다. 이때, 상기 패키징 서버(200)는 상기와 같이 생성하는 파일럿 콘텐츠에 대한 전술한 바와 같은 다양한 부가정보(파일럿 콘텐츠가 구성되는 위치 정보 등)를 가지는 CPM 헤더를 포함하여 상기 패키징 콘텐츠를 구성한다.
아울러, 상기 패키징 서버(200)는 부가적으로, 상기 파일럿 콘텐츠용 암호화키(CEKp)를 휴대단말(300)의 공개키를 이용하여 암호화할 수 있으며, 또한 상기 파일럿 콘텐츠용 암호화키(CEKp) 및 각종 부가정보를 포함하여 상기 패키징 콘텐츠를 위한 최종 라이선스 값을 생성할 수 있다. 상기 공개키를 이용한 암호화 과정은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있으며, 상기 부가정보는 퍼미션(permissions), 콘스트레인트(constraint) 등의 정보를 나타낼 수 있다.
한편, 이상에서는 본 발명의 이율배반 방식에 따른 패키징 콘텐츠 생성 동작에 대하여 살펴보았다. 다음으로, 이하에서는 상기 도 1 내지 도 12를 참조하여 본 발명의 임계(threshold) 방식에 따른 패키징 콘텐츠 생성 동작에 대하여 살펴보기로 한다.
상기 도 1 내지 도 12를 참조하여 살펴보면, 먼저, 상기 임계 방식은 총 n개의 마일스톤이 정의된 경우 설정된 개수(예컨대, t개) 이상의 마이스톤에 따른 분할키를 획득할 시 타겟 콘텐츠의 복호 즉, 재생이 가능하도록 하는 방식을 나타낸다. 즉, 상기 이율배반 방식에 대비하면, n개의 데이터 블록들(마일스톤들) 중 t개 이상의 데이터 블록들에 의한 분할키 값을 획득하면 상기 타겟 콘텐츠용 복호화키(CEKt)를 획득할 수 있도록 하는 것이다.
이에, 상기 패키징 서버(200)는 상기 임계 방식에서 이용되는 파라미터(parameter)를 생성할 수 있다. 이를 살펴보면 다음과 같다.
즉, 상기 패키징 서버(200)는 마일스톤의 총 개수(n)와, 다항식 f(x)를 위한 랜덤 소수(p)와, 임계 방식에 따라 최소한 복호화되어야 할 마일스톤의 개수(t)를 각각 정의할 수 있다.
먼저, 상기 패키징 서버(200)는 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)에 할당할 마일스톤의 총 개수(n)를 결정한다. 상기 마일스톤의 총 개수는 상기 데이터 블록(b1 내지 bn)의 개수에 대응하거나, 적은 개수를 가질 수 있다. 이하에서는 상기 마일스톤의 개수가 상기 도 12에 나타낸 바와 같이 n개라 가정한다.
이어서, 상기 패키징 서버(200)는 갈루아체(Galois Field)(GF(p)) 상의 다항 식 f(x)의 계수(coefficients)(a0)를 랜덤하게 생성한다. 상기 계수(a0)는 양의 정수 값을 가진다.
여기서, 상기 갈루어체 GF(p)는 추상대수학 혹은 체이론(field theory)에서 정의하는 유한체(finite field)를 일컫는 다른 말을 나타낸다. 상기 GF(p)는 수학적으로 특수한 성질을 가지기 때문에 암호학, 코딩 이론(coding theory) 등에 사용된다. 상기 GF(p)는 p개의 원소를 가지는 유한체이다. 상기 p는 소수(prime number)를 나타낸다. 일반적으로, 체(field)란 사칙연산을 자유롭게 할 수 있는 수체계라고 정의할 수 있는데, 이 중에서 원소(p)가 유한인 것만을 이용한다. 가장 기본적인 것으로는 어떤 소수(prime number) p에 대해서 {0, 1, 2, ..., p-1}로 이루어진 집합을 가정할 때, 이 수들의 연산은 일반 자연수의 연산처럼 수행한 후에 p로 나눈 나머지를 취하는 방식이다. 즉, 소수 p에 대해 GF(p)는 {0, 1, 2, ..., p-1}에 나머지 연산(modular arithmetic)을 주면 된다. 이하, 이런 유한체들을 부울리언 대수(Zp)라고 한다.
통상적으로, 상기와 같이 어떤 체가 있으면, 그 체의 확장체(extension field)를 생각할 수 있다. 상기 확장체란 원래의 체에 새로운 원소들을 추가해서 여전히 체가 되도록 만든 것을 나타낸다. 예를 들면, 유리수와 실수, 실수와 복소수가 확장체의 경우에 해당할 수 있다. 이러한 확장체를 만들 때 가장 자연스럽고 기본적인 방법은 다항식(f(x))을 생각해서 그 근을 추가하는 것이다. 예를 들어, 실수에서 "x2 + 1 = 0" 이라는 다항식을 생각하면, 실수에서는 근이 없기 때문에 허 수 i를 추가하게 되고 복소수라는 확장체를 얻게 된다.
이상에서와 같이, 어떤 체가 있고 그 체의 원소들을 계수로 갖는 다항식을 생각했을 때 그 다항식의 근을 모두 포함하는 확장체를 만들 수 있다. 또한, 어떤 유한체가 있을 때 그 유한체는 어떤 소수 p에 대해서 Zp의 확장체(extension field)이고, 이때 상기 p는 유일하게 결정된다. 다시 말해, 어떤 유한체이든 Zp에 몇 개의 원소들을 추가해서 여전히 체가 되도록 만든 것이다. 아울러, 어떤 유한체도 어떤 소수 p와 자연수 n에 대해서 Zp의 원소들에 다항식
Figure 112009006452415-pat00015
의 근들만을 추가한 Zp의 확장체가 된다. 상기 다항식의 차수는 pn이고, 원소의 총 개수는 pn 개가 된다.
따라서 GF(28)이란 부울리언 대수 Z2에 다항식
Figure 112009006452415-pat00016
의 근들을 추가한 확장체이고 원소의 개수는 28 = 256 개인 유한체가 된다.
상기한 이론에서와 같이, 임의의 f(x)를 이용하여 파일럿 콘텐츠의 데이터 블록들 중 타겟 콘텐츠의 정상적인 복호화키를 생성할 수 있는 임의의 개수의 분할키(Si) 값을 결정(n개 결정)할 수 있으며, 이후 휴대단말은 파일럿 콘텐츠 복호화 시, 상기 결정되는 개수(t개) 이상의 분할키(Si)에 의하여 정상적인 타겟 콘텐츠용 복호화키를 획득할 수 있다.
그리고 상기 패키징 서버(200)는 상기 다항식 f(x)를 구하기 위한 랜덤 소수 p를 결정할 수 있다. 상기 랜덤 소수 p는 하기 <수학식 3>와 같은 조건을 만족하는 값을 결정한다.
Figure 112009006452415-pat00017
상기 <수학식 3>에 나타낸 바와 같이, 상기 패키징 서버(200)는 상기 랜덤하게 생성하는 양의 정수 a0 값과, 상기 마일스톤의 총 개수의 값(n) 중, 큰 값을 가지는 어느 파라미터의 값보다 큰 랜덤 소수 p를 결정할 수 있다. 예를 들면, a0=10이고, n=7이라 가정할 시, 랜덤 소수 p는 10보다 큰 값으로 결정하고, a0=5이고, n=9라 가정할 시 랜덤 소수 p는 9보다 큰 값으로 결정하게 된다.
다음으로, 상기 패키징 서버(200)는 상기 다항식 f(x)의 계수를 상기 랜덤 소수 p보다 작은 t-1개의 양의 정수로 선택하고, 이를 다항식 f(x)의 계수 a1, a2, ..., at-1로 정의한다. 상기 다항식 f(x)의 계수들 중 a0은 상기한 절차에서 이미 생성되므로 여기서는 생략된다. 즉, 상기 다항식 f(x)의 계수들은 상기 a0을 포함하여 상기 t-1개의 나머지 계수들에 의하여 상기 t개로 이루어진다.
그리고 상기 패키징 서버(200)는 상기 계수 a0, a1, a2, ..., at-1를 이용하여 Galois field GF(p) 상의 다항식 f(x)를 획득할 수 있다. 상기 GF(p) 상의 다항식 f(x)는 하기 <수학식 4>에 의거하여 획득할 수 있다.
Figure 112009006452415-pat00018
그리고 상기 패키징 서버(200)는 랜덤하게 생성하는 상기 계수(a0)를 이용하여 타겟 콘텐츠의 암호화를 위한 암호화키(타겟 콘텐츠용 암호화키)(CEKt)를 생성한다. 상기 타겟 콘텐츠용 암호화키(CEKt)는 하기 <수학식 5>에 의거하여 생성할 수 있다.
Figure 112009006452415-pat00019
상기 <수학식 5>에서, 상기 CEKt는 타겟 콘텐츠를 암호화하기 위한 암호화키를 나타내고, 상기 a0는 다항식 f(x)의 계수(coefficient)를 나타내며, 상기 f(x)는 GF(p) 상의 다항식을 나타내고, 상기 Hash는 해시함수를 나타내며, 상기 Hash2는 타겟 콘텐츠용 비밀키를 생성하는 용도로 사용되는 해시함수임을 나타낸다. 이때, 상기 암호화키 CEKt는 이후 휴대단말에서 상기 타겟 콘텐츠의 복호화를 위해 계산되는 복호화키에 대응한다.
한편, 상기와 같이 상기 패키징 서버(200)는 상기 임계 방식에 따른 파라미터를 미리 생성하여 저장할 수 있다. 다음으로 상기 패키징 서버(200)는 상기한 파 라미터를 이용하여 임계 방식에 따른 패키징 콘텐츠를 생성할 수 있다. 이하, 임계 방식에 따른 패키징 콘텐츠 생성 동작에 대하여 살펴보기로 한다.
상기 도 1 내지 도 12를 참조하여 살펴보면, 먼저 패키징 서버(200)는 임의의 광고 콘텐츠를 상기 도 12에 나타낸 바와 같이 임의의 설정된 개수의 데이터 블록(b1 내지 bn)으로 나눈다. 이하, 상기 설정된 개수가 n개(n은 자연수)인 것으로 가정한다.
다음으로, 상기 패키징 서버(200)는 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)에 할당할 마일스톤(m1 내지 mn)(1220)을 선택한다. 여기서, 상기 선택하는 마일스톤(m1 내지 mn)(1220)의 개수는 상기 광고 콘텐츠를 구분하는 데이터 블록(b1 내지 bn)의 개수(n개)에 대응할 수 있다. 이때, 상기 패키징 서버(200)는 상기 마일스톤(m1 내지 mn)(830) 중 임계 방식에 따라 설정된 개수의 최소한의 분할키를 생성하기 위한 마일스톤을 결정한다. 여기서, 임계 방식에서 정의하는 상기 분할키를 이하에서는 쉐어(share)(Si)라 명명한다.
즉, 상기 패키징 서버(200)는 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)에 대응하는 쉐어(share)(Si) 및 마일스톤(mi) 값을 도출해낸다. 상기 쉐어(Si) 및 마일스톤(mi)은 각각 하기 <수학식 6> 및 <수학식 7>에 의해 계산할 수 있다.
Figure 112009006452415-pat00020
Figure 112009006452415-pat00021
다음으로, 상기 패키징 서버(200)는 상기 마일스톤(m1 내지 mn)(1220)을 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)에 랜덤하게 할당한다. 상기 도 12에서는 상기 마일스톤(m1 내지 mn)(1220)이 순차적으로 할당된 것으로 나타내었으나, 본 발명이 이에 한정되는 것은 아니며, 상기 마일스톤(m1 내지 mn)(1220)은 임의의 순서에 따라 랜덤하게 할당될 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 광고 콘텐츠의 각 데이터 블록(b1 내지 bn)과, 각 데이터 블록(b1 내지 bn)에 할당되는 상기 마일스톤(m1 내지 mn)(830)으로부터 최소한의 개수에 대응하는 분할키들(1230)을 계산한다.
만약, 상기 최소한의 개수에 대응하는 분할키(1230)가 (K1 내지 Kn)일 시, 상기 분할키(1230)는 상기 데이터 블록(b1 내지 bn)과 마일스톤(m1 내지 mn)(1220)을 이용하여 상기의 <수학식 1>과 같이 계산할 수 있다. 또한 상기 최소한의 개수에 대응하는 분할키(1230)가 임의의 개수 (K1 내지 Kp)일 시, 상기 임의의 개수에 대응하는 분할키(1230)는 상기 데이터 블록(b1 내지 bn)과 마일스톤(m1 내지 mn)(1220) 및 상기의 <수학식 1>에 의거하여 상기 임의의 개수 (K1 내지 Kp)에 대응하여 계산할 수 있다. 즉, 이율배반 방식의 경우 상기 데이터 블록(또는 마일스톤)의 개수 n개에 대응하는 n개의 분할키를 획득하는 반면, 상기 임계 방식의 경우 상기 데이터 블록(또는 마일스톤)의 개수 n개와 동일하거나, 적은 p개의 분할키를 획득할 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 <수학식 5>와 같이 산출하는 타겟 콘텐츠용 암호화키(CEKt)를 이용하여, 상기 타겟 콘텐츠를 암호화한다. 이때, 상기 암호화키를 이용한 타겟 콘텐츠의 암호화 과정은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 광고 콘텐츠를 암호화하기 위한 파일럿 콘텐츠용 암호화키(CEKp)를 랜덤하게 선택한다. 상기 파일럿 콘텐츠용 암호화키(CEKp)는 일반적으로 128비트(bit) 스트링을 가지는 키(symmetric key)일 수 있다. 이어서, 상기 패키징 서버(200)는 상기 광고 콘텐츠를 상기 파일럿 콘텐츠용 암호화키(CEKp)로 암호화하여 파일럿 콘텐츠(1210)를 생성한다. 상기 파일럿 콘텐츠용 암호화키(CEKp)를 이용한 상기 광고 콘텐츠의 암호화 과정은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있다.
다음으로, 상기 패키징 서버(200)는 상기 파일럿 콘텐츠와 상기 타겟 콘텐츠를 이용하여 상기 도 7 내지 도 11에 나타낸 바와 같은 패키징 콘텐츠를 생성한다. 이때, 상기 패키징 서버(200)는 상기와 같이 생성하는 파일럿 콘텐츠에 대한 전술한 바와 같은 다양한 부가정보(파일럿 콘텐츠가 구성되는 위치 정보 등)를 가지는 CPM 헤더를 포함하여 상기 패키징 콘텐츠를 구성한다. 아울러, 상기 패키징 서버(200)는 부가적으로, 상기 파일럿 콘텐츠용 암호화키(CEKp)를 휴대단말(300)의 공개키를 이용하여 암호화할 수 있으며, 또한 상기 파일럿 콘텐츠용 암호화키(CEKp) 및 각종 부가정보를 포함하여 상기 패키징 콘텐츠를 위한 최종 라이선스 값을 생성할 수 있다. 상기 공개키를 이용한 암호화 과정은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있으며, 상기 부가정보는 퍼미션(permissions), 콘스트레인트(constraint) 등의 정보를 나타낼 수 있다.
이상에서는, 도 4 내지 도 12를 참조하여 본 발명의 패키징 서버(200) 및 상기 패키징 서버(200)에서 본 발명의 콘텐츠 패키징 메커니즘(CPM)에 의해 콘텐츠 오브젝트를 구성하는 방안과, 상기 콘텐츠 오브젝트에 파일럿 콘텐츠와 타겟 콘텐츠의 위치를 구성하는 방안에 대한 상세 동작에 대하여 살펴보았다. 다음으로 이하에서는 본 발명의 휴대단말(300)에 대한 상세 동작에 대하여 도 13 내지 도 16을 참조하여 살펴보기로 한다. 하지만, 본 발명의 휴대단말(300)이 하기에서 기술하는 예시에 한정되는 것은 아니므로, 하기의 실시 예에 의거하여 다양한 실시 예들에 적용할 수 있음에 유의하여야 한다.
도 13은 본 발명의 실시 예에 따른 휴대단말의 처리 동작을 개략적으로 도시한 도면이다. 상기 도 13에서는 사용자 선택에 대응하는 타겟 콘텐츠 및 파일럿 콘 텐츠를 요청하여 다운로드하는 동작의 예시를 나타낸 것이다.
상기 도 1 내지 도 13을 참조하면, 먼저 휴대단말(300)은 사용자로부터 콘텐츠 획득 요청을 감지하면(1301단계), 패키징 서버(200)로 접속하여(1303단계), 상기 패키징 서버(200)와 사용자 요청에 대응하는 웹 브라우징을 수행할 수 있다(1305단계). 사용자는 상기 휴대단말(300)이 상기 패키징 서버(200)에 접속하면, 웹 브라우징을 통해 사용자가 희망하는 파일럿 콘텐츠 및 타겟 콘텐츠를 지정하는 등의 동작을 수행할 수 있다. 여기서, 사용자는 일반 콘텐츠, 파일럿 콘텐츠, 타겟 콘텐츠, 패키징 콘텐츠 중 어느 하나 이상의 콘텐츠를 선택 지정할 수 있다.
이때, 사용자는 타겟 콘텐츠 지정 시, 상기 타겟 콘텐츠에 대하여 패키징 콘텐츠 방식으로 요청할 수 있으며, 이러한 경우, 상기 패키징 서버(200)는 상기 타겟 콘텐츠와 함께 구성할 파일럿 콘텐츠를 랜덤하게 선택할 수 있다. 또한, 사용자는 패키징 콘텐츠를 위한 파일럿 콘텐츠를 직접 지정할 수도 있다.
따라서 상기 휴대단말(300)은 상기 웹 브라우징을 통해 사용자 선택에 따른 콘텐츠를 설정하는 메시지를 상기 패키징 서버(200)와 교신할 수 있다(1307단계).
다음으로, 상기 휴대단말(300)은 콘텐츠에 대한 설정이 완료되어 사용자로부터 다운로드 요청이 발생하는지 체크한다(1309단계). 이때, 상기 휴대단말(300)은 다운로드 요청이 감지되지 않으면, 사용자 요청에 따른 해당 동작을 수행할 수 있다(1313단계). 상기 해당 동작 수행은 상기 1307단계의 콘텐츠 설정을 계속하여 수행하거나, 다른 콘텐츠를 복수개 선택하는 과정을 수행하거나, 상기 패키징 서버(200)와의 접속을 종료하는 등의 동작을 포함할 수 있다.
반면, 상기 휴대단말(300)은 다운로드 요청을 감지하면, 상기 1307단계에서 설정된 해당 콘텐츠를 다운로드하여 저장할 수 있다(1311단계). 이때, 패키징 콘텐츠에 대한 다운로드를 감지할 시, 상기 휴대단말(300)은 상기 패키징 콘텐츠의 파일럿 콘텐츠에 대한 무료 라이선스를 획득하는 절차를 더 수행할 수 있다. 상기 패키징 콘텐츠 감지는 상기 패키징 서버(200)가 상기 패키징 콘텐츠 구성 시 포함하는 CPM 헤더의 존재 여부에 따라 확인할 수 있다. 상기 무료 라이선스 획득은 상기 패키징 콘텐츠에 포함되는 RI(400)의 URL에 의하여, 해당 RI(400)로 접속한 후 획득하는 등의 절차를 수행할 수 있다. 또한, 상기 무료 라이선스 획득은 상기 패키징 콘텐츠 획득 시 상기 패키징 서버(200)로부터 함께 획득할 수도 있음은 물론이다.
도 14는 본 발명의 실시 예에 따른 휴대단말의 패키징 콘텐츠 재생 동작을 도시한 도면이다.
상기 도 1 내지 도 14를 참조하면, 먼저 휴대단말(300)은 특정 콘텐츠에 대한 재생 요청을 감지하면(1401단계), 재생 요청되는 상기 특정 콘텐츠의 타입을 체크할 수 있다(1403단계). 즉, 상기 휴대단말(300)은 상기 특정 콘텐츠가 일반 콘텐츠인지, DRM 콘텐츠인지 또는 패키징 콘텐츠인지 체크할 수 있다(1405단계). 이러한 콘텐츠 타입 판단은 해당 콘텐츠 포맷의 헤더에 포함된 정보에 의거하여 확인할 수 있다. 특히, 상기 휴대단말(300)은 DCF의 공통헤더 상에 CPM 헤더가 존재하는지의 여부에 따라 상기 콘텐츠 타입이 패키징 콘텐츠인지 여부를 판단할 수 있다. 상기 도 14의 실시 예에서는 상기 특정 콘텐츠가 패키징 콘텐츠인 경우를 대표하여 설명하기로 한다.
다음으로, 상기 특정 콘텐츠의 타입이 상기 일반 콘텐츠 또는 DRM 콘텐츠이면, 상기 휴대단말(300)은 해당 콘텐츠에 대한 재생 동작을 수행할 수 있다(1407단계). 이러한 재생 동작은 주지 공용의 기술에 대응하며, 특히 DRM 콘텐츠의 재생 동작은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있으므로, 그에 대한 상세한 설명은 생략하기로 한다.
반면, 상기 특정 콘텐츠의 타입이 상기 패키징 콘텐츠이면, 즉 상기 콘텐츠의 공통헤더에 CPM 헤더가 존재하면, 상기 휴대단말(300)은 상기 콘텐츠가 패키징 콘텐츠임을 인지하고, 상기 패키징 콘텐츠의 파일럿 콘텐츠에 대한 재생을 우선으로 수행할 수 있다. 여기서, 상기 휴대단말(300)은 상기 CPM 헤더에 의하여, 상기 파일럿 콘텐츠 및 타겟 콘텐츠가 상기 패키징 콘텐츠에 구성된 위치를 파악할 수 있으며, 이에 의거하여 상기 파일럿 콘텐츠에 대한 재생을 우선으로 수행할 수 있다. 이때, 상기 휴대단말(300)은 상기 패키징 콘텐츠의 재생에 필요한 라이선스를 검색한다(1409단계). 여기서, 상기 라이선스는 상기 패키징 콘텐츠를 구성하는 파일럿 콘텐츠의 복호화에 사용되는 라이선스로, 전술한 바와 같이 파일럿 콘텐츠의 복호화키를 포함하고 있는 무료 라이선스일 수 있다.
다음으로, 상기 휴대단말(300)은 상기 라이선스 검색에 의하여, 상기 파일럿 콘텐츠에 대응하는 라이선스의 존재 여부를 체크할 수 있다(1411단계). 상기 라이선스가 존재하지 않으면, 상기 휴대단말(300)은 라이선스 획득 정보를 추출한다(1413단계). 상기 라이선스 획득 정보는 전술한 바와 같이, 상기 패키징 콘텐츠 의 헤더에 포함되는 RI(400)의 URL일 수 있다. 이어서, 상기 휴대단말(300)은 상기 RI(400)의 URL에 의거하여 해당 RI(400)로 접속하고(1415단계), 상기 RI(400)로부터 상기 파일럿 콘텐츠에 대한 라이선스를 획득하여 저장할 수 있다(1417단계). 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 라이선스 획득이 완료되면 1419단계로 진행하여, 상기 라이선스에 의한 파일럿 콘텐츠의 재생 절차를 진행할 수 있다.
반면, 상기 라이선스가 존재하거나, 또는 상기 1413단계 내지 1417단계에 의하여 라이선스가 획득되면, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생을 수행할 수 있다(1419단계). 이때, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생 시, 상기 파일럿 콘텐츠의 암호화에 대응하는 복호화를 수행하여 적어도 하나의 분할키를 획득할 수 있다. 즉, 상기 휴대단말(300)은 상기 패키징 콘텐츠의 타겟 콘텐츠용 복호화키를 생성하기 위한 상기 분할키를 획득할 수 있다. 구체적으로, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생에 따른 복호화 시, 상기 파일럿 콘텐츠를 구성하는 각 데이터 블록들과 그에 할당된 마일스톤들로부터 적어도 하나의 분할키를 획득하여 버퍼링할 수 있다.
다음으로, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생이 완료됨을 감지하면(1421단계), 상기에서 파일럿 콘텐츠 복호화에 따라 획득하여 버퍼링 하는 상기 적어도 하나의 분할키를 이용하여 타겟 콘텐츠용 복호화키를 생성한다(1423단계). 상기 복호화키는 상기 패키징 서버(200)에서 상기 타겟 콘텐츠 암호화 시 이용되는 암호화키에 대응한다. 상기 암호화키는 상기 패키징 서버(200)에서 상기 파일럿 콘텐츠 암호화에 따라 생성하는 암호화키일 수 있다. 상기 1419단계 내지 1423단계에서 상기 타겟 콘텐츠용 복호화키를 생성하는 동작에 대한 상세한 설명은 후술하기로 한다. 여기서, 상기 파일럿 콘텐츠에 대한 재생 완료 여부는, 상기 파일럿 콘텐츠에 대한 전체 재생 완료이거나, 또는 상기 타겟 콘텐츠용 복호화키의 생성이 완료되는 시점이거나, 또는 사용자 요청에 의한 재생 완료 등일 수 있다.
다음으로, 상기 휴대단말(300)은 상기 생성하는 복호화키를 설정된 방식에 따라 체크하여(1425단계), 상기 타겟 콘텐츠용 복호화키의 정상 여부를 판별한다(1427단계). 즉, 상기 휴대단말(300)은 상기 복호화키가 사용자의 불법적인 행위(스킵, 패스트 포워드 등)에 의해 생성된 복호화키인지 여부를 판별할 수 있다.
이때, 상기 생성하는 복호화키가 정상적인 복호화키가 아니면, 상기 휴대단말(300)은 설정된 해당 동작을 수행할 수 있다(1431단계). 예를 들면, 상기 휴대단말(300)은 상기 타겟 콘텐츠 재생을 위한 복호화키가 비정상임을 알리는 경고 및 안내 등을 출력할 수 있다. 또한, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생 후의 상기 타겟 콘텐츠에 대한 재생을 무시하고, 다시 상기 파일럿 콘텐츠에 대한 재생을 수행할 수 있다. 또는 상기한 패키징 콘텐츠 재생 동작을 종료할 수도 있다.
여기서, 상기 복호화키가 비정상적인 경우는, 사용자가 파일럿 콘텐츠의 재생 시 스킵(skip) 또는 패스트 포워드(fast forward) 등을 수행함에 따라, 타겟 콘텐츠용 복호화키 생성을 위한 필요조건(복호화키 생성에 필요한 분할키의 부족 등) 들이 만족되지 않은 경우일 수 있다.
반면, 상기 생성하는 복호화키가 정상적인 복호화키이면, 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 재생에 이어서, 상기 복호화키에 의거하여 상기 패키징 콘텐츠의 타겟 콘텐츠에 대한 재생을 처리한다(1429단계).
도 15는 본 발명의 실시 예에 따른 휴대단말에서 파일럿 콘텐츠 재생에 의하여 타겟 콘텐츠용 복호화키를 획득하는 과정을 도시한 도면이다.
상기 도 1 내지 도 15를 참조하면, 휴대단말(300)은 사용자의 패키징 콘텐츠 재생 요청에 응답하여, 상기 패키징 콘텐츠에 구성된 파일럿 콘텐츠의 위치를 CPM 헤더에 의하여 파악하여, 상기 파일럿 콘텐츠에 대한 재생을 먼저 수행할 수 있다(1501단계). 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생 시, 상기 파일럿 콘텐츠의 데이터 블록들에 대한 복호화를 수행할 수 있다(1503단계). 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 암호화에 대응하는 방식으로 복호화를 수행할 수 있다.
다음으로, 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 복호화에 의하여, 상기 파일럿 콘텐츠의 데이터 블록 및 그에 할당된 마일스톤에 의거하여 분할키를 획득하여 버퍼링할 수 있다(1505단계). 이때, 상기 휴대단말(300)은 이율배반 방식 또는 임계 방식에 따른 분할키를 획득할 수 있으며, 이에 대한 상세 동작에 대해서는 후술하기로 한다.
다음으로, 상기 휴대단말(300)은 상기에서 획득하여 버퍼링 하는 분할키를 저장할 수 있다(1507단계). 이때, 상기 저장은 상기 복호화에 따라 획득하는 분할 키의 개수에 대응하는 적어도 하나의 분할키가 저장되며, 다수개의 분할키가 획득될 시 해당 분할키들을 누적하여 저장할 수 있다.
다음으로, 상기 휴대단말(300)은 상기한 절차 진행 중에, 상기 파일럿 콘텐츠에 대한 재생 완료 여부를 체크할 수 있다(1509단계). 여기서, 상기 파일럿 콘텐츠에 대한 재생 완료는, 상기 파일럿 콘텐츠에 대한 전체 재생 완료이거나, 또는 상기 타겟 콘텐츠용 복호화키의 생성이 완료되는 시점이거나, 또는 사용자 요청에 의한 재생 완료 등일 수 있다.
다음으로, 상기 파일럿 콘텐츠에 대한 재생 완료를 감지하면, 상기 휴대단말(300)은 상기 획득하는 적어도 하나의 분할키를 이용하여 타겟 콘텐츠용 복호화키 생성 알고리즘을 수행하고(1511단계), 이를 통해 상기 타겟 콘텐츠용 복호화키를 획득한다(1513단계). 이후, 상기 휴대단말(300)은 상기 획득하는 복호화키에 대한 정상 여부를 판별하고, 정상적인 복호화키일 시 상기 복호화키를 이용하여 상기 타겟 콘텐츠에 대한 재생을 수행할 수 있다.
이상에서는 상기 도 13 내지 도 15를 참조하여 본 발명의 휴대단말(300)의 처리 동작에 대하여 살펴보았다. 다음으로 이하에서는 상기 휴대단말(300)에서 이율배반 방식 또는 임계 방식에 대응하는 타겟 콘텐츠용 복호화키를 획득하는 방법에 대하여 살펴보기로 한다.
먼저, 본 발명의 이율배반 방식에 따라 암호화된 파일럿 콘텐츠로부터 상기 타겟 콘텐츠용 복호화키를 획득하는 동작에 대하여 살펴보기로 한다.
상기 휴대단말(300)은 사용자 선택에 따른 패키징 콘텐츠의 파일럿 콘텐츠에 대응하는 무료 라이선스를 획득한다. 이하에서는 상기 무료 라이선스에 포함된 파일럿 콘텐츠의 재생을 위한 복호화키(CEKp)라 한다. 상기 복호화키(CEKp)의 획득 방법은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있으며, 그에 대한 상세한 설명은 생략하기로 한다.
다음으로, 상기 휴대단말(300)은 사용자 요청에 응답하여 상기 패키징 콘텐츠의 재생 요청 또는 상기 패키징 콘텐츠의 타겟 콘텐츠에 대한 재생 요청을 감지하면, 상기 복호화키(CEKp)에 의하여 상기 파일럿 콘텐츠에 대한 재생을 우선적으로 수행한다.
이때, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생 시 타겟 콘텐츠용 복호화키 획득을 위한 복호화를 수행할 수 있다. 이를 상기 도 12를 참조하여 살펴보면 다음과 같이 나타낼 수 있다.
즉, 상기 휴대단말(300)은 상기 복호화키(CEKp)를 이용하여, 상기 파일럿 콘텐츠의 첫 번째 데이터 블록(b1)을 복호화하고, 상기 첫 번째 데이터 블록(b1)이 재생될 때, 상기 첫 번째 데이터 블록(b1)에 매핑된 마일스톤(m1)의 값을 읽어 들인다. 그리고 상기 휴대단말(300)은 상기 마일스톤(m1)에 의하여 첫 번째 분할키(K1)를 계산하여 임시 저장한다. 상기 분할키(K1)는 하기 <수학식 8>와 같이 계산할 수 있다.
Figure 112009006452415-pat00022
상기 <수학식 8>에서, 상기 K1은 파일럿 콘텐츠의 첫 번째 데이터 블록(b1)과 첫 번째 데이터 블록(b1)에 매핑된 첫 번째 마일스톤(m1)로부터 계산되는 첫 번째 분할키를 나타내고, 상기 b1은 상기 파일럿 콘텐츠의 첫 번째 데이터 블록을 나타내며, 상기 m1은 상기 첫 번째 데이터 블록(b1)에 대응하는 첫 번째 마일스톤을 나타내며, 상기 Hash는 해시함수(cryptographic hash function)를 나타내며, 상기 Hash1은 파일럿 콘텐츠의 데이터 블록을 복호화에 사용되는 해시함수임을 나타낸다.
다음으로, 상기 휴대단말(300)은 상기와 같은 분할키 획득 절차를 상기 파일럿 콘텐츠에 대한 재생이 완료되는 시점까지 수행할 수 있다. 따라서 상기 휴대단말(300)은 상기 <수학식 8>에 근거하여 두 번째 내지 n 번째 분할키를 계산할 수 있다. 이를 정형화하면 상기 <수학식 1>과 같이 나타낼 수 있다. 즉, 상기 휴대단말의 분할키 획득은 상기 패키징 서버(200)의 파일럿 콘텐츠에 대한 암호화에 대응하는 방식의 복호화에 의하여 획득할 수 있다.
다음으로, 상기 휴대단말(300)은 상기 <수학식 8>에 의거하여 첫 번째 분할키(K1)부터 n 번째 분할키(Kn)까지 획득하면, 상기 첫 번째 분할키(K1) 내지 n 번째 분할키(Kn)로부터 상기 타겟 콘텐츠용 라이선스인 복호화키(CEKt)를 생성한다. 상기 복호화키(CEKt)는 전술한 패키징 서버(200)에서 상기와 같은 분할키들에 의해 생성하는 암호화키에 대응할 수 있다. 따라서 상기 복호화키(CEKt)를 생성하는 계산식을 나타내면 상기 <수학식 2>와 같이 정의할 수 있다. 다만, 상기 <수학식 2>에서 CEKt는 타겟 콘텐츠를 복호화하기 위한 복호화키로 명명할 수 있다.
다음으로, 상기 휴대단말(300)은 상기 생성하는 복호화키(CEKt)를 이용하여, 타겟 콘텐츠를 복호화할 수 있으며, 따라서 상기 복호화에 의하여 상기 타겟 콘텐츠를 재생하게 된다. 아울러, 상기 휴대단말(300)은 상기한 절차에 따라 타겟 콘텐츠에 대한 재생 후, 상기 복호화키에 대한 폐기 또는 부가적인 DRM 처리를 진행할 수 있다. 예를 들면, 상기 타겟 콘텐츠용 복호하키는 파일럿 콘텐츠 재생에 의해 생성되는 임시 복호화키일 수 있으며, 이에 따라 상기 임시 복호화키에 의한 타겟 콘텐츠의 재생이 완료될 시 해당 임시 복호화키를 폐기하는 절차를 진행할 수 있다.
한편, 이상에서는 본 발명의 이율배반 방식에 따른 패키징 콘텐츠 재생 시의 타겟 콘텐츠용 복호화키를 획득하는 동작에 대하여 살펴보았다. 다음으로, 이하에서는 본 발명의 임계 방식에 따른 패키징 콘텐츠 재생 시의 타겟 콘텐츠용 복호화키를 획득하는 동작에 대하여 살펴보기로 한다.
먼저, 상기 휴대단말(300)은 사용자 선택에 따른 패키징 콘텐츠의 파일럿 콘텐츠에 대응하는 무료 라이선스를 획득한다. 이하에서는 상기 무료 라이선스에 포 함된 파일럿 콘텐츠의 재생을 위한 복호화키(CEKp)라 한다. 상기 복호화키(CEKp)의 획득 방법은 표준 규약(예컨대, OMA-DRM 2.x)의 규정에 따를 수 있으며, 그에 대한 상세한 설명은 생략하기로 한다.
다음으로, 상기 휴대단말(300)은 사용자 요청에 응답하여 상기 패키징 콘텐츠의 재생 요청 또는 상기 패키징 콘텐츠의 타겟 콘텐츠에 대한 재생 요청을 감지하면, 상기 복호화키(CEKp)에 의하여 상기 파일럿 콘텐츠에 대한 재생을 우선적으로 수행한다.
이때, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생 시 타겟 콘텐츠용 복호화키 획득을 위한 복호화를 수행할 수 있다. 이를 상기 도 12를 참조하여 살펴보면 다음과 같이 나타낼 수 있다.
즉, 상기 휴대단말(300)은 상기 복호화키(CEKp)를 이용하여, 상기 파일럿 콘텐츠의 첫 번째 데이터 블록(b1)을 복호화하고, 상기 첫 번째 데이터 블록(b1)이 재생될 때, 상기 첫 번째 데이터 블록(b1)에 매핑된 마일스톤(m1)의 값을 읽어 들인다. 그리고 상기 휴대단말(300)은 상기 마일스톤(m1)에 의하여 첫 번째 쉐어(S1)를 계산하여 임시 저장한다.
따라서 상기 휴대단말(300)은 상기 패키징 서버(200)의 동작에 대응하는 상기 <수학식 7>의 응용에 의하여, 각 마일스톤(mi)에 대응하는 각 쉐어(Si)를 계산할 수 있다. 상기 각 마일스톤(mi)에 따른 각 쉐어(Si)는 하기 <수학식 9>에 의거하여 계산할 수 있다. `
Figure 112009006452415-pat00023
한편, 사용자는 임계 방식에 따라 상기 파일럿 콘텐츠의 일부분만을 재생할 수 있다. 예를 들면, 패스트 포워드 등에 의해 타겟 콘텐츠를 스킵하면서 재생할 수 있다. 이하에서는 상기 사용자의 타겟 콘텐츠 재생 방식에 따라 복호화되는 타겟 콘텐츠의 데이터 블록이 t개이고, 타겟 콘텐츠용 복호화키 생성을 위한 최소한으로 재생되는 데이터 블록이 t개인 것으로 가정한다. 만약, 복호화키 생성을 위한 상기 t개에 대한 데이터 블록이 복호화되지 않고, 상기 t개보다 작은 개수의 데이터 블록이 복호화될 경우 정상적인 복호화키는 생성되지 않는다. 결국, 상기 타겟 콘텐츠에 대한 재생이 이루어지지 않는다.
구체적으로, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생이 완료되면, 상기 파일럿 콘텐츠의 데이터 블록이 복호화된 개수를 판단할 수 있다. 즉, 상기 휴대단말(300)은 복호화되는 데이터 블록과 상기 데이터 블록에 매핑된 마일스톤을 이용한 상기 <수학식 9>에 의거하여 각 쉐어(S1, S2, ..., St)를 계산한다. 여기서, 상기 각 쉐어(S1, S2, ..., St)는 사용자에 의해 재생되는 데이터 블록 또는 마일스톤의 개수인 t개에 대응하게 계산할 수 있다. 이어서, 상기 휴대단말(300)은 상기 계산하는 각 쉐어(S1, S2, ..., St)에 의하여 타겟 콘텐츠용 복호화 키 생성을 위한 계수(a0)를 계산한다. 상기 계수(a0)는 하기 <수학식 10>에 의하여 계산할 수 있다.
Figure 112009006452415-pat00024
상기 <수학식 10>에서, 파라미터 x 및 y는 각각 상기 <수학식 9>의 i와 쉐어(Si)에 각각 대응한다. 즉, (x, y)=(i, Si)와 같이 나타낼 수 있다. 예를 들어, t=3이고, (x1, y1), (x2, y2), (x3, y3)을 가정하여 상기 <수학식 10>에 대입하여 살펴보면, 상기 계수(a0)는 하기 <수학식 11>과 같이 계산할 수 있다.
Figure 112009006452415-pat00025
여기서, 상기 <수학식 11>에 (x1, y1)=(1, 3), (x2, y2)=(2, 5), (x3, y3)=(3, 10)을 가정하여 대입하면, 상기 계수(a0)는 4(a0=4)와 같이 계산될 수 있다.
다음으로, 상기 휴대단말(300)은 상기 계산하는 계수(a0)를 이용하여 상기 타겟 콘텐츠용 라이선스인 복호화키(CEKt)를 생성한다. 상기 복호화키(CEKt)는 전술한 패키징 서버(200)에서 랜덤 계수(a0)에 의해 생성하는 암호화키에 대응할 수 있다. 여기서, 상기 계수(a0)는 전술한 바와 같이 설정된 개수(t개)에 대응하는 파일럿 콘텐츠의 각 데이터 블록들(t개)과 마일스톤들(t개)을 이용하여 생성할 수 있다. 따라서 상기 타겟 콘텐츠용 복호화키(CEKt)를 생성하는 계산식을 나타내면 상기 <수학식 5>와 같이 정의할 수 있다. 다만, 상기 <수학식 5>에서 CEKt는 타겟 콘텐츠를 복호화하기 위한 복호화키로 명명할 수 있다.
다음으로, 상기 휴대단말(300)은 상기 생성하는 복호화키(CEKt)를 이용하여, 타겟 콘텐츠를 복호화할 수 있으며, 따라서 상기 복호화에 의하여 상기 타겟 콘텐츠를 재생하게 된다. 아울러, 상기 휴대단말(300)은 상기한 절차에 따라 타겟 콘텐츠에 대한 재생 후, 상기 복호화키에 대한 폐기 또는 부가적인 DRM 처리를 진행할 수 있다. 예를 들면, 상기 타겟 콘텐츠용 복호하키는 파일럿 콘텐츠 재생에 의해 생성되는 임시 복호화키일 수 있으며, 이에 따라 상기 임시 복호화키에 의한 타겟 콘텐츠의 재생이 완료될 시 해당 임시 복호화키를 폐기하는 절차를 진행할 수 있다.
한편, 이상에서는 본 발명의 이율배반 방식 및 임계 방식에 따른 패키징 콘텐츠 생성 및 패키징 콘텐츠의 재생 방법에 대하여 살펴보았다. 하지만 본 발명은 상기 이율배반 방식 및 임계 방식에 기반하여 다른 응용 방식에도 확장하여 적용할 수 있으면 물론이다. 이하, 본 발명의 다른 응용 방식에 대하여 살펴보기로 한다.
즉, 이상에서 설명한 바와 같은 방식들에서는 마일스톤(milestone)의 개수가 파일럿 콘텐츠의 데이터 블록(data block)의 개수와 동일하도록 설계하였다. 다시 말해, n개의 데이터 블록과 n개의 마일스톤을 가정하고 그에 따른 동작을 설명하였다. 이때, 상기 n의 숫자가 큰 값이 되면 분할키(partial key)를 복원하는데 많은 연산량을 필요로 할 수 있다. 이러한 경우 제한된 성능의 시스템에서는 적합하지 않을 수 있다.
또한, 광고 프로바이더(provider) 입장에서는 광고의 전체 내용보다는 특정 부분에서 사용자가 광고를 시청(청취)했다는 점이 중요할 수 있다. 즉, 광고가 전달하고자 하는 메시지가 사용자의 장기기억(long-term memory)에 얼마나 잘 인식되었는지 및 효과적으로 인식되었는지가 중요하며, 이는 고객이 해당 제품을 구매할 때 연상 작용을 보다 더 효과적으로 불러일으킬 수 있게 한다. 이런 연구는 광고 마켓팅 분야의 ad-recognition/ad-awareness 혹은 ad-tracking 분야의 주안점이다.
따라서 본 발명의 응용에 따르면, 파일럿 콘텐츠의 마일스톤의 개수를 데이터 블록의 개수와 다르게 설정 즉, 데이터 블록의 개수보다 작게 설정하고, 상기 마일스톤의 위치를 랜덤하게 배치하더라도 본 발명의 궁극적 목적에 벗어나지 않고, 효율적인 시스템의 제공이 가능하다. 이러한 경우, 마일스톤의 개수 및 위치, 그리고 어느 데이터 블록과 논리연산(예컨대, 배타적 논리합, XOR) 오퍼레이션을 취할지에 대한 정보를 부가적으로 더 제공할 수 있다.
한편, 이하에서는 상기 휴대단말(300)이 패키징 콘텐츠를 이용함에 있어서, 파일럿 콘텐츠 재생 시 그의 재생 정보를 카운트하고, 파일럿 콘텐츠에 대한 재생이 설정된 조건 이상 재생된 경우, 상기 파일럿 콘텐츠에 대한 재생 없이도 타겟 콘텐츠에 대한 재생이 자유롭도록 하는 실시 예에 대하여 하기 도 16을 참조하여 살펴보기로 한다.
도 16은 본 발명의 실시 예에 따른 휴대단말의 패키징 콘텐츠 재생 동작을 도시한 도면이다.
상기 도 1 내지 도 16을 참조하면, 먼저 휴대단말(300)은 패키징 콘텐츠의 재생 요청을 감지하면(1601단계), 상기 재생 요청에 응답하여 상기 패키징 콘텐츠에 대한 재생 정보를 체크한다(1603단계). 이어서, 상기 휴대단말(300)은 상기 재생 정보에 의거하여 상기 패키징 콘텐츠의 타겟 콘텐츠에 대한 복호화키의 존재 여부를 판단한다(1603단계).
상기 복호화키가 존재할 시, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생을 스킵하고(1605단계), 상기 복호화키에 의하여 상기 타겟 콘텐츠를 재생한다(1607단계). 이때, 상기 휴대단말(300)은 사용자 요청에 응답하여 상기 파일럿 콘텐츠에 대한 재생을 수행할 수도 있음은 물론이다.
상기 복호화키가 존재하지 않을 시, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생을 수행한다(1609단계). 아울러, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생 시, 상기 파일럿 콘텐츠에 구분된 각 데이터 블록에 대한 복호화를 통해 분할키를 획득한다(1611단계). 다음으로, 상기 파일럿 콘텐츠에 대한 재생이 완료될 시(1613단계), 상기 휴대단말(300)은 상기 복호화에 따라 획득하는 분할키들 을 이용하여 상기 타겟 콘텐츠에 대한 임시 복호화키를 획득한다(1615단계).
다음으로, 상기 휴대단말(300)은 상기 획득하는 상기 임시 복호화키를 설정된 방식에 따라 체크하여, 상기 임시 복호화키의 정상 여부를 판별한다(1617단계). 이때, 상기 획득하는 임시 복호화키가 정상적인 복호화키가 아니면, 상기 휴대단말(300)은 설정된 해당 동작을 수행할 수 있다(1619단계). 예를 들면, 상기 휴대단말(300)은 상기 획득하는 임시 복호화키가 비정상적인 동작에 의해 획득되어 타겟 콘텐츠에 대한 재생을 수행할 수 없음을 알리고, 상기 파일럿 콘텐츠에 대한 재생을 재수행하거나, 또는 상기한 재생 절차를 종료할 수 있다. 상기 비정상적인 동작은, 사용자가 파일럿 콘텐츠의 재생 시 스킵 또는 패스트 포워드 등을 수행함에 따라 복호화키 생성을 위한 조건을 충족하지 못하는 경우의 동작을 나타낼 수 있다.
반면, 상기 획득하는 상기 임시 복호화키가 정상적인 복호화키이면, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생 조건을 체크한다(1621단계). 상기 재생 조건은 상기 파일럿 콘텐츠에 대한 정상적인 재생 절차가 진행된 횟수 또는 시간 등과 같은 조건을 나타낸다.
다음으로, 상기 휴대단말(300)은 상기에서 재생 진행된 파일럿 콘텐츠의 재생 정보를 카운트하고, 상기 파일럿 콘텐츠의 재생 정보가 상기 재생 조건을 충족하는지 판단한다(1623단계). 즉, 상기 휴대단말(300)은 상기 파일럿 콘텐츠의 재생에 따라 정상적인 복호화키가 획득될 시, 상기 정상적인 복호화키가 획득됨에 따른 파일럿 콘텐츠의 재생이 상기한 조건에 만족하는지를 판단할 수 있다.
예를 들면, 상기 재생 조건이 10회의 재생 조건으로 설정될 시, 만약 상기 파일럿 콘텐츠에 대한 재생 횟수와 비교할 수 있다. 이어서, 상기 비교에 의거하여 상기 파일럿 콘텐츠에 대한 재생이 10회째 재생인지 아닌지를 구분할 수 있다. 따라서 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대하여 정상적인 재생이 이루어질 시, 그에 대한 재생 정보를 누적하여 저장할 수 있다. 결국, 상기 휴대단말(300)은 상기 누적하는 재생 정보와 상기 재생 조건의 비교에 의하여 상기 조건 충족 여부를 판별할 수 있다.
다음으로, 상기 조건을 충족하면, 상기 휴대단말(300)은 상기 임시 복호화키에 의하여 상기 타겟 콘텐츠에 대한 재생을 수행한다(1625단계). 이후, 상기 임시 복호화키에 의하여 상기 타겟 콘텐츠에 대한 재생이 완료되면(1627단계), 상기 휴대단말(300)은 상기 임시 복호화키를 정상적인 복호화키로서 저장한다(1629단계). 따라서 이후, 상기 휴대단말(300)은 상기에서 저장하는 복호화키에 의하여 상기 1603단계의 복호화키가 존재하는지를 판단할 수 있다.
다음으로, 상기 조건을 충족하지 않으면, 상기 휴대단말(300)은 상기 파일럿 콘텐츠에 대한 재생 정보를 업데이트한다(1631단계). 즉, 상기 휴대단말(300)은 상기 재생 정보를 이전의 재생 정보에 누적할 수 있다.
이어서, 상기 휴대단말(300)은 상기 임시 복호화키에 의하여 상기 타겟 콘텐츠에 대한 재생을 수행한다(1633단계). 이후, 상기 임시 복호화키에 의하여 상기 타겟 콘텐츠에 대한 재생이 완료되면(1635단계), 상기 휴대단말(300)은 상기 임시 복호화키를 폐기한다(1637단계). 즉, 상기 휴대단말(300)은 상기 파일럿 콘텐츠 재생에 의해 획득하여 임시 저장하는 상기 복호화키를 상기 휴대단말(300) 내에서 삭 제할 수 있다.
상기 도 12와 같은 절차에 의하여, 사용자는 설정된 조건 이상의 파일럿 콘텐츠에 대한 정상적인 시청(청취)을 수행할 시, 이후에는 파일럿 콘텐츠에 대한 시청(청취)의 생략이 가능하며, 사용자 희망에 따라 타겟 콘텐츠에 대한 재생을 바로 수행할 수 있다.
한편, 이상에서 도 1 내지 도 16을 참조한 설명 부분에서 설명한 바와 같이, 타겟 콘텐츠용 복호화키의 정상 여부 판단은, 사용자의 비정상적인 행위에 의해 파일럿 콘텐츠에 대한 불법적인 재생 행위를 판단하는 경우의 예시를 나타낸다. 이는, 파일럿 콘텐츠 재생 시 사용자의 스킵 등에 의해 정상적인 시청(청취)이 이루어지지 않을 시, 타겟 콘텐츠의 재생을 방지하도록 한다.
그러나 사용자가 파일럿 콘텐츠에 대하여 정상적인 시청(청취)을 수행하더라도, 유효한 복호화키가 생성되지 않을 수도 있다. 예를 들어, 데이터 전송 중에 파일럿 콘텐츠의 특정 데이터 블록에 데이터 유실이 있을 경우, 휴대단말(300)이 파일럿 콘텐츠 재생에 따른 복호화키를 도출하더라도, 상기 복호화키는 유효하지 않은 복호화키가 된다. 따라서 상기 복호화키에 의해서는 타겟 콘텐츠에 대한 재생이 불가능하며, 사용자는 정상적으로 파일럿 콘텐츠를 시청(청취)함에도 불구하고, 타겟 콘텐츠를 재생할 수 없는 상황이 발생할 수 있다.
이에 본 발명의 실시 예에서는 도출하는 복호화키의 유효 여부를 체크할 수 있는 방안을 제시한다. 즉, 파일럿 콘텐츠 재생에 따라 생성하는 타겟 콘텐츠용 복호화키에 대하여, 전술한 바와 같이 사용자에 의한 정상 생성 여부를 판별하는 것 과 더불어, 하기와 같이 상기 복호화키 자체의 유효 여부를 판별하는 절차를 더 진행할 수 있다.
이하에서 설명하는 본 발명의 복호화키 유효 여부 판단은, 상기한 이율배반 방식, 임계 방식 및 확장 방식 모두에 적용할 수 있다.
먼저, 패키징 서버(200)에서는 패키징 콘텐츠 생성 시 휴대단말(300)에서 타겟 콘텐츠용 복호화키의 인증을 위한 기준이 되는 키 해시(Key-Hash) 값을 생성할 수 있다. 상기 키 해시 값은 상기 패키징 콘텐츠의 파일럿 콘텐츠에 의해 생성하는 타겟 콘텐츠용 암호화키(CEKt)를 이용하여 생성할 수 있으며, 이를 정형화하면 하기 <수학식 12>과 같이 나타낼 수 있다.
Figure 112009006452415-pat00026
다음으로, 상기 패키징 서버(200)는 상기와 같이 생성하는 키 해시 값을 패키징 콘텐츠의 데이터 포맷의 일부분으로 포함하거나, 또는 해당 라이선스에 저장할 수 있다. 예를 들면, 상기 패키징 서버(200)는 전술한 <표 10> 및 <표 11>에서 살펴본 바와 같이, CPM 헤더 내에 상기 키 해시 값을 포함할 수 있다. 이때, 상기 <표 10> 및 <표 11>에 나타낸 바와 같은 CPM 헤더에 포함되는 상기 키 해시 값은 하기 <표 12>의 형태로 포함될 수 있다.
Figure 112009006452415-pat00027
다음으로, 상기 휴대단말(300)은 패키징 콘텐츠를 수신할 시, 파일럿 콘텐츠 복호화에 의하여 타겟 콘텐츠용 복호화키를 생성할 수 있다. 이때, 상기 생성 과정은 상기 패키징 콘텐츠를 획득하는 시점에서 상기 휴대단말(300)이 내부적으로 처리할 수 있다. 이어서, 상기 휴대단말(300)은 상기 생성하는 복호화키와, 패키징 콘텐츠 또는 해당 라이선스에 포함되는 상기 키 해시 값을 이용하여 상기 생성하는 복호화키의 유효 여부를 판별한다. 즉, 상기 생성하는 복호화키와 상기 CPM 헤더의 키 해시 값이 동일한지 비교할 수 있다.
예를 들어, 상기 복호화키를 C라 가정할 때, 상기 유효 여부 판단 즉, 상기 복호화키 C에 대한 인증은 하기 <수학식 13>과 같이 나타낼 수 있다.
Figure 112009006452415-pat00028
다음으로, 상기 휴대단말(300)은 상기 비교에 의하여, 상기 복호화키(C)와 상기 키 해시 값이 동일하면, 상기 복호화키(C)가 타겟 콘텐츠를 재생할 수 있는 유효 복호화키임을 인증할 수 있다. 이후, 상기 휴대단말(300)은 사용자의 패키징 콘텐츠 재생 시, 파일럿 콘텐츠 재생 상태에 따라 생성하는 복호화키의 정상 여부를 판별하고, 그에 대응하여 타겟 콘텐츠를 재생하는 절차를 진행할 수 있다.
다음으로, 상기 휴대단말(300)은 상기 비교에 의하여, 상기 복호화키(C)와 상기 키 해시 값이 동일하지 않다면, 상기 복호화키(C)가 유효하지 않은 복호화키임을 인증할 수 있다. 이러한 경우, 사용자에 의해 파일럿 콘텐츠를 정상적으로 시청(청취)하더라도, 완전하지 못한 복호화키가 생성됨에 따라, 상기 복호화키에 의해서는 타겟 콘텐츠를 재생할 수 없게 된다.
따라서 상기 휴대단말(300)은 상기 파일럿 콘텐츠가 전송 중에 데이터 유실이 발생한 것으로 간주하고, 광고서버(100) 또는 패키징 서버(200)에 재접속하여 정상적인 파일럿 콘텐츠에 대한 다운로드 절차를 진행할 수 있다. 이때, 상기 파일럿 콘텐츠의 재 다운로드를 위한 URL을 상기 패키징 콘텐츠 헤더에 포함할 수 있다.
한편, 이상에서 살펴본 바와 같은 본 발명의 응용으로, 사용자에게 파일럿 콘텐츠의 시청(청취)에 대한 서비스 선택권을 부여할 수 있다. 예를 들면, 하기 <표 13>과 같이 다양한 서비스를 제공함에 따라 사용자의 패키징 콘텐츠 이용에 따른 선택권을 부여하여 사용자의 편의를 도모할 수 있다.
Figure 112009006452415-pat00029
상기 <표 13>에 나타낸 바와 같이, 사용자는 패키징 콘텐츠 구성 시, 희망하는 파일럿 콘텐츠의 시청(청취)에 의하여 타겟 콘텐츠의 라이선스를 무료에 의해 획득하거나, 파일럿 콘텐츠의 일부 시청(청취)에 의하여 타겟 콘텐츠의 라이선스를 할인된 일부 비용만을 지출하여 획득하거나, 파일럿 콘텐츠의 시청(청취)을 생략하고 순수 DRM 콘텐츠에 대한 라이선스를 구매하는 형태로 서비스를 이용할 수도 있다.
한편, 본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.
도 1은 본 발명의 실시 예에 따른 시스템 구성을 개략적으로 도시한 도면,
도 2 및 도 3은 본 발명의 실시 예에 따른 콘텐츠 서비스 제공 방법을 도시한 도면,
도 4 및 도 5는 본 발명의 실시 예에 따른 패키징 서버의 처리 동작을 도시한 도면,
도 6은 본 발명의 실시 예에 따른 패키징 서버의 패키징 콘텐츠 생성 절차를 도시한 도면,
도 7 내지 도 11은 본 발명의 실시 예에 따른 패키징 콘텐츠의 포맷 예시를 나타낸 도면들,
도 12는 본 발명의 실시 예에 따른 파일럿 콘텐츠 구성 및 상기 파일럿 콘텐츠를 이용한 타겟 콘텐츠의 암호화 동작 설명을 위한 도면,
도 13은 본 발명의 실시 예에 따른 휴대단말의 처리 동작을 개략적으로 도시한 도면,
도 14는 본 발명의 실시 예에 따른 휴대단말의 패키징 콘텐츠 재생 동작을 도시한 도면,
도 15는 본 발명의 실시 예에 따른 휴대단말에서 타겟 콘텐츠용 복호화키를 획득하는 과정을 도시한 도면,
도 16은 본 발명의 실시 예에 따른 휴대단말의 패키징 콘텐츠 재생 동작을 도시한 도면.

Claims (20)

  1. 콘텐츠 오브젝트 포맷 구성 장치에 있어서,
    디지털 저작권 정보를 가지는 DRM 콘텐츠 오브젝트와 광고 콘텐츠 오브젝트를 포함하는 DRM 콘텐츠 포맷의 패키징 콘텐츠를 형성하기 위한 패키징부를 포함하고,
    상기 패키징부는,
    상기 패키징 콘텐츠의 콘텐츠 영역 내에서 상기 광고 콘텐츠 오브젝트의 위치를 상기 DRM 콘텐츠 오브젝트의 앞 또는 뒤로 지정하기 위하여 헤더를 상기 패키징 콘텐츠에 추가하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  2. 제1항에 있어서,
    상기 패키징부는 상기 DRM 콘텐츠 오브젝트와 상기 광고 콘텐츠 오브젝트를 상기 DRM 콘텐츠 포맷으로 구성하고, 상기 DRM 콘텐츠 포맷의 구성 방식에 대응하여 상기 헤더의 메타 데이터 정보를 지정하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  3. 삭제
  4. 제2항에 있어서,
    상기 헤더는 상기 광고 콘텐츠 오브젝트의 오프 셋(offset)을 구분할 수 있는 정보를 포함하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  5. 제2항에 있어서,
    상기 DRM 콘텐츠 포맷은 멀티파트(multipart) 콘텐츠 영역으로 구성되며,
    상기 패키징부는,
    상기 DRM 콘텐츠 오브젝트를 상기 멀티파트 콘텐츠 영역 중 상기 DRM 콘텐츠 포맷의 제1파트 콘텐츠 영역에 포함되도록 구성하며, 상기 광고 콘텐츠 오브젝트를 상기 멀티파트 콘텐츠 영역 중 상기 DRM 콘텐츠 포맷의 제2파트 콘텐츠 영역에 포함되도록 구성하며, 상기 헤더를 상기 DRM 콘텐츠 포맷의 상기 멀티파트 콘텐츠 영역에 포함되도록 구성하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  6. 제5항에 있어서,
    상기 헤더는 상기 광고 콘텐츠 오브젝트에 대한 광고 콘텐츠 식별자를 포함하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  7. 제2항에 있어서,
    상기 패키징부는 상기 DRM 콘텐츠 오브젝트를 상기 DRM 콘텐츠 포맷의 상기 콘텐츠 영역에 포함되도록 구성하며, 상기 광고 콘텐츠 오브젝트를 상기 DRM 콘텐츠 포맷의 상기 콘텐츠 영역 뒤에서 추가 확장 가능 영역(Extended Box)에 포함되도록 구성하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  8. 제7항에 있어서,
    상기 헤더는 상기 확장 가능 영역에 상기 광고 콘텐츠 오브젝트가 위치함을 지시하는 정보를 포함하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  9. 제2항에 있어서,
    상기 패키징부는 상기 광고 콘텐츠 오브젝트를 상기 DRM 콘텐츠 포맷의 상기 콘텐츠 영역 뒤에 형성되는 뮤터블 정보 박스(Mutable Information Box)에 포함되도록 구성하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치
  10. 제9항에 있어서,
    상기 헤더는 상기 뮤터블 정보 박스에 상기 광고 콘텐츠 오브젝트가 위치함을 지시하는 정보를 포함하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  11. 제1항에 있어서, 상기 헤더는,
    텍스추얼 헤더(Textual Headers)를 이용하여 구성하거나, 또는 DRM 콘텐츠 포맷의 확장성을 이용하여 구성하며, 각 구성 방식에 대응하는 메타 데이터 정보를 포함하는 것을 특징으로 하는 콘텐츠 오브젝트 포맷 구성 장치.
  12. 다수개의 콘텐츠들로 이루어진 패키징 콘텐츠 구성 방법에 있어서,
    디지털 저작권 정보를 가지는 DRM 콘텐츠 오브젝트와 광고 콘텐츠 오브젝트를 포함하는 DRM 콘텐츠 포맷의 패키징 콘텐츠를 구성하는 과정과,
    상기 패키징 콘텐츠에 추가되고, 상기 광고 콘텐츠 오브젝트의 위치를 상기 패키징 콘텐츠의 콘텐츠 영역 내에서 상기 DRM 콘텐츠 오브젝트의 앞 또는 뒤로 지정하는 헤더를 추가하는 과정을 포함하는 것을 특징으로 하는 패키징 콘텐츠 구성 방법.
  13. 제12항에 있어서, 상기 구성하는 과정은,
    상기 광고 콘텐츠 오브젝트의 오프 셋을 구분할 수 있는 정보를 상기 헤더에 구성하는 것을 특징으로 하는 패키징 콘텐츠 구성 방법.
  14. 제12항에 있어서, 상기 구성하는 과정은,
    상기 패키징 콘텐츠를 멀티파트 콘텐츠 영역의 DRM 콘텐츠 포맷으로 구성하고, 상기 멀티파트 콘텐츠 영역 중 상기 DRM 콘텐츠 포맷의 제1파트 콘텐츠 영역에 상기 DRM 콘텐츠 오브젝트를 구성하고, 상기 멀티파트 콘텐츠 영역 중 상기 DRM 콘텐츠 포맷의 제2파트 콘텐츠 영역에 상기 광고 콘텐츠 오브젝트를 구성하고, 상기 광고 콘텐츠 오브젝트에 대한 광고 콘텐츠 식별자를 상기 헤더에 구성하는 것을 특징으로 하는 패키징 콘텐츠 구성 방법.
  15. 제12항에 있어서, 상기 구성하는 과정은,
    상기 패키징 콘텐츠에 확장 가능 영역(Extended Box)에 새로운 박스를 추가 구성하고, 상기 확장 가능 영역에 상기 광고 콘텐츠 오브젝트를 구성하고, 상기 확장 가능 영역에 상기 광고 콘텐츠 오브젝트가 위치함을 지시하는 정보를 상기 헤더에 구성하는 것을 특징으로 하는 패키징 콘텐츠 구성 방법.
  16. 제12항에 있어서, 상기 구성하는 과정은,
    상기 패키징 콘텐츠를 포함하는 상기 DRM 콘텐츠 포맷의 콘텐츠 영역 뒤에 뮤터블 정보 박스(Mutable Information Box)를 추가하고, 상기 뮤터블 정보 박스에 상기 광고 콘텐츠 오브젝트를 구성하고, 상기 뮤터블 정보 박스에 상기 광고 콘텐츠 오브젝트가 위치함을 지시하는 정보를 상기 헤더에 구성하는 것을 특징으로 하는 패키징 콘텐츠 구성 방법.
  17. 제12항에 있어서, 상기 헤더는,
    텍스추얼 헤더(Textual Headers)를 이용하여 구성하거나, 또는 상기 DRM 콘텐츠 포맷의 콘텐츠 영역의 확장성을 이용하여 구성하며, 각 구성 방식에 대응하는 메타 데이터 정보를 포함하는 것을 특징으로 하는 패키징 콘텐츠 구성 방법.
  18. 휴대단말의 콘텐츠 재생 방법에 있어서,
    특정 콘텐츠 요청을 감지할 시, 상기 콘텐츠의 광고 콘텐츠 오브젝트의 위치를 DRM 콘텐츠 오브젝트의 앞 또는 뒤로 지정하는 헤더의 존재 여부를 확인하는 과정과,
    상기 헤더가 존재할 시 상기 헤더의 지시 정보에 의하여 광고 콘텐츠 오브젝트를 추적하여 재생하는 과정과,
    상기 광고 콘텐츠 오브젝트 재생에 의해 획득하는 라이선스에 의하여 DRM 콘텐츠 오브젝트를 재생하는 과정을 포함하는 것을 특징으로 하는 콘텐츠 재생 방법.
  19. 제18항에 있어서,
    상기 헤더가 존재하지 않을 시, 주어진 라이선스에 의하여 상기 특정 콘텐츠를 재생하는 과정을 더 포함하는 것을 특징으로 하는 콘텐츠 재생 방법.
  20. 제18항에 있어서, 상기 헤더는,
    상기 DRM 콘텐츠 오브젝트 및 상기 광고 콘텐츠 오브젝트의 구성 타입에 대응하는 부가정보를 포함하는 것을 특징으로 하는 콘텐츠 재생 방법.
KR1020090008130A 2009-02-02 2009-02-02 콘텐츠 오브젝트 구성 방법 및 시스템 KR101593569B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020090008130A KR101593569B1 (ko) 2009-02-02 2009-02-02 콘텐츠 오브젝트 구성 방법 및 시스템
US12/697,447 US20100198687A1 (en) 2009-02-02 2010-02-01 System and method for configuring content object
EP10152348.8A EP2214116A3 (en) 2009-02-02 2010-02-02 System and method for configuring content object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090008130A KR101593569B1 (ko) 2009-02-02 2009-02-02 콘텐츠 오브젝트 구성 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20100088965A KR20100088965A (ko) 2010-08-11
KR101593569B1 true KR101593569B1 (ko) 2016-02-15

Family

ID=42173885

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090008130A KR101593569B1 (ko) 2009-02-02 2009-02-02 콘텐츠 오브젝트 구성 방법 및 시스템

Country Status (3)

Country Link
US (1) US20100198687A1 (ko)
EP (1) EP2214116A3 (ko)
KR (1) KR101593569B1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8909606B2 (en) * 2008-06-10 2014-12-09 Google Inc. Data block compression using coalescion
WO2011126280A2 (ko) * 2010-04-05 2011-10-13 엘지전자 주식회사 Drm을 이용한 광고 컨텐트 갱신 방법
US10037414B2 (en) * 2012-12-20 2018-07-31 Google Llc Enhanced user control for content protection solutions
CN106105249B (zh) * 2014-04-21 2019-07-26 夏普株式会社 用于解码服务指南的方法
US10776739B2 (en) 2014-09-30 2020-09-15 Apple Inc. Fitness challenge E-awards
US9762386B1 (en) * 2014-12-19 2017-09-12 AbeBooks Inc. Verification of stored encryption keys in multi-tiered encryption system
KR20160102731A (ko) * 2015-02-23 2016-08-31 삼성전자주식회사 전자 장치 및 전자 장치의 drm 컨텐츠 제공 방법
US10701038B2 (en) * 2015-07-27 2020-06-30 Cisco Technology, Inc. Content negotiation in a content centric network
WO2017176437A1 (en) * 2016-04-05 2017-10-12 Carrier Corporation Credential licensing service
US11032589B1 (en) * 2016-08-09 2021-06-08 Google Llc Methods, systems, and media for ensuring consumption of portions of media content
EP3797525A1 (en) * 2018-05-23 2021-03-31 Koninklijke KPN N.V. Inserting secondary content in primary content in iptv
US10964717B2 (en) 2019-01-21 2021-03-30 Applied Materials, Inc. Methods and apparatus for three-dimensional NAND structure fabrication
US10998329B2 (en) 2019-05-23 2021-05-04 Applied Materials, Inc. Methods and apparatus for three dimensional NAND structure fabrication

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003309550A (ja) 2002-02-13 2003-10-31 Fujitsu Ltd データ運用方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807534B1 (en) * 1995-10-13 2004-10-19 Trustees Of Dartmouth College System and method for managing copyrighted electronic media
CN1402852A (zh) * 1999-10-22 2003-03-12 动感天空公司 面向目标的视频系统
JP2001357300A (ja) * 2000-06-12 2001-12-26 Sony Corp 映像コンテンツ提供方法、映像コンテンツ提供システム、映像コンテンツ提供装置、映像コンテンツを提供するプログラムを格納したプログラム格納媒体、広告映像提供装置、広告映像を提供するプログラムを格納したプログラム格納媒体、映像コンテンツ再生装置、映像コンテンツを再生するプログラムを格納したプログラム格納媒体、広告料集計システム、広告料集計方法及び広告料を集計するプログラムを格納したプログラム格納媒体
KR20020032803A (ko) * 2000-10-27 2002-05-04 구자홍 스트리밍 서비스를 위한 파일 구조
US7065787B2 (en) * 2002-06-12 2006-06-20 Microsoft Corporation Publishing content in connection with digital rights management (DRM) architecture
US20050021539A1 (en) * 2003-03-07 2005-01-27 Chaticom, Inc. Methods and systems for digital rights management of protected content
EP1810110A1 (en) * 2004-09-29 2007-07-25 Nokia Corporation Data file including encrypted content
KR100761270B1 (ko) * 2004-11-06 2007-09-28 엘지전자 주식회사 광고컨텐츠가 첨부된 디지털저작권관리 컨텐츠 처리 방법및 장치
US20060106723A1 (en) * 2004-11-12 2006-05-18 Nokia Corporation Supporting the use of encrypted media objects
US7925973B2 (en) * 2005-08-12 2011-04-12 Brightcove, Inc. Distribution of content
WO2007084793A2 (en) * 2006-01-23 2007-07-26 Glenbrook Associates, Inc. System and method for generating and delivering personalized content
US7992171B2 (en) * 2006-09-06 2011-08-02 Qurio Holdings, Inc. System and method for controlled viral distribution of digital content in a social network
KR100896291B1 (ko) * 2006-11-17 2009-05-07 엘지전자 주식회사 비디오 신호의 디코딩/인코딩 방법 및 장치
US9124650B2 (en) * 2006-12-13 2015-09-01 Quickplay Media Inc. Digital rights management in a mobile environment
EP1947587A1 (en) * 2007-01-15 2008-07-23 Samsung Electronics Co., Ltd. Rights object acquisition method of mobile terminal in digital right management system
US8345869B2 (en) * 2007-04-11 2013-01-01 The Directv Group, Inc. Method and apparatus for file sharing of missing content between a group of user devices in a peer-to-peer network
AU2008279685B2 (en) * 2007-07-23 2013-06-13 Intertrust Technologies Corporation Dynamic media zones systems and methods

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003309550A (ja) 2002-02-13 2003-10-31 Fujitsu Ltd データ運用方法

Also Published As

Publication number Publication date
EP2214116A3 (en) 2016-06-08
KR20100088965A (ko) 2010-08-11
US20100198687A1 (en) 2010-08-05
EP2214116A2 (en) 2010-08-04

Similar Documents

Publication Publication Date Title
KR101593569B1 (ko) 콘텐츠 오브젝트 구성 방법 및 시스템
KR101547554B1 (ko) 디지털 콘텐츠 서비스 제공 방법 및 시스템
EP2705456B1 (en) System and method for protecting digital contents with digital rights management (drm)
US9532005B2 (en) Methods and apparatus for persistent control and protection of content
EP2705457B1 (en) Method for playing digital contents protected with a drm (digital right management) scheme and corresponding system
US9202024B2 (en) Method for playing digital contents projected with a DRM (digital rights management) scheme and corresponding system
US20140068693A1 (en) Method, system, or user device for adaptive bandwidth control of proxy multimedia server
JP5557897B2 (ja) デジタルメディアコンテンツ保護システム及び方法
CN102708314A (zh) 数字权利管理供应装置,系统以及方法
JP2010192944A (ja) コンテンツ配信装置、コンテンツ利用装置、コンテンツ配信システム、コンテンツ配信方法、およびプログラム
CN103942470A (zh) 一种具有溯源功能的电子音像制品版权管理方法
KR100982515B1 (ko) 해시 체인을 이용하여 디지털 컨텐츠의 접근 횟수를제한하는 장치 및 방법
KR20060126958A (ko) 콘텐츠 배신 방법 및 콘텐츠 서버
JP2004040209A (ja) サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム
JP5350021B2 (ja) ファイル生成装置、ファイル再生装置およびコンピュータプログラム
KR20120062359A (ko) 디지털 콘텐츠 포렌식마킹 장치 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee