KR20120092432A - 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법 - Google Patents

디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법 Download PDF

Info

Publication number
KR20120092432A
KR20120092432A KR1020110012480A KR20110012480A KR20120092432A KR 20120092432 A KR20120092432 A KR 20120092432A KR 1020110012480 A KR1020110012480 A KR 1020110012480A KR 20110012480 A KR20110012480 A KR 20110012480A KR 20120092432 A KR20120092432 A KR 20120092432A
Authority
KR
South Korea
Prior art keywords
content
data unit
encryption key
user
encrypted
Prior art date
Application number
KR1020110012480A
Other languages
English (en)
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 KR1020110012480A priority Critical patent/KR20120092432A/ko
Priority to US13/984,692 priority patent/US20130322628A1/en
Priority to PCT/KR2012/001045 priority patent/WO2012108737A2/ko
Publication of KR20120092432A publication Critical patent/KR20120092432A/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/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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • 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/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6543Transmission by server directed to the client for forcing some client operations, e.g. recording
    • 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/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 디지털 방송 시스템에 관한 것으로, 본 발명에 따른 방송 시스템에서 컨텐츠 송신하는 방법은, 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 생성하는 과정과, 상기 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 분할하는 과정과, 상기 분할된 데이터 단위들에 대하여 오디오/비디오 인코딩을 수행하는 과정과, 상기 강제 시청 컨텐츠를 구성하는 데이터 단위들 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 적어도 하나의 데이터 단위에 대하여 암호 키를 사용하여 암호화를 수행하는 과정과, 상기 암호화된 데이터 단위를 해독하기 위한 암호 키의 삽입이 완료되면, 상기 인코딩된 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠의 데이터 단위를 상기 적응 스트리밍 방식을 통해 전송하는 과정을 포함하고, 상기 암호화된 데이터 단위를 해독할 수 있는 암호 키는 상기 암호화된 데이터 단위 보다 시간 상 앞에 위치하는 데이터 단위에 삽입됨을 특징으로 한다.

Description

디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법{ APPARATUS AND METHOD FOR TRANSMITTING/RECEIVING CONTENT IN DIGITAL BROADCASTING SYSTEM}
본 발명은 디지털 방송 시스템에 관한 것으로, 특히 디지털 방송 시스템을 통해 사용자에게 제공되는 컨텐츠의 송수신 장치 및 방법에 관한 것이다.
현재 디지털 방송 기술에서는 통신 기술의 발달과 유무선 인터넷의 폭발적인 성장에 따라, 여러 가지 형태의 인터넷 TV가 향후 사용자들의 생활에 큰 영향을 끼치고 있다. 이러한 대표적인 디지털 방송으로는 DMB, DVB-H, IPTV, 스마트 TV 등이 있으며, 사용자에게 편의성을 제공하기 위한 기술들이 지속적으로 개발되고 있는 현실이다.
그러한 추세에 따라 특히 최근에는 온라인 컨텐츠를 이용하는 사용자의 증가로 인하여 컨텐츠의 원활한 전송의 중요성이 대두되고 있다. 이에 가용한 전송 대역폭이나 사용자의 기기 성능의 변화에 따라 컨텐츠의 비트 레이트(Bit Rate)가 부드럽게 바뀌어 전송되는 적응 스트리밍(Adaptive Streaming) 기술이 화두 되고 있다. 이러한 적응 스트리밍 기술은 사용자의 네트워크 환경을 분석해 비트 레이트를 최적화하는 기술이다. 이렇듯 적응 스트리밍과 같은 HTTP(Hyper Text Transfer Protocol) 프로토콜을 기반으로 작게 나누어진 컨텐츠의 단위를 사용자 단말이 상황에 따라 선택하여 재생(play) 함으로써 사용자가 지연(Delay)이나 끊김 현상 없이 컨텐츠를 이용할 수 있도록 하는 전송 기술이 여러 표준 단체에서 논의되고 있는 실정이다. 그러한 기술 중 IP를 기반으로 한 컨버전스 시대에 있어 통신과 방송의 융합은 시장성이 높은 차세대 신규 비즈니스 모델로서 차세대 시장 선도 기술의 하나로 주목받고 있다. 특히, 방통 융합 서비스(Convergence of Broadcasting and Mobile Service : CBMS)의 가장 큰 축인 IPTV(Internet Protocol Television)는 기존의 TV, 음성, 데이터 기술을 하나로 재조합 또는 결합한 서비스 제공뿐 아니라 양방향성을 지원하여 더욱 다양한 비즈니스 모델과 서비스 창출이 가능한 기술이다. 특히, 이러한 IPTV 기술은 기존의 제한된 단말 환경에서 특화된 서비스 제공이 아닌 셋탑박스, PC, TV와 같은 고정형 단말 및 핸드폰, PDA(Personal Digital Assistants)등 이동형 단말 등, 유선 및 무선망 또는 방송 망 등 단말 및 네트워크에 상관없이 서비스를 제공함으로써 동일한 서비스를 다양한 환경에서 제공 및 적용 가능할 뿐 아니라 다양한 환경을 고려함으로써 다양한 형태의 서비스 발굴이 가능하다.
이러한 HTTP 기반의 적응 스트리밍 기술 중 대표적인 기술로서 MPEG-DASH(Motion Picture Expert Group - Dynamic Adaptive Streaming over HTTP)와 3GPP(3rd Generation Partnership Project) - DASH)이 있다.
이중 MPEG-DASH는 인터넷 방화벽에 의해 차단되는 RTP/UDP(Real Time Protocol/User Datagram Protocol)를 이용한 오디오/비디오(Audio/Video : AV) 스트리밍 대신 현재 HTTP/TCP를 이용하여 AV 스트리밍을 하는 추세에 맞춰 유무선 인터넷 망 환경 및 단말 환경에 동적 적응적으로 AV 스트리밍을 달성하기 위한 기술에 대한 표준이고, 3GPP-DASH는 SGPP에서 무선 통신망을 위한 HTTP 기반 스트리밍 기술에 대한 표준이다.
도 1은 일반적인 DASH 기반의 스트리밍 서비스에서 메타데이터(metadata) 파일인 멀티미디어 프리젠테이션 디스크립션(Multimedia Presentation Description : MPD)가 서버에서 클라이언트 장치로 전송되는 것을 도시한 도면이다. 도 2는 일반적인 DASH 기반의 스트리밍 서비스에서 클라이언트 장치로 수신된 MPD에 대하여 악의적인 사용자가 수신된 MPD에 대하여 해킹을 하는 경우를 도시한 도면이고, 도 3은 일반적인 DASH 기반의 스트리밍 서비스에서 정상적인 클라이언트 장치와 해킹된 클라이언트 장치에서 각각 컨텐츠를 재생하는 과정을 비교하여 도시한 도면이다. 그럼 이하에서 도 1 내지 도 3을 참조하여 일반적인 DASH 기반의 스트리밍 서비스 기술에서 발생할 수 있는 문제점에 대하여 기술하기로 한다.
서버(100)는 MPD(105)를 암호화한 후, 암호화된 MPD(110)를 클라이언트(150)로 전송하고, 클라이언트 장치(150)는 상기 서버(100)로부터 수신한 MPD(155)를 재생한다. 그러나, 이때 만약 사용자가 상기 수신한 MPD(155)를 분석하는 경우, 실제 사용자가 시청하길 원하는 컨텐츠(예컨대 드라마, 영화, 스포츠, 뉴스 등)(이하 “사용자 선호 컨텐츠”라 칭함)과 광고주가 사용자에게 제공되길 원하는 컨텐츠인 광고(이하 “강제 시청 컨텐츠”라 칭함)를 구분할 수 있고, 그에 따라 사용자가 상기 “사용자 선호 컨텐츠”만 재생하고 광고 컨텐츠는 재생하지 않도록 클라이언트 장치(150)에 악의적인 해킹을 할 수 있다. 이럴 경우 광고주 입장에서는 사용자가 광고 컨텐츠를 시청하는 대가로 서비스 제공자에게 대가를 지불하였으므로 손해가 될 수 있다.
따라서, 현재 DASH 기술에서는 이러한 문제점을 해결하기 위해 참조번호 110과 같이 MPD(105)의 내용을 암호화(encrypt)하여 제공할 수 있게 정의되어있다. 그러나, 실제로는 도 2와 같이 클라이언트 장치(150)는 암호화된 MPD(155)를 재생하기 위해서는 상기 암호화된 MPD(155)에 대하여 해독(Decryption)을 수행하여야 하고, 해독한 이후에 참조번호 160과 같이 악의적인 사용자의 조작에 의해 해킹될 경우 클라이언트 장치(150)가 실제 사용자가 시청하기를 원하는 사용자 선호 컨텐트와 강제 시청 컨텐트를 선별하여 재생하게 할 수 있다. 이렇게 클라이언트 장치(150)가 해킹(160)될 경우 상기 서버(100)에서 수행한 MPD(105)의 암호화(110)는 무력화되게 된다.
도 3에서는 정상적인 클라이언트 장치(300)와 악의적인 사용자에 의해 해킹된 클라이언트 장치(350) 각각에서 서버로부터 수신된 MPD에 포함된 사용자 선호 컨텐트(300a, 300b)와 광고 컨텐츠(320a, 320b)를 재생하는 과정을 보여주고 있다.
즉, 도 3에서 참조번호 310은 일반적인 사용자의 클라이언트 장치(300)에서 수신된 MPD에 포함된 강제 시청 컨텐츠인 광고 컨텐츠(320a, 320b)와 사용자 선호 컨텐츠인 드라마(300a, 300b)가 재생되는 순서를 보여주며, 참조번호 360은 악의적인 의도를 가진 사용자에 의해 해킹된 클라이언트 장치(350)에서 상기 수신된 MPD와 그에 따른 컨텐츠를 재생하는 순서를 보여주고 있다. 도 3에서는 사용자 선호 컨텐츠로서 드라마(300a, 300b)를 예로서 들고 있으며, 드라마가 30분간 방영된 후, 그 후 1분 동안 광고 컨텐츠(320a, 320b)가 재생되는 것을 보여준다.
이렇듯, 일반적인 사용자의 클라이언트 장치(300)에서는 참조번호 310과 같이 드라마(300a, 300b) 사이에 삽입된 1분 정도의 광고(320a, 320b)가 재생되어야 하지만, 악의적인 사용자에 의해 해킹된 클라이언트 장치(350)에서는 참조번호 365와 370과 같이 드라마(300a, 300b) 사이에 삽입된 광고 컨텐츠(320a, 320b)를 건너뛰어 재생하는 것을 보여주고 있으며, 이러한 경우 시청자가 광고를 스킵(Skip)함으로써 광고주에게는 손해를 많이 끼치게 된다.
본 발명에서는 적응 스트리밍 방식의 방송 서비스에서 컨텐츠 송수신 방법 및 장치를 제공한다.
본 발명은 적응 스트리밍 방식의 방송 서비스에서 MPD에 대한 사용자의 악의적인 공격을 방지하기 위한 컨텐츠 송수신 방법 및 장치를 제공한다.
본 발명은 적응 스트리밍 방식의 방송 서비스에서 사용자에게 광고 컨텐츠를 제공하기 위한 방법 및 장치를 제공한다.
본 발명은 적응 스트리밍 방식의 방송 시스템에서 사용자에게 사용자 선호 컨텐츠와 강제 시청 컨텐츠를 제공하기 위한 방법 및 장치를 제공한다.
본 발명에 따른 방송 시스템에서 컨텐츠 송신하는 방법은, 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 생성하는 과정과, 상기 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 분할하는 과정과, 상기 분할된 데이터 단위들에 대하여 오디오/비디오 인코딩을 수행하는 과정과, 상기 강제 시청 컨텐츠를 구성하는 데이터 단위들 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 적어도 하나의 데이터 단위에 대하여 암호 키를 사용하여 암호화를 수행하는 과정과, 상기 암호화된 데이터 단위를 해독하기 위한 암호 키의 삽입이 완료되면, 상기 인코딩된 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠의 데이터 단위를 상기 적응 스트리밍 방식을 통해 전송하는 과정을 포함하고, 상기 암호화된 데이터 단위를 해독 할 수 있는 암호 키는 상기 암호화된 데이터 단위 보다 시간 상 앞에 위치하는 데이터 단위에 삽입됨을 특징으로 한다.
본 발명에 따른 방송 시스템에서 컨텐츠 송신 장치는, 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 생성하는 컨텐츠 생성부와, 상기 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 분할하고, 상기 분할된 데이터 단위들에 오디오/비디오 인코딩을 수행하고, 상기 강제 시청 컨텐츠를 구성하는 데이터 단위들 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 적어도 하나의 데이터 단위에 대하여 암호 키를 사용하여 암호화를 수행하는 컨텐츠 처리부와, 상기 암호화된 데이터 단위를 해독하기 위한 암호 키의 삽입이 완료되면, 상기 인코딩된 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠의 데이터 단위를 상기 적응 스트리밍 방식을 통해 전송하는 전송부를 포함하고, 상기 암호화된 데이터 단위를 해독 할 수 있는 암호 키는 상기 암호화된 데이터 단위 보다 시간 상 앞에 위치하는 데이터 단위에 삽입된다.
본 발명에 따른 방송 시스템에서 컨텐츠를 수신하는 방법은, 서버로부터 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 포함하는 DASH 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 수신하는 과정과, 수신된 데이터 단위들에 암호화가 되어 있는지를 검사하는 과정과, 암호화가 되어 있다면, 이전에 수신된 데이터 단위에 포함된 암호 키로 상기 수신된 데이터 단위를 해독하는 과정과, 상기 해독한 데이터 단위를 오디오/비디오 디코딩하는 과정을 포함한다.
본 발명에 따른 방송 시스템에서 컨텐츠를 수신하는 장치는, 서버로부터 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 포함하는 DASH 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 수신하는 수신부와, 수신된 데이터 단위에 암호화가 되어 있는지를 검사하고, 암호화가 되어 있다면, 이전에 수신된 데이터 단위에 포함된 암호 키로 상기 수신된 데이터 단위를 해독하고, 상기 해독한 데이터 단위를 오디오/비디오 디코딩하는 컨텐츠 처리부를 포함한다.
본 발명에 따르면 적응 스트리밍 기반의 방송 시스템에서 사용자가 악의적인 의도를 가지고 MPD를 해킹하는 것을 방지할 수 있다.
본 발명에 따르면, 적응 스트리밍 기반의 방송 시스템에서 사용자가 시청하기를 원하는 컨텐츠를 제공받기 위해서는 반드시 사용자가 광고 컨텐츠와 같은 강제 시청 컨텐츠를 시청하도록 함으로써 광고주의 의도대로 사용자에게 광고가 시청되도록 할 수 있다.
도 1은 일반적인 DASH 기반의 스트리밍 서비스에서 메타데이터(metadata) 파일인 멀티미디어 프리젠테이션 디스크립션(MPD)가 서버에서 클라이언트 장치로 전송되는 것을 도시한 도면,
도 2는 일반적인 DASH 기반의 스트리밍 서비스에서 클라이언트 장치로 수신된 MPD에 대하여 악의적인 사용자가 수신된 MPD에 대하여 해킹을 하는 경우를 도시한 도면,
도 3은 일반적인 DASH 기반의 스트리밍 서비스에서 정상적인 클라이언트 장치와 해킹된 클라이언트 장치에서 각각 컨텐츠를 재생하는 과정을 비교하여 도시한 도면,
도 4는 본 발명의 실시 예에 따른 컨텐츠의 구조를 도시한 도면,
도 5는 본 발명의 실시 예에 따른 무비 프래그먼트의 구조를 개략적으로 도시한 도면,
도 6은 본 발명의 실시 예에 따른 컨텐츠 제공 장치의 블록 구성도,
도 7은 도 6에 도시된 컨텐츠 처리부의 상세 블록 구성도,
도 8은 본 발명의 실시 예에 따른 컨텐츠를 생성하여 전송하는 서버 장치의 개략적인 방법 흐름도,
도 9는 본 발명의 실시 예에 따라 강제 시청 컨텐츠와 사용자 선호 컨텐츠를 생성하여 전송하는 서버 장치의 상세 동작 흐름도,
도 10은 본 발명의 실시 예에 따라 컨텐츠를 수신하여 사용자에게 제공하는 사용자 클라이언트 장치의 블록 구성도,
도 11은 본 발명의 실시 예에 따라 클라이언트 장치의 컨텐츠 수신 방법 흐름도.
이하, 본 발명의 바람직한 실시 예들의 상세한 설명이 첨부된 도면을 참조하여 상세히 설명한다. 도면들 중 동일한 구성들은 가능한 한 어느 곳에서든지 동일한 부호들을 나타내고 있음을 유의하여야 한다.
또한, 하기 설명에서는 구체적인 특정 사항들이 나타내고 있는데, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들 없이도 본 발명이 실시될 수 있음은 이 기술 분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 상세한 설명을 생략한다.
이하에서는 본 발명의 실시 예에 따라 악의적인 사용자에 의해 해킹된 클라이언트 장치에서 사용자가 컨텐츠를 시청하기 위해서는 광고의 스킵(Skip)을 방지하도록 하기 위한 컨텐츠의 구조 및 컨텐츠 제공 장치 및 방법에 대하여 설명하도록 한다.
도 4는 본 발명의 실시 예에 따른 컨텐츠의 구조를 도시한 도면이다.
먼저, 본 발명의 실시 예에서는 암호화된 컨텐츠를 재생하기 위해 필요한 해독 키를 광고 컨텐츠에 포함되는 미디어 세그먼트 또는 무비 프래그먼트에 삽입한다. 즉, 만약 본 발명이 적용되는 적응 스트리밍 방식의 방송 서비스가 컨텐츠를 구성하는 단위들 중 미디어 세그먼트 마다 암호화가 될 경우 암호 키는 미디어 세그먼트에 삽입될 것이며, 미디어 세그먼트를 구성하는 단위인 무비 프래그먼트 마다 암호화가 될 경우 암호 키는 무비 프래그먼트에 삽입될 것이다. 본 명세서에서는 미디어 세그먼트(또는 무비 프래그먼트)를 암호화한 암호 키를 사용하여 암호화된 미디어 세그먼트(또는 무비 프래그먼트)를 해독하는 것으로 설명한다. 따라서, 본 명세서에서는 미디어 세그먼트(또는 무비 프래그먼트)를 암호화한 암호 키와 암호화된 미디어 세그먼트(또는 무비 프래그먼트)를 해독하기 위한 해독 키는 서로 동일한 키이다.
도 4에서 하나의 미디어 세그먼트는 여러 개의 무비 프래그먼트들로 구성되어 있음을 알 수 있으며, 무비 프래그먼트는 여러 개의 프레임 정보를 포함하고 있다. 여기서 프레임 정보란 비디오, 오디오 또는 SEI(Supplementary Enhanced Information) 메시지를 포함한다.
도 4를 참조하여 본 발명의 실시 예 중 무비 프래그먼트 단위로 암호화가 수행된 경우를 예를 들어 본 발명의 실시 예에 따라 광고 컨텐츠를 제공하는 방법에 대하여 좀더 상세히 설명하기로 한다. 본 발명에서는 광고 컨텐츠(450)에 포함되는 다수 개의 미디어 세그먼트들(452, 454, 456, 458) 중 첫 번째 미디어 세그먼트(452)에 포함되는 첫 번째 무비 프래그먼트(452a)에 컨텐츠를 재생하기 위해 필요한 암호 키(Encryption Key)(470a)를 삽입한다. 여기서 첫 번째 무비 프래그먼트(452a)에 삽입된 암호 키(470a)는 다음의 무비 프래그먼트(452b)를 해독 위해 필요한 키이다.
즉, 본 발명의 실시 예에 따라 컨텐츠를 생성하여 전송하는 서버는 광고 컨텐츠의 미디어 세그먼트와 사용자 선호 컨텐츠의 미디어 세그먼트를 구성함에 있어 광고(450, 460)의 미디어 세그먼트(452, 454, 456, 458)에 포함되는 무비 프래그먼트에 암호화를 적용한다. 또한, 본 발명의 실시 예에 따라 서버는 사용자 선호 컨텐츠를 구성하는 미디어 세그먼트들 중 일부의 미디어 세그먼트에 포함되는 무비 프래그먼트에 대해서 암호화하고, 이 암호화된 무비 프래그먼트를 해독하기 위해 필요한 암호 키를 상기 광고 컨텐츠에 포함되는 무비 프래그먼트에 삽입하여 전송함으로써 사용자가 반드시 광고 컨텐츠를 시청해야만 상기 암호 키를 획득할 수 있게 한다. 도 4에서 참조번호 480a는 참조번호 470a인 암호 키로 무비 프래그먼트(452b)가 암호화 되었음을 나타내고, 참조번호 480b는 참조번호 470b인 암호 키로 무비 프래그먼트(452c)가 암호화되었음을 나타내고, 참조번호 480c는 참조번호 470c인 암호 키로 무비 프래그먼트(452d)가 암호화되었음을 나타내고, 참조번호 480d는 참조번호 470d인 암호 키로 무비 프래그먼트(452e)가 암호화되었음을 나타낸다.
그리고, 광고 컨텐츠에서 암호화 구간이 여러 개의 무비 프래그먼트로 구성되어 있을 때, 그 첫 번째 미디어 세그먼트(452)에 포함되는 첫 번째 무비 프래그먼트(452a)는 암호화하지 않는다. 이에 따라 사용자가 사용자 선호 컨텐츠를 시청하기 위해서는 반드시 광고 컨텐츠인 강제 시청 컨텐츠의 처음부터 재생하여야만 한다.
본 발명에서는 도 4에서와 같이 광고 컨텐츠(450)에 포함되는 각 무비 프래그먼트마다 그 다음에 위치하는 무비 프래그먼트를 해독하기 위한 키(470a, 470b, 470c, 470d, 470e)를 포함하고 있어 해당 무비 프래그먼트를 재생하지 않고는 다음 무비 프래그먼트를 해독할 수 없다.
따라서, 본 발명의 실시 예에 따라 서버는 광고 컨텐츠의 미디어 세그먼트와 본편의 미디어 세그먼트를 구성함에 있어 광고 컨텐츠(450, 460)의 미디어 세그먼트(452, 454, 456, 458)에 포함되는 무비 프래그먼트에 암호화를 적용한다.
이러한 암호화 구간이 여러 개의 무비 프래그먼트로 구성되어 있을 때, 그 첫 번째 미디어 세그먼트(452)에 포함되는 첫 번째 무비 프래그먼트(452a)는 암호화되어 있지않다.
비록 도 4에서는 미디어 세그먼트(462)에 포함되는 무비 프래그먼트들 중 첫 번째 무비 프래그먼트를 제외한 나머지 무비 프래그먼트들 모두에 암호화가 수행된 것으로 도시되어 있으나, 이는 일 실시 예일 뿐 무비 프래그먼트 단위로 암호화가 될 경우 하나의 미디어 세그먼트에 포함되는 무비 프래그먼트들 중 일부의 무비 프래그먼트들에 대해서만 암호화가 수행될 수도 있다.
또한, 다른 예로서 광고 컨텐츠를 구성하는 미디어 세그먼트 단위로 암호화가 수행될 수 있으며, 미디어 세그먼트 단위로 암호화가 수행되었다면, 광고 컨텐츠를 구성하는 미디어 세그먼트들 중 첫 번째 미디어 세그먼트를 제외한 미디어 세그먼트들에 대해 모두 암호화를 할 수도 있고, 일부 미디어 세그먼트들에 대해서만 암호화를 할 수도 있다. 이러한 경우에는 암호화된 컨텐츠의 해독을 위한 암호 키가 무비 프래그먼트 단위가 아닌 미디어 세그먼트 단위로 포함될 것이다.
그리고, 이하 본 발명의 명세서에서는 상기 미디어 세그먼트와 무비 프래그먼트를 컨텐츠 재생을 위한 데이터 단위라고 칭하기로 한다. 본 발명에서는 비록 이러한 데이터 단위로서 미디어 세그먼트와 무비 프래그먼트만을 예로 들었지만, 그 외에도 컨텐츠를 전송 또는 재생하기 위한 기본 단위도 포함될 수 있다.
그리고, 본 발명에서 암호화 대상은 미디어 세그먼트 또는 무비 프래그먼트이지만 해독 키는 무비프래그먼트 안에만 포함될 수도 있다.
상술한 바와 같은 악의적인 사용자의 해킹을 방지하기 위해 본 발명의 실시 예에서는 반드시 광고 컨텐츠의 재생을 위한 데이터 단위를 재생해야만 암호 키를 클라이언트 장치가 획득할 수 있게 하기 위해 컨텐츠 재생을 위한 데이터 단위의 파일 포맷(File Format : FF) 구조가 아니라 비디오, 오디오 데이터 사이에 삽입한다. 파일 포맷 구조는 미디어 세그먼트 또는 무비 프래그먼트로 나뉘어 지지만, 무비 프래그먼트 안에 어떤 내용이 들어가는지 클라이언트 장치는 알 수 없다. 따라서, 클라이언트 장치는 서버측으로부터 수신한 데이터로부터 상기 어떤 내용에 해당하는 데이터만을 추출해야지만 비디오/오디오 디코더가 해석가능한 데이터들을 알 수 있게 된다.
따라서, 본 발명의 실시 예에서는 컨텐츠의 재생을 위한 기본 데이터 단위의 파일 포맷 구조에는 어떤 시간에 해당하는 컨텐츠의 데이터가 어느 위치에 있는지에 대한 정보를 기술하고 있어 별도의 디코딩 과정 없이도 해석할 수 있으므로, 본 발명의 실시 예에서는 해독 키를 파일 포맷 구조가 아니라 비디오, 오디오 데이터 사이에 위치시킨다.
본 발명의 실시 예에 따라 암호 키를 파일 포맷 구조가 아닌 비디오, 오디오 데이터 사이에 위치시키는 이유를 설명하면 다음과 같다. 만약 암호 키가 파일 포맷에 들어있는 경우 그리고 만약 클라이언트 장치가 해킹된 경우에는 MPD를 분석해 사용자가 선호하는 컨텐트만 재생하기 위해 선호하는 컨텐트의 미디어 세그먼트 또는 무비 프래그먼트를 파일 포맷 파서로 읽어 상기 파일 포맷 구조에 위치한 암호 키를 읽을 수 있게 한다.
이와 같은 경우 해킹된 클라이언트 장치는 미디어 세그먼트 또는 무비 프래그먼트를 내려받아 읽어들였지만 재생하지 않고도 암호 키를 얻을 수 있으므로 광고 제공자가 본래 의도하였던 광고의 재생을 이룰 수 없게 된다. 따라서, 이와 같은 약점을 보완하기 위해 본 발명에서는 파일 포맷 구조가 아니라 비디오, 오디오 데이터 사이에 상기 암호 키를 위치시킨다. 만약 암호 키가 비디오, 오디오 데이터 사이에 SEI 메시지 (비디오 또는 오디오 데이터에 대한 부가 정보 메시지) 형태로 삽입되어 있다면, 클라이언트 장치는 비디오, 오디오 디코더를 동작시켜 상기 비디오, 오디오 데이터를 재생해야지만 상기 암호 키를 얻어낼 수 있고, 이렇게 암호 키가 들어있는 시구간이 광고 제공자가 의도하고 있는 광고를 포함하게 되면 해킹된 클라이언트 장치라도 광고의 재생을 피할 수 없게 된다.
이와 같은 이유로 인하여 본 발명에서는 암호 키가 비디오, 오디오 데이터 사이에 존재하므로 본 발명의 실시 예에 따른 클라이언트 장치는 컨텐츠 재생을 위한 암호 키는 단순히 컨텐츠 데이터를 수신하는 것만으로는 획득할 수 없으므로, 반드시 비디오/오디오 디코더를 통해 수신된 데이터에 대하여 디코딩을 반드시 먼저 수행하여야 한다.
일반적으로 디코더는 디코더 버퍼 및 디코딩 된 화면을 보여주는 프리젠테이션 엔진(presentation engine)과 밀접한 연관이 있기 때문에 디코더에 디코딩만 시키고 화면은 보이지 않게 사용자가 해킹을 하는 것은 매우 어렵기 때문에 본 발명에서는 디코더 비디오, 오디오 데이터 사이에 암호 키를 위치시킴으로써 높은 암호화 수준을 제공한다.
그리고, 본 발명의 실시 예에 따른 해독 키는 컨텐츠를 구성하는 모든 데이터 단위에 삽입될 수도 있으며, 일부 데이터 단위에만 랜덤하게 삽입될 수도 있다.
다시 도 4를 참조하여 설명하면, 본 발명의 실시 예에 따른 광고 컨텐츠(450, 460)에 포함되는 무비 프래그먼트에는 바로 다음에 이어지는 무비 프래그먼트의 암호 키를 포함하고 있으므로, 이전의 무비 프래그먼트를 디코딩하지 않고는 다음에 위치한 무비 프래그먼트를 해독하기 위한 암호 키를 획득하지 못하게 되어 상기 다음에 위치한 무비 프래그먼트를 재생할 수 없다.
예컨대, 미디어 세그먼트(452)에 포함된 마지막 무비 프래그먼트(452e)를 재생하지 않으면, 그 다음에 위치하는 미디어 세그먼트(454)를 재생하지 못한다. 왜냐하면, 미디어 세그먼트(454)의 첫 번째 무비 프래그먼트는 상기 참조번호 453과 같이 첫 번째 미디어 세그먼트(452)의 마지막 무비 프래그먼트(452e)에 포함된 암호 키(470e)로 암호화되어 있기 때문이다.
따라서, 본 발명의 실시 예에서는 광고 컨텐츠(450, 460)에 포함된 연속된 미디어 세그먼트(또는 무비 프래그먼트)를 처음부터 디코딩하고, 재생하여야 만 시청자 선호 컨텐츠(420)도 재생될 수 있다. 반면, 도 4에서는 각각의 미디어 세그먼트에 포함되는 모든 무비 프래그먼트에 암호 키들(470a~470e)이 삽입되는 것을 도시하였지만, 이는 일 실시 예에 불과할 뿐 하나의 미디어 세그먼트에 포함되는 무비 프래그먼트들 중 일부 무비 프래그먼트들에만 암호화를 수행할 수도 있다. 이럴 경우 암호화된 무비 프래그먼트의 바로 앞에 위치한 무비 프래그먼트에만 상기 암호화된 무비 프래그먼트를 해독하기 위한 암호 키가 삽입될 것이다. 만약, 미디어 세그먼트 단위로 암호화가 된다면, 무비 프래그먼트가 아닌 미디어 세그먼트마다 암호 키가 삽입될 것이다.
따라서, 본 발명의 실시 예에 따른 클라이언트 장치는 서버로부터 광고 컨텐츠 및 사용자 선호 컨텐츠를 수초~수분대로 잘게 나누어진 재생을 위한 데이터 단위로 다운로드할 때, 광고 컨텐츠는 사용자 선호 컨텐츠를 재생하기 위해 반드시 먼저 재생되어야 할 필수 조건이 되어, 광고주의 의도에 부합되게 사용자가 반드시 광고 컨텐츠를 사용자가 시청하게끔 할 수 있다. 이에 따라, 광고 구간을 사용자가 임의로 배속 재생이나 임의 액세스(random access)등의 방법을 통해 스킵 할 수 없게 한다. 이를 위해서는 MPD내에는 컨텐츠 식별자 등을 통해 어떤 미디어 세그먼트(또는 무비 프래그먼트)가 광고 컨텐츠에 해당하는 미디어 세그먼트(또는 무비 프래그먼트)이고 어떤 미디어 세그먼트(또는 무비 프래그먼트)가 사용자 선호 컨텐츠에 해당하는 미디어 세그먼트(무비 프래그먼트)인지에 대하여 구별하여 광고 컨텐츠와 사용자 선호 컨텐츠에 대하여 각각 다른 동작을 취하게 한다.
도 5는 본 발명의 실시 예에 따른 무비 프래그먼트(452a ~ 462e)의 구조를 개략적으로 도시한 도면이다.
도 4의 무비 프래그먼트(452a)는 도 5와 같은 구조를 갖는다. 무비 프래그먼트는 참조번호 550과 같이 무비 프래그먼트(Movie Fragment : MOOF) 정보(500), 미디어 데이터 박스(Media Data container : MDAT)(510)로 구성된다. MOOF(500)는 MDAT(510)에 어떤 정보들이 포함되어 있는지를 나타내는 정보를 포함하고, MDAT(510)는 프레임(515, 520), SEI 메시지(525), 프레임(530)을 포함한다. 여기서, 프레임(515, 520, 530)은 오디오/비디오 정보를 포함하고, 상기 SEI 메시지(525)는 암호 키(535)를 포함한다. SEI(Supplementary Enhanced Information) 메시지(525)는 부가 개선 정보로서, 클라이언트 장치가 비디오 데이터를 더 잘 사용할 수 있게 송신측이 제공하는 일종의 메타데이터이다.
그러한 이유로 본 발명의 실시 예에서는 MDAT(510)은 비디오/오디오 데이터들을 담는 일종의 박스이며, 암호 키(535)가 삽입된 SEI 메시지는 비디오와 오디오 데이터인 프레임들(520, 530)에 삽입된다.
도 5를 참조하면, 본 발명의 실시 예에 따라 SEI 메시지(message)(525)에는 그 다음에 위치하는 무비 프래그먼트(452b)를 암호화한 암호 키(535)가 포함되어 있다. 본 발명의 실시 예에 따른 SEI 메시지(535)의 일 예는 아래의 <표 1>와 같다.
Figure pat00001
상기 <표 1>은 본 발명의 실시 예에 따른 SEI message의 일반적인 선언 형식이며, EncryptionInformationSEIBox는 스트럭쳐 이름, 'seie'는 암호화 정보 박스 식별자 이름이다. 'seie'는 SEI 메시지의 종류에 대한 식별자로, 본 발명에서 제안하는 SEI 메시지가 갖는 식별자이다. 예컨대, 본 발명의 실시 예에서 클라이언트 장치는 seie라는 4글자 식별자를 확인함으로써, 'seie'라는 박스에 포함된 정보가 암호 키라는 정보를 알 수 있다. 그리고 encryptioninfosei에는 암호 키가 위치한다.
도 6은 본 발명의 실시 예에 따른 컨텐츠 제공 서버 장치(600)의 블록 구성도이다.
컨텐츠 생성부(610)는 본 발명의 실시 예에 따라 클라이언트 장치로 전송될 사용자 선호 컨텐츠와 강제 시청 컨텐츠를 생성하여 컨텐츠 처리부(620)로 전송한다.
컨텐츠 처리부(620)는 본 발명의 실시 예에 따라 상기 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠 각각을 재생을 위한 기본 단위인 데이터 단위들로 분할한 후, 상기 강제 시청 컨텐츠를 구성하는 데이터 단위들 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 적어도 하나의 데이터 단위에 대하여 암호화를 수행한다. 그리고, 컨텐츠 처리부(620)는 상기 암호화된 데이터 단위를 해독 할 수 있는 암호 키(=해독 키)를 상기 암호화된 데이터 단위 보다 시간상으로 먼저 위치하는 데이터 단위에 삽입한다. 이때 상기 컨텐츠 처리부(620)는 미리 결정된 기준에 따라 상기 데이터 단위들 중 상기 첫 번째 데이터 단위를 제외한 모든 데이터 단위들을 암호화 할 수도 있고, 상기 첫 번째 데이터 단위를 제외한 데이터 단위들 중 일부 데이터 단위들에만 암호화 할 수 있다. 상기 미리 결정된 기준은 컨테츠 제공자 또는 사업자에 의해 결정될 것이다.
또한, 컨텐츠 처리부(620)는 상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위에는 상기 강제 시청 컨텐츠에 연이어 위치한 상기 선호 컨텐츠의 첫 번째 데이터 단위를 해독하기 위한 암호 키를 삽입한다. 그리고, 컨텐츠 처리부(620)는 다른 실시 예로서 상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위에 포함된 암호 키를 사용하여 상기 강제 시청 컨텐츠에 바로 연이어 위치한 사용자 선호 컨텐츠 중 미리 결정된 데이터 단위에 대하여 암호화를 수행할 수도 있다.
이와 같이 본 발명의 실시 예에서 컨텐츠 처리부(620)는 상기 강제 시청 컨텐츠를 구성하는 데이터 단위에 포함되는 암호 키를 이용하여 사용자 선호 컨텐츠를 구성하는 데이터 단위를 암호화하기 때문에, 사용자는 반드시 상기 강제 시청 컨텐츠를 디코딩하여 암호 키를 획득하여야만 한다.
마지막으로 전송부(630)는 상기 컨텐츠 처리부(620)가 생성한 컨텐츠의 데이터 단위를 적응 스트리밍 방식으로 네트워크를 통해 전송한다.
도 7은 도 6에 도시된 컨텐츠 처리부(620)의 상세 블록 구성도이다.
데이터 단위 분할부(700, 702)는 입력된 사용자 선호 컨텐츠 및 강제 시청 컨텐츠 각각을 데이터 단위로 분할하여 암호화 구간 결정부(705)로 출력한다.
암호화 구간 결정부(705)는 입력된 강제 시청 컨텐츠의 분할된 데이터 단위 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 암호화 할 데이터 단위를 선택한다. 이때 암호화 구간 결정부(705)는 상기 나머지 데이터 단위들 모두에 대하여 암호화를 수행할 수도 있고, 결정된 일부 데이터 단위들에 대해서만 암호화를 수행할 수 있다.
암호화 구간 결정부(705)는 데이터 단위 분할부(702)로부터 강제 시청 컨텐츠의 첫 번째 데이터 단위가 입력되면, 암호 키 생성부(710)로 암호 키를 생성할 것을 명령하고, 오디오/비디오 인코더(715)로 상기 첫 번째 데이터 단위를 출력하고, 오디오/비디오 인코더(715)는 입력된 데이터 유닛을 인코딩하여 출력한다. 상기 암호화 구간 결정부(705)의 명령에 따라 암호 키를 생성한 암호 키 생성부(710)는 생성된 암호 키를 키 버퍼(buffer)(720)에 버퍼링한다. 그리고, 암호화 구간 결정부(705)는 키 삽입부(725)로 상기 생성된 암호 키를 상기 오디오/비디오 인코더(715)에서 출력된 상기 첫 번째 데이터 단위에 삽입한다. 이때는 도 5에 도시된 바와 같이 MDAT(510)내의 비디오, 오디오 데이터인 프레임 사이에 위치하는 SEI 메시지(525)에 삽입한다.
그리고, 키 삽입부(725)는 암호화 구간 결정부(705)의 명령에 의해 키 버퍼(720)에 버퍼링된 암호 키를 오디오/비디오 인코딩된 데이터 유닛에 삽입한다.
암호화 부(730)는 상기 암호화 구간 결정부(705)의 명령에 따라 상기 입력된 데이터 단위가 상기 강제 시청 컨텐츠의 첫 번째 데이터 단위라면, 암호화를 하지 않고, DASH 포맷 생성부(735)로 출력한다. 상기 DASH 포맷 생성부(735)는 상기 암호화 부(730)로부터 출력된 데이터 단위에 상기 데이터 단위를 수신하기 위해 필요한 정보들이 포함된 MPD 파일이 추가된 DASH 포맷의 데이터를 생성하여 출력한다.
암호화 구간 결정부(705)는 상기 강제 시청 컨텐츠 중 상기 첫 번째 데이터 단위 이후의 데이터 단위들이 입력되면, 미리 결정된 방식에 따라 입력된 데이터 단위에 암호화를 수행할지 여부를 암호화 부(730)로 알려준다.
예컨대, 도 4에 도시된 바와 같이 상기 강제 시청 컨텐츠 중 상기 첫 번째 데이터 유닛을 제외한 모든 데이터 유닛에 대하여 암호화를 하기로 결정되었고, 두 번째 데이터 단위가 상기 암호화 구간 결정부(705)로 입력되면, 상기 첫 번째 데이터 유닛이 입력되었을 때 상기 암호 키 생성부(710)에서 생성된 암호 키로 상기 두 번째 데이터 단위를 암호화 것을 암호화 부(730)로 알리게 된다. 그리고, 상기 암호화 구간 결정부(705)는 상기 두 번째 데이터 유닛에 포함될 암호 키를 생성할 것을 암호 키 생성부(710)에게 명령하고, 그와 동시에 키 삽입부(725)로 암호 키를 삽입할 것도 명령한다. 세 번째 데이터 유닛이 입력될 경우에는 암호화 구간 결정부(705)는 상기 두 번째 데이터 유닛에 포함된 암호 키로 암호화를 수행할 것을 암호화부(730)로 명령하고, 암호 키 생성부(710)로는 네 번째 데이터 유닛을 암호화할 암호 키를 생성할 것을 명령하고, 키 삽입부(725)로는 상기 네 번째 데이터 유닛에 대한 암호 키를 삽입할 것을 명령한다.
이러한 과정은 미리 결정된 암호화 구간 동안 반복되어 수행된다.
그리고, 암호화 구간 결정부(705)는 사용자 선호 컨텐츠의 데이터 단위들 중 어느 데이터 단위에 대해서 암호화를 수행할지 결정하고, 암호화 하기로 결정된 데이터 단위에 대해 상기 암호화 된 강제 시청 컨텐츠에 삽입된 암호 키로 암호화 할 것을 암호화 부(730)로 명령한다. 도 8은 본 발명의 실시 예에 따른 컨텐츠를 생성하여 전송하는 서버 장치의 개략적인 방법 흐름도이다.
800단계에서 서버 장치는 컨텐츠를 생성하고, 805단계에서 상기 생성된 컨텐츠를 데이터 단위로 분할한다. 그리고, 서버 장치는 810단계에서 분할된 데이터 단위들에 대하여 미리 정해진 방식에 따라 오디오/비디오 인코딩을 수행하고, 815단계에서 상기 810단계에서 인코딩된 데이터 단위 이후에 전송될 데이터 단위의 암호 키를 삽입할지 여부를 결정한다. 815단계에서 서버 장치가 어떤 데이터 단위에 암호 키를 삽입할 것인지에 대하여는 사업자 제공업자 등에 의해 미리 정해진 방식에 따를 것이다.
만약, 상기 815단계에서 서버 장치가 이후에 전송될 데이터 단위의 암호 키를 삽입할 것을 결정하였다면, 820단계에서 암호 키를 생성한 후, 상기 인코딩된 데이터 단위에 상기 암호 키를 도 5와 같이 삽입하고, 825단계에서 암호화 대상인지를 판단한다.
반면, 상기 815단계에서 서버 장치가 이후에 전송될 데이터 단위의 암호 키를 삽입하지 않을 것으로 결정하였다면, 825단계로 진행한다.
825단계에서 서버 장치는 데이터 유닛이 암호화 대상인지 검사한다. 만약, 825단계의 검사결과, 암호화 대상이라면, 840단계에서 상기 암호화 대상인 데이터 유닛을 이전의 데이터 단위에 삽입된 암호 키로 압호화한 후 830단계로 진행한다.
반면, 상기 825단계의 검사결과, 서버 장치는 상기 데이터 유닛이 암호화 대상이 아니라면, 830단계에서 컨텐츠를 DASH 방식으로 전송하기 위해 DASH 포맷으로 생성하고, 835단계에서 전송한다.
도 9는 본 발명의 실시 예에 따라 강제 시청 컨텐츠와 사용자 선호 컨텐츠를 생성하여 전송하는 서버 장치의 상세 동작 흐름도이다.
905단계에서 서버 장치는 컨텐츠를 생성하고, 910단계에서 데이터 단위로 분할한다. 915단계에서 서버 장치는 910단계에서 분할된 데이터 단위가 강제 시청 컨텐츠에 포함되는 데이터 단위인지 검사하고, 강제 시청 컨텐츠에 포함되는 데이터 단위라면, 920단계에서 첫 번째 데이터 단위인지를 검사한다.
920단계의 검사결과, 첫 번째 데이터 단위라면, 서버 장치는 925단계에서 오디오/비디오 인코딩 후 암호 키를 삽입하고, 935단계에서 DASH 포맷을 생성하여 940단계에서 전송한다.
반면, 920단계에서 서버 장치는 첫 번재 데이터 단위가 아니라면, 서버 장치는 945단계에서 마지막 데이터 단위인지 여부를 검사한다. 945단계에서 마지막 데이터 단위라면, 서버 장치는 950단계에서 오디오/비디오 인코딩을 수행하고, 955단계에서 사용자 선호 컨텐츠를 해독하기 위한 암호 키를 삽입한다. 그리고, 서버 장치는 상기 950단계에서 오디오/비디오 인코딩한 데이터 단위를 960단계에서 이전의 데이터 단위에 삽입된 암호 키로 암호한 후, 935단계로 진행한다.
그리고, 상기 915단계의 검사 결과 데이터 단위가 강제 시청 컨텐츠에 포함되지 않는다면, 사용자 선호 컨텐츠이므로, 서버 장치는 980단계에서 암호화 대상인 데이터 유닛인지 검사한다.
980단계의 검사결과, 데이터 유닛이 암호화 대상인 데이터 유닛이라면, 서버 장치는 985단계에서 오디오/비디오 인코딩을 수행하고, 990단계에서 강제 시청 컨텐츠의 마지막 데이터 단위에 포함된 암호 키로 상기 인코딩된 오디오/비디오 데이터를 암호화한 후 935단계로 진행한다. 상기 990단계에서 강제 시청 컨텐츠의 마지막 데이터 단위에 포함된 암호 키로 암호화하는 데이터 단위는 사용자 선호 컨텐츠를 구성하는 데이터 단위들 중 미리 정해진 위치의 데이터 단위이다.
반면, 980단계의 검사결과, 암호화 대상인 데이터 유닛이 아니라면, 서버 장치는 930단계에서 오디오/비디오 인코딩을 수행한 후, 935단계로 진행한다.
그리고, 945단계에서 서버 장치는 데이터 단위가 강제 시청 컨텐츠에 포함되는 데이터 단위들 중 마지막 데이터 단위가 아니라면, 965단계에서 후에 전송될 데이터 단위의 암호 키를 삽입할 것인지를 검사한다.
상기 965단계에서 후에 전송될 데이터 단위의 암호 키를 삽입하여야 한다면, 서버 장치는 970단계에서 오디오/비디오 인코딩을 한 후 암호 키를 삽입한다. 975단계에서 서버 장치는 상기 970단계에서 암호 키를 삽입한 데이터 단위가 암호화 대상인 데이터 유닛인지 검사하고, 암호화 대상이라면, 960단계에서 이전의 데이터 단위에 삽입된 암호 키로 암호화를 수행하고, 암호화 대상이 아니라면, 930단계로 진행한다.
도 10은 본 발명의 실시 예에 따라 컨텐츠를 수신하여 사용자에게 제공하는 사용자 클라이언트 장치(1000)의 블록 구성도이다.
컨텐츠 송신 장치(1050)는 DASH 컨텐트(content)를 저장하고 있으며, 네트워크 DASH 컨텐트를 제공하는 서비스 사업자의 서비스 제공 서버가 될 수 있다.
클라이언트 장치(1000)는 상기 컨텐츠 송신 장치(1050) 로부터 DASH 컨텐트를 다운받아 재생하거나 저장할 수 있으며, 이러한 DASH 컨텐트를 저장하고 재생함으로써 사용자에게 DASH 컨텐츠를 제공할 수 있는 모든 장치를 의미한다. 또한, 클라이언트 장치(1000)는 상기 컨텐츠 송신 장치(1050)에 접속하여 어떤 DASH 컨텐트(content)가 존재하는지 알고 그 컨텐트를 재생하기 위한 MPD 및 초기화 세그먼트(Initialization segment : IS)/미디어 세그먼트(media segment : MS)를 수신한다.
클라이언트 장치(1000)는 DASH 클라이언트(1002), 해독기(1004), 파일 포맷 파서(1006), 디코더 버퍼(1008), 오디오/비디오 디코더(1010), 컴포지션 버퍼(1012)를 포함한다.
DASH 클라이언트(1002)는 수신된 DASH 컨텐트를 읽어 MPD를 해독하고 네트워크 및 DASH에서 제공하는 적응 파라미터(adaptation parameter)의 값에 따라 IS, MS를 다운로드 한다. 파일 포맷 파서(1006)는 파일 포맷 형식으로 작성되어 있는 IS 및 MS 내의 멀티미디어 컨텐트 구성정보를 해석할 수 있는 모듈이다. 더 상세하게는 파일 포맷 파서(1006)는 MS를 해석하여 무비 프래그먼트 또는 미디어 세그먼트인 데이터 단위를 추출할 수 있다. 파일 포맷 파서(1006)는 상기 수신된 DASH 컨텐츠로부터 추출된 데이터 단위를 디코더 버퍼(1008)로 출력한다.
해독기(1004)는 이전에 수신된 데이터 단위의 오디오/비디오 디코딩 과정 중 획득된 암호 키로 디코더 버퍼(1008)에 버퍼링된 암호화된 미디어 세그먼트 또는 무비 프래그먼트인 데이터 단위를 해독한다.
디코더 버퍼(1008)는 오디오/비디오 디코더(1010)로 입력될 데이터 임시 저장한다. 이때 암호화가 된 데이터 단위가 디코더 버퍼(1008)에 저장된다면, 상기 저장된 데이터는 해독기(1004)에 의해 해독이 수행된다..
오디오/비디오 디코더(1010)는 오디오 및비디오 데이터를 복호화하여 온전한 한 프레임 또는 일부의 화면/음성을 만들어낸다.
컴포지션 버퍼(1012)는 오디오/비디오 디코더(1010)에서 생성한 한 프레임 또는 일부의 화면/음성을 입력받아 임시 저장한다.
즉, 본 발명의 실시 예에서 디코더 버퍼(1008)에 저장된 미디어 세그먼트 또는 무비 프래그먼트가 암호화 되어 있다면, 해독기(1004)가 암호 키를 사용하여 디코더 버퍼(1008)에 저장된 미디어 세그먼트 또는 무비 프래그먼트를 해독한다. 이때 해독기(1004)가 해독을 위해 사용하는 암호 키는 이전에 수신된 데이터 단위를 오디오/비디오 디코딩했을 때 획득된 것임을 주의해야 한다.
이때, 오디오/비디오 디코더(1010)는 디코더 버퍼(1008)에 버퍼링되어 있는 데이터 단위가 암호화되어 있음을 확인한 경우, 해독기(1004)로 상기 디코더 버퍼(1008)에 버퍼링된 데이터가 암호화 되어 있음을 알린다. 그러면, 해독기(1004)는 상기 디코더 버퍼(1008)에 버퍼링된 데이터 단위에 대하여 이전에 수신되어 저장된 암호 키를 사용하여 해독을 수행하고, 오디오/비디오 디코더(1010)는 상기 해독기(1004)에 의해 해독된 데이터 단위에 대하여 오디오/비디오 디코딩을 수행하여 컴포지션 버퍼(1012)로 출력한다.
도 11은 본 발명의 실시 예에 따라 클라이언트 장치(1000)의 컨텐츠 수신 방법 흐름도이다.
1100단계에서 클라이언트 장치(1000)는 DASH 컨텐츠를 수신하고, 1105단계에서 MPD를 해석한다. 1110단계에서 클라이언트 장치(1000)는 IS/MS를 수신한 후, 1115단계에서 FF를 해석한다. 1120단계에서 클라이언트 장치(1000)는 상기 FF 해석된 컨텐츠의 데이터 단위를 오디오/비디오 디코더 버퍼에 버퍼링하고, 1125단계에서 암호화가 되어있는지를 검사한다.
상기 1125단계의 검사결과, 암호화가 되어 있다면, 클라이언트 장치(1000)는 1130단계에서 암호 키가 존재하는지 확인한다. 상기 1130단계에서 상기 암호 키가 존재하는 것으로 확인되면, 클라이언트 장치(1000)는 1135단계에서 이전 데이터 단위에 포함되어 있던 암호 키로 해독한다. 그리고, 클라이언트 장치(1000)는 1140단계에서 오디오/비디오 디코딩을 수행하고, 1145단계에서 상기 1140단계에서 오디오/비디오 디코딩된 데이터 단위에 암호 키가 존재하는지 검사한다. 상기 1145단계의 검사결과, 암호 키가 존재하면, 클라이언트 장치(1000)는 1150단계에서 암호 키를 저장하고, 존재하지 않으면 동작을 종료한다. 반면, 상기 1125단계의 검사결과, 암호화가 되어 있지 않다면, 해독을 할 필요가 없으므로 클라이언트 장치(1000)는 바로 1140단계로 진행한다.
그리고, 클라이언트 장치는 상기 1130단계의 검사결과 암호화되어 있는 데이터 단위를 해독하기 위한 암호 키가 존재하지 않는 것을 확인하면, 1155단계에서 수신된 MPD를 재해석하여 암호 키를 찾는다. 만약, 상기 1160단계에서 MPD를 재해석하여 암호 키를 발견한 경우, 클라이언트 장치(1000)는 1165단계에서 상기 발견된 암호 키로 암호화된 데이터 단위를 해독하고, 1140단계로 진행한다. 그러마, 상기 1160단계에서 암호 키를 여전히 발견할 수 없다면, 클라이언트 장치(1000)는 암호화된 데이터 단위를 해독할 방법이 없으므로 1170단계에서 수신 실패를 보고한다.
전술한 바와 같이 본 발명의 실시 예에서 암호 키는 파일 포맷 파서(File Format parser)(1006)가 아니라 오디오/비디오 디코더(1010)가 오디오/비디오 컨텐트를 복호화하는 중에 부가 정보로서 인식해내도록 구성되어 있으므로 단순히 클라이언트 장치(1000)에서 다운로드한 DASH 컨텐트로부터 미디어 세그먼트를 파싱해서는 암호 키를 획득할 수 없으며, 반드시 컨텐트를 재생하는 단계에 준하는 단계를 거쳐야만 암호화 키를 획득할 수 있게 구성되어 있다.
여기서 “재생에 준하는 단계”란 컨텐트를 재생하는데 일반적으로 필요한 4 개의 단계들인 비디오 또는 오디오 데이터를 디코더에 입력하는 1단계, 입력된 데이터를 복호하면서 비디오/오디오 데이터가 존재할 때마다 버퍼에 데이터를 버퍼링하는 2단계, 버퍼링된 데이터를 프레임으로 구성하는 3단계, 화면상에 디코딩된 결과를 출력하는 4단계 중 “화면상에 디코딩된 결과를 출력하는 4단계”를 제외한 나머지 단계를 의미한다.
본 명세서에서는 상기 클라이언트 장치(1000)에서 DASH 클라이언트(1002)를 수신부(1060)으로 칭하고, 해독기(1004), 파일 포맷 파서(1006), 디코더 버퍼(1008), 오디오/비디오 디코더(1010), 컴포지션 버퍼(1012)를 컨텐츠 처리부(1070)으로 칭하기로 한다. 따라서, 본 발명의 실시 예에서는 수신부(1060)는 서버(1050)로부터 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 포함하는 DASH 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 수신한다. 그리고, 컨텐츠 처리부(1070)는 수신된 데이터 단위에 암호화가 되어 있는지를 검사하고, 암호화가 되어 있다면, 이전에 수신된 데이터 단위에 포함된 암호 키로 상기 수신된 데이터 단위를 해독하고, 상기 해독한 데이터 단위를 오디오/비디오 디코딩하여 사용자에게 출력한다.
상술한 도 4에서와 같이 본 발명의 실시 예에 따른 컨텐츠의 구성에서 광고 컨텐트에 포함되는 연속되는 다수개의 무비 프래그먼트 각각은 바로 다음에 연속되는 무비 프래그먼트의 암호화키를 포함하고 있기에, 처음에 위치하는 광고 컨텐트에 포함되는 첫 번째 미디어 세그먼트의 첫 번째 무비 프래그먼트를 재생하지 않으면 재생할 수가 없다.
그리고, 본 발명의 실시 예에 따라 암호화되는 부분은 미디어 세그먼트내의 일부 부분이 될 수도 있으며, 미디어 세그먼트 전체가 될 수도 있다. 즉, 암호화되는 영역은 미디어 세그먼트내 일부 비디오/오디오 프레임, 미디어 세그먼트내 전체 비디오/오디오 프레임 또는 미디어 세그먼트 전체 등 여러가지 범위가 가능하다. 일반적으로 하나의 무비 프래그먼트는 여러 개의 프레임 정보를 포함하고, 하나의 미디어 세그먼트는 여러 개의 무비 프래그먼트들을 포함한다. 따라서, 하나의 미디어 세그먼트에는 여러 개의 무비 프래그먼트들(여러 개의 프레임 정보들)이 포함되므로 미디어 세그먼트내 일부 전체 프레임 정보를 암호화한다는 것은 일부 또는 전체 프레임을 암호화할 대상으로 지정할 수 있다는 것이고, 미디어 세그먼트 전체를 암호화한다는 것은 무비 프래그먼트외에도 미디어 세그먼트의 선언부를 나타내는 styp 정보, 무비 프래그먼트에 대한 인덱스 정보를 나타내는 sidx 역시 암호화한다는 것을 의미한다.
따라서 본 발명의 실시 예에 따른 클라이언트 장치(1000)는 광고와 같은 강제 시청 컨텐츠의 데이터 단위에 포함된 암호화 구간을 모두 재생하지 않고는 암호화 구간을 중간부터 재생할 수 없다. 이에 따라 본 발명의 실시 예에서는 강제 시청 컨텐츠의 재생이 사용자 선호 컨텐츠를 재생하는 선결조건이 되도록 하기 위해, 사용자 선호 컨텐츠에 포함되는 첫 번째 데이터 단위, 임의의 데이터 단위, 또는 연속되는 여러 개의 데이터 단위들을 강제 시청 컨텐츠의 데이터 단위에 포함된 암호 키를 사용하여 암호화하는 암호화 구간에 포함시키도록 구성한다.
따라서 본 발명의 실시 예에서는 악의적인 사용자가 강제 시청 컨텐츠를 재생하지 않도록 클라이언트 장치(1000)를 해킹하게 되면 사용자 선호 컨텐츠를 시청할 수 없게 된다. 하지만 클라이언트 장치가 강제 시청 컨텐츠를 재생한 경우 암호 키를 알고 있게 되므로 사용자 선호 컨텐츠에서 암호화된 데이터 단위가 어떤 암호 키로 암호화 될 수 있는지 알 수 있으므로, 사용자 선호 컨텐츠를 이미 재생하고 있는 중에 다시 암호화된 사용자 선호 컨텐츠의 데이터 단위로 랜덤 액세스(random access)하더라도 사용자 선호 컨텐츠를 재생할 수 있게 된다.
마찬가지로 본 발명의 실시 예에 따른 클라이언트 장치(1000)는 강제 시청 컨텐츠가 시작하기 전에 사용자의 조작에 의해 사용자 선호 컨텐츠로 랜덤 액세스하여 강제 시청 컨텐츠를 스킵(Skip)할 경우에는 사용자 선호 컨텐츠를 재생하기 위해 필요한 암호 키를 획득할 수 없으므로, 사용자 선호 컨텐츠 중 암호화된 데이터 단위에 대해서는 디코딩을 수행하지 못해 재생을 하지 못하는 결과가 발생한다.
그리고, 본 발명의 다른 실시 예로서 암호 키를 SEI 메시지 대신 메타데이터(Metadata)에 삽입할 수도 있다. 하지만 메타데이터는 클라이언트 장치(1000)의 파일 포맷 파서(file format parser)(1006)가 해석할 수 있으므로, 오디오/비디오 디코더(1010)가 디코딩하는 것보다 암호 키의 보호 수준이 낮다.

Claims (26)

  1. 방송 시스템에서 컨텐츠 송신하는 방법에 있어서,
    사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 생성하는 과정과,
    상기 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 분할하는 과정과,
    상기 분할된 데이터 단위들에 대하여 오디오/비디오 인코딩을 수행하는 과정과,
    상기 강제 시청 컨텐츠를 구성하는 데이터 단위들 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 적어도 하나의 데이터 단위에 대하여 암호 키를 사용하여 암호화를 수행하는 과정과,
    상기 암호화된 데이터 단위를 해독하기 위한 암호 키의 삽입이 완료되면, 상기 인코딩된 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠의 데이터 단위를 상기 적응 스트리밍 방식을 통해 전송하는 과정을 포함하고,
    상기 암호화된 데이터 단위를 해독할 수 있는 암호 키는 상기 암호화된 데이터 단위보다 시간상 앞에 위치하는 데이터 단위에 삽입됨을 특징으로 하는 방송 시스템에서 컨텐츠 송신 방법.
  2. 제1항에 있어서,
    상기 데이터 단위는 미디어 세그먼트 또는 무비 프래그먼트 단위임을 특징으로 하는 방송 시스템에서 컨텐츠 송신 방법.
  3. 제1항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠에 연이어 위치한 사용자 선호 컨텐츠의 첫 번째 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 송신 방법.
  4. 제1항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠 바로 직후에 위치한 사용자 선호 컨텐츠 중 미리 결정된 위치의 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 송신 방법.
  5. 제1 항에 있어서,
    상기 강제 시청 컨텐츠는,
    광고, 통지 메시지, 긴급 상황을 알리기 위한 긴급 메시지 중 하나임을 특징으로 하는 방송 시스템에서 컨텐츠 송신 방법.
  6. 제1 항에 있어서,
    상기 암호 키는,
    상기 데이터 유닛의 SEI 메시지에 포함됨을 특징으로 하는 방송 시스템에서 컨텐츠 송신 방법.
  7. 방송 시스템에서 컨텐츠 송신 장치에 있어서,
    사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 생성하는 컨텐츠 생성부와,
    상기 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 분할하고, 상기 분할된 데이터 단위들에 오디오/비디오 인코딩을 수행하고, 상기 강제 시청 컨텐츠를 구성하는 데이터 단위들 중 첫 번째 데이터 단위를 제외한 나머지 데이터 단위들 중 적어도 하나의 데이터 단위에 대하여 암호 키를 사용하여 암호화를 수행하는 컨텐츠 처리부와,
    상기 암호화된 데이터 단위를 해독하기 위한 암호 키의 삽입이 완료되면, 상기 인코딩된 사용자 선호 컨텐츠와 상기 강제 시청 컨텐츠의 데이터 단위를 상기 적응 스트리밍 방식을 통해 전송하는 전송부를 포함하고,
    상기 암호화된 데이터 단위를 해독할 수 있는 암호 키는 상기 암호화된 데이터 단위 보다 시간 상 앞에 위치하는 데이터 단위에 삽입됨을 특징으로 하는 방송 시스템에서 컨텐츠 송신 장치.
  8. 제7 항에 있어서,
    상기 데이터 단위는 미디어 세그먼트 또는 무비 프래그먼트 단위임을 특징으로 하는 방송 시스템에서 컨텐츠 송신 장치.
  9. 제7 항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠에 연이어 위치한 사용자 선호 컨텐츠의 첫 번째 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 송신 장치.
  10. 제7 항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠 바로 직후에 위치한 사용자 선호 컨텐츠 중 미리 결정된 위치의 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 송신 장치.
  11. 제7 항에 있어서,
    상기 강제 시청 컨텐츠는,
    광고, 통지 메시지, 긴급 상황을 알리기 위한 긴급 메시지 중 하나임을 특징으로 하는 방송 시스템에서 컨텐츠 송신 장치.
  12. 제7 항에 있어서,
    상기 암호 키는,
    상기 데이터 유닛의 SEI 메시지에 포함됨을 특징으로 하는 방송 시스템에서 컨텐츠 송신 장치.
  13. 방송 시스템에서 컨텐츠를 수신하는 방법에 있어서,
    서버로부터 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 포함하는 DASH 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 수신하는 과정과,
    수신된 데이터 단위들에 암호화가 되어 있는지를 검사하는 과정과,
    암호화가 되어 있다면, 이전에 수신된 데이터 단위에 포함된 암호 키로 상기 수신된 데이터 단위를 해독하는 과정과,
    상기 해독한 데이터 단위를 오디오/비디오 디코딩하는 과정을 포함하는 방송 시스템에서 컨텐츠 수신 방법.
  14. 제13 항에 있어서,
    상기 암호화가 되어 있지 않다면, 상기 수신된 데이터 단위에 암호 키가 포함되어 있는지 검사하는 과정을 더 포함하고,
    상기 수신된 데이터 단위에 포함된 암호 키는, 상기 수신된 데이터 단위 이후에 수신될 암호화된 데이터 단위를 해독하기 위하여 사용됨을 특징으로 하는 방송 시스템에서 컨텐츠 수신 방법.
  15. 제13 항에 있어서,
    상기 데이터 단위는 미디어 세그먼트 또는 무비 프래그먼트 단위임을 특징으로 하는 방송 시스템에서 컨텐츠 수신 방법.
  16. 제13 항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠에 연이어 위치한 사용자 선호 컨텐츠의 첫 번째 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 수신 방법.
  17. 제13 항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠 바로 직후에 위치한 사용자 선호 컨텐츠 중 미리 결정된 위치의 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 수신 방법.
  18. 제13 항에 있어서,
    상기 강제 시청 컨텐츠는,
    광고, 통지 메시지, 긴급 상황을 알리기 위한 긴급 메시지 중 하나임을 특징으로 하는 방송 시스템에서 컨텐츠 수신 방법.
  19. 제13 항에 있어서,
    상기 암호 키는,
    상기 데이터 유닛의 SEI 메시지에 포함됨을 특징으로 하는 방송 시스템에서 컨텐츠 수신 방법.
  20. 방송 시스템에서 컨텐츠를 수신하는 장치에 있어서,
    서버로부터 사용자 선호 컨텐츠와 시청자가 반드시 시청해야 하는 강제 시청 컨텐츠를 포함하는 DASH 컨텐츠를 재생을 위한 기본 단위인 데이터 단위들로 수신하는 수신부와,
    수신된 데이터 단위에 암호화가 되어 있는지를 검사하고, 암호화가 되어 있다면, 이전에 수신된 데이터 단위에 포함된 암호 키로 상기 수신된 데이터 단위를 해독하고, 상기 해독한 데이터 단위를 오디오/비디오 디코딩하는 컨텐츠 처리부를 포함하는 방송 시스템에서 컨텐츠 수신 장치.
  21. 제20 항에 있어서,
    상기 컨텐츠 처리부는,
    상기 암호화가 되어 있지 않다면, 상기 수신된 데이터 단위에 암호 키가 포함되어 있는지 검사함을 특징으로 하고,
    상기 수신된 데이터 단위에 포함된 암호 키는, 상기 수신된 데이터 단위 이후에 수신될 암호화된 데이터 단위를 해독하기 위하여 사용됨을 특징으로 하는 방송 시스템에서 컨텐츠 수신 장치.
  22. 제20 항에 있어서,
    상기 데이터 단위는 미디어 세그먼트 또는 무비 프래그먼트 단위임을 특징으로 하는 방송 시스템에서 컨텐츠 수신 장치.
  23. 제20 항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠에 연이어 위치한 사용자 선호 컨텐츠의 첫 번째 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 수신 장치.
  24. 제20 항에 있어서,
    상기 강제 시청 컨텐츠를 구성하는 마지막 데이터 단위는 상기 강제 시청 컨텐츠 바로 직후에 위치한 사용자 선호 컨텐츠 중 미리 결정된 위치의 데이터 단위를 해독하기 위한 암호 키를 포함함을 특징으로 하는 방송 시스템에서 컨텐츠 수신 장치.
  25. 제20 항에 있어서,
    상기 강제 시청 컨텐츠는,
    광고, 통지 메시지, 긴급 상황을 알리기 위한 긴급 메시지 중 하나임을 특징으로 하는 방송 시스템에서 컨텐츠 수신 장치.
  26. 제20 항에 있어서,
    상기 암호 키는,
    상기 데이터 유닛의 SEI 메시지에 포함됨을 특징으로 하는 방송 시스템에서 컨텐츠 수신 장치.
KR1020110012480A 2011-02-11 2011-02-11 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법 KR20120092432A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020110012480A KR20120092432A (ko) 2011-02-11 2011-02-11 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법
US13/984,692 US20130322628A1 (en) 2011-02-11 2012-02-13 Apparatus and method for transceiving content in a digital broadcast system
PCT/KR2012/001045 WO2012108737A2 (ko) 2011-02-11 2012-02-13 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110012480A KR20120092432A (ko) 2011-02-11 2011-02-11 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20120092432A true KR20120092432A (ko) 2012-08-21

Family

ID=46639093

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110012480A KR20120092432A (ko) 2011-02-11 2011-02-11 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법

Country Status (3)

Country Link
US (1) US20130322628A1 (ko)
KR (1) KR20120092432A (ko)
WO (1) WO2012108737A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2915056A4 (en) * 2012-11-02 2016-03-30 Genesismedia Llc ACCESS AGREEMENT CONTROLLED TO MULTIMEDIA CONTENT

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9438883B2 (en) * 2012-04-09 2016-09-06 Intel Corporation Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content
US9444794B2 (en) 2012-07-03 2016-09-13 Futurewei Technologies, Inc. Low-latency secure segment encryption and authentication interface
US20140052824A1 (en) * 2012-08-20 2014-02-20 Qualcomm Incorporated Conveying state information for streaming media
US9646162B2 (en) * 2013-04-10 2017-05-09 Futurewei Technologies, Inc. Dynamic adaptive streaming over hypertext transfer protocol service protection
US9258747B2 (en) * 2013-09-17 2016-02-09 Intel IP Corporation User equipment and methods for fast handover failure recovery in 3GPP LTE network
CN106031183A (zh) * 2014-03-07 2016-10-12 华为技术有限公司 通信方法、用户设备、内容服务器和控制器
WO2016004039A1 (en) * 2014-07-01 2016-01-07 Huawei Technologies Co., Ltd. Client behavior control in adaptive streaming
US10554992B2 (en) * 2015-06-03 2020-02-04 Avago Technologies International Sales Pte. Limited Inline codec switching
EP3625943B1 (en) 2017-05-16 2021-09-08 Telefonaktiebolaget LM Ericsson (PUBL) Low latency media ingestion system, devices and methods
EP3627361B1 (en) * 2018-09-21 2021-07-21 Nokia Technologies Oy Media content control

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3585679B2 (ja) * 1996-12-04 2004-11-04 株式会社東芝 放送局装置および受信端末装置
US7809138B2 (en) * 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
US6950804B2 (en) * 2001-02-26 2005-09-27 Pika Media Systems and methods for distributing targeted multimedia content and advertising
JP2002369128A (ja) * 2001-06-05 2002-12-20 Sony Corp コンテンツ記録再生方法および装置
US20030200548A1 (en) * 2001-12-27 2003-10-23 Paul Baran Method and apparatus for viewer control of digital TV program start time
US20050033700A1 (en) * 2003-08-04 2005-02-10 Vogler Dean H. Method and apparatus for creating and rendering an advertisement
CN1846438A (zh) * 2003-09-05 2006-10-11 皇家飞利浦电子股份有限公司 用于强制商业节目收看的系统和方法
WO2005074275A1 (ja) * 2004-01-30 2005-08-11 Matsushita Electric Industrial Co., Ltd. コンテンツ再生装置
US8291448B2 (en) * 2004-09-15 2012-10-16 Nokia Corporation Providing zapping streams to broadcast receivers
DE102005063136B3 (de) * 2005-12-30 2007-07-05 Siemens Ag Verfahren und Vorrichtung zum Generieren eines markierten Datenstroms, Verfahren und Vorrichtung zum Einfügen eines Wasserzeichens in einen markierten Datenstrom und markierter Datenstrom
EP1887729A3 (en) * 2006-03-21 2011-07-13 Irdeto Access B.V. Method of providing an encrypted data stream
KR100800405B1 (ko) * 2006-10-25 2008-02-04 엘지전자 주식회사 방송 녹화기기에서의 광고 강제 시청 방법
US7912217B2 (en) * 2007-03-20 2011-03-22 Cisco Technology, Inc. Customized advertisement splicing in encrypted entertainment sources
DE102007041145A1 (de) * 2007-08-30 2009-03-05 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren zum Analysieren von gleichzeitig übertragenen, verschlüsselten Datenströmen
US8868464B2 (en) * 2008-02-07 2014-10-21 Google Inc. Preventing unauthorized modification or skipping of viewing of advertisements within content
KR101547554B1 (ko) * 2008-11-27 2015-08-26 삼성전자주식회사 디지털 콘텐츠 서비스 제공 방법 및 시스템
US9037635B2 (en) * 2010-09-20 2015-05-19 Young-Joo Song Integrated multimedia portal system
KR101617340B1 (ko) * 2012-04-26 2016-05-02 후아웨이 테크놀러지 컴퍼니 리미티드 어댑티브 스트리밍을 위한 세그먼트 암호화 및 키 유도를 시그널링하기 위한 시스템 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2915056A4 (en) * 2012-11-02 2016-03-30 Genesismedia Llc ACCESS AGREEMENT CONTROLLED TO MULTIMEDIA CONTENT

Also Published As

Publication number Publication date
WO2012108737A2 (ko) 2012-08-16
US20130322628A1 (en) 2013-12-05
WO2012108737A3 (ko) 2012-12-13

Similar Documents

Publication Publication Date Title
US11785289B2 (en) Receiving device, transmitting device, and data processing method
KR20120092432A (ko) 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법
KR101593771B1 (ko) 실시간 또는 준 실시간 스트리밍을 위한 재생 리스트
US8973032B1 (en) Advertisement insertion into media content for streaming
US8301725B2 (en) Variant streams for real-time or near real-time streaming
KR101428875B1 (ko) Hls 기반 보안 처리 시스템 및 그 방법
US20090003592A1 (en) Content delivery system, delivery server, terminal, and content delivery method
SG181840A1 (en) Audio splitting with codec-enforced frame sizes
US20190124396A1 (en) Hidden replaceable media slots
TW201419838A (zh) 傳送用於串流媒體之狀態資訊
KR102586630B1 (ko) 수신 장치, 송신 장치, 및 데이터 처리 방법
JP2015534312A (ja) レンダリング時の制御
Kaiser et al. MPEG-DASH enabling adaptive streaming with personalized commercial breaks and second screen scenarios
KR20120139514A (ko) Dash 규격의 미디어 데이터와 mmt 전송 시스템과의 연동 방법 및 그 장치
KR101445256B1 (ko) 아이피 티브이 방송서비스에서 방송 컨텐츠의 불법 이용을방지하는 시스템 및 그 방법
KR101215617B1 (ko) 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권 관리 방법
KR20200018890A (ko) 무선 스트리밍 방법
JP2008236153A (ja) コンテンツ配信装置、コンテンツ配信システムおよびプログラム
JP2003309549A (ja) コンテンツ再生装置、コンテンツ再生方法、プログラムおよび記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right