KR101611848B1 - 콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급 - Google Patents

콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급 Download PDF

Info

Publication number
KR101611848B1
KR101611848B1 KR1020157003381A KR20157003381A KR101611848B1 KR 101611848 B1 KR101611848 B1 KR 101611848B1 KR 1020157003381 A KR1020157003381 A KR 1020157003381A KR 20157003381 A KR20157003381 A KR 20157003381A KR 101611848 B1 KR101611848 B1 KR 101611848B1
Authority
KR
South Korea
Prior art keywords
content
items
protection
data
media
Prior art date
Application number
KR1020157003381A
Other languages
English (en)
Other versions
KR20150036469A (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20150036469A publication Critical patent/KR20150036469A/ko
Application granted granted Critical
Publication of KR101611848B1 publication Critical patent/KR101611848B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/4084
    • H04L65/605
    • H04L65/607
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • 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/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Storage Device Security (AREA)

Abstract

메모리, 및 상기 메모리에 결합되어 있는 프로세서를 포함하는 장치에 있어서, 상기 프로세서는, 복수의 콘텐츠 아이템을 포함하는 미디어 콘텐츠에 대한 보호 설명을 획득하고 - 상기 보호 설명은 미디어 콘텐츠 내의 적어도 2개의 콘텐츠 아이템에 대해 적어도 2개의 보호 메커니즘을 시그널링하는 데이터를 포함하고, 상기 적어도 2개의 콘텐츠 아이템 각각은 상기 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘은 서로 상이함 - ; 상기 데이터로부터 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 결정하며; 그리고 상기 적어도 2개의 콘텐츠 아이템을 관련 보호 메커니즘에 따라 처리하도록 구성되어 있다.

Description

콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급{SIGNALING AND HANDLING CONTENT ENCRYPTION AND RIGHTS MANAGEMENT IN CONTENT TRANSPORT AND DELIVERY}
본 출원은 2012년 7월 13일에 싱 왕 등이 출원하고 발명의 명칭이 "System and Method for Signaling and Handling Content Encryption and Rights Management in Content Transport and Delivery"인 미국 가특허출원 No. 61/671,261에 대한 우선권을 주장하는 바이며, 상기 문헌의 내용은 본 명세서에 원용되어 병합된다.
미디어 콘텐츠 제공자 또는 분배자는 상이한 기기, 예를 들어, 텔레비전, 노트북 컴퓨터 및 이동전화에 적합한 상이한 암호화 및/또는 코딩 방식을 사용하여 가입자 또는 사용자에게 다양한 미디어 콘텐츠를 전달할 수 있다. 미디어 콘텐츠 제공자는 복수의 미디어 인코더 및/또는 디코더(코덱), 미디어 플레이어, 비디오 프레임 레이트, 공간 해상도, 비트-레이트, 비디오 포맷, 또는 이것들의 조합을 지원할 수 있다. 한 편의 미디어 콘텐츠는 상이한 사용자 기기에 적합하게 되도록 소스 또는 원래의 레프리젠테이션으로부터 다양한 다른 레프리젠테이션으로 변환될 수 있다.
일실시예에서, 본 발명은 장치를 포함하며, 상기 장치는, 메모리; 및 상기 메모리에 결합되어 있는 프로세서를 포함하고, 상기 프로세서는, 복수의 콘텐츠 아이템을 포함하는 미디어 콘텐츠에 대한 보호 설명을 획득하고 - 상기 보호 설명은 미디어 콘텐츠 내의 적어도 2개의 콘텐츠 아이템에 대해 적어도 2개의 보호 메커니즘을 시그널링하는 데이터를 포함하고, 상기 적어도 2개의 콘텐츠 아이템 각각은 상기 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘은 서로 상이함 - ; 상기 데이터로부터 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 결정하며; 그리고 상기 적어도 2개의 콘텐츠 아이템을 상기 적어도 2개의 콘텐츠 아이템의 연관된 보호 메커니즘에 따라 처리하도록 구성되어 있다.
다른 실시예에서, 본 발명은 컴퓨터 프로그램 제품을 포함하며, 상기 컴퓨터 프로그램 제품은, 비일시적 컴퓨터 판독 가능형 미디어에 저장되어 있는 컴퓨터 실행 가능형 명령을 포함하여 프로세서에 의해 실행될 때 네트워크 요소(network element: NE)로 하여금: 복수의 암호화된 콘텐츠 아이템을 포함하는 미디어 콘텐츠에 대한 보호 설명을 획득하고 - 상기 보호 설명은 미디어 콘텐츠 내의 적어도 2개의 암호화된 콘텐츠 아이템에 대해 적어도 2개의 보호 메커니즘을 시그널링하는 데이터를 포함하고, 상기 적어도 2개의 암호화된 콘텐츠 아이템 각각은 상기 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 보호 메커니즘은 서로 상이함 - ; 상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 데이터로부터 상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 보호 메커니즘을 결정하며; 그리고 상기 적어도 2개의 암호화된 콘텐츠 아이템을 상기 적어도 2개의 암호화된 콘텐츠 아이템의 연관된 보호 메커니즘에 따라 처리하게 한다.
또 다른 실시예에서, 본 발명은 방법을 제공하며, 상기 방법은 적어도 2개의 콘텐츠 아이템을 포함하는 미디어 콘텐츠를 획득하는 단계 - 상기 적어도 2개의 콘텐츠 아이템 각각은 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 콘텐츠 아이템 각각에 대한 보호 메커니즘은 서로 상이함 - ; 상기 미디어 콘텐츠에 대한 보호 설명을 생성하는 단계 - 상기 보호 메커니즘은 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 시그널링하기에 충분한 데이터를 포함함 - ; 및 상기 보호 설명 및 상기 미디어 콘텐츠를 클라이언트에 전송하는 단계를 포함한다.
또 다른 실시예에서, 본 발명은 장치를 포함하며, 상기 장치는 메모리; 상기 메모리에 결합되어 있는 프로세서를 포함하고, 상기 프로세서는, 적어도 2개의 콘텐츠 아이템을 포함하는 미디어 콘텐츠를 획득하고 - 상기 적어도 2개의 콘텐츠 아이템 각각은 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되고, 상기 적어도 2개의 콘텐츠 아이템 각각에 대한 보호 메커니즘은 서로 상이함 - ; 상기 미디어 콘텐츠에 대한 보호 설명을 생성하며 - 상기 보호 설명은 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 시그널링하기에 충분한 데이터를 포함함 - ; 그리고 상기 보호 설명 및 상기 미디어 콘텐츠를 클라이언트에 전송하도록 구성되어 있다.
이러한 특징 및 다른 특징은 첨부된 도면 및 특허청구범위를 참조하여 이하에 설명된 설명으로부터 명확하게 이해할 수 있을 것이다.
본 발명에 대해 더 완전하게 이해하기 위해, 첨부된 도면 및 상세한 설명과 결합하여 이하의 간단한 설명을 참조하며, 도면 중 유사한 도면부호는 유사한 부분을 나타낸다.
도 1은 동적 적응 스트리밍 오버 하이퍼텍스트 트랜스퍼 프로토콜(Dynamic Adaptive Streaming over Hypertext Transfer Protocol(HTTP): DASH)이 가능한 네트워크 아키텍처의 실시예에 대한 개략도이다.
도 2는 DASH 통신 방법의 실시예에 대한 프로토콜 도면이다.
도 3은 DASH 전달 프로세스 모델의 실시예에 대한 개략도이다.
도 4는 DASH 클라이언트 프로세스 모델의 실시예에 대한 개략도이다.
도 5는 NE의 실시예에 대한 개략도이다.
서두로부터, 하나 이상의 실시예의 도해적 실행을 이하에 제공하지만, 본 발명의 시스템 및/또는 방법은 현재 알려진 또는 존재하는 임의의 기술을 사용하여 실행될 수도 있다는 것을 이해할 수 있을 것이다. 본 발명은 여기에 도해되고 설명된 예시적인 설계 및 실행을 포함한, 도해적 실행, 도면, 및 이하에 설명되는 기술에 제한되지 않으며, 첨부된 특허청구범위의 범위 및 그 완전한 등가의 범위 내에서 수정될 수 있다.
적응형 스트리밍에서, 사용자 기기는 다양한 요인, 예를 들어, 네트워크 조건, 기기 성능, 및 사용자 선택에 기초하여 사용자 기기에 미디어 콘텐츠를 전달할 때 적절한 세그먼트를 동적으로 선택할 수 있다. 적응형 스트리밍은 실현된 또는 개방 중인 다양한 기술 또는 표준을 포함할 수 있는데, 예를 들어, DASH, HTTP 라이브 스트리밍(HTTP Live Streaming: HLS), 또는 인터넷 정보 서비스(Internet Information Services: IIS) 평활 스트리밍을 포함할 수 있다. DASH를 적용할 때, 미디어 콘텐츠 제공자는 요청을 받으면 클라이언트에 미디어 프레젠테이션 설명(media presentation description: MPD) 파일을 전송할 수 있다. MPD 파일은 확장 마크업 언어(extensible markup language: XML) 문서일 수 있고, 미디어 세그먼트를 세그먼트로서 설명할 수 있고 그러한 세그먼트가 사용자에게 미디어 콘텐츠를 제공하는 데 어떻게 활용될 수 있는지를 설명할 수 있다. 예를 들어, MPD 파일은 세그먼트 타이밍, 세그먼트 멀티플렉싱(예를 들어, 오디오 세그먼트 타이밍과 비디오 세그먼트 타이밍 간의 보간), 및/또는 그러한 세그먼트가 획득될 수 있는 유니폼 리소스 식별자(Uniform Resource Locator: URL) 정보를 설명할 수 있다. 예를 들어, 스트리밍 미디어 콘텐츠는 수 개의 미디어 성분(예를 들어, 오디오, 비디오 및 텍스트)을 포함할 수 있고, 각각은 MPD에 규정된 상이한 특성을 가진다.
미디어 콘텐츠에 대한 탬퍼링, 공격, 및/또는 비인증 액세스를 방지하기 위해, 미디어 콘텐츠의 세그먼트는 인증 방식을 통해 보호될 수 있는데, 여기서는 이를 암호화 또는 인코딩 방식이라 한다. 콘텐츠 암호화에 대해서는, 동영상 전문가 그룹(Moving Picture Experts Group: MPEG)이 특정한 프레임워크를 개발하였는데, 예를 들어, 이 프레임워크는 표준화/국제전기통신위원회기구(Organization for Standardization/International Electrotechnical Commission: ISO/IEC) 문서 번호 23001-7, 명칭 "MPEG systems technologies - Part 7: Common encryption in ISO base media file format files" 및 문서 번호 23009-4, 명칭 "Dynamic Adaptive Streaming over HTTP (DASH) - Part 4: Segment Encryption and Authentication" (ISO/IEC 23009-4)에서 다시 고려되었다(여기서는 "Part 4"라 칭하며, 본 명세서에 원용되어 병합된다). MPEG 스트림을 인코딩하는 종래의 방식은 일반적으로 스트림 인코딩을 위한 단일 알고리즘 방식에 의존하였다. 그렇지만, 이러한 방식은 단일 MPEG 스트림, 예를 들어, 제1 소스로부터의 엔터테인먼트 콘텐츠 및 제2 소스로부터의 광고에 다른 소스가 합해지는 것을 허용하지 않는다.
본 명세서에서는 MPD 파일 내의 시그널링 필드를 활용하여 MPD에 이어지는 스트림에 적용되는 암호화 방식을 나타내는 실시예에 대해 개시한다. 이것은 보호 및 비보호 콘텐츠가 적응적이고 유효한 방식으로 조정된, 구체적으로 처리된 권한으로서 취급되도록, 예를 들어, 암호화되는 것을 허용할 수 있다. 또한, 개시된 실시예는 예를 들어 콘텐츠 성분 자체를 검색 및 시험함이 없이 시그널링을 통해 콘텐츠가 취급되도록 허용할 수 있다. 그러므로 개시된 실시예는 암호화 메타데이터, 키, 라이선스, 필요한 시스템 등이 획득되도록 허용될 수 있어서 클라이언트로 하여금 콘텐츠 성분 자체를 검색 및 시험함이 없이 선택하고 동적 적응을 수행할 수 있게 한다.
도 1은 도 2의 프로토콜 다이어그램에 따라 통신하는 DASH 가능한 네트워크(100) 아키텍처의 실시예에 대한 개략도이다. 네트워크(100)는 도 1에 도시된 바와 같이 배열된 HTTP 서버(110), 키 서버(150), HTTP 캐시(120), 및 DASH 클라이언트(130)를 포함할 수 있다. HTTP 서버(110)는 DASH 클라이언트(130)로부터의 HTTP 요구를 서비스하도록 구성된 임의의 장치일 수 있다. 키 서버(150)는 DASH 클라이언트(130)로부터의 키 및/또는 초기화 벡터(initialization vector: IV) 요구를 서비스하도록 구성된 임의의 장치일 수 있다. 대안의 라이선스 기반 실시예에서, 키 서버(150)는 당업자가 이해할 수 있는 바와 같이, 라이선스 서버로 대체될 수 있다. HTTP 서버(110) 및 키 서버(150)는 동일한 기기에 위치할 수도 있고, 서로 다른 기기에 위치할 수도 있으며, 기기의 클러스터 간에 확산될 수도 있다. 예를 들어, HTTP 서버(110) 및/또는 키 서버(150)는 데이터 센터에 위치하는 전용 서버를 포함할 수 있다. 다른 예로서, HTTP 서버(110) 및/또는 키 서버(150)는 클라우드 컴퓨팅 환경에서 가상 머신(virtual machines: VM)으로서 동작할 수 있다. HTTP 서버(110)는 또한 콘텐츠 제공자 네트워크의 일부일 수도 있고 콘텐츠 분배 네트워크(content distribution network: CDN) 내의 노드일 수도 있다. HTTP 서버(110)는 URL 및/또는 URL 방식을 지시하는 정보와 MPD 파일을 상주시킬 수 있으며, 이는 DASH 클라이언트(130)로 하여금 세그먼트 데이터를 위치시킬 수 있게 한다. HTTP 서버(110)는 URL 및/또는 URL 방식을 지시하는 정보와 MPD 파일을 추가로 상주시킬 수 있는데, 이는 DASH 클라이언트(130)로 하여금 관련 키 및/또는 IV를 키 서버(150)에 위치시킬 수 있게 한다. HTTP 서버(110)는 임의의 정보와 MPD 파일을 추가로 상주시킬 수 있고 DASH 클라이언트(130)는 데이터, 예를 들어, 주기 정보, 타이밍, 세그먼트 포맷 정보, 멀티플렉싱 정보 등을 제공하기 위해 요구할 수 있다. HTTP 서버(110)는 그런 다음 MPD 파일을 요구 시에 DASH 클라이언트(130)에 전송할 수 있다. HTTP 서버(110)는 또한 세그먼트 및/또는 메시지 인증 코드(message authentication codes: MAC)를 요구 시에 DASH 클라이언트(130)에 전송할 수 있다.
HTTP 캐시(120)는 DASH 클라이언트(130)에 의한 급속 액세스를 위해 정보를 일시적으로 저장하도록 구성된 임의의 장치일 수 있다. 예를 들어, HTTP 서버(120)는 DASH 클라이언트(130)에 저장되어 있는 소프트웨어 기반 캐시일 수 있는 브라우저 캐시, DASH 클라이언트(130)의 네트워크 상의 공유 캐시일 수 있는 프록시 캐시, 키 서버(150) 및/또는 HTTP 서버(110)와 같이 동일한 네트워크에 설치된 공유 캐시일 수 있는 게이트웨이 캐시, 또는 이것들의 조합일 수 있다. HTTP 캐시(120)는 세그먼트 데이터, MPD 파일, MAC 및/또는 임의의 다른 데이터를 저장할 수 있고 DASH 클라이언트(130)는 미디어 콘텐츠를 제공하도록 요구할 수 있다.
DASH 클라이언트(130)는 DASH 프로토콜을 통해 미디어 콘텐츠를 획득하고 이러한 미디어 콘텐츠를 사용자, 예를 들어, 이동전화, 퍼스널 컴퓨터(PC), 인터넷 프로토콜(IP) 텔레비전(TV), IP TV 셋톱박스, 랩톱 PC, 인터넷 무선 기기, 태블릿 PC, 미디어 저장 장치 등에 제공하도록 구성된 임의의 기기일 수 있다. DASH 클라이언트(130)는 웹 브라우저, 미디어 플레이어, 비디오 프레젠터, 또는 비디오 및/또는 오디오 재생에 적합한 임의의 다른 프로그램을 통해 콘텐츠를 제공할 수 있다. DASH 클라이언트(130)는 미디어 콘텐츠(예를 들어, 스크린을 통한 시각 데이터, 스피커를 통한 오디오 데이터 등)를 직접 제공할 수 있고 및/또는 미디어 콘텐츠를 제공을 위한 다른 기기(들)에 저장 및/또는 전송할 수도 있다. DASH 클라이언트(130)는 예를 들어 HTTP GET 요구를 통해 MPD 파일을 요구할 수 있다. DASH 클라이언트(130)는 그런 다음 MPD 파일을 검색하여 키, IV, MAC, 사이퍼, 세그먼트 등을 위한 URL을 결정할 수 있다. DASH 클라이언트(130)는 또한 예를 들어 HTTP GET 요구(들)를 통해 키 서버(150) 및/또는 HTTP 서버(110)에 미디어 콘텐츠를 표시하는 데 필요한 임의의 키, IV, MAC, 사이퍼, 세그먼트 등을 획득할 수 있다. 필요한 정보를 수신하면, DASH 클라이언트(130)는 사이퍼(들), 키(들), 및/또는 IV로 세그먼트를 암호해제하고, MAC로 세그먼트(들)를 인증하며, MPD에 의해 지시되는 대로 세그먼트 데이터를 선택 및/또는 멀티플렉스하며, 미디어 콘텐츠를 사용자에게 제공하고 및/또는 미디어 콘텐츠를 저장하기 위한 및/또는 사용자에게 제공하기 위한 다른 기기에 전송할 수 있다. 설명을 간략하게 하기 위해 하나의 DASH 클라이언트(130)만이 도시되어 있으나, HTTP 서법(110)으로부터 동일한 및/또는 상이한 미디어 프레젠테이션을 임의의 지정된 시간에 요구할 수 있는 많은 DASH 클라이언트(130)가 있을 수 있다는 것에 유의해야 한다.
도 2는 DASH 통신 방법(200)의 실시예에 대한 프로토콜 도면이다. 단계 210에서, DASH 클라이언트(130)는 HTTP 캐시(120)를 통해 HTTP 서버(110)에 데이터를 요구할 수 있다. 데이터는 MPD, 미디어 콘텐츠 세그먼트, 또는 데이터와 관련된 임의의 다른 DASH를 포함할 수 있다. DASH 클라이언트(130)로부터 요구를 수신하면, HTTP 캐시(120)는 그 요구된 데이터가 HTTP 캐시(120)에 이미 저장되어 있는지를 판정할 수 있다. 데이터가 저장되어 있으면, 단계 220에서 HTTP 캐시(120)는 이 요구를 서버(110)에 포워딩함이 없이 DASH 클라이언트(130)에 요구하도록 응답할 수 있다. 요구된 데이터가 HTTP 캐시(120)에 저장되어 있지 않으면, 단계 230에서, HTTP 캐시(120)는 그 요구를 HTTP 서버(110)에 포워딩할 수 있다. 단계 240에서, HTTP 서버(110)는 그 요구된 데이터를 HTTP 캐시(120)에 전송함으로써 응답할 수 있다. HTTP 캐시(120)는 단계 250에서 그 응답을 DASH 클라이언트(130)에 요구하는 것에 포워딩하거나 및/또는 동일한 또는 상이한 DASH 클라이언트(130)에 의한 나중의 사용을 위해 고속의 액세스를 위한 응답으로부터 임의의 데이터를 저장할 수 있다. HTTP 캐시(120)로부터 수신된 데이터에 기초하여, 단계 260에서, DASH 클라이언트(130)는 키 서버(150)로부터 관련 키 및/또는 IV를 요구할 수 있다. 단계 270에서, 키 서버(150)로부터 그 요구된 성분을 수신한 후, DASH 클라이언트(130)는 미디어 콘텐츠 세그먼트를 암호해제하고, MPD에 따라 세그먼트에 포함되어 있는 미디어 콘텐츠를 배열하며, 미디어 콘텐츠를 사용자에 제공할 수 있다.
도 3은 DASH 전달 처리 모델(300)의 실시예에 대한 도면이다. 모델(300)은 DASH 미디어 프레젠테이션 준비 기능(310)을 포함할 수 있으며, 이것은 HTTP 서버(110)와 같은 HTTP 서버, 콘텐츠 제공자 서버 등에서 실행될 수 있다. 모델(300)은 MPD 전달 기능(312) 및 DASH 세그먼트 전달 기능(314)을 더 포함할 수 있으며, 이러한 기능들은 HTTP 서버(110)와 같은 HTTP 서버 상에서 실행될 수 있다. 모델(300)은 HTTP 캐시(320) 및 DASH 클라이언트(330)를 더 포함할 수 있으며, 이것들은 각각 HTTP 캐시(120) 및 DASH 클라이언트(130)와 실질적으로 유사할 수 있다. DASH 미디어 프레젠테이션 준비 기능(310), MPD 전달 기능(312), 및 DASH 세그먼트 전달 기능(314)은 MPD(341) 및 관련 세그먼트(343)를 HTTP 캐시(320)를 통해 DASH 클라이언트(330)에 전송하도록 동작할 수 있다.
DASH 미디어 프레젠테이션 준비 기능(310)은 DASH 클라이언트(330)가 볼 수 있도록 미디어 프레젠테이션을 준비하도록 구성될 수 있다. 예를 들어, DASH 미디어 프레젠테이션 준비 기능(310)은 CDN으로부터 미디어 콘텐츠에 관한 데이터를 수신할 수 있고 이 미디어 콘텐츠를 설명하기 위한 MPD를 준비할 수 있다. MPD는 키, IV, 사이퍼, 세그먼트, 및/또는 MAC에 대한 URL을 열거할 수 있다. MPD는 이러한 URL을 정적 어드레스로서 및/또는 관련 URL을 결정하는 데 사용될 수 있는 기능으로서 열거할 수 있다. MPD는 XML을 사용하여 생성될 수 있다. MPD는 하나 이상의 주기 동안 정보를 포함할 수 있다. 각각의 주기는 하나 이상의 적응 집합을 포함할 수 있다. 각각의 적응 집합은 하나 이상의 레프리젠테이션을 포함할 수 있다. 각각의 프레젠테이션은 하나 이상의 세그먼트를 포함할 수 있다. 주기는 타이밍 데이터를 포함할 수 있고 미디어 콘텐츠의 인코딩된 버전의 일치하는 집합(예를 들어, 변경되지 않는 이용 가능한 비트레이트, 언어, 캡션, 자막 등의 집합)이 이용 가능한 콘텐츠 주기를 표시할 수 있다. 예를 들어, 제1 적응 집합은 메인 비디오 성분을 포함할 수 있고, 제2 적응 집합은 메인 오디오 성분을 포함할 수 있으며, 제3 적응 집합은 캡션 등을 포함할 수 있다. 적응 집합은 또한 결합된 비디오 및 오디오와 같이, 멀티플렉싱된 콘텐츠를 포함할 수 있다. 레프리젠테이션은 ISO 베이스 미디오 파일 포맷(ISO-BMFF) 버전, 동영상 전문가 그룹(MPEG) 버전, 2개의 트랜스포트 시스템(MPEG-2 TS) 버전 등과 같이, 하나 이상의 미디어 콘텐츠 성분의 전달 가능한 인코딩된 버전을 설명할 수 있다. 적응은 예를 들어 필요한 코덱, 암호해제, 및/또는 미디어 콘텐츠를 제공하는 데 필요한 다른 데이터를 설명할 수 있다. DASH 클라이언트(330)는 네트워크 조건, 기기 성능, 사용자 선택 등에 기초하여 레프리젠테이션 간을 동적으로 전환할 수 있으며, 이것들을 적응성 스트리밍이라 한다. 각각의 세그먼트는 미디어 콘텐츠 데이터를 포함할 수 있고, URL과 연관될 수 있으며, DASH 클라이언트(330)에 의해 예를 들어 HTTP GET 요구로 검색될 수 있다. 각각의 세그먼트는 미디어 콘텐츠의 미리 정해진 바이트 크기(예를 들어, 1,000 바이트) 및/또는 재생 시간의 간격(예를 들어, 2 또는 5초)을 포함할 수 있다. 세그먼트는 MPD를 통해 광고하는 URL을 사용하여 다운로드될 수 있는 최소의 개별적인 어드레스 가능한 단위의 데이터를 포함할 수 있다. 주기, 적응 집합, 레프리젠테이션, 및/또는 세그먼트는 속성 및 요소와 관련해서 설명될 수 있으며, 이것들은 DASH 클라이언트(330)에 의한 미디어 콘텐츠의 프레젠테이션을 영향을 주도록 수정될 수 있다. MPD를 수신하면, DASH 미디어 프레젠테이션 준비 기능(310)은 MPD 전달 기능(312)에 MPD를 전달할 수 있다.
DASH 클라이언트(330)는 MPD 전달 기능(312)에 의해 MPD(341)가 전달되도록 요구할 수 있다. MPD 전달 기능(312)은 HTTP 캐시(320)를 통해 MPD(341)에 응답할 수 있다. MPD 내의 어드레스 데이터에 기초해서, DASH 클라이언트(330)는 DASH 세그먼트 전달 기능(314)으로부터 적절한 세그먼트(343)를 요구할 수 있다. 세그먼트(343)는 복수의 DASH 세그먼트 전달 기능(314) 및/또는 복수의 URL 및/또는 물리적 위치로부터 검색될 수 있다. DASH 클라이언트(330)는 MPD(341) 내의 명령에 기초하여 그 검색된 세그먼트(343)를 제공할 수 있다.
도 4는 DASH 클라이언트 처리 모델(400)의 실시예에 대한 개략도이다. 모델(400)은 DASH 액세스 엔진(432) 및 미디어 엔진(434)을 포함할 수 있으며, 이것들은 DASH 클라이언트(130 및/또는 330)와 같은 DASH 클라이언트에서 실현될 수 있다. DASH 액세스 엔진(432)은 MPD를 해석하고, 미디어 데이터를 요구하며, 이러한 데이터를 검색하도록 구성된 임의의 성분일 수 있다. 예를 들어, DASH 액세스 엔진(432)은 MPD 전달 기능(312)과 같은 MPD 전달 기능으로부터 MPD(341)와 같은 MPD(441)를 요구할 수 있다. MPD(441)에 기초하여, DASH 액세스 엔진(432)은 또한 DASH 세그먼트 전달 기능(314)과 같은 DASH 세그먼트 전달 기능으로부터 세그먼트 데이터(443)를 요구할 수 있다. 또한, MPD(441)에 기초하여, DASH 액세스 엔진(432)은 MAC와 같은 임의의 보안 데이터(449)를 HTTP 서버에 요구하여, 세그먼트 데이터(443) 및/또는 사이퍼, IV, 및/또는 키를 인증함으로써 세그먼트 데이터(443)를 암호해제한다. 세그먼트 데이터(443)가 암호해제되고 인증되면, DASH 액세스 엔진(432)은 포맷, 미디어, 및/또는 타이밍(445)을 미디어 엔진(434)에 포워딩할 수 있다. 미디어 엔진(434)은 포맷, 미디어, 및/또는 타이밍(445)을 수신하고 포맷, 미디어, 및/또는 타이밍(445)에 기초하여 미디어 출력(447)을 준비하도록 구성된 임의의 성분일 수 있다. 미디어 출력(447)은 사용자에게의 프레젠테이션을 위한 성분(예를 들어, 스크린, 스피커 등)에 저장 및/또는 전송될 수 있다.
도 5는 NE(500)의 실시예에 대한 개략도이며, 이것은 네트워크(100) 및/또는 모델(300)과 같은 네트워크 및/또는 모델 내에서, 예를 들어, HTTP 서버(110), 키 서버(150), DASH 미디어 프레젠테이션 준비 기능(310), MPD 전달 기능(312), 및/또는 DASH 세그먼트 전달 기능(314)과 같이, DASH 서버로서 작동할 수 있으며, MPD를 생성하거나 및/또는 DASH 클라이언트(330 및/또는 330)와 같은 DASH 클라이언트에 세그먼트를 전송하도록 구성될 수 있다. NE(500)는 단일 노드 내에서 실현될 수 있거나 CDN 내의 복수의 노드 내에서 실현될 수 있거나 다른 콘텐츠 기반 네트워크에서 실현될 수 있다. 일부의 실시예에서, NE(500)는 또한 네트워크(100) 및/또는 모델(300)에서 다른 노드(들)로서 작동할 수 있다. 당업자라면 NE(500)는 단지 예시일 뿐 NE는 넓은 범위의 기기를 망라한다는 것을 인식할 것이다. NE(500)는 설명을 간략하게 하기 위해 포함된 것이며, 특별한 NE 실시예에 대한 본 개시의 애플리케이션 또는 NE 실시예의 분류에 제한을 두지 않는다. 본 개시에서 설명된 특징/방법 중 적어도 일부는 NE(500)와 같은 네트워크 장치 또는 성분에서 실현될 수 있다. 예를 들어, 본 개시에서의 특징/방법은 하드웨어, 펌웨어, 및/또는 하드웨어 상에서 설치되어 있는 소프트웨어를 사용하여 실현될 수 있다. NE(500)는 네트워크를 통해 프레임을 수송하는 임의의 기기, 예를 들어, 스위치, 라우터, 브리지, 서버, 클라이언트 등일 수 있다. 도 5에 도시된 바와 같이, NE(500)는 트랜스시버(Tx/Rx)(510)를 포함할 수 있으며, 이것은 전송기, 수신기, 또는 이것들의 조합일 수 있다. Tx/Rx(510)는 다른 노드로부터 프레임을 전송 및/또는 수신하기 위한 복수의 다운스트림 포트(520)(예를 들어, 다운스트림 인터페이스)에 연결될 수 있고 Tx/Rx(510)는 다른 노드로부터 프레임을 전송 및/또는 수신하기 위한 복수의 업스트림 포트(550)(예를 들어, 업스트림 인터페이스)에 각각 연결될 수 있다. 프로세서(530)는 Tx/Rx(510)에 결합되어 프레임을 처리하거나 및/또는 프레임을 어느 노드에 송신할지를 결정할 수 있다. 프로세서(530)는 하나 이상의 멀티-코더 프로세서 및/또는 데이터를 저장, 버퍼링하는 것과 같이 기능할 수 있는 메모리 장치(532)를 포함할 수 있다. 프로세서(530)는 범용 프로세서로서 실현될 수 있거나 하나 이상의 주문형 집적회로(ASIC) 및/또는 디지털 신호 프로세서(DSP)의 일부일 수 있다. 프로세서(530)는 MPD 모듈(534) 및/또는 세그먼트 모듈(535)을 포함할 수 있다. MPD 모듈(534)은 요구 시에 MPD를 준비하거나 및/또는 MPD를 클라이언트에 포워딩할 수 있다. 세그먼트 모듈(534)은 요구 시에 세그먼트를 클라이언트에 포워딩할 수 있다. 대안의 실시예에서, MPD 모듈(534) 및/또는 세그먼트 모듈(535)은 메모리(532)에 저장되어 있는 명령으로서 실행될 수 있으며, 이 명령은 프로세서(530)에 의해 실행될 수 있다. 다른 대안의 실시예에서, MPD 모듈(534) 및 세그먼트 모듈(535)은 별개의 NE 상에서 실현될 수 있다. 다운스트림 포트(520) 및/또는 업스트림 포트(550)는 전기적 및/또는 선택적 전송 및/또는 수신 성분을 포함할 수 있다.
실행 가능한 명령을 NE(500)에 프로그래밍 및/또는 로딩함으로써, 프로세서(530), MPD 모듈(534), 세그먼트 모듈(535), 다운스트림 포트(520), Tx/Rx(510), 메모리(532), 및/또는 업스트림 포트(550) 중 적어도 하나가 변경되며, NE(500)는 본 발명에서 제시하는 새로운 기능을 가지는 특별한 머신 또는 장치, 예를 들어, 멀티-코어 포워딩 아키텍처로 부분적으로 변환될 수 있다는 것을 이해할 수 있을 것이다. 실해 가능한 소프트웨어를 컴퓨터에 로딩함으로써 실행될 수 있는 기능이 잘 알려진 설계 규칙에 의해 하드웨어 실현으로 변환될 수 있다는 것은 전기 공학 및 소프트웨어 공학에서는 기본적인 것이다. 소프트웨어로 실현할 것인지 또는 하드웨어로 실현할 것인지의 개념은 통상적으로 소프트웨어의 영역으로부터 하드웨어의 영역으로의 변환 시에 참여하는 어떤 문제보다는 유닛의 수와 설계의 안정성을 고려해서 결정된다. 일반적으로, 변경을 빈번하게 해야 하는 설계는 소프트웨어로 실현하는 것이 바람직할 수 있는데, 이는 하드웨어 실현을 재회전시키는 것은 소프트웨어 설계를 재회전시키는 것보다 비용이 많이 들기 때문이다. 일반적으로, 대량 생산하는 데 안정적인 설계는 하드웨어, 예를 들어, ASIC로 실현하는 것이 바람직할 수 있는데, 이는 대량 생산에 있어서는 하드웨어 실현이 소프트웨어 실현보다 저렴하기 때문이다. 흔히 설계는 소프트웨어 형태로 개발되고 검사된 후 소프트웨어의 명령을 고정시키는 주문형 집적회로의 등가의 하드웨어 실현으로 변환될 수 있다. 새로운 ASIC에 의해 제어되는 머신이 특별한 머신 또는 장치인 것과 같은 방식으로, 마찬가지로 실행 가능한 명령이 프로그램 및/또는 로딩된 컴퓨터가 특별한 머신 또는 장치로 보일 수 있다.
MPD는 ISO/IEC 23009-1, 명칭 "Dynamic Adaptive Streaming over HTTP (DASH) - Part 1: Media presentation description and segment formats"에 설명된 바와 같이, 소정의 공통 속성 및 요소를 포함할 수 있으며, 상기 문헌은 본 명세서에 원용되어 병합된다. 하나의 이러한 요소는 콘텐츠 보호 요소이고, 이는 관련 레프리젠테이션에 사용되는 콘텐츠 보호 방식에 관한 정보를 지정할 수 있다. MPD는 또한 DASH 콘텐츠 저자에 융통성 있는 메커니즘을 제공하는 디스크립터를 포함하여 MPD, 주기, 적응 집합 및 레프리젠테이션 요소를 주해하고 확장할 수 있다. 유형 DescriptorType의 요소 내의 속성의 세만틱스는 이하의 신택스 및 세만틱스를 사용하여 Part 1에 설명된다:
요소 또는 속성명 사용 설명
DescriptorType
@schemeIdUri M URI(uniform resource identifier)를 지정하여 방식을 식별한다. The semantics of this element are specific to the scheme specified by this attribute. 이 요소의 세만틱스는 이 속성에 의해 지정된 방식에 특정되어 있다. @schemeIdUri는 URN(uniform resource name) 또는 URL일 수 있다. URL이 사용될 때, mmyyyy 형태의 연월일을 포함하여야 하고; URL의 할당은 도메인명이 소원권이 변경될 때의 문제를 회피할 수 있도록 그 날짜에 정확히 또는 근접한 날에 URL에 도메인명의 소유자에 의해 권한이 부여되어야 한다.
@value O 디스크립터 요소에 대한 값을 지정한다. 값 공간 및 세만틱스는 @schemeIdUri 속성에 식별된 방식의 소유자에 의해 규정되어야 한다.
범례:
속성에 있어서: M=의무, O=선택, OD=디폴트 값을 가진 선택, CM=조건적 의무.
요소에 있어서: <minOccurs>...<maxOccurs> (N=unbounded)
요소는 볼드체이고; 속성은 볼드체가 아니고 @가 앞에 붙는다.
DASH는 또한 다양한 형태의 콘텐츠 보호를 지원할 수 있다. 예를 들어, 세그먼트(들)는 암호화될 수 있고, MPD는 클라이언트가 사용자에게 프레젠테이션하기 전에 각각의 세그먼트를 암호해제 및/또는 인증하는 데 사용할 수 있는 정보를 포함할 수 있다. DASH 콘텐츠 보호는 Part 4에 더 설명되어 있다. 공통 암호화(Common Encryption: CENC)는 ISO-BMFF 파일의 어느 부분들이 표준의 어드밴스트 암호화 표준(Advanced Encryption Standard: AES) 카운터 모드(Counter Mode)(AES-CTR) 또는 사이퍼블록 체이닝(Cipherblock Chaining: AES-CBC) 모드, 예를 들어, AES-128 CBC 완전-세그먼트 암호화 모드를 사용하여 암호화될 수 있는지를 표준화하고, 암호화 메타데이터가 트랙 내에서 어떻게 시그널링되는지를 표준화한다. CENC는 암호화/암호해제 키를 클라이언트에 전달하는 책임이 있는 콘텐츠 보호 시스템이고, 암호해제 메타데이터가 파일에 부여된다. CENC 프레임워크는 확장 가능하고 규정되어 있다면 이러한 2가지를 넘어 다른 암호화 알고리즘을 사용할 수 있다. CENC는 잘 알려져 있으며 수개의 상업적 디지털 권한 관리(Digital Rights Management: DRM) 시스템, 예를 들어
Figure 112015013129646-pct00001
과 현재 사용되고 있다. CENC는 또한 CENC 방식을 시그널링하는 메커니즘을 제공하고 DASH 콘텐츠 보호 디스크립터 내의 암호화 키 식별자를 수반할 수 있다. 구체적으로, CENC 방식은 ISO 미디어 파일에 대한 콘텐츠 보호 방식 식별자 "mp4protection"에 의해 시그널링될 수 있고, ContentProtection 디스크립터와 연관된 콘텐츠 세그먼트를 암호화하는 데 사용되는 키의 식별자는 속성 "Default_KID"을 사용하여 제공될 수 있으며, 그 값은 상이한 default_KID 값의 공간-무제한 목록이다.
@schemeIdUri 속성은 요소 ContentProtection가 콘텐츠 보호 방식을 식별하는 데 사용될 수 있다. Part 1에 설명된 바와 같이, ContentProtection 속성은 가능한 @value 및/또는 확장 속성 및 요소와 결합하여, 충분한 정보를 제공할 수 있는데, 예를 들어, DRM 시스템(들), 암호화 알고리즘(들), 및 키 분배 방식(들)이 적용되어, 클라이언트로 하여금 그 보호된 콘텐츠를 재생할 수 있는지를 판정할 수 있게 한다. ContentProtection 요소는 별도의 namespace에서 확장되어 콘텐츠 보호 방식(예를 들어, 특별한 키 관리 시스템 또는 암호화 방법)에 특정한 정보를 제공할 수 있다. ContentProtection 요소가 제공되지 않을 때, 콘텐츠는 콘텐츠-보호되지 않는다. 복수의 ContentProtection 요소가 제공될 때, 각각의 요소는 레프리젠테이션을 액세스하고 제공하는 데 충분한 콘텐츠 보호 방식을 설명할 수 있다.
Part 4가 설명하는 바와 같이, 암호화 포맷의 애플리케이션은 암호화된 세그먼트에 적용 가능한 ContentProtection 디스크립터 내의 @schemeIdUri에 대한 값으로서 URN urn:mpeg:dash:sea:enc:2013을 사용하여 선언될 수 있다. ContentProtection 디스크립터는 제로 또는 그 이상의 Cryptoperiod 및/또는 CryptoTimeline 요소를 포함할 수 있다. 각각의 미디어 세그먼트는 제로 또는 하나의 Cryptoperiod와 관련될 수 있으며; 미디오 세그먼트와 관련된 Cryptoperiod를 갖지 않는 세그먼트는 암호화될 수 없다. Cryptoperiod에서, 세그먼트는 동일한 키/IV 페어로 암호화될 수 있다. Cryptoperiod의 속성은 키, IV, 제1 세그먼트 번호 및 최종 세그먼트 번호를 포함할 수 있다. ContentProtection 디스크립터가 Part 1에 규정된 바와 같이, namespace urn:mpeg:dash:schema:mpd:2011에 규정될 수 있는 반면, SegmentEncryption, Cryptoperiod 및 CryptoTimeline은 namespace urn:mpeg:dash:schema:sea:2013에 규정될 수 있다. ContentProtection 요소의 세만틱스는 다음과 같이 될 수 있다:
요소 또는 속성명 사용 설명
ContentProtection
@schemeIdUri M urn:mpeg:dash:sea:enc:2013일 수 있다.
sea:SegmentEncryption 1 사용된 암호화 시스템 및 그 글로벌 속성을 지정할 수 있다.
sea:License 0..N 필요하다면, 사용된 키 시스템 및 라인센스를 취득하는 방식을 지정할 수 있다.
sea:Cryptoperiod 0..N 단일의 Cryptoperiod에 대한 키 및 IV의 유도에 필요한 정보를 지정할 수 있다.
sea:CryptoTimeline 0..N 수 개의 일정한 길이의 Cryptoperiod에 대한 키 및 IV의 유도에 필요한 정보를 지정할 수 있다.
범례:
속성에 있어서: M=의무, O=선택, OD=디폴트 값을 가진 선택, CM=조건적 의무.
요소에 있어서: <minOccurs>...<maxOccurs> (N=unbounded)
요소는 볼드체이고; 속성은 볼드체가 아니고 @가 앞에 붙는다.
SegmentEncryption 요소는 모든 Cryptoperiods에서 사용된 바와 같은 세그먼트 암호화의 글로벌 속성을 설명할 수 있고, Part 4에 설명된 세만틱스를 가질 수 있다. 라이선스 요소는 모든 Cryptoperiods에서 사용된 바와 같은 키 시스템의 글로벌 속성을 설명할 수 있고, Part 4에 설명된 세만틱스를 가질 수 있다. Cryptoperiod 요소는 단일의 Cryptoperiod를 규정할 수 있는데, 즉, 암호화 키 및 초기화 벡터의 유도뿐만 아니라 이 2개의 요소를 사용해서 암호화된 식별 세그먼트를 허용하는 정보를 제공할 수 있고, Part 4에 설명된 세만틱스를 가질 수 있다. Cryptoperiod 요소는 시작 세그먼트에 고유하게 대응할 수 있고, Part 4에 설명된 세만틱스를 가질 수 있다. Cryptoperiod 요소는 명시적으로 지정된 지속기간(예를 들어, 세그먼트의 수)을 가질 수 있거나, 계속 이어질 수 있거나(예를 들어, 현재 주기의 종료까지 계속된다), Part 4에 설명된 세만틱스를 가질 수 있다. CryptoTimeline 요소는 일정한 길이의 복수의 Cryptoperiods의 유도에 사용될 수 있다. 단일의 Cryptoperiod가 단일의 Cryptoperiod에 대응할 수 있는 반면, 단일의 CryptoTimeline은 복수의 Cryptoperiods에 대응할 수 있다.
본 발명은 예를 들어 암호화 알고리즘을 식별하는 필드, 초기화 벡터 크기를 식별하는 필드, 키 관리 시스템 하의 콘텐츠 보호 시스템을 식별하는 필드, 및 관련 세그먼트를 암호화하는 데 필요한 기를 식별할 수 있는 고유의 키 식별자를 식별하는 필드를 부가함으로써, 현존하는 시그널링 메커니즘을 확장할 수 있는 실시예를 포함한다. 하나 이상의 개시된 실시예를 활용하는 것은 암호화된 세그먼트 자체를 검색할 필요 없이 복수의 암호화 알고리즘 및/또는 메커니즘을 가지는 전송을 암호해제하는 것을 지원할 수 있다. 개시된 실시예 중 하나 이상을 사용하는 것은 또한, 그 내부의 포맷 및 구조를 고려함이 없이 전체적으로 암호화되지 않고, 예를 들어, CENC에 의해 암호화되지 않고, 그리고 예를 들어 DASH MPD 및/또는 MMT 콤포지션 정보 및 트랜스포트 특성 내에서 관련 메타데이터를 지정하기 위해 시그널링 콘텐츠 아이템(예를 들어, DASH 세그먼트, MPEG 미디어 트랜스포트(MPEG media transport: MMT) 패키지, MMT 애셋, MMT 프래그먼트 등)를 지원할 수 있다. 개시된 실시예는 이하의 세만틱스 특정을 가지는 ContentProtection 요소를 포함함으로써 위의 시그널링 메커니즘을 확장할 수 있다:
요소 또는 속성명 사용 설명
ContentProtection
@schemeIdUri 1 urn:mpeg:dash:sea:2012일 수 있다.
@keyUrlTemplate O Part 1에 규정된 바와 동일한 신택스 및 변수 치환을 사용하여, 키 URL 생성을 위한 템플릿을 지정할 수 있다. 동일한 @keyUrl을 사용하는 세그먼트의 실행에 있어서, 삽입된 $Number$의 값은 관련 Cryptoperiod의 제1 세그먼트의 수일 수 있다. @keyUrlTemplate의 사용은 @ivUrlTemplate 또는 SegmentTemplate의 사용을 의미하지는 않는다는 것에 주의하라.
@ivUrlTemplate O Part 1에 규정된 바와 동일한 신택스 및 변수 치환을 사용하여, IV URL 생성을 위한 템플릿을 지정할 수 있다. 동일한 @IV 또는 @ivUrl을 사용하는 세그먼트의 실행에 있어서, 삽입된 $Number$의 값은 관련 Cryptoperiod의 제1 세그먼트의 수일 수 있다. @ivUrlTemplate의 사용이 @keyUrlTemplate or SegmentTemplate 중 어느 하나의 사용을 의미하지는 않는다는 것에 주의하라.
@algorithm M 세그먼트 암호화에 사용된 알고리즘을 지정할 수 있다.
주의: CBC 모드에서 AES-128에 대한 지원은 의무일 수 있다. CENC에 대해 사용되면, URN's는 urn:mpeg:dash:sea:cenc-X로서 규정될 수 있으며, 여기서 X는 대응하는 세그먼트의 암호화 상태의 식별자 IsEncrypted의 값의 대표이다. 예를 들어, urn:mpeg:dash:sea:cenc-1은 CTR 모드에서 AES 128-비트를 사용하는 세그먼트 암호화를 지시할 수 있다.
@IV_size O 초기화 벡터의 크기를 바이트로 지정할 수 있다.
CENC에 있어서, 이하의 값을 취할 수 있다:
0-는 0-비트 초기화 벡터를 지정한다(암호화되지 않는다).
8-는 64-비트 초기화 벡터를 지정한다.
16-는 128-비트 초기화 벡터를 지정한다.
이 속성은 @algorithm가 값 urn:mpeg:dash:sea:cenc-0을 가질 때 생략될 수 있다.
@systemId 0..N 콘텐츠 보호 및 권한 관리를 처리하고 취급할 수 있는 시스템에 대해 UUID-포맷된 불투명 스트링을 지정할 수 있다. CENC에 사용될 때, `pssh` 박스에 출현하는 바와 동일할 수 있다.
@systemProvider 0..N 콘텐츠 보호 및 권한 관리를 처리하고 취급할 수 있는 시스템에 대해 제공자의 위치를 지정할 수 있다. 이것은 URL의 형태일 수 있다.
@keyAcquisitionUrlTemplate O 키 식별자가 주어진 상태에서 키 검색을 위한 URL 템플릿을 지정할 수 있다. 정규의 DASH 치환 변수 외에, $KeyID$ 치환 변수는 제로-패딩된 16진수 표기법으로 128-비트 무부호 정수로서 규정된다. 바람직하게, 키 획득은 HTTPS를 사용하여 발생할 수 있다. 응답은 16-바이트 이진 코딩된 수일 수 있다.
@licenseUrlTemplate O Part 1에 규정된 바와 동일한 신택스 및 변수 치환을 사용하여, 라이선스 URL 생성을 위한 템플릿을 지정할 수 있다. 동일한 @licenseUrl을 사용하는 세그먼트의 실행에 있어서, 삽입된 $Number$의 값은 관련 Cryptoperiod의 제1 세그먼트의 수일 수 있다. @licenseUrlTemplate의 사용이 @licenseUrlTemplate, @ivUrlTemplate 또는 SegmentTemplate의 사용을 의미하지는 않는다 것에 유의하라.
Cryptoperiod 0..N 단일의 Cryptoperiod에 대한 키 IV 정보의 유도에 필요한 정보 및 URL을 지정할 수 있다.
CryptoTimeline 0..N 동일한 길이의 수개의 Cryptoperiods에 대한 키 및 IV 정보의 유도에 필요한 정보 및 URL을 지정할 수 있다.
선택적으로, @keyAcquisitionUrlTemplate 필드는 변수 $KeyID$를 가지는 후자를 확장함으로써 그리고 전자에 대한 권고를 부가함으로써 @keyUrlTemplate와 합병될 수 있다.
Cryptoperiod 요소 역시 이하의 세만틱스를 사용하여 확장될 수 있다:
요소 및 속성명 사용 설명
Cryptoperiod 키 정보의 유도에 필요한 정보 및 URL을 지정할 수 있다.
@startSegment O 키/IV 정보가 적용되는 제1 미디어 세그먼트의 수를 지정할 수 있다. 지정되지 않으면, Part 4에 지정된 유도 규칙이 적용된다.
@endSegment O 키/IV 정보가 적용되는 최종 미디어 세그먼트의 수를 지정할 수 있다. 지정되지 않으면, Part 4에 지정된 유도 규칙이 적용된다.
@IV O 초기화 벡터를 지정할 수 있다. @ivUrl이 제공되면 제공되지 않는다. IV 유도 규칙은 Part 4에 지정되어 있다.
@keyUrl O 키 유도를 위한 URL을 지정할 수 있다. @keyUrlTemplate이 ContentProtection 요소에 제공되면 @keyUrl은 제공되지 않는다. 키 유도 규칙은 Part 4에 지정되어 있다.
@ivUrl O 초기화 벡터 유도를 위한 URL을 지정한다. @IV가 제공되지 않을 때에만 @ivUrl이 제공되어야 하고, @ivUrlTemplate이 ContentProtection 요소에 제공되면 제공되지 않는다. IV 유도 규칙은 Part 4에 지정되어 있다.
@IV_size O 초기화 벡터의 크기를 바이트로 지정할 수 있다.
CENC에 있어서, 이하의 값을 취할 수 있다:
0-는 0-비트 초기화 벡터를 지정한다(암호화되지 않는다).
8-는 64-비트 초기화 벡터를 지정한다.
16-는 128-비트 초기화 벡터를 지정한다.
이 속성은 @algorithm가 값 urn:mpeg:dash:sea:cenc-0을 가질 때 생략될 수 있다.
@keyAcquisitionUrlTemplate O 키 식별자가 주어진 상태에서 키 검색을 위한 URL 템플릿을 지정할 수 있다. 정규의 DASH 치환 변수 외에, $KeyID$ 치환 변수는 제로-패딩된 16진수 표기법으로 128-비트 무부호 정수로서 규정될 수 있다. 바람직하게, 키 획득은 HTTPS를 사용하여 발생할 수 있을 것이다. 응답은 16-바이트 이진 코딩된 수일 수 있다.
@licenseUrl O 라이선스 획득을 위해 URL을 지정할 수 있다. 라이선스 포맷은 일부의 표준 포맷에 있을 수 있거나 @systemId로 지정되어 있는 시스템에 의존할 수 있다.
당업자라면 이해할 수 있는 바와 같이, 본 명세서에 원용되어 병합되는 ISO/IEC DIS 23008-1, 명칭 "High efficiency coding and media delivery in heterogeneous environments - Part 1: MPEG media transport (MMT)"에 설명된 바와 같은 보안 정보표는 과도한 실험 없이 본 발명에 설명된 기술을 수행하도록 변형될 수 있으며, 따라서 임의의 이러한 변형은 본 발명의 범위 내에 있는 것으로 고려된다.
적어도 하나의 실시예에 대해 설명하였으며, 당업자가 수행하는 실시예(들) 및/또는 실시예(들)의 특징에 대한 변형, 조합, 및/또는 수정은 본 개시의 범위 내에 있다. 실시예(들)의 특징들을 조합, 통합, 및/또는 생략함으로써 생기는 대안의 실시예도 본 개시의 범위 내에 있다. 수치상의 범위 또는 한계를 명시적으로 나타내는 경우, 그러한 표현 범위 또는 한계는 명시적으로 설명된 범위 또는 한계 내에 부합하는 정도의 반복적인 범위 또는 한계를 포함하는 것으로 파악되어야 한다(예를 들어, 약 1부터 약 10까지는 2, 3, 4 등을 포함하고; 0.10보다 크다는 것은 0.11, 0.12, 0.13 등을 포함한다). 예를 들어, 하한 Rl과 상한 Ru를 가지는 수치상의 범위를 설명할 때마다, 그 범위에 부합하는 임의의 수치는 구체적으로 개시된다. 특히, 범위 내에서 이어지는 수치는 구체적으로 개시된다: R = Rl + k*(Ru - Rl)이고, 여기서 k는 1 퍼센트부터 100 퍼센트까지 1 퍼센트씩 증가하는 변수이고, 즉 k는 1 퍼센트, 2 퍼센트, 3 퍼센트, 4 퍼센트, 7 퍼센트, ..., 70 퍼센트, 71 퍼센트, 72 퍼센트, ..., 95 퍼센트, 96 퍼센트, 97 퍼센트, 98 퍼센트, 99 퍼센트, 또는 100 퍼센트이다. 또한, 위에서 규정한 바와 같이 2개의 R 숫자로 규정된 임의의 수치 범위 역시 구체적으로 개시된다. 용어 "관하여"의 사용은 다른 말이 없으면, 후속의 수의 ±10%를 의미한다. 청구의 범위의 임의의 요소와 관련해서 "선택적으로"란 용어는, 그 요소가 필요하거나, 또는 대안으로 그 요소가 필요하지 않으며, 양자의 대안이 청구의 범위 내의 범위에 있다는 의미이다. 포함하는, 구비하는, 및 가지는과 같이 넓은 용어를 사용하는 것은 이루어져 있는 필수적으로 이루어져 있는, 및 실질적으로 이루어져 있는과 같이 좁은 용어를 지원하는 것으로 파악되어야 한다. 여기에 언급된 모든 문헌들은 본 명세서에 원용되어 병합된다.
몇몇 실시예에 대해 본 개시에 제공되었으나, 개시된 시스템 및 방법은 본 개시의 정신 및 범위를 벗어남이 없이 많은 다른 특정한 형태로 구현될 수 있다는 것을 이해해야 한다. 제공된 예는 설명으로서 파악되어야지 제한으로서 파악되어서는 안 되며, 그 의도는 여기에 주어진 상세한 설명에 대한 제한이 아니다는 것이다. 예를 들어, 다양한 요소 및 구성요소는 다른 시스템에 결합 또는 통합될 수 있거나 소정의 특징은 생략될 수 있거나 실현되지 않을 수도 있다.
또한, 다양한 실시예에 독립 또는 별도로 설명되고 도해된 기술, 시스템, 서브시스템 및 방법은 본 개시의 범위를 벗어남이 없이 다른 시스템, 모듈, 기술 또는 방법과 결합되거나 통합될 수 있다. 결합되거나 직접 결합되거나 서로 통신하는 것으로 도시되고 설명된 다른 항목들은 전기적으로, 기계적으로, 또는 그렇지 않은 다른 방식으로든 간에 일부의 인터페이스, 장치, 또는 중간의 구성요소를 통해 직접적으로 결합 또는 통신될 수 있다. 변경, 대체, 및 대안의 다른 예들은 당업자에 의해 확인될 수 있으며 여기에 개시된 정신 및 범위를 벗어남이 없이 이루어질 수 있다.

Claims (23)

  1. 메모리; 및
    상기 메모리에 결합되어 있는 프로세서
    를 포함하고,
    상기 프로세서는,
    복수의 콘텐츠 아이템을 포함하는 미디어 콘텐츠에 대한 보호 설명을 획득하고 - 상기 보호 설명은 미디어 콘텐츠 내의 적어도 2개의 콘텐츠 아이템에 대해 적어도 2개의 보호 메커니즘을 시그널링하는 데이터를 포함하고, 상기 적어도 2개의 콘텐츠 아이템 각각은 상기 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘은 서로 상이함 - ;
    상기 데이터로부터 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 결정하며; 그리고
    상기 적어도 2개의 콘텐츠 아이템을 관련 보호 메커니즘에 따라 처리하도록 구성되어 있는, 장치.
  2. 제1항에 있어서,
    적어도 하나의 보호 메커니즘은, 암호화 알고리즘, 암호화 키, 암호화 키 위치, 초기화 벡터, 초기화 벡터 위치, 디지털 권한 라이선스, 및 디지털 권한 라이선스 위치로 이루어지는 그룹으로부터 선택되는, 장치.
  3. 제1항에 있어서,
    상기 적어도 2개의 콘텐츠 아이템은 공통 암호화 알고리즘을 사용하여 암호화되는, 장치.
  4. 제1항에 있어서,
    상기 보호 설명은 동적 적응 스트리밍 오버 하이퍼텍스트 트랜스퍼 프로토콜(Dynamic Adaptive Streaming over Hypertext Transfer Protocol(HTTP): DASH) 동영상 전문가 그룹 미디어 트랜스포트(Moving Picture Experts Group(MPEG) Media Transport: MMT) 프로토콜을 사용하여 획득되는, 장치.
  5. 제1항에 있어서,
    상기 데이터는 콘텐츠 아이템 전부를 수신하기 전에 수신되는, 장치.
  6. 제1항에 있어서,
    상기 데이터는 상기 적어도 2개의 콘텐츠 아이템을 처리하는 데 필요한 적어도 하나의 시스템에 추가로 시그널링하고,
    상기 시스템은, 디지털 권한 관리(Digital Rights Management: DRM) 시스템, 콘텐츠 보호 시스템, 및 키 관리 시스템으로 이루어지는 그룹으로부터 선택되는, 장치.
  7. 제1항에 있어서,
    상기 적어도 2개의 콘텐츠 아이템 중 제1 부분은 제1 소스로부터 기원하고 상기 적어도 2개의 콘텐츠 아이템 중 제2 부분은 제2 소스로부터 기원하는, 장치.
  8. 제1항에 있어서,
    상기 데이터는 적어도 하나의 미리 정해진 템플릿 형태를 사용해서 상기 적어도 2개의 보호 메커니즘을 시그널링하고, 상기 데이터는 상기 적어도 2개의 콘텐츠 아이템을 수신하기 전에 수신되며, 상기 데이터는 상기 적어도 2개의 콘텐츠 아이템의 내부 포맷을 고려하지 않고 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 시그널링하는, 장치.
  9. 컴퓨터에 의해 판독 가능한 기록 매체로서,
    상기 기록 매체에는 컴퓨터에 의해 실행 가능형 명령어를 포함하는 컴퓨터 프로그램이 저장되어 있고, 상기 컴퓨터 프로그램은 프로세서에 의해 실행될 때 네트워크 요소(network element: NE)로 하여금:
    복수의 암호화된 콘텐츠 아이템을 포함하는 미디어 콘텐츠에 대한 보호 설명을 획득하고 - 상기 보호 설명은 미디어 콘텐츠 내의 적어도 2개의 암호화된 콘텐츠 아이템에 대해 적어도 2개의 보호 메커니즘을 시그널링하는 데이터를 포함하고, 상기 적어도 2개의 암호화된 콘텐츠 아이템 각각은 상기 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 보호 메커니즘은 서로 상이함 - ;
    상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 데이터로부터 상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 보호 메커니즘을 결정하며; 그리고
    상기 적어도 2개의 암호화된 콘텐츠 아이템을 상기 적어도 2개의 암호화된 콘텐츠 아이템의 연관된 보호 메커니즘에 따라 처리하게 하는,
    기록 매체.
  10. 제9항에 있어서,
    상기 데이터에 의해 시그널링되는 보호 메커니즘은, 암호화 알고리즘, 암호화 키, 암호화 키 위치, 초기화 벡터, 초기화 벡터 위치, 디지털 권한 라이선스, 및 디지털 권한 라이선스 위치로 이루어지는 그룹으로부터 선택되는, 기록 매체.
  11. 제9항에 있어서,
    상기 복수의 암호화된 콘텐츠 아이템 중 적어도 일부는 공통 암호화 알고리즘을 사용하여 암호화되는, 기록 매체.
  12. 제9항에 있어서,
    상기 데이터는 미리 정해진 템플릿 형태로 상기 적어도 2개의 보호 메커니즘을 시그널링하는, 기록 매체.
  13. 제12항에 있어서,
    상기 데이터는 상기 암호화된 콘텐츠 아이템을 수신하기 전에 수신되며, 상기 데이터는 상기 적어도 2개의 암호화된 콘텐츠 아이템의 내부 포맷을 고려하지 않고 상기 적어도 2개의 암호화된 콘텐츠 아이템에 대한 상기 적어도 2개의 보호 메커니즘을 시그널링하는, 기록 매체.
  14. 제9항에 있어서,
    상기 복수의 암호화된 콘텐츠 아이템 중 제1 부분은 하나의 소스로부터 기원하고 상기 복수의 암호화된 콘텐츠 아이템 중 제2 부분은 다른 소스로부터 기원하는, 기록 매체.
  15. 적어도 2개의 콘텐츠 아이템을 포함하는 미디어 콘텐츠를 획득하는 단계 - 상기 적어도 2개의 콘텐츠 아이템 각각은 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되며, 상기 적어도 2개의 콘텐츠 아이템 각각에 대한 보호 메커니즘은 서로 상이함 - ;
    상기 미디어 콘텐츠에 대한 보호 설명을 생성하는 단계 - 상기 보호 메커니즘은 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 시그널링하기에 충분한 데이터를 포함함 - ; 및
    상기 보호 설명 및 상기 미디어 콘텐츠를 클라이언트에 전송하는 단계
    를 포함하는 방법.
  16. 제15항에 있어서,
    상기 보호 설명은, 암호화 시스템, 키 관리 시스템, 단일 주기에 대한 초기화 벡터(initialization vector: IV) 정보, 및 수 개의 일정한 길이 주기에 대한 IV 정보 중 적어도 하나를 상기 적어도 2개의 보호 메커니즘으로서 클라이언트에 지시하기에 충분한 데이터를 포함하는, 방법.
  17. 제15항에 있어서,
    상기 보호 설명은 주기와 연관된 키 유니폼 리소스 식별자(uniform resource identifier: URI)를 시그널링하기에 충분한 데이터를 포함하며, 상기 키 URI는 키 자원을 검색하는 데 사용되는, 방법.
  18. 제15항에 있어서,
    상기 보호 설명은 미디어 프레젠테이션에 대한 모든 주기에서 사용되는 보호 메커니즘의 글로벌 속성(global property)을 설명하는 데이터를 포함하는, 방법.
  19. 제15항에 있어서,
    상기 보호 설명은 미디어 프레젠테이션에 대한 모든 주기에서 사용되는 키 시스템의 글로벌 속성을 설명하는 데이터를 포함하는, 방법.
  20. 제15항에 있어서,
    상기 미디어 콘텐츠의 적어도 일부는 공통 암호화 알고리즘을 사용하여 암호화되는, 방법.
  21. 메모리; 및
    상기 메모리에 결합되어 있는 프로세서
    를 포함하고,
    상기 프로세서는,
    적어도 2개의 콘텐츠 아이템을 포함하는 미디어 콘텐츠를 획득하고 - 상기 적어도 2개의 콘텐츠 아이템 각각은 적어도 2개의 보호 메커니즘 중 하나 이상에 의해 보호되고, 상기 적어도 2개의 콘텐츠 아이템 각각에 대한 보호 메커니즘은 서로 상이함 - ;
    상기 미디어 콘텐츠에 대한 보호 설명을 생성하며 - 상기 보호 설명은 상기 적어도 2개의 콘텐츠 아이템에 대한 보호 메커니즘을 시그널링하기에 충분한 데이터를 포함함 - ; 그리고
    상기 보호 설명 및 상기 미디어 콘텐츠를 클라이언트에 전송하도록 구성되어 있는, 장치.
  22. 제21항에 있어서,
    상기 콘텐츠 아이템의 적어도 일부는 제1 소스로부터 획득되고 상기 콘텐츠 아이템의 적어도 일부는 제2 소스로부터 획득되는, 장치.
  23. 제21항에 있어서,
    상기 보호 설명은 동적 적응 스트리밍 오버 하이퍼텍스트 트랜스퍼 프로토콜(Dynamic Adaptive Streaming over Hypertext Transfer Protocol(HTTP): DASH) 동영상 전문가 그룹 미디어 트랜스포트(Moving Picture Experts Group(MPEG) Media Transport: MMT) 프로토콜을 사용하여 전송되는, 장치.
KR1020157003381A 2012-07-13 2013-07-12 콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급 KR101611848B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261671261P 2012-07-13 2012-07-13
US61/671,261 2012-07-13
PCT/US2013/050397 WO2014012073A1 (en) 2012-07-13 2013-07-12 Signaling and handling content encryption and rights management in content transport and delivery

Publications (2)

Publication Number Publication Date
KR20150036469A KR20150036469A (ko) 2015-04-07
KR101611848B1 true KR101611848B1 (ko) 2016-04-26

Family

ID=48875777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157003381A KR101611848B1 (ko) 2012-07-13 2013-07-12 콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급

Country Status (6)

Country Link
US (1) US9342668B2 (ko)
EP (1) EP2859707B1 (ko)
JP (2) JP2015523816A (ko)
KR (1) KR101611848B1 (ko)
CN (1) CN104471913B (ko)
WO (1) WO2014012073A1 (ko)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2784954A4 (en) * 2011-11-25 2015-05-27 Humax Holdings Co Ltd METHOD FOR CONNECTING MMT MEDIA AND DASH MEDIA
US9444794B2 (en) * 2012-07-03 2016-09-13 Futurewei Technologies, Inc. Low-latency secure segment encryption and authentication interface
CN104854835B (zh) * 2013-01-17 2018-07-06 英特尔Ip公司 用于dash感知网络应用功能(d-naf)的装置和方法
EP2797333A1 (en) * 2013-04-26 2014-10-29 Nagravision S.A. Method for watermarking media content and system for implementing this method
US9807452B2 (en) * 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
CN105556976B (zh) * 2013-10-25 2019-06-11 华为技术有限公司 自适应流中表达关联的系统和方法
US9930086B2 (en) * 2013-10-28 2018-03-27 Samsung Electronics Co., Ltd. Content presentation for MPEG media transport
KR20150065289A (ko) * 2013-12-05 2015-06-15 삼성전자주식회사 데이터 재사용 방법 및 전자장치
KR102277748B1 (ko) * 2014-01-09 2021-07-16 삼성전자주식회사 멀티미디어 전송 시스템에서 미디어 데이터 관련 정보를 송신하는 방법 및 장치
EP3123383B1 (en) 2014-03-24 2019-08-21 Huawei Technologies Co. Ltd. System and method for partial url signing with applications to dynamic adaptive streaming
US10887651B2 (en) * 2014-03-31 2021-01-05 Samsung Electronics Co., Ltd. Signaling and operation of an MMTP de-capsulation buffer
US10873454B2 (en) * 2014-04-04 2020-12-22 Zettaset, Inc. Cloud storage encryption with variable block sizes
US10043029B2 (en) * 2014-04-04 2018-08-07 Zettaset, Inc. Cloud storage encryption
US10298555B2 (en) * 2014-04-04 2019-05-21 Zettaset, Inc. Securing files under the semi-trusted user threat model using per-file key encryption
KR102230862B1 (ko) 2014-07-01 2021-03-24 삼성전자 주식회사 영상처리장치 및 그 제어방법
US9762937B2 (en) * 2014-08-07 2017-09-12 Sonic Ip, Inc. Systems and methods for protecting elementary bitstreams incorporating independently encoded tiles
US10009761B2 (en) 2015-02-06 2018-06-26 Qualcomm Incorporated Apparatus and method having broadcast key rotation
GB2537812A (en) * 2015-03-27 2016-11-02 Piksel Inc DRM Addition Authentication
KR102209784B1 (ko) * 2015-06-09 2021-01-28 에스케이텔레콤 주식회사 Mmt 패킷 캐싱 처리 방법 및 이를 위한 장치, 캐싱 처리를 위한 mmt 패킷 생성 방법 및 이를 위한 장치
KR102209785B1 (ko) * 2015-06-09 2021-01-28 에스케이텔레콤 주식회사 Mmt 패킷 캐싱 처리 방법 및 이를 위한 장치, 캐싱 처리를 위한 mmt 패킷 생성 방법 및 이를 위한 장치
WO2016205733A1 (en) 2015-06-19 2016-12-22 Huawei Technologies Co., Ltd. Template uniform resource locator signing
US10306308B2 (en) 2015-12-15 2019-05-28 Telefonaktiebolaget Lm Ericsson (Publ) System and method for media delivery using common mezzanine distribution format
KR101662489B1 (ko) * 2016-02-12 2016-10-07 주식회사 디지캡 클라우드 기반의 공통 암호화를 지원하는 보안 프록시 서버 및 그 운영방법
US10917477B2 (en) 2016-05-25 2021-02-09 Samsung Electronics Co., Ltd. Method and apparatus for MMT integration in CDN
KR101764317B1 (ko) 2016-11-03 2017-08-02 주식회사 헤카스 스트리밍 서버, 스트리밍 시스템 및 스트리밍 방법
KR20230129589A (ko) * 2016-11-23 2023-09-08 파세토, 인크. 미디어를 스트리밍하기 위한 시스템 및 방법
US11038932B2 (en) 2016-12-31 2021-06-15 Turner Broadcasting System, Inc. System for establishing a shared media session for one or more client devices
US10992973B2 (en) 2016-12-31 2021-04-27 Turner Broadcasting System, Inc. Publishing a plurality of disparate live media output stream manifests using live input streams and pre-encoded media assets
US11109086B2 (en) 2016-12-31 2021-08-31 Turner Broadcasting System, Inc. Publishing disparate live media output streams in mixed mode
US11051061B2 (en) 2016-12-31 2021-06-29 Turner Broadcasting System, Inc. Publishing a disparate live media output stream using pre-encoded media assets
US11051074B2 (en) 2016-12-31 2021-06-29 Turner Broadcasting System, Inc. Publishing disparate live media output streams using live input streams
US10965967B2 (en) 2016-12-31 2021-03-30 Turner Broadcasting System, Inc. Publishing a disparate per-client live media output stream based on dynamic insertion of targeted non-programming content and customized programming content
US11962821B2 (en) 2016-12-31 2024-04-16 Turner Broadcasting System, Inc. Publishing a disparate live media output stream using pre-encoded media assets
US11134309B2 (en) 2016-12-31 2021-09-28 Turner Broadcasting System, Inc. Creation of channels using pre-encoded media assets
US11503352B2 (en) 2016-12-31 2022-11-15 Turner Broadcasting System, Inc. Dynamic scheduling and channel creation based on external data
US10856016B2 (en) 2016-12-31 2020-12-01 Turner Broadcasting System, Inc. Publishing disparate live media output streams in mixed mode based on user selection
US10827220B2 (en) 2017-05-25 2020-11-03 Turner Broadcasting System, Inc. Client-side playback of personalized media content generated dynamically for event opportunities in programming media content
CN108924596B (zh) * 2018-08-28 2020-11-13 苏州科达科技股份有限公司 媒体数据传输方法、装置及存储介质
CN109257371A (zh) * 2018-10-30 2019-01-22 王根平 协商安全机制系统和动态协商方法
US10880606B2 (en) * 2018-12-21 2020-12-29 Turner Broadcasting System, Inc. Disparate live media output stream playout and broadcast distribution
US11082734B2 (en) 2018-12-21 2021-08-03 Turner Broadcasting System, Inc. Publishing a disparate live media output stream that complies with distribution format regulations
US10873774B2 (en) 2018-12-22 2020-12-22 Turner Broadcasting System, Inc. Publishing a disparate live media output stream manifest that includes one or more media segments corresponding to key events
CN111339558A (zh) * 2020-02-21 2020-06-26 深圳壹账通智能科技有限公司 一种数据加密方法、数据解密方法、计算机设备和介质
US11533346B2 (en) * 2021-01-05 2022-12-20 Tencent America LLC Methods and apparatuses for dynamic adaptive streaming over HTTP

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010025686A1 (en) 2008-09-05 2010-03-11 The Chinese University Of Hong Kong Methods and devices for live streaming using pre-indexed file formats
KR101031700B1 (ko) 2003-10-24 2011-04-29 마이크로소프트 코포레이션 컴퓨터 플랫폼에 대한 프로그래밍 인터페이스
US20110225417A1 (en) * 2006-12-13 2011-09-15 Kavi Maharajh Digital rights management in a mobile environment
US20120128333A1 (en) 2009-08-05 2012-05-24 Yasushi Miyake Transmission controller, reception controller, transmission control method, reception control method and transmission control program

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2388095A1 (en) * 1999-10-22 2001-05-03 Activesky, Inc. An object oriented video system
EP1134977A1 (en) * 2000-03-06 2001-09-19 Irdeto Access B.V. Method and system for providing copies of scrambled content with unique watermarks, and system for descrambling scrambled content
US7958369B2 (en) * 2004-10-22 2011-06-07 Hewlett-Packard Development Company, L.P. Systems and methods for multiple level control of access of privileges to protected media content
US7725927B2 (en) * 2005-10-28 2010-05-25 Yahoo! Inc. Low code-footprint security solution
US7555464B2 (en) * 2006-03-01 2009-06-30 Sony Corporation Multiple DRM management
CN101271501B (zh) * 2008-04-30 2011-06-15 北京握奇数据系统有限公司 数字媒体文件的加解密方法及装置
US8904191B2 (en) * 2009-01-21 2014-12-02 Microsoft Corporation Multiple content protection systems in a file
CN101714195A (zh) * 2009-07-22 2010-05-26 北京创原天地科技有限公司 一种基于数字证书的新型数字版权保护方法和装置
CN102025490A (zh) * 2009-12-18 2011-04-20 华为终端有限公司 一种文件分段保护的方法、装置及系统
CN104394487B (zh) * 2010-03-05 2018-02-06 三星电子株式会社 基于文件格式生成和再现自适应流的方法和装置
CN102143129B (zh) * 2010-05-26 2015-03-18 华为软件技术有限公司 超文本传输协议流媒体传输中实现业务保护的方法和系统
KR20120010164A (ko) * 2010-07-19 2012-02-02 삼성전자주식회사 Drm 서비스 제공 방법 및 장치
WO2012032502A1 (en) * 2010-09-10 2012-03-15 Nokia Corporation A method and apparatus for adaptive streaming
CN102255886B (zh) * 2011-04-02 2013-12-04 南京邮电大学 一种流媒体点播系统的加密和解密方法
US9209978B2 (en) * 2012-05-15 2015-12-08 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US20130042100A1 (en) * 2011-08-09 2013-02-14 Nokia Corporation Method and apparatus for forced playback in http streaming
CN102571950B (zh) * 2011-12-31 2014-11-05 华为技术有限公司 媒体内容提供与获取方法、服务器及用户终端
EP2829073B1 (en) * 2012-03-23 2020-12-02 Irdeto B.V. Controlling access to ip streaming content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101031700B1 (ko) 2003-10-24 2011-04-29 마이크로소프트 코포레이션 컴퓨터 플랫폼에 대한 프로그래밍 인터페이스
US20110225417A1 (en) * 2006-12-13 2011-09-15 Kavi Maharajh Digital rights management in a mobile environment
WO2010025686A1 (en) 2008-09-05 2010-03-11 The Chinese University Of Hong Kong Methods and devices for live streaming using pre-indexed file formats
US20120128333A1 (en) 2009-08-05 2012-05-24 Yasushi Miyake Transmission controller, reception controller, transmission control method, reception control method and transmission control program

Also Published As

Publication number Publication date
JP2017073801A (ja) 2017-04-13
WO2014012073A1 (en) 2014-01-16
EP2859707B1 (en) 2018-01-03
US20140020111A1 (en) 2014-01-16
JP2015523816A (ja) 2015-08-13
US9342668B2 (en) 2016-05-17
CN104471913B (zh) 2017-12-05
CN104471913A (zh) 2015-03-25
KR20150036469A (ko) 2015-04-07
EP2859707A1 (en) 2015-04-15

Similar Documents

Publication Publication Date Title
KR101611848B1 (ko) 콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급
US9900289B2 (en) Low-latency secure segment encryption and authentication interface
US10188134B2 (en) Authenticated encryption support in DASH based segmented streaming media distribution
US9385998B2 (en) Signaling and carriage of protection and usage information for dynamic adaptive streaming
US9794240B2 (en) System and method for signaling and verifying URL signatures for both URL authentication and URL-based content access authorization in adaptive streaming
US9015468B2 (en) System and method for signaling segment encryption and key derivation for adaptive streaming
EP3029941B1 (en) System and method for efficient support for short cryptoperiods in template mode
US9646162B2 (en) Dynamic adaptive streaming over hypertext transfer protocol service protection
US10142684B2 (en) Pinning encryption metadata to segment URIs
KR20070074562A (ko) 조건적 액세스를 제공하는 방법
JP6612899B2 (ja) ブロードキャストチャネルを介したコンテンツ保護を可能にするための方法及び装置
US20150199498A1 (en) Flexible and efficient signaling and carriage of authorization acquisition information for dynamic adaptive streaming
US11880475B2 (en) Secure fast channel change

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190319

Year of fee payment: 4