[go: up one dir, main page]

KR101977478B1 - Method and apparatus for outputting a content - Google Patents

Method and apparatus for outputting a content Download PDF

Info

Publication number
KR101977478B1
KR101977478B1 KR1020170107253A KR20170107253A KR101977478B1 KR 101977478 B1 KR101977478 B1 KR 101977478B1 KR 1020170107253 A KR1020170107253 A KR 1020170107253A KR 20170107253 A KR20170107253 A KR 20170107253A KR 101977478 B1 KR101977478 B1 KR 101977478B1
Authority
KR
South Korea
Prior art keywords
content
data
secure
decrypting
encrypted
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020170107253A
Other languages
Korean (ko)
Other versions
KR20190021879A (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 KR1020170107253A priority Critical patent/KR101977478B1/en
Publication of KR20190021879A publication Critical patent/KR20190021879A/en
Application granted granted Critical
Publication of KR101977478B1 publication Critical patent/KR101977478B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

사용자가 시청할 수 있는 컨텐츠를 출력하기 위한 방법 및 장치가 제공된다. 컨텐츠를 출력하기 위해 컨텐츠 서버로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신하고, 보안 파라미터에 기초하여 암호화된 컨텐츠의 데이터를 복호화하기 위한 모드를 결정하며, 결정된 모드가 보안 모드인 경우 보안 모드로 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성하고, 허가된 컨텐츠의 데이터에 기초하여 컨텐츠를 출력한다.A method and apparatus for outputting content that a user can view is provided. The method comprising the steps of: receiving data and content security parameters of encrypted content from a content server to output content; determining a mode for decrypting data of the encrypted content based on security parameters; Generates data of cleared content by decrypting the data of the content encrypted in the security mode, and outputs the content based on the data of the permitted content.

Description

컨텐츠 출력 방법 및 장치{METHOD AND APPARATUS FOR OUTPUTTING A CONTENT}[0001] METHOD AND APPARATUS FOR OUTPUTING A CONTENT [

기술 분야는 컨텐츠를 제공하는 기술에 관한 것으로, 특히 암호화된 컨텐츠를 복호화하여 컨텐츠를 출력하는 방법에 관한 것이다.The technical field relates to a technology for providing contents, and more particularly, to a method for decrypting encrypted contents to output contents.

디지털 저작권 관리(Digital Rights Management: DRM) 기술은 암호화 기술을 이용하여 디지털 컨텐츠의 지적 자산에 대한 권리를 지속적으로 관리 및 보호하기 위한 기술이다. DRM 기술은 다양한 컨텐츠를 컨텐츠 제공자(Content Provider: CP)로부터 사용자에게 안전하게 전달하고, 이를 전달받은 사용자가 불법적으로 컨텐츠를 사용 및 유통하는 것을 방지하기 위한 기술이다. DRM 기술은 디지털 컨텐츠의 생성, 배포, 사용 및 폐기에 이르는 전 과정에 걸쳐 정보 보호가 가능하며, 온라인뿐만 아니라 오프라인 상에서 사용자의 권한에 따른 사용과 권리를 보호할 수 있다.Digital Rights Management (DRM) technology is a technology for continuously managing and protecting the rights of intellectual property of digital contents using encryption technology. DRM technology is a technique for safely delivering various contents to a user from a content provider (CP) and preventing a user who receives the contents from illegally using and distributing the content. DRM technology can protect information throughout the entire process from creation, distribution, use and disposal of digital contents, and it protects the rights and uses of rights according to the user's authority in offline as well as online.

한국등록특허 제10-1601976호(공개일 2016년 03월 03일)에는 DRM 컨텐츠 관리 시스템이 공개되어 있다. 공개 발명은 DRM 컨텐츠 및 DRM 컨텐츠의 저작권을 등록할 수 있는 환경을 제공하는 컨텐츠 제공 서버와, 컨텐츠 제공 서버로부터 제공된 각 DRM 컨텐츠 파일에 대한 사용권리 권한인 라이센스를 발급하고, 발급된 라이센스의 특정 필드에 라이센스의 폐기 수행 값을 생성하고, 이를 암호화하여 사용자 단말로 전송하는 서비스 제공 서버와, 서비스 제공 서버로부터 전송된 DRM 컨텐츠 파일의 라이센스를 검사하여 라이센스 폐기 수행 값을 추출하여 저장한 후 라이센스에 따라 해당 DRM 컨텐츠를 사용하고, 해당 라이센스 폐기 수행 결과를 서비스 제공 서버로 전송하는 사용자 단말이 개시되어 있다.Korean Patent No. 10-1601976 (published March 03, 2016) discloses a DRM content management system. The present invention relates to a content providing server that provides an environment for registering DRM content and copyright of DRM content, a license management server that issues a license that is a right of use right to each DRM content file provided from a content providing server, A service providing server for generating a discarding performance value of a license and transmitting the license discarding performance value to the user terminal; a license server for extracting a license discard value from the license of the DRM content file transmitted from the service providing server, A user terminal that uses the DRM contents and transmits a result of performing the license revocation to the service providing server is disclosed.

일 실시예는 컨텐츠 출력 장치 및 방법을 제공할 수 있다.One embodiment can provide a content output apparatus and method.

일 실시예는 암호화된 컨텐츠를 복호화하는 장치 및 방법을 제공할 수 있다.One embodiment may provide an apparatus and method for decrypting encrypted content.

일 측면에 따른, 컨텐츠 출력 방법은, 컨텐츠 서버로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신하는 단계, 상기 보안 파라미터에 기초하여 상기 암호화된 컨텐츠의 데이터를 복호화하기 위한 모드를 결정하는 단계, 결정된 모드가 보안 모드인 경우, 상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성하는 단계, 및 상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계를 포함한다.According to an aspect, a content output method includes: receiving data and content security parameters of encrypted content from a content server; determining a mode for decrypting data of the encrypted content based on the security parameter; Generating secreted content data by decrypting the encrypted content data in the secure mode if the determined mode is the secure mode, And outputting.

상기 보안 파라미터는, 상기 암호화된 컨텐츠의 데이터가 일반 모드로 복호화되어야 하는지 또는 보안 모드로 복호화되어야 하는지를 나타낼 수 있다.The security parameter may indicate whether the data of the encrypted content should be decrypted into a normal mode or a secure mode.

상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는, 보안 DRM 모듈(Digital Right Management Module)을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계를 포함할 수 있다.The step of generating the data of the authorized content by decrypting the data of the encrypted content in the secure mode comprises the steps of: decrypting the encrypted content data using a secure DRM module (Digital Right Management Module) And generating the data.

상기 컨텐츠 출력 방법은, 결정된 모드가 일반 모드인 경우, 상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계를 더 포함하고, 상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는, 일반 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계를 포함할 수 있다.Wherein the content output method further includes generating data of permitted content by decrypting the encrypted content data in the normal mode when the determined mode is the normal mode, The step of generating the data of the authorized content by decrypting the data may include the step of generating the data of the permitted content by decrypting the data of the encrypted content using the general DRM module.

상기 보안 DRM 모듈은 보안 펌웨어(firmware)를 통해 구현되고, 상기 일반 DRM 모듈은 일반 펌웨어를 통해 구현되며, 상기 보안 펌웨어 및 상기 일반 펌웨어는 서로 독립적이고, 상기 보안 펌웨어 및 상기 일반 펌웨어는 동일한 프로세서에 의해 실행될 수 있다.Wherein the security DRM module is implemented through security firmware, the general DRM module is implemented through general firmware, the security firmware and the general firmware are independent from each other, and the security firmware and the general firmware are stored in the same processor Lt; / RTI >

상기 보안 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계는, 상기 일반 DRM 모듈이 상기 일반 DRM 모듈 및 상기 보안 DRM 모듈의 공유 메모리(shared memory)에 상기 암호화된 컨텐츠의 데이터를 저장하는 단계, 상기 보안 DRM 모듈이 상기 공유 메모리로부터 상기 암호화된 컨텐츠의 데이터를 로드하는 단계, 상기 보안 DRM 모듈이 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계, 및 상기 보안 DRM 모듈이 상기 허가된 컨텐츠의 데이터를 보안 메모리에 저장하는 단계를 포함하고, 상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터는 상기 컨텐츠를 출력하기 위해 이용될 수 있다.The step of generating data of the authorized content by decrypting the data of the encrypted content using the secure DRM module may include the step of transmitting the data of the authorized content to the general DRM module and the shared memory of the secure DRM module Storing the data of the encrypted content, loading the encrypted content data from the shared memory by the secure DRM module, decrypting the encrypted content data by the secure DRM module, And the secure DRM module storing data of the authorized content in a secure memory, wherein the data of the authorized content stored in the secure memory can be used to output the content have.

상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계는, 상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터를 로드하는 단계, 상기 허가된 컨텐츠의 데이터를 출력 형식에 대응하도록 디코딩 및 렌더링함으로써 최종 컨텐츠의 데이터를 생성하는 단계, 및 상기 최종 컨텐츠의 데이터를 출력함으로써 상기 컨텐츠를 출력하는 단계를 포함할 수 있다.The step of outputting the content based on the data of the permitted content may include loading data of the permitted content stored in the secure memory, decoding and rendering the data of the permitted content to correspond to the output format, Generating content data, and outputting the content by outputting data of the final content.

상기 컨텐츠는 초고화질(Ultra high resolution) 컨텐츠일 수 있다.The content may be Ultra high resolution content.

다른 일 측면에 따른, 컨텐츠 출력 장치는, 컨텐츠를 출력하는 프로그램이 기록된 메모리, 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 컨텐츠 서버로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신하는 단계, 상기 보안 파라미터에 기초하여 상기 암호화된 컨텐츠의 데이터를 복호화하기 위한 모드를 결정하는 단계, 결정된 모드가 보안 모드인 경우, 상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성하는 단계, 및 상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계를 수행한다.According to another aspect, a content output apparatus includes a memory in which a program for outputting a content is recorded, and a processor for executing the program, the program comprising: Receiving a security parameter, determining a mode for decrypting the encrypted content data based on the security parameter, decrypting the encrypted content data in the secure mode when the determined mode is a secure mode, Generating data of cleared content, and outputting the content based on the data of the permitted content.

상기 보안 파라미터는, 상기 암호화된 컨텐츠의 데이터가 일반 모드로 복호화되어야 하는지 또는 보안 모드로 복호화되어야 하는지를 나타낼 수 있다.The security parameter may indicate whether the data of the encrypted content should be decrypted into a normal mode or a secure mode.

상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는, 보안 DRM 모듈(Digital Right Management Module)을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계를 포함할 수 있다.The step of generating the data of the authorized content by decrypting the data of the encrypted content in the secure mode comprises the steps of: decrypting the encrypted content data using a secure DRM module (Digital Right Management Module) And generating the data.

상기 프로그램은, 결정된 모드가 일반 모드인 경우, 상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계를 더 수행하고, 상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는, 일반 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계를 포함할 수 있다.Wherein the program further includes the step of generating data of the permitted content by decrypting the encrypted content data in the normal mode when the determined mode is the normal mode, The step of generating the data of the permitted content by decrypting may include the step of generating the data of the permitted content by decrypting the data of the encrypted content using the general DRM module.

상기 보안 DRM 모듈은 보안 펌웨어(firmware)를 통해 구현되고, 상기 일반 DRM 모듈은 일반 펌웨어를 통해 구현되며, 상기 보안 펌웨어 및 상기 일반 펌웨어는 서로 독립적이고, 상기 보안 펌웨어 및 상기 일반 펌웨어는 상기 프로세서에 의해 실행될 수 있다.Wherein the security DRM module is implemented through security firmware, the general DRM module is implemented through general firmware, the security firmware and the general firmware are independent from each other, and the secure firmware and the general firmware are stored in the processor Lt; / RTI >

상기 보안 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계는, 상기 일반 DRM 모듈이 상기 일반 DRM 모듈 및 상기 보안 DRM 모듈의 공유 메모리(shared memory)에 상기 암호화된 컨텐츠의 데이터를 저장하는 단계, 상기 보안 DRM 모듈이 상기 공유 메모리로부터 상기 암호화된 컨텐츠의 데이터를 로드하는 단계, 상기 보안 DRM 모듈이 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계, 및 상기 보안 DRM 모듈이 상기 허가된 컨텐츠의 데이터를 보안 메모리에 저장하는 단계를 포함하고, 상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터는 상기 컨텐츠를 출력하기 위해 이용되고, 상기 메모리는 상기 공유 메모리 및 상기 보안 메모리를 포함할 수 있다.The step of generating data of the authorized content by decrypting the data of the encrypted content using the secure DRM module may include the step of transmitting the data of the authorized content to the general DRM module and the shared memory of the secure DRM module Storing the data of the encrypted content, loading the encrypted content data from the shared memory by the secure DRM module, decrypting the encrypted content by decrypting the encrypted content, Wherein the secure DRM module is operable to store data of the authorized content in a secure memory, wherein the data of the authorized content stored in the secure memory is used to output the content, Wherein the memory includes the shared memory and the secure memory Can.

상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계는, 상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터를 로드하는 단계, 상기 허가된 컨텐츠의 데이터를 출력 형식에 대응하도록 디코딩 및 렌더링함으로써 최종 컨텐츠의 데이터를 생성하는 단계, 및 상기 최종 컨텐츠의 데이터를 출력함으로써 상기 컨텐츠를 출력하는 단계를 포함할 수 있다.The step of outputting the content based on the data of the permitted content may include loading data of the permitted content stored in the secure memory, decoding and rendering the data of the permitted content to correspond to the output format, Generating content data, and outputting the content by outputting data of the final content.

상기 컨텐츠는 초고화질(Ultra high resolution) 컨텐츠일 수 있다.The content may be Ultra high resolution content.

컨텐츠 출력 장치 및 방법이 제공될 수 있다.A content output apparatus and method can be provided.

암호화된 컨텐츠를 복호화하는 장치 및 방법이 제공될 수 있다.An apparatus and method for decrypting encrypted content can be provided.

도 1은 일 예에 컨텐츠 제공 시스템의 구성도이다.
도 2는 일 실시예에 따른 컨텐츠 출력 장치의 구성도이다.
도 3은 일 실시예에 따른 컨텐츠 출력 방법의 흐름도이다.
도 4는 일 예에 따른 보안 모드로 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 방법의 흐름도이다.
도 5는 일 예에 따른 컨텐츠를 출력하는 방법의 흐름도이다.
도 6은 일 예에 따른 일반 펌웨어 및 보안 펌웨어의 구성을 도시한다.
1 is a configuration diagram of a contents providing system in an example.
2 is a configuration diagram of a content output apparatus according to an embodiment.
3 is a flowchart of a content output method according to an embodiment.
4 is a flowchart illustrating a method of generating authorized content data by decrypting encrypted content data in a secure mode according to an exemplary embodiment.
5 is a flowchart of a method of outputting contents according to an example.
6 illustrates a configuration of general firmware and security firmware according to an example.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.In the following, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. Like reference symbols in the drawings denote like elements.

아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Various modifications may be made to the embodiments described below. It is to be understood that the embodiments described below are not intended to limit the embodiments, but include all modifications, equivalents, and alternatives to them.

실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used only to illustrate specific embodiments and are not intended to limit the embodiments. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises" or "having" and the like refer to the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this embodiment belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In the following description of the present invention with reference to the accompanying drawings, the same components are denoted by the same reference numerals regardless of the reference numerals, and redundant explanations thereof will be omitted. In the following description of the embodiments, a detailed description of related arts will be omitted if it is determined that the gist of the embodiments may be unnecessarily blurred.

도 1은 일 예에 컨텐츠 제공 시스템의 구성도이다.1 is a configuration diagram of a contents providing system in an example.

컨텐츠 제공 시스템(100)은 컨텐츠 출력 장치(120) 및 컨텐츠 서버(130)를 포함한다. 예를 들어, 컨텐츠 출력 장치(120)는 셋탑 박스(Set Top Box: STB)일 수 있다. 컨텐츠 출력 장치(120)는 사용자가 제어하는 사용자 단말(110)을 통해 컨텐츠 출력 요청을 수신하고, 컨텐츠 서버(130)로 상기의 컨텐츠를 요청할 수 있다. 예를 들어, 사용자 단말(110)은 컨텐츠 출력 장치(120)를 제어하는 리모컨일 수 있다. 컨텐츠 출력 장치(120)는 컨텐츠 서버(130)로부터 컨텐츠를 수신하고, 디스플레이(140)를 통해 컨텐츠를 출력할 수 있다.The content providing system 100 includes a content output apparatus 120 and a content server 130. For example, the content output apparatus 120 may be a set top box (STB). The content output apparatus 120 may receive a content output request through a user terminal 110 controlled by a user and request the content server 130 for the content. For example, the user terminal 110 may be a remote controller for controlling the content output apparatus 120. The content output apparatus 120 may receive the content from the content server 130 and output the content through the display 140. [

일 측면에 따르면, 컨텐츠 출력 장치(120)는 신뢰 실행 환경(Trusted Execution Environment; TEE) 또는 비신뢰 실행 환경(Non Trusted Execution Environment; NTEE)으로 동작할 수 있다. NTEE는 일반적인 시스템 제어 및 관리에 이용되는 하드웨어 또는 소프트웨어를 의미할 수 있다. TEE는 사용자 인증과 같은 보안이 필요한 프로세스를 수행하기 위해 이용되는 하드웨어 또는 소프트웨어를 의미할 수 있다. TEE는 안정적이고 외부로부터의 해킹이 방지될 수 있다.According to an aspect, the content output apparatus 120 may operate as a Trusted Execution Environment (TEE) or a Non-Trusted Execution Environment (NTEE). NTEE may refer to hardware or software used for general system control and management. TEE may refer to hardware or software used to perform security-requiring processes such as user authentication. TEE is stable and hacking from the outside can be prevented.

예를 들어, 하드웨어적으로 하나의 프로세서 또는 하나의 메모리가 NTEE와 TEE로 구분되어 사용될 수 있다. 예를 들어, 프로세서의 보안영역은 하드웨어의 TEE일 수 있다. TEE의 하드웨어 구조는 On-SoC(on-system on chip) 및/또는 외부 메모리를 포함할 수 있다. 예를 들어, On-SoC는, RAM(random access memory), 암호화 가속기(crypto accelerator), 마이크로 프로세싱 코어(micro Processing core(s)), ROM(read only memory), 주변기기(peripheral), 및 OTP(one time programmable) 필드를 포함할 수 있다. 컨텐츠 출력 장치(120)는 NTEE 및 TEE의 실행 환경들을 운용하기 위해 프로세서를 시간적으로 분리하여 사용할 수 있다. 컨텐츠 출력 장치(120)는 프로세서 및 메모리를 NTEE에서 접근 가능한 영역 및 TEE에서 접근 가능한 영역으로 구분하여 사용할 수 있다.For example, one processor or one memory can be used in hardware, divided into NTEE and TEE. For example, the secure area of the processor may be the TEE of the hardware. The hardware structure of the TEE may include on-system on-chip (SoC) and / or external memory. For example, an On-SoC may be a random access memory (RAM), a crypto accelerator, a micro processing core (s), a read only memory (ROM), a peripheral, one time programmable) field. The content output apparatus 120 may use the processors in temporal discrete fashion in order to operate NTEE and TEE execution environments. The content output apparatus 120 can use the processor and the memory by dividing the processor and the memory into an area accessible from NTEE and an area accessible from TEE.

일 측면에 따르면, 컨텐츠 출력 장치(120)는 강화된 보안이 요구되는 컨텐츠를 TEE에서 처리하고, 일반적인 보안이 요구되는 컨텐츠를 NTEE에서 처리할 수 있다. 예를 들어, 저화질의 컨텐츠에 비해 고화질의 컨텐츠에 대한 보안이 더 요구될 수 있다. 암호화된 컨텐츠는 컨텐츠 출력 장치(120)의 보안 영역을 이용하여 복호화될 수 있다. 예를 들어, 컨텐츠 출력 장치(120)는 컨텐츠의 보안 파라미터에 기초하여 컨텐츠를 처리하는 모드를 결정하고, 결정된 모드에 기초하여 처리된 컨텐츠를 출력할 수 있다.According to an aspect of the present invention, the content output apparatus 120 can process contents requiring enhanced security in TEE, and can process contents requiring general security in NTEE. For example, security for high-quality contents may be required more than low-quality contents. The encrypted content can be decrypted using the secure area of the content output apparatus 120. [ For example, the content output apparatus 120 may determine a mode for processing the content based on the security parameter of the content, and output the processed content based on the determined mode.

일 측면에 따르면, 컨텐츠 출력 장치(120)의 종류에 따라 TEE를 지원하지 않는 컨텐츠 출력 장치(120)와 TEE를 지원하는 컨텐츠 출력 장치(120)가 있을 수 있고, 컨텐츠 출력 장치(120)의 TEE의 지원 여부에 따라 보안 파라미터를 설정할 수 있다.According to an aspect of the present invention, there may be a content output apparatus 120 that does not support TEE and a content output apparatus 120 that supports TEE, depending on the type of the content output apparatus 120, The security parameter can be set according to whether or not it is supported.

아래에서 도 2 내지 도 6을 참조하여 컨텐츠를 출력하는 방법이 상세하게 설명된다.Hereinafter, a method of outputting contents will be described in detail with reference to FIG. 2 to FIG.

도 2는 일 실시예에 따른 컨텐츠 출력 장치의 구성도이다.2 is a configuration diagram of a content output apparatus according to an embodiment.

컨텐츠 출력 장치(200)는 통신부(210), 프로세서(220) 및 메모리(230)를 포함한다. 예를 들어, 컨텐츠 출력 장치(200)는 도 1을 참조하여 전술된 컨텐츠 출력 장치(120)에 대응할 수 있다.The content output apparatus 200 includes a communication unit 210, a processor 220, and a memory 230. For example, the content output apparatus 200 may correspond to the content output apparatus 120 described above with reference to FIG.

통신부(210)는 프로세서(220) 및 메모리(230)와 연결되어 데이터를 송수신한다. 통신부(210)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다. 이하에서 "A"를 송수신한다라는 표현은 "A를 나타내는 정보(information) 또는 데이터"를 송수신하는 것을 나타낼 수 있다.The communication unit 210 is connected to the processor 220 and the memory 230 to transmit and receive data. The communication unit 210 may be connected to another external device to transmit / receive data. Hereinafter, the expression " transmit / receive " A may indicate transmission / reception of " information or data representing A ".

통신부(210)는 컨텐츠 출력 장치(200) 내의 회로망(circuitry)으로 구현될 수 있다. 예를 들어, 통신부(210)는 내부 버스(internal bus) 및 외부 버스(external bus)를 포함할 수 있다. 다른 예로, 통신부(210)는 컨텐츠 출력 장치(200)와 외부의 장치를 연결하는 요소일 수 있다. 통신부(210)는 인터페이스(interface)일 수 있다. 통신부(210)는 외부의 장치로부터 데이터를 수신하여, 프로세서(220) 및 메모리(230)에 데이터를 전송할 수 있다.The communication unit 210 may be implemented as a circuitry in the content output apparatus 200. For example, the communication unit 210 may include an internal bus and an external bus. As another example, the communication unit 210 may be an element that connects the content output apparatus 200 and an external apparatus. The communication unit 210 may be an interface. The communication unit 210 can receive data from an external device and transmit data to the processor 220 and the memory 230. [

프로세서(220)는 통신부(210)가 수신한 데이터 및 메모리(230)에 저장된 데이터를 처리한다. "프로세서"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.The processor 220 processes the data received by the communication unit 210 and the data stored in the memory 230. &Quot; Processor " may be a data processing device embodied in hardware having circuitry having a physical structure for performing desired operations. For example, the desired actions may include code or instructions included in the program. For example, a data processing apparatus embodied in hardware may be a microprocessor, a central processing unit, a processor core, a multi-core processor, a multiprocessor, , An application-specific integrated circuit (ASIC), and a field programmable gate array (FPGA).

프로세서(220)는 메모리(예를 들어, 메모리(230))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(220)에 의해 유발된 인스트럭션들을 실행한다.The processor 220 executes computer readable code (e.g., software) stored in a memory (e.g., memory 230) and instructions triggered by the processor 220.

메모리(230)는 통신부(210)가 수신한 데이터 및 프로세서(220)가 처리한 데이터를 저장한다. 예를 들어, 메모리(230)는 프로그램을 저장할 수 있다. 저장되는 프로그램은 컨텐츠를 출력할 수 있도록 코딩되어 프로세서(220)에 의해 실행 가능한 신텍스(syntax)들의 집합일 수 있다.The memory 230 stores data received by the communication unit 210 and data processed by the processor 220. [ For example, the memory 230 may store a program. The stored program may be a set of syntaxes executable by processor 220 that are coded to output content.

일 측면에 따르면, 메모리(230)는 하나 이상의 휘발성 메모리, 비휘발성 메모리, RAM, ROM, 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.According to an aspect, the memory 230 may include one or more volatile memory, non-volatile memory, RAM, ROM, flash memory, hard disk drive, and optical disk drive.

메모리(230)는 컨텐츠 출력 장치(200)를 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 컨텐츠 출력 장치(200)를 동작 시키는 명령어 세트는 프로세서(220)에 의해 실행된다.The memory 230 stores a set of instructions (e.g., software) for operating the content output apparatus 200. The instruction set that operates the content output apparatus 200 is executed by the processor 220. [

일 측면에 따르면, 메모리(230)는 복수의 영역들로 구분될 수 있고, 각각의 영역이 별도로 관리될 수 있다. 예를 들어, 복수의 영역들 중 일부는 보안 영역이고, 프로세서(220)가 보안 영역에 접근하기 위해서는 보안 인증이 요구될 수 있다.According to one aspect, the memory 230 can be divided into a plurality of areas, and each area can be separately managed. For example, some of the plurality of areas is a secure area, and the security authentication may be required for the processor 220 to access the secure area.

프로세서(220) 및 메모리(230)에 저장된 프로그램을 통해 펌웨어(firmware)가 구현될 수 있다. 펌웨어를 구현하기 위해 이용되는 메모리(230)는 ROM일 수 있다. 컨텐츠 출력 장치(200)에 의해 구현되는 펌웨어에 대해 아래에서 도 4 내지 도 6을 참조하여 상세히 설명된다.Firmware may be implemented through the programs stored in the processor 220 and the memory 230. The memory 230 used to implement the firmware may be ROM. The firmware implemented by the content output apparatus 200 will be described in detail below with reference to FIGS. 4 to 6. FIG.

통신부(210), 프로세서(220) 및 메모리(230)에 대해, 아래에서 도 3 내지 도 6을 참조하여 상세히 설명된다.The communication unit 210, the processor 220, and the memory 230 will be described in detail with reference to Figs. 3 to 6 below.

도 3은 일 실시예에 따른 컨텐츠 출력 방법의 흐름도이다.3 is a flowchart of a content output method according to an embodiment.

아래의 단계들(310 내지 350)은 도 2를 참조하여 전술된 컨텐츠 출력 장치(200)에 의해 수행된다. 컨텐츠 출력 장치(200)는 프로세서(220) 및 메모리(230)에 기초하여 보안 펌웨어(secure firmware) 및 일반 펌웨어(normal firmware)를 구현할 수 있다. 보안 펌웨어(secure firmware) 및 일반 펌웨어(normal firmware)는 독립적으로 구현되고, 실행될 수 있다. 단계들(310, 320, 340 및 350)은 일반 펌웨어에 의해 수행될 수 있고, 단계(330)는 보안 펌웨어에 의해 수행될 수 있다. 보안 펌웨어는 TEE을 실행시키기 위해 이용되고, 일반 펌웨어는 NTEE를 실행시키기 위해 이용될 수 있다.The following steps 310 to 350 are performed by the content output apparatus 200 described above with reference to Fig. The content output apparatus 200 can implement secure firmware and normal firmware based on the processor 220 and the memory 230. [ Secure firmware and normal firmware can be independently implemented and executed. Steps 310, 320, 340, and 350 may be performed by general firmware, and step 330 may be performed by security firmware. Security firmware is used to run TEE, and generic firmware can be used to run NTEE.

단계(310)가 수행되기 전에, 통신부(210)는 사용자 단말(110)로부터 컨텐츠 제공 요청을 수신하고, 컨텐츠 제공 요청에 대응하는 컨텐츠를 컨텐츠 서버(130)로 요청할 수 있다.Before the step 310 is performed, the communication unit 210 may receive the content provision request from the user terminal 110 and request the content server 130 for the content corresponding to the content provision request.

단계(310)에서, 통신부(210)는 컨텐츠 서버(130)로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신한다. 수신된 암호화된 컨텐츠의 데이터는 메모리(230)에 저장된다. 일 측면에 따르면, 메모리(230)는 일반 메모리, 공유 메모리(shared memory) 및 보안 메모리(secure memory)를 포함할 수 있다. 암호화된 컨텐츠의 데이터는 일반 메모리에 저장될 수 있다.In step 310, the communication unit 210 receives data and content security parameters of the encrypted content from the content server 130. The data of the received encrypted content is stored in the memory 230. According to an aspect, the memory 230 may include conventional memory, shared memory, and secure memory. The data of the encrypted content can be stored in general memory.

암호화된 컨텐츠의 데이터는 암호화된 컨텐츠의 동영상 데이터 및 암호화된 음향 데이터를 포함할 수 있다. 예를 들어, 암호화된 컨텐츠의 데이터는 실시간 스트리밍 채널(real time streaming channel)을 통해 제공될 수 있다. 다른 예로, 컨텐츠는 VOD(Video on Demand) 채널을 통해 제공될 수 있다.The data of the encrypted content may include the moving picture data of the encrypted content and the encrypted sound data. For example, data of encrypted content may be provided via a real time streaming channel. As another example, the content may be provided via a VOD (Video on Demand) channel.

동일한 컨텐츠인 경우에도, 컨텐츠를 제공하는 채널에 따라 컨텐츠를 제공하는 동영상의 화질이 상이할 수 있다. 예를 들어, 동일한 컨텐츠를 제공하는 복수의 채널들이 있는 경우, 각각의 채널 별로 제공하는 동영상의 화질이 상이할 수 있다.Even in the case of the same contents, the quality of the moving picture providing the contents may be different according to the channel providing the contents. For example, when there are a plurality of channels providing the same contents, the quality of the moving picture provided for each channel may be different.

컨텐츠의 보안 파라미터가 동영상의 화질에 따라 다르게 설정될 수 있다. 예를 들어, 저화질의 동영상에는 일반 암호화가 적용되고, 고화질의 동영상에는 보안 암호화가 적용될 수 있다. 보안 암호화가 적용되는 컨텐츠는 초고화질(Ultra High Definition) 컨텐츠일 수 있다. 예를 들어, 암호화는 컨텐츠의 무단 이용을 방지하기 위한 DRM의 암호화일 수 있다. 컨텐츠의 보안 파라미터는 암호화된 컨텐츠의 데이터가 일반 모드로 복호화되어야 하는지 또는 보안 모드로 복호화되어야 하는지를 나타낸다. 예를 들어, 보안 파라미터는 보안 필드일 수 있고, 보안 파라미터의 값이 0인 경우에는 일반 모드(normal mode)를 나타내고, 1인 경우에는 보안 모드(secure mode)를 나타낼 수 있다. 보안 모드는 보안 펌웨어에 의해 수행되는 동작들을 나타내고, 일반 모드는 일반 펌웨어에 의해 수행되는 동작들을 나타낼 수 있다.The security parameters of the content may be set differently according to the picture quality of the moving picture. For example, normal encryption may be applied to low-quality video, and secure encryption may be applied to high-quality video. The content to which the security encryption is applied may be Ultra High Definition content. For example, encryption may be DRM encryption to prevent unauthorized use of the content. The security parameter of the content indicates whether the data of the encrypted content should be decrypted into the normal mode or the secure mode. For example, the security parameter may be a security field, and if the value of the security parameter is 0, it indicates a normal mode, and if it is 1, a secure mode. The security mode represents operations performed by the security firmware, and the general mode may represent operations performed by general firmware.

단계(320)에서, 프로세서(220)는 보안 파라미터에 기초하여 암호화된 컨텐츠를 복호화하기 위한 모드를 결정한다. 보안 파라미터의 값이 0인 경우에는 일반 모드로 결정되고, 1인 경우에는 보안 모드로 결정될 수 있다. 동작 모드가 일반 모드로 결정된 경우 단계(330)가 수행되고, 보안 모드로 결정된 경우 단계(340)가 수행된다.At step 320, the processor 220 determines a mode for decrypting the encrypted content based on the security parameters. When the value of the security parameter is 0, the normal mode is determined, and when it is 1, the security mode is determined. Step 330 is performed if the operation mode is determined to be the normal mode, and step 340 is performed if the operation mode is determined to be the secure mode.

단계(330)에서, 프로세서(220)는 보안 모드로 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성한다. 허가된 컨텐츠의 데이터는 재생기(player)가 동영상을 출력할 수 있는 데이터일 수 있다. 보안 모드로 허가된 컨텐츠의 데이터를 생성하는 방법에 대해, 아래에서 도 4를 참조하여 상세히 설명된다.At step 330, the processor 220 generates data of the cleared content by decrypting the data of the encrypted content in the secure mode. The data of the permitted content may be data that a player can output a moving image. A method of generating data of the authorized content in the secure mode will be described in detail with reference to Fig. 4 below.

단계(340)에서, 프로세서(220)는 일반 모드로 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성한다.At step 340, the processor 220 generates data of the authorized content by decrypting the data of the encrypted content in the normal mode.

단계(350)에서, 프로세서(220)는 허가된 컨텐츠를 출력한다. 예를 들어, 프로세서(220)는 컨텐츠 출력 장치(200)와 연결된 디스플레이를 통해 컨텐츠를 출력할 수 있다.At step 350, the processor 220 outputs the authorized content. For example, the processor 220 may output the content through a display connected to the content output apparatus 200.

도 4는 일 예에 따른 보안 모드로 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 방법의 흐름도이다.4 is a flowchart illustrating a method of generating authorized content data by decrypting encrypted content data in a secure mode according to an exemplary embodiment.

도 3을 참조하여 전술된 단계(330)는 아래의 단계들(410 내지 440)을 포함할 수 있다. 일반 펌웨어는 일반 DRM(digital rights management) 모듈을 구현할 수 있다. 일반 DRM 모듈은 일반 펌웨어 내에서 데이터를 처리하기 위해 구현될 수 있다. 보안 펌웨어는 보안 DRM 모듈을 구현할 수 있다. 보안 DRM 모듈은 보안 펌웨어 내에서 데이터를 처리하기 위해 구현될 수 있다. 일반 DRM 모듈 및 보안 DRM 모듈이 수행하는 기능은 프로세서(220)에 의해 수행되는 것으로 이해될 수 있다Step 330 described above with reference to FIG. 3 may include the following steps 410-440. Generic firmware can implement generic digital rights management (DRM) modules. A generic DRM module may be implemented to process data within generic firmware. The security firmware may implement a secure DRM module. The secure DRM module may be implemented to process data within the security firmware. It is to be understood that the functions performed by the generic DRM module and the secure DRM module are performed by the processor 220

단계(410)에서, 일반 DRM 모듈은 공유 메모리에 암호화된 컨텐츠의 데이터를 저장한다. 공유 메모리는 일반 DRM 모듈 및 보안 DRM 모듈이 접근할 수 있는 메모리이다. 예를 들어, 일반 DRM 모듈은 일반 메모리에 저장된 암호화된 컨텐츠의 데이터를 공유 메모리로 이동시킬 수 있다. 다른 예로, 일반 DRM 모듈은 일반 메모리를 공유 메모리로 등록함으로써 공유 메모리에 암호화된 컨텐츠의 데이터를 저장할 수 있다. 일반 DRM 모듈은 암호화된 컨텐츠의 데이터가 저장된 영역의 메모리(230) 내의 주소를 공유 메모리의 영역으로 등록할 수 있다.In step 410, the generic DRM module stores data of the encrypted content in a shared memory. The shared memory is a memory accessible by the general DRM module and the secure DRM module. For example, the generic DRM module may move the data of the encrypted content stored in the general memory to the shared memory. As another example, a generic DRM module may store data of encrypted content in a shared memory by registering general memory as shared memory. The general DRM module can register the address in the memory 230 of the area where the encrypted content data is stored as the area of the shared memory.

단계(420)에서, 보안 DRM 모듈은 공유 메모리로부터 암호화된 컨텐츠의 데이터를 로드한다. 예를 들어, 프로세서(220)에 보안 DRM 모듈 또는 보안 펌웨어를 위해 할당된 캐시 메모리에 암호화된 컨텐츠의 데이터를 로드할 수 있다.In step 420, the secure DRM module loads data of the encrypted content from the shared memory. For example, the processor 220 may load data of encrypted content into a secure DRM module or a cache memory allocated for security firmware.

단계(430)에서, 보안 DRM 모듈은 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성한다.In step 430, the secure DRM module generates data of the authorized content by decrypting the encrypted content data.

단계(440)에서, 보안 DRM 모듈은 허가된 컨텐츠의 데이터를 보안 메모리에 저장한다. 보안 메모리는 보안 DRM 모듈 또는 보안 펌웨어 만이 접근할 수 있는 메모리(230) 내의 영역일 수 있다.In step 440, the secure DRM module stores the data of the authorized content in secure memory. The secure memory may be an area in the memory 230 that is only accessible by the secure DRM module or security firmware.

도시되지는 않았으나, 일반 모드에서는 일반 DRM 모듈에 의해 허가된 컨텐츠의 데이터가 생성될 수 있다. 일반 DRM 모듈이 일반 메모리에 저장된 암호화된 컨텐츠의 데이터를 로드하고, 일반 DRM 모듈이 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하며, 일반 DRM 모듈이 허가된 컨텐츠의 데이터를 일반 메모리에 저장할 수 있다.Although not shown, in the normal mode, data of the content permitted by the general DRM module can be generated. The general DRM module loads the data of the encrypted content stored in the general memory and the general DRM module decrypts the data of the encrypted content to generate the data of the permitted content, Lt; / RTI >

도 5는 일 예에 따른 컨텐츠를 출력하는 방법의 흐름도이다.5 is a flowchart of a method of outputting contents according to an example.

도 3을 참조하여 전술된 단계(340)는 아래의 단계들(510 내지 530)을 포함할 수 있다. 단계들(510 내지 530)은 도 3 및 4를 참조하여 전술된 단계(330) 또는 단계(440)가 수행된 후에, 수행되는 것으로 도시되었으나, 단계들(510 내지 530)은 도 3을 참조하여 전술된 단계(340)가 수행된 후에도 유사하게 수행될 수 있다.The above-described step 340 with reference to FIG. 3 may include the following steps 510 to 530. Steps 510 to 530 have been shown to be performed after step 330 or step 440 described above with reference to Figures 3 and 4 has been performed but steps 510 to 530 have been described with reference to Figure 3 May similarly be performed after the above-described step 340 is performed.

단계(510)에서, 프로세서(220)는 보안 메모리에 저장된 허가된 컨텐츠의 데이터를 로드한다. 예를 들어, 보안 펌웨어는 디코더(decoder)/렌더러(renderer)를 구현할 수 있고, 디코더/렌더러는 보안 메모리에 저장된 허가된 컨텐츠의 데이터를 로드할 수 있다.At step 510, the processor 220 loads the data of the authorized content stored in the secure memory. For example, the security firmware may implement a decoder / renderer and the decoder / renderer may load data of authorized content stored in secure memory.

단계(520)에서, 프로세서(220)는 허가된 컨텐츠의 데이터를 출력 형식에 대응하도록 디코딩 및 렌더링함으로써 최종 컨텐츠의 데이터를 생성한다. 디코더는 허가된 컨텐츠의 데이터를 이용하여 동영상 및 음향을 동기화할 수 있다. 렌더러는 컨텐츠가 출력될 디스플레이의 출력 형식에 대응하도록 허가된 컨텐츠의 데이터를 렌더링할 수 있다.At step 520, the processor 220 generates data of the final content by decoding and rendering the data of the authorized content to correspond to the output format. The decoder can use the data of the authorized content to synchronize video and sound. The renderer may render data of the content permitted to correspond to the output format of the display on which the content is to be output.

단계(530)에서, 프로세서(220)는 최종 컨텐츠의 데이터를 출력함으로써 컨텐츠를 출력한다. 예를 들어, 일반 펌웨어는 재생기를 구현하고, 재생기를 통해 컨텐츠를 출력할 수 있다.At step 530, the processor 220 outputs the content by outputting the data of the final content. For example, generic firmware can implement a player and output content via a player.

도 6은 일 예에 따른 일반 펌웨어 및 보안 펌웨어의 구성을 도시한다.6 illustrates a configuration of general firmware and security firmware according to an example.

컨텐츠 출력 장치(200)는 프로세서(220)를 이용하여 일반 펌웨어(610) 및 보안 펌웨어(620)를 구현할 수 있다. 메모리(600)는 도 2 내지 5를 참조하여 전술된 메모리(230)에 대응할 수 있다. 메모리(600)는 일반 메모리(601), 공유 메모리(602) 및 보안 메모리(603)를 포함한다. 일반 메모리(601), 공유 메모리(602) 및 보안 메모리(603)는 메모리(600) 내의 구분된 영역일 수 있다. 일반 펌웨어(610)는 일반 메모리(601) 및 공유 메모리(602)에 접근할 수 있다. 보안 펌웨어(620)는 공유 메모리(602) 및 보안 메모리(603)에 접근할 수 있다.The content output apparatus 200 can implement the general firmware 610 and the security firmware 620 using the processor 220. [ The memory 600 may correspond to the memory 230 described above with reference to Figures 2-5. The memory 600 includes a general memory 601, a shared memory 602, and a secure memory 603. The general memory 601, the shared memory 602, and the secure memory 603 may be separate areas within the memory 600. The general firmware 610 can access the general memory 601 and the shared memory 602. The security firmware 620 can access the shared memory 602 and secure memory 603.

일반 펌웨어(610)는 재생기(611) 및 일반 DRM 모듈(612)를 구현할 수 있다. 보안 펌웨어(620)는 보안 DRM 모듈(621)을 구현할 수 있다.The general firmware 610 may implement the player 611 and the general DRM module 612. The security firmware 620 may implement the secure DRM module 621.

단계(635)에서, 재생기(611)는 통신부(210)가 수신한 암호화된 컨텐츠의 데이터를 일반 메모리(601)에 저장할 수 있다.In step 635, the player 611 may store the data of the encrypted content received by the communication unit 210 in the general memory 601. [

단계(640)에서, 재생기(611)는 일반 DRM 모듈(612)로 수신한 보안 파라미터를 전송한다.In step 640, the player 611 transmits the security parameters received by the generic DRM module 612.

단계(645)에서, 일반 DRM 모듈(612)은 보안 파라미터에 기초하여 암호화된 컨텐츠의 데이터를 처리할 DRM 모듈을 결정한다.At step 645, the generic DRM module 612 determines the DRM module to process the data of the encrypted content based on the security parameters.

단계(650)에서, 일반 DRM 모듈(612)은 암호화된 컨텐츠의 데이터가 보안 DRM 모듈에 의해 처리되는 경우, 일반 DRM 모듈(612)은 일반 메모리(601)에 저장된 암호화된 컨텐츠의 데이터를 공유 메모리(602)에 저장한다.In step 650, when the encrypted content data is processed by the secure DRM module, the generic DRM module 612 transmits the encrypted content data stored in the generic memory 601 to the shared memory (602).

단계(655)에서, 일반 DRM 모듈(612)은 공유 DRM 모듈(621)로 공유 DRM 모듈(621)이 암호화된 컨텐츠의 데이터를 처리할 것을 지시한다.In step 655, the generic DRM module 612 instructs the shared DRM module 621 to process the data of the encrypted content in the shared DRM module 621.

단계(660)에서, 공유 DRM 모듈(621)은 공유 메모리(602)로부터 암호화된 컨텐츠의 데이터를 로드한다. 공유 DRM 모듈(621)은 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성한다.At step 660, the shared DRM module 621 loads the data of the encrypted content from the shared memory 602. The shared DRM module 621 decrypts the data of the encrypted content to generate data of the permitted content.

단계(665)에서, 공유 DRM 모듈(621)은 허가된 컨텐츠의 데이터가 생성되었음을 나타내는 정보를 일반 DRM 모듈(612)로 전송한다.In step 665, the shared DRM module 621 transmits to the generic DRM module 612 information indicating that the data of the authorized content has been generated.

단계(668)에서, 공유 DRM 모듈(621)은 허가된 컨텐츠의 데이터를 보안 메모리에 저장한다.At step 668, the shared DRM module 621 stores the data of the authorized content in secure memory.

단계(670)에서, 일반 DRM 모듈(612)은 재생기(611)로 허가된 컨텐츠의 데이터가 생성되었음을 나타내는 정보를 재생기(611)로 전송한다.In step 670, the general DRM module 612 transmits to the player 611 information indicating that the data of the content permitted by the player 611 has been generated.

단계(675)에서, 재생기(611)는 디코더/렌더러로 허가된 컨텐츠의 데이터에 기초하여 최종 컨텐츠의 데이터를 처리할 것을 요청한다.At step 675, the player 611 requests to process the data of the final content based on the data of the content authorized by the decoder / renderer.

단계(680)에서, 디코더/렌더러(622)는 보안 메모리(603)로부터 허가된 컨텐츠의 데이터를 로드한다. 디코더/렌더러(622)는 허가된 컨텐츠의 데이터를 디코딩 및 렌더링함으로써 최종 컨텐츠의 데이터를 생성한다.In step 680, the decoder / renderer 622 loads the data of the authorized content from the secure memory 603. The decoder / renderer 622 decodes and renders the data of the authorized content to generate data of the final content.

재생기(611)는 최종 컨텐츠의 데이터에 기초하여 컨텐츠를 출력한다.The player 611 outputs the content based on the data of the final contents.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA) A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

 이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

100: 컨텐츠 제공 시스템
200: 컨텐츠 출력 장치
210: 통신부
220: 프로세서
230: 메모리
100: Content providing system
200: Content output device
210:
220: Processor
230: Memory

Claims (18)

컨텐츠 출력 장치에 의해 수행되는, 컨텐츠 출력 방법에 있어서,
컨텐츠 서버로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신하는 단계;
상기 보안 파라미터에 기초하여 상기 암호화된 컨텐츠의 데이터를 복호화하기 위한 모드를 결정하는 단계;
결정된 모드가 보안 모드인 경우, 상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성하는 단계; 및
상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계
를 포함하고,
상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는,
보안 DRM 모듈(Digital Right Management Module)을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계
를 포함하는,
컨텐츠 출력 방법.
A content output method performed by a content output apparatus,
Receiving data and content security parameters of encrypted content from a content server;
Determining a mode for decrypting data of the encrypted content based on the security parameter;
If the determined mode is the secure mode, generating data of the cleared content by decrypting the encrypted content data in the secure mode; And
Outputting the content based on the data of the permitted content
Lt; / RTI >
Wherein the step of generating the data of the authorized content by decrypting the encrypted content data in the secure mode comprises:
Generating encrypted content data by decrypting the encrypted content data using a secure DRM module (Digital Right Management Module)
/ RTI >
A content output method.
제1항에 있어서,
상기 보안 파라미터는, 상기 암호화된 컨텐츠의 데이터가 일반 모드로 복호화되어야 하는지 또는 보안 모드로 복호화되어야 하는지를 나타내는,
컨텐츠 출력 방법.
The method according to claim 1,
Wherein the security parameter indicates whether data of the encrypted content should be decrypted into a general mode or a secure mode,
A content output method.
삭제delete 제1항에 있어서,
결정된 모드가 일반 모드인 경우, 상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계
를 더 포함하고,
상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는,
일반 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계
를 포함하는,
컨텐츠 출력 방법.
The method according to claim 1,
Generating encrypted content data by decrypting the encrypted content data in the normal mode when the determined mode is the normal mode,
Further comprising:
Wherein the step of generating the data of the authorized content by decrypting the encrypted content data in the normal mode comprises:
Generating the data of the authorized content by decrypting the data of the encrypted content using the general DRM module
/ RTI >
A content output method.
제4항에 있어서,
상기 보안 DRM 모듈은 보안 펌웨어(firmware)를 통해 구현되고,
상기 일반 DRM 모듈은 일반 펌웨어를 통해 구현되며,
상기 보안 펌웨어 및 상기 일반 펌웨어는 서로 독립적이고,
상기 보안 펌웨어 및 상기 일반 펌웨어는 동일한 프로세서에 의해 실행되는,
컨텐츠 출력 방법.
5. The method of claim 4,
The secure DRM module is implemented through security firmware,
The general DRM module is implemented through general firmware,
Wherein the security firmware and the general firmware are independent of each other,
Wherein the security firmware and the generic firmware are executed by the same processor,
A content output method.
제5항에 있어서,
상기 보안 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계는,
상기 일반 DRM 모듈이 상기 일반 DRM 모듈 및 상기 보안 DRM 모듈의 공유 메모리(shared memory)에 상기 암호화된 컨텐츠의 데이터를 저장하는 단계;
상기 보안 DRM 모듈이 상기 공유 메모리로부터 상기 암호화된 컨텐츠의 데이터를 로드하는 단계;
상기 보안 DRM 모듈이 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계; 및
상기 보안 DRM 모듈이 상기 허가된 컨텐츠의 데이터를 보안 메모리에 저장하는 단계
를 포함하고,
상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터는 상기 컨텐츠를 출력하기 위해 이용되는,
컨텐츠 출력 방법.
6. The method of claim 5,
Wherein the step of generating data of the authorized content by decrypting the encrypted content data using the secure DRM module comprises:
The general DRM module storing data of the encrypted content in a shared memory of the general DRM module and the secure DRM module;
The secure DRM module loading data of the encrypted content from the shared memory;
The secure DRM module generating data of the authorized content by decrypting the encrypted content data; And
Wherein the secure DRM module stores data of the authorized content in a secure memory
Lt; / RTI >
Wherein the data of the authorized content stored in the secure memory is used for outputting the content,
A content output method.
제6항에 있어서,
상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계는,
상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터를 로드하는 단계;
상기 허가된 컨텐츠의 데이터를 출력 형식에 대응하도록 디코딩 및 렌더링함으로써 최종 컨텐츠의 데이터를 생성하는 단계; 및
상기 최종 컨텐츠의 데이터를 출력함으로써 상기 컨텐츠를 출력하는 단계
를 포함하는,
컨텐츠 출력 방법.
The method according to claim 6,
Wherein the outputting of the content based on the data of the authorized content comprises:
Loading data of the authorized content stored in the secure memory;
Generating data of the final content by decoding and rendering the data of the permitted content to correspond to the output format; And
Outputting the content by outputting data of the final content
/ RTI >
A content output method.
제1항에 있어서,
상기 컨텐츠는 초고화질(Ultra high resolution) 컨텐츠인,
컨텐츠 출력 방법.
The method according to claim 1,
The content may be ultra high resolution content,
A content output method.
제1항, 제2항 및 제4항 내지 제8항 중 어느 한 항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
A computer-readable recording medium containing a program for carrying out the method according to any one of claims 1, 2 and 4 to 8.
컨텐츠 출력 장치의 메모리에 저장되는 컨텐츠 출력 어플리케이션에 있어서,
상기 컨텐츠 출력 어플리케이션은 상기 컨텐츠 출력 장치가,
컨텐츠 서버로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신하는 단계;
상기 보안 파라미터에 기초하여 상기 암호화된 컨텐츠의 데이터를 복호화하기 위한 모드를 결정하는 단계;
결정된 모드가 보안 모드인 경우, 상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성하는 단계; 및
상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계
를 실행하도록 상기 컨텐츠 출력 장치를 제어하고,
상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는,
보안 DRM 모듈(Digital Right Management Module)을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계
를 포함하는,
컨텐츠 출력 어플리케이션.
A content output application stored in a memory of a content output apparatus,
Wherein the content output application is a content output apparatus,
Receiving data and content security parameters of encrypted content from a content server;
Determining a mode for decrypting data of the encrypted content based on the security parameter;
If the determined mode is the secure mode, generating data of the cleared content by decrypting the encrypted content data in the secure mode; And
Outputting the content based on the data of the permitted content
Controls the content output apparatus to execute the content output apparatus,
Wherein the step of generating the data of the authorized content by decrypting the encrypted content data in the secure mode comprises:
Generating encrypted content data by decrypting the encrypted content data using a secure DRM module (Digital Right Management Module)
/ RTI >
Content output application.
컨텐츠 출력 장치에 의해 있어서,
컨텐츠를 출력하는 프로그램이 기록된 메모리; 및
상기 프로그램을 수행하는 프로세서
를 포함하고,
상기 프로그램은,
컨텐츠 서버로부터 암호화된(encrypted) 컨텐츠의 데이터 및 컨텐츠의 보안 파라미터를 수신하는 단계;
상기 보안 파라미터에 기초하여 상기 암호화된 컨텐츠의 데이터를 복호화하기 위한 모드를 결정하는 단계;
결정된 모드가 보안 모드인 경우, 상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된(cleared) 컨텐츠의 데이터를 생성하는 단계; 및
상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계
를 수행하고,
상기 보안 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는,
보안 DRM 모듈(Digital Right Management Module)을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계
를 포함하는,
컨텐츠 출력 장치.
By the content output apparatus,
A memory in which a program for outputting contents is recorded; And
The processor
Lt; / RTI >
The program includes:
Receiving data and content security parameters of encrypted content from a content server;
Determining a mode for decrypting data of the encrypted content based on the security parameter;
If the determined mode is the secure mode, generating data of the cleared content by decrypting the encrypted content data in the secure mode; And
Outputting the content based on the data of the permitted content
Lt; / RTI >
Wherein the step of generating the data of the authorized content by decrypting the encrypted content data in the secure mode comprises:
Generating encrypted content data by decrypting the encrypted content data using a secure DRM module (Digital Right Management Module)
/ RTI >
Content output device.
제11항에 있어서,
상기 보안 파라미터는, 상기 암호화된 컨텐츠의 데이터가 일반 모드로 복호화되어야 하는지 또는 보안 모드로 복호화되어야 하는지를 나타내는,
컨텐츠 출력 장치.
12. The method of claim 11,
Wherein the security parameter indicates whether data of the encrypted content should be decrypted into a general mode or a secure mode,
Content output device.
삭제delete 제11항에 있어서,
상기 프로그램은,
결정된 모드가 일반 모드인 경우, 상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계
를 더 수행하고,
상기 일반 모드로 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 허가된 컨텐츠의 데이터를 생성하는 단계는,
일반 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계
를 포함하는,
컨텐츠 출력 장치.
12. The method of claim 11,
The program includes:
Generating encrypted content data by decrypting the encrypted content data in the normal mode when the determined mode is the normal mode,
Lt; / RTI >
Wherein the step of generating the data of the authorized content by decrypting the encrypted content data in the normal mode comprises:
Generating the data of the authorized content by decrypting the data of the encrypted content using the general DRM module
/ RTI >
Content output device.
제14항에 있어서,
상기 보안 DRM 모듈은 보안 펌웨어(firmware)를 통해 구현되고,
상기 일반 DRM 모듈은 일반 펌웨어를 통해 구현되며,
상기 보안 펌웨어 및 상기 일반 펌웨어는 서로 독립적이고,
상기 보안 펌웨어 및 상기 일반 펌웨어는 상기 프로세서에 의해 실행되는,
컨텐츠 출력 장치.
15. The method of claim 14,
The secure DRM module is implemented through security firmware,
The general DRM module is implemented through general firmware,
Wherein the security firmware and the general firmware are independent of each other,
Wherein the security firmware and the generic firmware are executed by the processor,
Content output device.
제15항에 있어서,
상기 보안 DRM 모듈을 이용하여 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계는,
상기 일반 DRM 모듈이 상기 일반 DRM 모듈 및 상기 보안 DRM 모듈의 공유 메모리(shared memory)에 상기 암호화된 컨텐츠의 데이터를 저장하는 단계;
상기 보안 DRM 모듈이 상기 공유 메모리로부터 상기 암호화된 컨텐츠의 데이터를 로드하는 단계;
상기 보안 DRM 모듈이 상기 암호화된 컨텐츠의 데이터를 복호화함으로써 상기 허가된 컨텐츠의 데이터를 생성하는 단계; 및
상기 보안 DRM 모듈이 상기 허가된 컨텐츠의 데이터를 보안 메모리에 저장하는 단계
를 포함하고,
상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터는 상기 컨텐츠를 출력하기 위해 이용되고,
상기 메모리는 상기 공유 메모리 및 상기 보안 메모리를 포함하는,
컨텐츠 출력 장치.
16. The method of claim 15,
Wherein the step of generating data of the authorized content by decrypting the encrypted content data using the secure DRM module comprises:
The general DRM module storing data of the encrypted content in a shared memory of the general DRM module and the secure DRM module;
The secure DRM module loading data of the encrypted content from the shared memory;
The secure DRM module generating data of the authorized content by decrypting the encrypted content data; And
Wherein the secure DRM module stores data of the authorized content in a secure memory
Lt; / RTI >
Wherein the data of the authorized content stored in the secure memory is used for outputting the content,
Wherein the memory comprises the shared memory and the secure memory.
Content output device.
제16항에 있어서,
상기 허가된 컨텐츠의 데이터에 기초하여 상기 컨텐츠를 출력하는 단계는,
상기 보안 메모리에 저장된 상기 허가된 컨텐츠의 데이터를 로드하는 단계;
상기 허가된 컨텐츠의 데이터를 출력 형식에 대응하도록 디코딩 및 렌더링함으로써 최종 컨텐츠의 데이터를 생성하는 단계; 및
상기 최종 컨텐츠의 데이터를 출력함으로써 상기 컨텐츠를 출력하는 단계
를 포함하는,
컨텐츠 출력 장치.
17. The method of claim 16,
Wherein the outputting of the content based on the data of the authorized content comprises:
Loading data of the authorized content stored in the secure memory;
Generating data of the final content by decoding and rendering the data of the permitted content to correspond to the output format; And
Outputting the content by outputting data of the final content
/ RTI >
Content output device.
제11항에 있어서,
상기 컨텐츠는 초고화질(Ultra high resolution) 컨텐츠인,
컨텐츠 출력 장치.
12. The method of claim 11,
The content may be ultra high resolution content,
Content output device.
KR1020170107253A 2017-08-24 2017-08-24 Method and apparatus for outputting a content Active KR101977478B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170107253A KR101977478B1 (en) 2017-08-24 2017-08-24 Method and apparatus for outputting a content

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170107253A KR101977478B1 (en) 2017-08-24 2017-08-24 Method and apparatus for outputting a content

Publications (2)

Publication Number Publication Date
KR20190021879A KR20190021879A (en) 2019-03-06
KR101977478B1 true KR101977478B1 (en) 2019-05-10

Family

ID=65761143

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170107253A Active KR101977478B1 (en) 2017-08-24 2017-08-24 Method and apparatus for outputting a content

Country Status (1)

Country Link
KR (1) KR101977478B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223285B1 (en) * 1997-10-24 2001-04-24 Sony Corporation Of Japan Method and system for transferring information using an encryption mode indicator
KR101964229B1 (en) * 2013-07-26 2019-04-01 한화테크윈 주식회사 Surveillance server, method of data processing thereof, and surveillance system
KR102295661B1 (en) * 2013-12-15 2021-08-30 삼성전자주식회사 Method and apparatus for secured communication and multimedia device adopting the same

Also Published As

Publication number Publication date
KR20190021879A (en) 2019-03-06

Similar Documents

Publication Publication Date Title
US12341762B2 (en) Remotely managed trusted execution environment for digital-rights management in a distributed network with thin clients
US10685094B2 (en) Digital rights management (DRM) method and system for intelligent operating system
EP3191994B1 (en) Media decoding control with hardware-protected digital rights management
US8131995B2 (en) Processing feature revocation and reinvocation
US20140122902A1 (en) Information processing apparatus
US9767317B1 (en) System to provide cryptographic functions to a markup language application
US20140123320A1 (en) Processor, processor control method, and information processing device
TWI487375B (en) Methods and apparatuses for securing playback content
US9152577B2 (en) Security central processing unit management of a transcoder pipeline
US9436807B2 (en) Method and apparatus for providing digital rights management service in the cloud
US9800561B2 (en) Secure sharing of user annotated subscription media with trusted devices
US10944572B2 (en) Decryption and variant processing
CN104951706B (en) Method and apparatus for storing content
KR20120030419A (en) Memory device and method for embedding host-identification information into content
KR20090051235A (en) Computer-implemented methods, apparatus, information processing systems, and computer readable recording media
US20080250251A1 (en) Systems and Methods for Hardware Driven Program Execution
US20110219242A1 (en) Method and system for managing secure code loading in pc-slave devices
EP3605371B1 (en) Remotely managed trusted execution environment for digital-rights management in a distributed network with thin clients
KR101977478B1 (en) Method and apparatus for outputting a content
EP2699017B1 (en) Security processing unit with secure connection to head end
Mohanty et al. Media data protection during execution on mobile platforms–A review
US8020214B2 (en) Transmitter, receiver, and content transmitting and receiving method
CA3067087C (en) Method and device for secure video processing
US10419434B2 (en) Method and device for improving the protection of a multimedia signal against a malicious attack
US20160112379A1 (en) Apparatus for and method of playing back content

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20170824

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20181004

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20190326

PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20190503

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20190503

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20220314

Start annual number: 4

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20250408

Start annual number: 7

End annual number: 9