KR20180105687A - Method and system for conditional access through licensing of proprietary functions - Google Patents
Method and system for conditional access through licensing of proprietary functions Download PDFInfo
- Publication number
- KR20180105687A KR20180105687A KR1020187024370A KR20187024370A KR20180105687A KR 20180105687 A KR20180105687 A KR 20180105687A KR 1020187024370 A KR1020187024370 A KR 1020187024370A KR 20187024370 A KR20187024370 A KR 20187024370A KR 20180105687 A KR20180105687 A KR 20180105687A
- Authority
- KR
- South Korea
- Prior art keywords
- content
- cryptographic function
- playback
- input
- output
- 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.)
- Granted
Links
- 230000006870 function Effects 0.000 title claims abstract description 122
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000015654 memory Effects 0.000 claims description 34
- 230000009471 action Effects 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 16
- QWXYZCJEXYQNEI-OSZHWHEXSA-N intermediate I Chemical compound COC(=O)[C@@]1(C=O)[C@H]2CC=[N+](C\C2=C\C)CCc2c1[nH]c1ccccc21 QWXYZCJEXYQNEI-OSZHWHEXSA-N 0.000 description 16
- 238000004590 computer program Methods 0.000 description 15
- 238000009826 distribution Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000009434 installation Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001010 compromised effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000008929 regeneration Effects 0.000 description 2
- 238000011069 regeneration method Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000007664 blowing Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000246 remedial effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/254—Management at additional data server, e.g. shopping server, rights management server
- H04N21/2541—Rights Management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
- G06Q2220/10—Usage protection of distributed data files
- G06Q2220/18—Licensing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/603—Digital right managament [DRM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Technology Law (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
Abstract
다수의 재생 기기들의 재생 기기 상에서 콘텐츠의 재생을 안전하고 추적 가능하게 하는 방법이 제공되며, 다수의 재생 기기들 각각은 암호 함수 모듈(cryptographic function module; CFM)을 포함한다. 일 실시예에서, 상기 방법은 : 콘텐츠 라이센싱 에이전시(content licensing agency)로부터의 제1 입력을 재생 기기에서 수신(accepting)하는 단계; 상기 기기에서, CFM을 사용하여 독점적 암호 함수에 따라 상기 제1 입력으로부터 제1 출력을 생성하는 단계로서, 상기 제1 출력은 상기 재생 기기에 의한 콘텐츠의 재생을 가능하게 하는데 필요하며, 독점 암호 함수는 다수의 재생 기기들 각각의 CFM에 의해 실행 가능한 독점적 암호 함수들의 패밀리 중 하나인, 단계; 및 적어도 부분적으로 상기 제1 출력에 따라 상기 기기에 의한 상기 콘텐츠의 재생을 가능하게 하는 단계를 포함한다.There is provided a method for making playback of content secure and traceable on a playback device of a plurality of playback devices, each of the plurality of playback devices including a cryptographic function module (CFM). In one embodiment, the method comprises the steps of: accepting at a playback device a first input from a content licensing agency; In the device, generating a first output from the first input in accordance with a proprietary cryptographic function using a CFM, the first output being required to enable reproduction of the content by the player, Is one of a family of proprietary cryptographic functions executable by the CFM of each of a plurality of playback devices; And enabling playback of the content by the device at least partially in accordance with the first output.
Description
본 발명은 보호된 컨텐츠에 대한 조건부 액세스를 제공하는 시스템 및 방법, 특히 라이센싱 가능한 함수들의 실행을 통해 보호된 컨텐츠에 대한 액세스를 제공하는 시스템 및 방법에 관한 것이다.The present invention relates to a system and method for providing conditional access to protected content, and more particularly to a system and method for providing access to protected content through execution of licensable functions.
텔레비전 쇼와 영화와 같은 시청각 미디어 콘텐츠의 디지털화로 시청자는 개인의 즐거움을 위해 미디어 콘텐츠의 사본을 구매할 수 있게 되었다. 이러한 미디어 콘텐츠는 광 디스크와 같은 유형의(tangible) 미디어를 통해 보급될 수 있거나, 또는 나중에 재생할 수 있도록 콘텐츠 서버 또는 키오스크로부터 기록 가능한 미디어로 디지털 미디어를 다운로드하여 보급될 수 있다. 불행히도, 그러한 미디어 콘텐츠의 디지털화는 또한 대규모의 그리고 광범위한 무단 배포 및/또는 사용을 허용하였다. 이러한 무단 배포 및/또는 사용은 시청각 미디어 콘텐츠의 제공자들이 그러한 자료를 저작하는 것의 경제적 이익을 갖지 못하게 한다.Digitalization of audiovisual media content such as television shows and movies has allowed viewers to purchase copies of media content for personal enjoyment. Such media content may be distributed via tangible media such as optical discs, or may be downloaded by downloading digital media from a content server or kiosk to recordable media for later playback. Unfortunately, the digitization of such media content has also allowed for large and extensive unauthorized distribution and / or use. Such unauthorized distribution and / or use preclude providers of audiovisual media content from having the economic benefit of authoring such material.
물론, 콘텐츠의 무단 배포 및/또는 사용은 허가받지 않은 방식으로 콘텐츠를 보급 또는 사용하는 개인 또는 단체에 의한 콘텐츠의 저작권 침해를 구성한다. 따라서, 이러한 무단 사용을 방지하는 한 가지 방법은 이러한 저작권을 적극적으로 시행하는 것이다. 이러한 시행의 문제점들 중 하나는 그러한 저작권 침해가 일반적으로 고도로 분산화되고 분포되며, 그러한 엔티티에 대한 저작권 침해에 대한 소송은 복구될 수 있는 손해, 심지어는 법정 손해보다 훨씬 더 많은 비용이 든다는 것이다. 예를 들어, 개인이 무단으로 영화를 보거나 배포한 경우 저작권 침해로 유죄가 될 수 있지만, 이러한 침해에 대한 법정 배상은 해당 개인에 대한 소송 제기 비용 및 경비를 정당화하지 못한다. 또한, 그러한 행동들은 2차적 저작물(derivative work)과 관련하여 효과적이지 않을 수 있으며, 그리고 획득하기 어려운 증거를 필요로 할 수 있다.Of course, the unauthorized distribution and / or use of the content constitutes copyright infringement of the content by an individual or organization that distributes or uses the content in an unauthorized manner. Therefore, one way to prevent unauthorized use is to actively enforce such copyrights. One of the problems with these enforcement is that such copyright infringement is generally highly distributed and distributed, and litigation against copyright infringement of such entities is much more costly than recoverable damages or even legal damages. For example, if an individual views or distributes a movie without permission, he or she may be found guilty of copyright infringement, but a court award for such infringement does not justify the cost and expense of filing the suit against the individual. In addition, such actions may not be effective in relation to the derivative work, and may require evidence that is difficult to obtain.
다른 시행 전략들 또한 문제가 된다. 예를 들어, 그러한 전략 중 하나는 소송으로 보호된 콘텐츠를 디코딩하고 해독할 수 있는 소프트웨어 또는 하드웨어를 제공하는 엔티티들을 금하려고 시도하는 것이다. 문제는 침해 그 자체가 발생하기 전에는 그러한 엔티티들에 대한 소송 사유를 개시하는 것이 어려울 수 있으며(그리고 소송 사유가 있을 때에는, 일반적으로 보호되지 않은 사본이 이미 배포됨), 그리고 소프트웨어 또는 하드웨어가 비-침해 방식으로 사용될 수 있는 경우, 조치 자체가 실패할 수 있다는 것이다.Other implementation strategies are also problematic. For example, one such strategy is to attempt to deny entities that provide software or hardware capable of decoding and decrypting protected content. The problem may be that it is difficult to initiate litigation against such entities before the infringement itself occurs (and, in the case of litigation, generally unprotected copies have already been distributed) If it can be used in an infringing manner, the action itself may fail.
또한, 성공적인 디지털 권리 관리(digital rights management; DRM) 체계(scheme)는 DRM 체계 자체의 콘텐츠 제공자, 제조자 및 라이센서 간의 조정을 필요로 한다. 이 방식이 많은 제조자들 및 콘텐츠 제공자들에 의해 채택된 표준으로 의도될 때, 기기들은 공통 사양에 따라 제조된다. 불행하게도, 이 사양은 일반 대중에 의해 액세스될 수 있으며, 그리고 DRM 체계를 우회하는데 사용될 수 있으며, 그렇지 않으면 DRM 체계를 비효율적으로 만드는데 사용될 수도 있다. 동시에, 콘텐츠 제공자들은 콘텐츠를 보급하기를 원할 수 있으며, 그리고 제조자들은 특정 제한 조건들에서만(예를 들어, 특정 지정학적 경계들 또는 기간(time period) 내에서만) 사용하도록 의도된 기기들을 제작한다. In addition, successful digital rights management (DRM) schemes require coordination between the content providers, manufacturers and licensors of the DRM system itself. When this approach is intended as a standard adopted by many manufacturers and content providers, the devices are manufactured according to common specifications. Unfortunately, this specification can be accessed by the general public and used to circumvent the DRM scheme, or else it can be used to make the DRM scheme inefficient. At the same time, content providers may want to distribute content, and manufacturers produce devices that are intended to be used only in certain constraints (e.g., within specific geographic boundaries or time periods only).
잠재적인 실제 침해자들에 대한 추가적인 소송 사유들을 제공함으로써 현재의 방법들을 보강할 수 있는, 무단 사용 및/또는 보급으로부터 콘텐츠를 보호하기 위한 시스템 및 방법이 필요하다. 또한, 지정학적 경계들, 기간, 콘텐츠 감도(sensitivity) 또는 유형에 의해 또는 임의의 다른 원하는 수단에 의해 요구되는 바와 같이 상이한 체계들이 채택될 수 있게 하는 방식으로 콘텐츠 제공자들 및 제조자들이 그러한 콘텐츠를 보호할 수 있게 하는 시스템 및 방법이 필요하다. 본 명세서에 설명된 시스템 및 방법은 이러한 요구를 만족시킨다.There is a need for a system and method for protecting content from unauthorized use and / or dissemination that can augment current methods by providing additional litigation incidents for potential real infringers. It is also contemplated that content providers and manufacturers may protect such content in a manner that allows for different schemes to be adopted, as required by geographical boundaries, duration, content sensitivity or type, or by any other desired means. A system and method is needed to make it possible. The systems and methods described herein satisfy this need.
상술된 요구사항들을 해결하기 위해, 본 발명은 다수의 재생 기기들의 재생 기기 상에서 콘텐츠의 재생을 안전하고 추적 가능하게 하는 방법 및 시스템을 개시하며, 다수의 재생 기기들 각각은 암호 함수 모듈(cryptographic function module; CFM)을 포함한다.In order to solve the above-mentioned requirements, the present invention discloses a method and system for making playback of content on a playback device of a plurality of playback devices safe and traceable, each of the plurality of playback devices comprising a cryptographic function module module CFM).
일 실시예에서, 상기 방법은 : 콘텐츠 라이센싱 에이전시(content licensing agency)로부터의 제1 입력을 재생 기기에서 수신(accepting)하는 단계; 상기 기기에서, CFM을 사용하여 독점적 암호 함수에 따라 상기 제1 입력으로부터 제1 출력을 생성하는 단계로서, 상기 제1 출력은 상기 재생 기기에 의한 콘텐츠의 재생을 인에이블링(enabling)하는데 필요하며, 독점 암호 함수는 다수의 재생 기기들 각각의 CFM에 의해 실행 가능한 독점적 암호 함수들의 패밀리 중 하나인, 단계; 및 적어도 부분적으로 상기 제1 출력에 따라 상기 기기에 의한 상기 콘텐츠의 재생을 인에이블링하는 단계를 포함한다.In one embodiment, the method comprises the steps of: accepting at a playback device a first input from a content licensing agency; Generating, at the device, a first output from the first input in accordance with a proprietary cryptographic function using a CFM, the first output being necessary to enable playback of the content by the playback device The proprietary cryptographic function being one of a family of proprietary cryptographic functions executable by the CFM of each of the plurality of playback devices; And enabling playback of the content by the device at least partially in accordance with the first output.
관련 실시예에서, 상기 시스템은 제1 프로세서, 상기 프로세서에 통신 가능하게 연결된 메모리, 그리고 상기 기기에 통합된 CFM을 포함하는 기기를 포함하며, 상기 암호 함수 모듈은 CFM에 의해 실행 가능한 암호 함수들의 패밀리의 독점적 암호 함수에 따라 중간 입력으로부터 중간 출력을 생성하도록 구성된다. 또한, 상술된 메모리는 상기 기기에 제1 입력을 수신하고, 상기 제1 입력으로부터 중간 입력을 생성하고, 중간 출력을 수신하고, 제1 출력을 생성하고 그리고 적어도 부분적으로 상기 제1 출력에 따라 상기 기기에 의한 상기 콘텐츠의 재생을 인에이블링하기 위한 명령들을 포함하는 명령들을 저장한다.In a related embodiment, the system includes a first processor, a memory communicatively coupled to the processor, and a device including a CFM integrated into the device, the cryptographic function module comprising a family of cryptographic functions executable by the CFM Lt; RTI ID = 0.0 > intermediate < / RTI > Also, the memory described above may be configured to receive a first input to the device, generate an intermediate input from the first input, receive an intermediate output, generate a first output, and, at least partially, And instructions for enabling playback of the content by the device.
이제 도면을 참조하며, 도면에서 동일한 참조번호는 전체에 걸쳐 대응하는 부분들을 나타낸다 :
도 1은 비디오 데이터, 소프트웨어 업데이트 및 다른 데이터를 가입자에게 제공하는데 사용될 수 있는 배포 시스템의 개관을 나타내는 도면이다;
도 2a 및 도 2b는 종래의 디지털 권리 관리 시스템의 동작을 설명하기 위한 도면이다;
도 3a 및 도 3b는 개선된 디지털 권리 관리 시스템의 일 실시예를 도시하는 도면이다;
도 4는 콘텐츠를 제공할 때 암호 함수 모듈의 이용에 사용될 수 있는 예시적인 동작들을 나타내는 도면이다;
도 5는 제1 입력으로부터 제1 출력을 생성하는데 사용될 수 있는 예시적인 동작들을 나타내는 도면이다;
도 6a 내지 도 6c는 독점적 암호 함수 디지털 권리 관리 시스템의 상이한 실시예들을 나타내는 도면들이다;
도 7은 생성된 중간 I/O 쌍들을 판독 및 사용하여 재생을 인에이블링 또는 디스에이블링하거나 다른 동작을 취하기 위해 수행될 수 있는 동작들을 도시하는 도면이다; 그리고
도 8은 재생 기기 또는 그 요소들을 구현하는데 사용될 수 있는 컴퓨터 시스템의 도면이다.Reference is now made to the drawings, wherein like reference numerals designate corresponding parts throughout:
1 is an illustration of an overview of a distribution system that may be used to provide video data, software updates, and other data to subscribers;
2A and 2B are diagrams for explaining operations of a conventional digital rights management system;
Figures 3A and 3B are diagrams illustrating one embodiment of an improved digital rights management system;
4 is a diagram illustrating exemplary operations that may be used in the use of cryptographic function modules when providing content;
5 is a diagram illustrating exemplary operations that may be used to generate a first output from a first input;
Figures 6A-6C are diagrams showing different embodiments of a proprietary cryptographic function digital rights management system;
7 is a diagram illustrating operations that may be performed to read and use generated intermediate I / O pairs to enable or disable playback or take other actions; And
Figure 8 is a drawing of a computer system that may be used to implement a playback device or elements thereof.
이하의 설명에서, 본 발명의 일부를 형성하고 본 발명의 몇몇 실시예들을 예시로 도시하는 첨부 도면을 참조한다. 본 발명의 범위를 벗어나지 않고 다른 실시예들이 이용될 수 있고 구조적 변경이 이루어질 수 있음이 이해된다.In the following description, reference is made to the accompanying drawings which form a part hereof, and in which is shown, by way of illustration, some embodiments of the invention. It is understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
배포 시스템Distribution system
도 1은 콘텐츠 데이터를 제공하는데 사용될 수 있는 배포 시스템(100)의 개관을 나타내는 도면이다. 이러한 콘텐츠는 예를 들어 텔레비전 프로그램, 영화 및/또는 비디오 게임과 같은 미디어 프로그램을 포함할 수 있다.1 is an illustration of an overview of a distribution system 100 that may be used to provide content data. Such content may include, for example, a television program, a movie and / or a media program such as a video game.
배포 시스템(100)은 도 1에 또한 도시된, 함수 라이센서(102), 콘텐츠 라이센싱 에이전시 또는 콘텐츠 라이센서(108) 및 기기 제조자(104)에 의해 제조될 수 있는 재생 기기(114)를 포함한다. 일 실시예에서, 콘텐츠 라이센서(108)는 (서버 또는 유사 기기에 의해 구현될 수 있는) 라이센스 제공자(110) 및 콘텐츠 제공자(112)를 포함한다. 라이센스 제공자(110)는 콘텐츠의 재생을 가능하게 하기 위해 재생 기기(114)의 디지털 권리 관리(DRM) 시스템(116)에 의한 사용을 위한 권리부여 정보(entitlement information)를 제공함으로써 콘텐츠에 대한 액세스를 획득하기 위한 (예를 들어, 재생 기기(114)로부터의) 요청들(118)에 응답한다.The distribution system 100 includes a
콘텐츠 제공자(112)는 소비를 위해 재생 기기(114)에 콘텐츠(122)를 전송함으로써 (예를 들어, 재생 기기(114)로부터의) 콘텐츠에 대한 요청(120)에 응답한다. 일반적으로, 콘텐츠 제공자(112)에 의해 재생 기기에 제공되는 콘텐츠는 적절한 권리부여 정보(124)를 제공받고 상기 권리부여 정보(124)를 수용하고 사용하여 콘텐츠(112)를 제공하도록 구성된 DRM 시스템(DRMS)(116)을 갖는 재생 기기들(114)에 의해서만 사용되도록 암호화되거나 그렇지 않으면 난독화된다.The
PCF(proprietary crytographic function)들Proprietary crytographic function (PCF)
후술되는 바와 같이, DRMS(116)는 하나 이상의 독점 암호 함수들(126)(PCF들)을 구현하거나, 또는 그것은 기기(114)에 의한 콘텐츠의 사용을 허용하기 위해 수행되어야 한다. PCF(126)가 독점적이기 때문에(예를 들어, 라이센스 없이 라이센서(102)의 허락 없이 실행될 수 없기 때문에), PCF(126)는 또한 라이센싱 가능한 암호 함수 또는 LCF로 간주될 수 있다. 일 실시예에서, PCF의 독점적 특성은 그것이 보호 가능한 지적 재산권(예를 들어, 영업 비밀, 저작물 또는 특허 발명)에 해당한다는 사실에 뿌리를 두고 있다.As will be described below, the
일 실시예에서, PCF들(126)은 입/출력(I/O) 구분할 수 없는 암호 함수들이다. 이와 관련하여, I/O 구분할 수 없는 함수는 상기 함수에 대한 입력 값들 및 상기 함수에서 기인한 출력 값들의 검사만으로 확인될 수 없는 특성을 갖는 함수다. 예를 들어, 함수의 입/출력 쌍들이 (1, 2), (2, 4) 및 (4, 16)이라면, 함수가 제곱함수임을 합리적으로 확인할 수 있다. 왜냐하면 각각의 경우 출력이 입력의 제곱이기 때문이다. 이 경우, 이 함수는 I/O 구분 불가능하지 않다. 그러나 입/출력 쌍이 기본 함수의 본질이 확인될 수 있게 하는 패턴을 나타내지 않으면, 함수는 I/O 구분 불가능으로 분류될 수 있다. 함수는 구간적으로(piecewise) I/O 구분 가능할 수도 있지만 연속적으로 I/O 구분 가능할 수도 있다. 예를 들어, 위에 설명된 제곱 함수의 모든 N 번째 출력이 입/출력 쌍을 단순히 보는 것만으로는 확인될 수 없는 방식으로 제곱 함수의 결과 값에서 벗어난다면, 해당 함수 또한 I/O 구분 불가능일 수 있다.In one embodiment, PCFs 126 are cryptographic functions that can not distinguish input / output (I / O). In this regard, a function that can not distinguish an I / O is a function that can not be confirmed only by checking input values for the function and output values caused by the function. For example, if the input / output pairs of the function are (1, 2), (2, 4) and (4, 16), we can reasonably confirm that the function is a square function. Because in each case the output is the square of the input. In this case, this function is not I / O distinguishable. However, if the input / output pair does not indicate a pattern that allows the essence of the basic function to be identified, the function can be classified as I / O indistinguishable. The function may be piecewise I / O discrimination, but may be I / O discrimination successively. For example, if all of the Nth output of the squared function described above deviates from the result of the squared function in such a way that it can not be determined simply by looking at the input / output pair, have.
PCF들(126)(도 1에서 f PC (·)로 표시됨)은 각각 연관된 "블랙박스"(106A-106B)를 통해 라이센서(102)로부터 기기 제조자(104), 라이센스 제공자(110) 또는 콘텐츠 제공자(112)에 제공될 수 있다. 블랙박스(106)는, 그 이름에서 알 수 있듯이, 변환이 어떻게 수행되는지 밝히지 않으면서 또는 데이터를 공개하지 않으면서, 코드 또는 키와 같은 데이터 변환을 수행하는 기기이다. 이 애플리케이션에서, 블랙박스(106)의 사용은 라이센서(102)가 그 정보 및/또는 데이터 자체를 엔티티에 노출시키지 않으면서 다른 엔티티의 설비에서 기기들(114)로의 설치를 위한 프로그램 명령들 및/또는 데이터를 원격으로 제공할 수 있게 한다. 예를 들어, 블랙박스(106A)는 기기(114)의 제조자에게 제공될 수 있으며, 그리고 기기 제조자(104)로부터의 전용 소프트웨어 또는 하드웨어 모듈 비밀에 의해 수행되는 동작들을 유지(holding)하면서 재생 기기(114)의 전용 하드웨어 또는 소프트웨어 프로세서 모듈을 프로그래밍 또는 구성하는데 사용될 수 있다. 또한 PCF들(126)이 블랙박스(106B)를 통해 라이센스 제공자(110)에게 제공되어, 라이센스 제공자(110)는 재생 기기(114)에 안전하게 전송된 권리부여 정보(124)에 PCF(126)를 포함할 수 있다. 유사하게, PCF들(126)은 콘텐츠 제공자(112)에 제공되어, 콘텐츠 제공자(112)가 PCF(126)에 암호화된 콘텐츠(112)를 안전하게 제공할 수 있게 할 수 있다.PCF of 126 (indicated by f PC (·) in Fig. 1) are each associated with a "black box" (106A-106B) device manufacturers from the
암호 함수는 입력 값들에서 출력 값들을 생성하는데 사용되는 함수 또는 함수들의 조합의 상업적으로 실행 가능한 성능이 라이센서(102)로부터의 라이센스를 필요로 한다는 점에서 "라이센싱 가능(licenseable)"하다. 그러한 라이센싱 가능함(licensability)은 예를 들어 (1) 대중으로부터 비밀리로 유지되고 리버스 엔지니어링(reverse-engineer)하기 어려움으로써 그리고/또는 (2) 독창적 및/또는 원래의 지적 재산으로서 보호받을 수 있음을 통해, 라이센서(102)에 독점적인 것으로부터 파생될 수 있다.The cryptographic function is "licenseable" in that the commercially feasible performance of the function or combination of functions used to generate the output values at the input values requires a license from the
예를 들어, 함수를 구현하는데 필요한 동작들의 조합을 결정하기 위한 (입/출력 쌍의 검사를 통해서든, 동작(들)을 수행하는 프로세싱 칩을 스트리핑(stripping)함으로써든, 아니면 함수를 수행하는데 필요한 데이터를 갖는 보안 메모리에 액세스를 시도함으로써든) 리버스 엔지니어링이 상업적으로 비실용적이며, 그리고 함수를 수행하고 입력 값들에서 적절한 출력값들을 계산하는 상업적으로 실용적인 유일한 방법이 함수를 수행하기 위한 라이센스를 획득하는 것이기 때문에, 함수는 "라이센싱 가능(licenseable)"할 수 있다.For example, it may be necessary to determine the combination of operations necessary to implement the function (either by inspection of the input / output pair, by stripping the processing chip performing the operation (s) Reverse engineering is commercially impractical and the only commercially viable way to perform the function and calculate the appropriate output values from the input values is to obtain a license to perform the function , The function may be "licenseable ".
예를 들어, 닫힌 형태의 함수(closed form function)를 생각해보자 :For example, consider a closed form function:
방정식 (1) Equation (1)
이 함수 는 입력 값들 0로부터 출력 값들 을 생성하며, 이는 실질적으로 의사 랜덤하고 본질적으로 매우 무상관하다. 많은 세트의 입/출력 쌍이 고려되었다고 하더라도, 권한이 없는 엔티티가 입/출력 값들만으로 함수 의 본질을 결정하는 것은 어려울 것이다. 이에 따라, 입력 값으로부터 적절한 출력 값 을 생성하는 것을 확신하기 위해서, DRMS(116)는 기본 함수에 대한 액세스를 가져야하며, 그리고 라이센서(102)는 재생 기기(114)의 하드웨어, 소프트웨어 또는 펌웨어에서 그 함수를 구현하기 위해 라이센스를 취한 엔티티들에 그 기본 함수에 대한 액세스를 제한할 수 있다.This
중요하게는, 라이센스를 통하는 것을 제외하고 함수를 실행하는 것의 "상업적으로 실행 불가능함"에 대한 전술한 논의는 무한한 자원 및 시간을 고려할 때 사실상 임의의 DRMS(116)의 특성 또는 DRMS(116)에 의해 수행되는 함수가 확인될 수 있다는 사실을 인정한다. 그러나, 이러한 리버스 엔지니어링 노력의 비용이 그러한 활동에 참여할 수 있는 상당수의 사람들을 위한 상업적 이익을 초과할 때 그러한 노력은 "상업적으로 실행 불가능"하다. 예를 들어, 재생 기기들(114)에서 구현된 라이센싱 가능 함수(126)가 쉽게 갱신되거나 변경되었다면, 라이센스를 통하는 것을 제외하고 함수를 실행하는 것의 "상업적으로 실행 불가능함"은 라이센싱 가능한 함수가 변경될 수 없는 경우보다 훨씬 적을 것이다. 왜냐하면 그러한 리버스 엔지니어링 노력의 이점은 함수(126)를 다른 함수(126)로 단순히 갱신함으로써 쉽게 제거될 수 있기 때문이다. 이와 유사하게, 라이센싱 가능한 함수(126)가 소수의 재생 기기들(114)에서 구현된다면, 라이센스를 통하는 것을 제외하고 함수(126)를 실행하는 것의 상업적으로 실행 불가능함은 많은 수의 재생 기기들(114)에서 변경 불가능하게 구현되는 라이센싱 가능한 함수에 비해 적을 것이다. 왜냐하면, 적은 수의 재생 기기들로부터의 경제적 이점은 많은 수의 재생 기기들(114)로부터 획득될 수 있는 이점보다 작기 때문이다.Significantly, the above discussion of "commercially unavailable" of executing a function, except through the license, is based on the characteristics of virtually any
또한, 함수(126)는 특정 관할권의 지적 재산권(예를 들어, 특허 또는 저작권) 법률에 따라 보호될 수 있는 독창성 또는 창의성이 충분하기 때문에 "라이센싱 가능"할 수 있으며, 따라서 (적어도 콘텐츠 해독을 목적으로) 그 함수의 수행에는 라이센스가 필요하다. 적절한 라이센스 없이 함수(126)를 수행하고 그 함수를 사용하여 콘텐츠를 해독 및 사용하는 엔티티들은 콘텐츠 자체의 무단 사용에 대한 저작권 침해에 대한 책임뿐만 아니라 함수(126)의 사용 또는 복사(예를 들어, 해당 함수를 수행하기 위한 코드 복사)에 대한 특허권 또는 저작권 침해에 대해서도 책임을 질 것이다. 이러한 경우, 함수의 "라이센싱 가능" 상태는 그것의 세부사항이 알 수 없고 판독할 수 없는 상태에 놓이는 것이 아니라, 그것의 상태가 보호되거나 보호 가능한 지적 재산에 놓인다.The
별도로 도시되어 있지만, 라이센스 제공자(110) 및 콘텐츠 제공자(112)는 단일 엔티티로서 함께 동작할 수 있다. 예를 들어, 권리부여 정보(124)에 대한 요청 및 콘텐츠(122)에 대한 요청은 동일한 엔티티에 전송될 수 있으며 그리고 동일한 엔티티로부터 수신될 수 있다.Although shown separately,
후술되는 바와 같이, PCF(126)는 라이센서(102)로부터 재생 기기들(114)의 제조자(104)에게 제공될 수 있거나, 또는 최종적으로 재생 기기(114)에 전달 및 설치하기 위해 라이센서(102)로부터 라이센스 제공자(110) 또는 콘텐츠 제공자(112)에게 제공될 수 있다. 예를 들어, 라이센스 제공자(110) 또는 콘텐츠 제공자(112)는 DRMS(116)의 일부로서 실행을 위해 재생 기기(114)에 다운로드되고 설치될 함수(126)를 제공할 수 있다.The
일 실시예에서, PCF(126)는 다수의 재생 기기들(114)에 의해 실행될 수 있는 다수의 암호 라이센싱 가능한 함수들(cryptographic licensable function) 중 하나이다. 동일한 PCF(126)를 갖는 기기(114) 그룹들은 제조자, 라이센스 제공자, 컨텐츠 제공자, 기기들(114)이 사용되거나 콘텐츠가 소비될 지정학적 위치, 또는 이들의 임의의 조합에 의해 기술될 수 있다.In one embodiment, the
예를 들어, 특정 기기 제조자(104)에 의해 제조된 모든 기기들(114)은 동일한 PCF(126)를 이용할 수 있다. 또는, 특정 기기 제조자(104)에 의해 제조된 기기들(114) 중에서, 동일한 모델 또는 유사한 명칭의 기기들(114)만이 동일한 PCF(126)를 사용할 수 있다. 또는, 특정 기기 제조자(104)로부터의 기기들(114)은 둘 이상의 PCF들(126)을 이용할 수 있으며, 이러한 PCF들 중 하나는 제조자(104)에 의해 생성된 모든 기기들(114)에 공통이며, 나머지 PCF들은 오직 특정 모델 그룹 내의 기기들(114)에만 또는 특정 시장을 위한 기기들에만 공통이다. 예를 들어, 제조자(104)에 의해 제조된 모든 기기들(114)은 세 개의 PCF들(126)을 포함할 수 있으며, 이 때 하나의 PCF(126)는 이러한 모든 기기들(114)에게 공통이며, 다른 PCF(126)는 동일한 모델의 기기들(114)에게만 공통이며, 그리고 또 다른 하나의 PCF(126)는 특정 시장을 위한 기기 모델들(예를 들어, 중국에서의 사용을 위해 판매되는 것, 또는 확장된 기능을 가진 모델들)의 서브세트를 의도하는 기기들(114)에게만 공통적이다.For example, all
기기 그룹들은 또한 콘텐츠 제공자(112)에 의해 정의될 수 있다. 예를 들어, FOX와 같은 특정 콘텐츠 제공자(112)는 콘텐츠 제공자(112)에 의해 제공되는 모든 콘텐츠의 프리젠테이션이 다른 콘텐츠 제공자(112)의 것들과는 상이한 특정 PCF(126)의 성능을 필요로 하는 것을 원할 수 있다.Device groups may also be defined by the
기기 그룹들은 또한 콘텐츠(122) 자체에 의해 정의될 수 있다. 예를 들어, 콘텐츠 제공자(112)는 각각의 특정 콘텐츠(122) 타이틀 또는 미디어 프로그램의 프리젠테이션이 동일하거나 상이한 콘텐츠 제공자(들)(112)로부터의 다른 콘텐츠 타이틀들의 것과는 상이한 특정 PCF(126)의 성능을 필요로 하는 것을 원할 수 있다(예를 들어, PCF(126)는 콘텐츠 제공자(112)에 대해 또는 모든 콘텐츠 제공자들(112)에 대해 고유한 콘텐츠일 수 있다). 이 경우, 콘텐츠 제공자(112)는 3 개의 PCF들(126)을 사용할 수 있는데, 그 중 하나는 콘텐츠 제공자(112)로부터의 임의의 콘텐츠(122)와 함께 사용하기 위한 것이며, 다른 PCF(126)는 각 콘텐츠 유형(예를 들어, 영화 또는 텔레비전)에 고유하며, 그리고 다른 하나는 콘텐츠 타이틀에 고유하다. 또한, 권리부여 정보(124)가 콘텐츠 제공자(112)와는 별개인 라이센스 제공자(110)에 의해 제공되는 실시예들에서, 기기(114) 그룹들은 라이센스 제공자(110)와 연관된 라이센스 제공자(110) 또는 콘텐츠(122)에 의해 정의될 수 있다.The device groups may also be defined by the content 122 itself. For example, the
기기 그룹들은 또한 지정학적 경계들에 의해 정의될 수 있다. 예를 들어, 한 국가 또는 국가들의 세트에서 의도된 용도로 제조된 재생 기기들(114)(또는 한 국가 또는 국가들의 세트에서 소비되도록 배포된 콘텐츠(122))은 다른 국가들에서 사용하기 위해 제공된 기기들 또는 콘텐츠와 상이한 특정 PCF(126)를 포함할 수 있다.Device groups can also be defined by geopolitical boundaries. For example, playback devices 114 (or content 122 distributed to be consumed in one country or set of countries) manufactured for a intended use in one country or set of countries may be provided for use in other countries May include a
도 2a 및 도 2b는 종래의 DRMS(116)의 동작들을 도시하는 도면들이다. DRMS(116)는 권리부여 정보 프로세서(entitlement information processor; EIP)(202), 콘텐츠 세그먼트 어셈블러(content segment assembler; CSA)(204) 및 해독기(206)를 포함한다.FIGS. 2A and 2B are diagrams showing operations of a
도 2a 및 도 2b 모두에서, EIP(202)는 권리부여 정보(124)를 받아들이고, 그리고 상기 권리부여 정보(124)로부터, 암호화된 콘텐츠 세그먼트들을 콘텐츠의 암호화된 버전으로 어셈블링하는데 필요한 콘텐츠 세그먼트 어셈블리 정보(208)를 생성하고 그리고 상기 어셈블링된 암호화된 콘텐츠 세그먼트들(212)을 해독하기 위해 필요한 해독 정보(210)를 생성한다. CSA(204)는 콘텐츠 세그먼트들(212)을 수용하고, 그리고 그러한 세그먼트들(212)을 해독기(decryptor)(206)에 제공되는 암호화된 콘텐츠 스트림(214)으로 함께 어셈블링한다. EIP(202)는 또한 권리부여 정보(124)로부터 암호화된 콘텐츠 스트림(214)의 세그먼트들을 해독하는데 필요한 해독 정보(210)(예를 들어, 해독키들)를 생성하고, 해독기(206)에게 해독 정보(210)를 제공하며, 해독기(206)는 상기 제공된 해독 정보(210)를 사용하여 상기 암호화된 콘텐츠 스트림(214)의 세그먼트들을 해독한다.2A and 2B, the
제1 실시예 - 다중 미디어 프로그램을 갖는 전송 스트림을 디멀티플렉싱하기First Embodiment - Demultiplexing a transport stream with multiple media programs
제1 예시적 실시예에서, 암호화된 콘텐츠 세그먼트들(212)은 다수의 미디어 프로그램들을 전송하는 전송 스트림의 패킷들의 형태를 취할 수 있다. 예를 들어, 도 2a는 두 개의 미디어 프로그램들(A 및 B)에 대해 암호화된 콘텐츠 세그먼트들(212A)을 전송하는 전송 스트림을 도시하며, 이 때, 미디어 프로그램(A)에 대한 각각의 콘텐츠 세그먼트(예를 들어, 미디어 프로그램(A)에 대한 CA1, CA2 ... CAN 및 미디어 프로그램(B)에 대한 CB1, CB2 ... CBN)는 동일한 키(예를 들어, KAo 및 KBo)로 암호화된다.In the first exemplary embodiment, the encrypted content segments 212 may take the form of packets of a transport stream carrying a plurality of media programs. For example, FIG. 2A shows a transport stream that transmits
미디어 프로그램에 대한 각각의 암호화된 패킷 또는 콘텐츠 세그먼트는 미디어 프로그램들 중 하나와 연관된 프로그램 식별자(PID)(도시된 경우에서는, A 또는 B)를 포함한다. 임의의 하나의 미디어 프로그램을 수신하여 제공하기 위해, CSA(204)는 원하는 프로그램과 연관된 PID를 갖는 (세그먼트들을 나타내는) 암호화된 패킷들을 식별하기 위해 전송 스트림을 파싱(parsing)하고, 그리고 해독을 위해 해독기(206)에게 이러한 패킷들을 제공한다. 예를 들어, 미디어 프로그램(A)이 선택되면, CSA(204)는 "A"를 포함하는 PID를 갖는 세그먼트들을 찾기 위해 수신(incoming) 세그먼트들을 파싱하고, 그리고 해독을 위해 해독기(206)에게 이러한 콘텐츠 세그먼트들(212A)을 제공한다. 미디어 프로그램(A)에 대한 암호화된 패킷들 또는 세그먼트들은 단일 키(KAo)에 의해 암호화될 수 있으며(그 결과 암호화된 세그먼트들(EKAo[CA1], EKAo[CA2] , ... , EKAo[CAN])이 발생), 또는 각각의 암호화된 패킷 또는 세그먼트는 상이한 키에 따라 암호화될 수 있다. 예를 들어, 콘텐츠 세그먼트(CAN)는 키(KANo)에 의해 암호화될 수 있으며, 콘텐츠 세그먼트(CBN)는 키(KBNo)에 의해 암호화될 수 있다. 이 경우, 각각의 콘텐츠 세그먼트의 복호화는 적절한 키가 해독기(206)에 제공될 것을 필요로 하는데, 이는 후술되는 바와 같이 EIP(202)를 통해 달성될 수 있다.Each encrypted packet or content segment for a media program includes a program identifier (PID) (A or B in the illustrated case) associated with one of the media programs. In order to receive and provide any one media program, the
제2 실시예 - 상이한 버전의 시간적 세그먼트들로 어셈블링된 미디어 프로그램Second Embodiment - A media program assembled into different versions of temporal segments
도 2b는 암호화된 콘텐츠 세그먼트들(212B)이 미디어 콘텐츠 세그먼트들의 어셈블리 형태를 취하고, 각각의 미디어 콘텐츠 세그먼트가 미디어 프로그램의 시간적(temporal) 부분의 다수의 버전들 중 하나를 포함하며, 각각의 콘텐츠 세그먼트가 서로 다른 세그먼트 키로 암호화되는 또 다른 실시예를 도시하는 도면이다. 예를 들어, 미디어 프로그램은 시간적으로(temporally) 세그먼트들(C1, C2 ... CN)로 분리될 수 있으며, 그리고 두 개의 서로 다른(A 및 B) 버전들의 세그먼트들이 (예를 들어, 서로 다른 인코딩 파라미터들을 사용하여) 생성될 수 있으며(그 결과, 미디어 프로그램의 버전 A에 대해 CA1, CA2 ... CAN 생성, 그리고 미디어 프로그램의 버전 B에 대해 CB1, CB2 ... CBN 생성), 각각의 세그먼트는 서로 다른 키(각각 KA1o, KA2o ... KANo 및 KB1o, KB2o ... KBNo)에 따라 암호화된다. 재생될 미디어 프로그램은 버전 A 및 B로부터 미디어 프로그램의 각 시간 부분을 선택함으로써 어셈블링될 수 있다. 일반적으로, 이는 EIP(202)에 의해 생성되고 CSA(204)에 제공되는 맵을 통해 달성된다.FIG. 2B illustrates an example in which encrypted content segments 212B take the form of an assembly of media content segments, each media content segment comprising one of multiple versions of a temporal portion of a media program, Lt; / RTI > are encrypted with different segment keys. For example, a media program may be temporally separated into segments C 1 , C 2 ... C N , and segments of two different (A and B) versions (e.g., (Using different encoding parameters) (resulting in C A1 , C A2 ... C AN generation for version A of the media program, and C B1 , C B2 , and C B2 for version B of the media program). ... are encrypted according to the generated C BN), each segment has different keys (K A1o respectively, A2o K ... K and K ANo B1o, K ... K B2o BNo). The media program to be played back can be assembled by selecting each time portion of the media program from versions A and B. [ In general, this is accomplished through a map generated by the
예를 들어, 미디어 프로그램의 제1 시간적 부분은 버전 A로부터 선택될 수 있으며, 미디어 프로그램의 제2 시간적 부분은 버전 B로부터 선택될 수 있고, 미디어 프로그램의 제3 시간적 부분은 버전 B로부터 선택될 수 있고, 그리고 미디어 프로그램의 제4 내지 제6 시간적 부분은 버전 A로부터 선택될 수 있다(이에 따라, 일련의 암호화된 콘텐츠 세그먼트들 CA1, CB2, CB3, CA4, CA5, CA6 ... CBN이 발생한다). 콘텐츠 세그먼트들의 어셈블리의 패턴은 법의학(forensic) 목적으로 해독된 콘텐츠를 워터마킹하는데 사용될 수 있다. 또한, 어떤 암호화된 콘텐츠 세그먼트 버전들이 함께 어셈블링되어야하는지를 식별하기 위해 맵이 필요하고 그리고 각각의 그러한 세그먼트가 상이한 키(상기 예에서, KA1o, KB2o, KB3o, KA4o, KA5o, KA6o ...KBNo)에 따라 암호화되기 때문에, 맵 또는 키들 중 하나의 생성이 훼손되면, 해독기(206)에 제공된 암호화된 콘텐츠 세그먼트들에 대해 적절한 키들이 제공되지 않을 것이고 그리고 미디어 프로그램은 적절히 해독되지 않을 것이다.For example, a first temporal portion of the media program may be selected from version A, a second temporal portion of the media program may be selected from the version B, and a third temporal portion of the media program may be selected from the version B And the fourth through sixth temporal parts of the media program may be selected from version A (accordingly, a series of encrypted content segments C A1 , C B2 , C B3 , C A4 , C A5 , C A6 . .. C BN occurs). The pattern of assemblies of content segments may be used for watermarking decrypted content for forensic purposes. In addition, a map is needed to identify which encrypted versions of the content segments are to be assembled together, and each such segment has a different key (K A1o , K B2o , K B3o , K A4o , K A5o , K A6o ... K BNo ), if the creation of one of the maps or keys is compromised, the appropriate keys for the encrypted content segments provided to the
도 3a 및 도 3b는 개선된 DRMS(300)의 일 실시예를 도시하는 도면들이다.FIGS. 3A and 3B are views showing one embodiment of the
도 3a는 개선된 DRMS(300)의 기능 블록도를 도시한다. 개선된 DRMS(300)는 암호화 함수 모듈(CFM)(308)을 이용하여 하나 이상의 PCF들(126)을 구현하며, 이는 후술되는 바와 같이 재생을 위한 콘텐츠를 제공하는 것의 일부로서 EIP(202), CSA(204) 및/또는 해독기(206)의 임의의 조합에 의해 수행되는 동작들 사이에 삽입(interpose)될 수 있다.FIG. 3A shows a functional block diagram of an
도 3b는 DRMS(300)를 구현하는 재생 기기(114)의 예시적인 하드웨어 구조를 도시하는 도면이다. 재생 기기(114)는 콘텐츠를 재생하는데 필요한 동작들을 수행하기 위해 프로세서(320) 명령들 및 데이터를 저장하는 메모리(322)에 통신 가능하게 결합된 프로세서(320)를 포함한다. 이러한 동작들은 예를 들어 CFM(308), EIP(202), CSA(204) 및 해독기(206)와 연관된 동작들 중 임의의 하나 또는 모두를 포함할 수 있다. 프로세서 명령들 및 데이터의 일부 또는 전부는 프로세서(320)에 통신 가능하게 결합된 보안 메모리(324)에 저장될 수 있다. 데이터를 검색 및/또는 저장하기 위한 보안 메모리(324)로의 액세스가 신뢰된 엔티티들로 제한된다는 점에서 보안 메모리(324)는 안전하다. 이 메모리(324)는, 대칭 또는 비대칭 키로 보안 메모리로의 그리고 보안 메모리로부터의 데이터를 암호화하는 것을 통해 또는 다른 수단에 의해, 메모리(324) 그리고 메모리로의 기입 및/또는 메모리로부터의 읽기를 시도하는 엔티티 사이의 인증을 필요로 하는 프로토콜을 실시함으로써 보안성이 부여될 수 있다. 일 실시예에서, CFM(308)는 메모리(322) 또는 보안 메모리(324)에 저장되고 프로세서(320)에 의해 실행되는 소프트웨어 모듈에 의해 구현된다.3B is a diagram illustrating an exemplary hardware structure of a
또한, 프로세서(320)는 해독된 그리고 디코딩된 콘텐츠를 제시하기 위해 디스플레이(328) 같은 출력 기기에 통신 가능하게 결합되며, 그리고 (예를 들어, 재생 기기(114)를 제어하기 위한) 사용자 입력들을 수신하기 위해 입력 기기(330)에 통신 가능하게 결합된다. 일 실시예에서, 디스플레이(328) 및 입력 기기(330)는 단일 유닛에 통합되어, 사용자가 터치스크린 또는 유사 기기를 사용하여 콘텐츠를 보고 입력을 제공하게 한다.The
대안적 실시예에서, 콘텐츠를 재생하기 위해 필요한 상기 동작들 중 일부는 메모리(322)에 또는 특수 목적 프로세서(320')에 전용인 메모리(322')에 저장된 명령들을 실행하는 하나 이상의 특수 목적 프로세서들(320')에 의해 수행될 수 있다. 예를 들어, CFM(308), EIP(202), CSA(204) 또는 해독기(206)의 임의의 조합은 메모리(322 또는 322')에 저장된 명령들을 실행하는 특수 목적 프로세서들(320')에서 구현될 수 있다.In an alternative embodiment, some of the operations required to play back the content may be performed by one or more special purpose processors < RTI ID = 0.0 > 0.0 > 320 '. ≪ / RTI > For example, any combination of
일 특정 실시예에서, CFM(308)는 특수 목적 프로세서 메모리(322') 또는 특수 목적 프로세서 보안 메모리(324')에 통신 가능하게 결합된 특수 목적 프로세서(320')에 의해 구현된다. 이 경우, 중간 입력들(306AA-306AC) 및 출력들(306BA-306BC)은 통신 링크(326)를 통해 프로세서들 사이에서 전달된다. 일 실시예에서, CFM(308)는 재생 기기(114)에 통합된다(예를 들어, 다른 처리 컴포넌트들과 별도로 최종 사용자에 의해 제거될 수 없다). In one particular embodiment,
도 4는 콘텐츠를 제공할 때 CFM(308)의 이용에 사용될 수 있는 예시적인 동작들을 나타내는 도면이다. 블록 402에서, 권리부여 정보를 갖는 제1 입력(302)은 기기(114)에 수용된다. 본원에 설명된 바와 같이, 제1 입력(302)은 키들, 디지털 인증서들, 인증 정보 또는 시드와 같은 권리부여 정보(124)를 포함할 수 있다.4 is a diagram illustrating exemplary operations that may be used in the utilization of
블록 404에서, 제1 출력(304A 및/또는 304B)(이후, 대안적으로 제1 출력(304)이라고도 함)은 제1 입력(302)으로부터 생성되며, 이 때, 상기 제1 출력(304)은 재생 기기(114)에 의한 콘텐츠의 재생을 가능하게 하는데 필요하다. 본원에 설명된 바와 같이, 제1 출력(304)은 콘텐츠 세그먼트 맵들 또는 패킷 식별자들 같은 콘텐츠 어셈블리 정보(304A), 또는 (2) 키들 또는 다른 정보 같이 콘텐츠의 해독을 인에이블링하는 정보(304B)를 포함할 수 있다. 제1 출력(304)은 CFM(308)를 사용하여 독점적 암호 함수 또는 PCF(126)에 따라 생성된다.At
블록 406에서, 기기(114)에 의한 콘텐츠의 재생은 적어도 제1 출력(304)에 따라 인에이블링된다. 상술된 제1 입력(302)은 EIP(202)에 제공된 권리부여 정보에 의해 표현될 수 있으며, 그리고 제1 출력은 (1) 콘텐츠 세그먼트들을 어셈블리하기 위해 CSA(204)에게 제공된 맵들 또는 다른 정보와 같은 콘텐츠 어셈블리 정보(208)에 의해, 그리고/또는 (2) 미디어 스트림의 해독을 가능하게 하는 해독기(206)에게 제공되는 키들 또는 다른 정보와 같은 해독 정보(210)에 의해 표현되며, 여기서, 제1 출력(304)의 생성은 CFM(308)을 사용하여 PCF의 실행에 의해 적어도 부분적으로 달성된다.At
CFM(308)에 의해 실행되는 PCF(126)는 재생 기기들(114) 상에 설치되도록 공급(provision)을 위해 라이센서(102)가 이용할 수 있는 PCF들(126)의 패밀리(family)중 하나일 수 있다. 본원에 설명된 바와 같이, 재생 기기(114) 상에 설치되고 콘텐츠를 재생하기 위해 사용되는 하나 이상의 PCF(들)(126)은 주어진 입력에 대해 PCF(126)에 의해 제공되는 출력에 의해 다수의 PCF들(126) 중에서 고유하게 식별될 수 있다(예를 들어, 실행된 PCF(126)의 입/출력 쌍들에 의해 식별 가능). The
도 5는 제1 입력(302)으로부터 제1 출력(304)을 생성하는데 사용될 수 있는 예시적인 동작들을 나타내는 도면이다. 블록 502에서, (적어도 부분적으로 제1 입력(302)으로부터 생성되는) 하나 이상의 중간 입력들(306AA, 306AB 및/또는 306AC, 이하에서는 대안적으로 중간 입력(306A)이라고도 함)은 CFM(308)에 제공된다. 블록 504에서, 하나 이상의 중간 출력들(306BA, 306BB 및 306BC, 이하에서는 대안적으로 중간 출력들(306B)이라고도 함)은, 적어도 부분적으로, CFM(308)을 사용하여, PCF(126)에 따라 상기 연관된 중간 입력(306A)으로부터 생성된다. 결과적인 중간 입력(306A)/중간 출력(306B)은 이들을 생성하는데 사용되는 PCF(126)와 고유하게 연관된 암호 입/출력 쌍(306IA, 306IB 및 306IC, 이하에서는 대안적으로 I/O 쌍들(306I)이라고도 함)을 포함한다. 이러한 고유한 연관은 CFM(308)에 의해 수행된 함수가 원하거나 예상된 함수인지를 결정하기 위해 입/출력 쌍(306I)이 사용될 수 있게 한다. 마지막으로, 블록 506에서, 제1 출력(304)은 적어도 부분적으로 중간 출력(306B)으로부터 생성된다.5 is a diagram illustrating exemplary operations that may be used to generate the first output 304 from the
도 6a 내지 도 6c는 PCF(126)가 DRMS(116)에 의해 어떻게 사용될 수 있는지에 대한 상이한 실시예들을 도시하는 도면이다. CFM(308)는 이하에서 더 설명되는 바와 같이, 암호화된 콘텐츠 세그먼트를 어셈블링할 때, 또는 암호화된 콘텐츠 세그먼트들을 해독할 때, 또는 이 둘 경우 모두에서 사용하기 위해 중간 입력(들)(306A)로부터 중간 출력(들)(306B)을 생성하는데 사용될 수 있다.6A-6C are diagrams illustrating different embodiments of how the
PCF로 권리부여 정보를 프로세싱Processing Rights Entitlement Information with PCF
도 6a는 EIP(202)에 의한 제1 출력들(304)(그리고 CSA(204) 및/또는 해독기(206)에 제공됨)의 생성시 PCF(126)의 사용의 적용을 나타내는 도면이다. 이 실시예에서, 제1 입력(302)은 EIP(202)에 제공되는 권리부여 정보(124)를 포함한다. 권리부여 정보(124)는 키들, 디지털 인증서들, 해시 값들, 또는 콘텐츠의 사용을 가능하게 하는데 필요한 임의의 데이터 또는 데이터의 조합을 포함할 수 있다.6A is a diagram illustrating application of the use of the
EIP(202)는 권리부여 정보(302)를 받아들이고, 그리고 그로부터 중간 입력(306AA)을 생성하며, 중간 입력(306AA)은 CFM(308)에 제공된다. CFM(308)은 PCF(126)를 사용하여 적어도 부분적으로 상기 제공된 중간 입력(306AA)에 기초하여 중간 출력(306BA)을 계산하고, 그리고 상기 중간 출력(306BA)을 EIP(202)에 제공한다. 그 다음, EIP(202)는 출력(304A 및/또는 304B, 이하에서는 대안적으로 출력(304)이라고도 함)을 계산하고, 그리고 그 출력(304)을 적절하게 CSA(204) 및/또는 해독기(206)에 제공한다. The
일 실시예에서, PCF(126)는 재생 기기의 제조자(104)에 의해 재생 기기(114) 상에 설치된다. 또한, 재생 기기 제조자(104)는 단일 재생 기기에 다수의 PCF들(126)을 설치할 수 있으며, 이 때, 서로 다른 PCF(126) 또는 PCF들의 세트(126)는 각각의 라이센스 제공자(110) 또는 콘텐츠 제공자(112)에게 할당되거나 또는 상이한 관할 구역에서 사용하기 위해 할당된다. PCF들(126)은 콘텐츠 라이센서(108)에 제공된 코드의 사용에 의해 호출될 수 있고, 그리고 추후에 권리부여 정보와 함께 재생 기기(114)에 제공될 수 있다. 또한, PCF들(126)의 일부 또는 전부는 JTAG 퓨즈 또는 다른 기술(artifice)의 블로잉(blowing)을 통해 인에이블링될 수 있다.In one embodiment, the
다른 실시예들에서, PCF(126)는 메모리(322, 322', 324, 324') 내 설치를 위해 콘텐츠 라이센서(예를 들어, 라이센서 제공자(110) 또는 콘텐츠 제공자(112))에 의해 제공될 수 있다. 예를 들어, 라이센스 파일의 형태인 권리부여 정보(302)는 콘텐츠 라이센서(108) 또는 다른 엔티티에 의해 제공될 수 있다. 그 라이센스 파일은 또한 재생 기기의 프로세서(320, 320')에 의한 실행을 위해 메모리(322, 322', 324, 324')에 저장하기 위한 명령들을 포함할 수 있다. 이러한 명령들은 PCF(126)를 수행하기 위한 하나 이상의 명령들을 포함할 수 있으며, 그리고/또는 명령들은 재생 기기에 이전에 설치된 하나 이상의 PCF들(126)을 호출하는 명령을 포함할 수 있다.In other embodiments, the
일 실시예에서, PCF(126)는 전송 스트림 세그먼트들을 어셈블링하기 위해 출력을 생성하는데 사용될 수 있다. 예를 들어, 암호화된 미디어 세그먼트가 PID에 의해 각각 기술된 다수의 미디어 프로그램을 갖는 전송 스트림을 포함한다면, EIP(202)에 제공되는 제1 입력(302) 또는 권리부여 정보(124)는, 적어도 부분적으로 PCF(126)를 사용하여, 원하는 미디어 프로그램을 위해 PID를 생성하는데 사용될 수 있는 입력(u i )을 포함할 수 있다. 이하의 방정식 (2)의 PCF(126)를 고려하자. 여기서, 입력(u i )은 0과 1 사이의 수이다.In one embodiment, the
방정식 (2) Equation (2)
운송 스트림으로부터 미디어 프로그램 세그먼트들을 복구하는데 필요한 PID가 64라면, PCF(126)에 대한 0.20의 입력(u i )은 원하는 결과(64)를 제공할 것이다. 따라서, 제1 입력(302) 또는 권리부여 정보는 0.20의 입력값을 포함할 수 있다. CFM(308)는 PID에 대한 출력 값 64을 계산하고, 콘텐츠 세그먼트들 또는 패킷들을 어셈블링하는데 사용하기 위해 그 값을 CSA(204)에 제공한다. 이 경우, 중간 입력 값(306AA)은 입력 값(302)(예를 들어, 0.20)과 동일하며, 그리고 중간 출력 값(306BA)(예를 들어, 64)은 CSA(204)에 제공된 출력값(304A)과 동일하다.If the PID required to recover the media program segments from the transport stream is 64, an input of 0.20 for PCF 126 ( u i ) will provide the desired result 64. Thus, the
입력 값(302)으로부터 중간 입력(306AA)을 생성하기 위한 전처리 및 중간 출력 값(306BA)으로부터 출력 값(304A)을 생성하기 위한 후처리(두 경우 모두, EIP(202)에 의해 실행됨) 또한 수행될 수 있다. 예를 들어, 권리부여 정보의 일부로서 EIP(202)에 제공되는 입력 값(302)은 중간 입력(306BA)을 생성하기 위해 EIP(202)에 의해 복수의 기능 동작들이 수행되는 수(number)일 수 있으며, 그리고 출력(304A)은 CFM(308)으로부터 중간 출력(306BA)에 대한 추가 동작들을 수행함으로써 생성될 수 있다.(Both performed by the EIP 202) to generate an intermediate value 306AA from the
제2 예에서, CFM(308)은 또한 상술된 바와 같이 콘텐츠 타이틀을 형성하기 위해 콘텐츠 세그먼트 버전들을 함께 어셈블링하는데 사용되는 맵들을 생성하는데 사용될 수 있다. 다시, 이는 권리부여 정보에 제공된 입력(302)으로부터 중간 입력(306AA)을 생성하기 위해 EIP(202)에 의해 수행되는 전처리 그리고/또는 중간 출력(306BA)으로부터 출력 값(들)(304A)(맵)을 생성하기 위해 EIP(202)에 의해 수행되는 후처리를 포함할 수 있다.In the second example, the
제3 예에서, PCF(126)는 암호화된 콘텐츠 스트림(214) 내 어셈블리된 콘텐츠 세그먼트들을 해독하기 위한 키들을 생성하는데 사용될 수 있다. PCF(126)를 사용하여, CFM(308)은 암호화된 미디어 프로그램을 해독하는데 필요한 키들을 생성할 수 있다. 예를 들어, EIP(202)에 제공된 제1 입력(302)의 권리부여 정보는 입력 키(KI) 값들을 포함할 수 있으며, 상기 입력 키(KI)로부터, 콘텐츠를 해독하기 위해 해독기(206)에 의해 필요한 하나 이상의 출력 키들(KO) 값들의 형태의 제1 출력(304B)이 도출된다. 예를 들어, 입력 값(302)이 권리부여 정보(124) 내에 제공된 입력 키(KI)를 포함한다고 가정한다. 그 입력 키는 CFM(308)에 제공된 중간 입력 값(306AA)을 생성하기 위해 암호 값으로 EIP(202)에 의해 해싱될 수 있다. 그 다음, CFM(308)은 (예를 들어, 방정식 (1)에 정의된 바와 같은) PCF(126)를 사용하여 다른 수를 계산할 수 있으며, 그리고 하나 이상의 다른 암호 동작들을 수행하기 위해 그 수를 EIP(202)에 제공할 수 있으며, 이에 따라 출력 키(KO)를 갖는 출력 값(304B)이 생성될 수 있으며, 그 다음 출력 값(30B)은 콘텐츠(암호화된 콘텐츠 스트림(214))를 해독하기 위해 해독기(206)에게 제공된다.In a third example, the
각각의 콘텐츠 세그먼트가 서로 다른 키로 암호화되는 실시예들에서, 다수의 출력 키들이 생성되어 해독기(206)에 제공될 수 있다. 이는 여러 개의 입력 키들의 사용 또는 하나의 입력 키의 사용에 의해 달성될 수 있으며, 이로부터 다수의 출력 키들이 생성될 수 있다. 예를 들어, 방정식(1)의 중간 출력()은 각 연속적인 중간 출력을 생성하기 위한 입력()으로서 사용될 수 있으며, 이에 따라, 의 초기 시드 값으로부터 일련의 의사 난수들을 생성한다. 에 대한 다른 초기 시드 값들은 서로 다른 의사 난수 시퀀스를 생성할 것이다.In embodiments in which each content segment is encrypted with a different key, a number of output keys may be generated and provided to the
전술한 바와 같이, 부정확한 PCF(126)가 중간 입력(306A)으로부터 중간 출력(306B)을 계산하는데 사용된다면, 그 결과는 잘못된 중간 출력 값(306B)일 것이며, 이는 해독된 미디어 프로그램의 프리젠테이션을 인에이블링하지 않을 것이다. 예를 들어, 부정확한 PCF(126)가 사용되어 부정확한 PID를 생성한다면, CSA(204)는 부정확한 인덱스를 사용하여 콘텐츠 세그먼트들(212)(패킷들)을 어셈블링하려 시도할 것이다. 그 결과는 에러(계산된 PID를 갖는 패킷들이 없는 경우)이거나 또는 잘못된 미디어 프로그램에 대한 세그먼트들의 어셈블리일 것이다. 부정확한 PCF(126)가 콘텐츠 세그먼트들(212)을 어셈블링하는데 사용되는 재생 맵을 생성하는데 사용된다면, 부정확한 세그먼트들(212)이 어셈블리를 위해 선택될 것이며, 이러한 세그먼트들(212)은 그러한 세그먼트들(212)과 연관된 키들로 해독 가능하지 않을 것이다. 또한, 출력 키(들)를 생성하는 데 필요한 중간 출력(604B)을 생성하기 위해 부정확한 PCF(126)가 사용된다면, 암호화된 콘텐츠는 해독기(206)에 의해 적절히 해독되지 않을 것이다. If an
PCF(126)는 다른 동작들도 취하기 위해 사용될 수 있다. 특히, PCF(126)에 의해 생성된 중간 I/O 쌍들(306I)은 예상 결과와 비교될 수 있으며, 후술되는 바와 같이 적절한 동작들이 취해진다.The
도 7은 재생을 인에이블링/디스에이블링하기 위해 또는 다른 동작들을 취하기 위해 상기 생성된 중간 I/O 쌍들(306I)을 판독하고 사용하기 위해 수행될 수 있는 동작들을 도시하는 도면이다. 블록 702에서, 중간 I/O 쌍(306I)이 판독된다. 일 실시예에서, 중간 I/O 쌍(306I)은 PCF(126)를 구현하는데 CFM(308)에 의해 사용되는 버퍼 또는 작업 메모리로부터 또는 CFM(308)로부터 직접 판독된다. 다른 실시예에서, 중간 I/O 쌍(306I)은 블록(702)에서 설명된 바와 같이 추후 검색을 위해 재생 기기(114)의 메모리에 저장된다. 블록(704)에서, 판독된 중간 I/O 쌍(306I)은 예상 중간 I/O 쌍(예를 들어, 기기(114)에서 구현되는 PCF(126)에 의해 생성될 것으로 예상되는 I/O 쌍)과 비교된다. 블록 706에서, 기기에 의한 콘텐츠의 재생에 영향을 미치는 동작은 블록 704에서 결정된 비교에 따라 취해진다.FIG. 7 is a diagram showing operations that may be performed to read and use the generated intermediate I / O pairs 306I to enable / disable playback or to take other actions. At
일례에서, CSA(204) 또는 해독기(206)에 제공되는 출력(304)을 생성하는 일부로서, EIP(202)는 CFM(308)에 중간 입력 값(306AA)을 제공할 수 있으며, 그리고 반환된 중간 출력 값(306AB)이 (비교를 위해 권리부여 정보(124)를 갖는 콘텐츠 라이센서(108)로부터 EIP(202)에 의해 수신될 수 있는) 예상 값이 아니라면, EIP(202)는 다수의 동작들을 개시할 수 있으며, 이러한 다수의 동작들은 (1) 콘텐츠 세그먼트 어셈블리 및/또는 해독 동작들을 중단시키는 것; (2) 부정확한 값이 계산되었다는 것 또는 그 값 자체를 내부 또는 외부의 모니터링 엔티티(예를 들어, 라이센서)에 또는 재생 기기(114)에 보고하는 것으로서, 이는 이후에 상기 기기(114)를 디스에이블링하거나 또는 다른 동작을 수행할 수 있음; (3) 기기(114) 상에 인터페이스를 제공하여, 사용자에게 결함이 발생했다는 것을 알려주고 사용자가 개선 조치(remedial action)를 취하도록 촉구하는 것; (4) 결함 카운터를 증가시키는 것; 또는 (5) 이들의 임의의 조합을 포함할 수 있다.In one example, as part of generating the output 304 provided to the
기기(114)의 프로세서들(320 및/또는 320')은 또한 추가 분석 또는 동작을 위해 (옵션으로, 기기(114)를 식별하는 정보, 기기 구성, 또는 중간 I/O 값들(306IA)이 생성될 때 처리된 콘텐츠와 함께) 중간 I/O 값들(306IA)을 관련 메모리들(322, 322', 324 또는 324')에 저장할 수 있다. 이러한 중간 I/O 값들(306IA)은 상기 권리부여 정보(124) 또는 암호화된 콘텐츠(212)를 획득하는데 사용되는 통신 링크(들)를 통해 라이센스 제공자(110) 또는 콘텐츠 제공자(112)에게 보고되거나 이들에 의해 판독될 수 있다. 바람직하게는, 중간 I/O 값들(306I)은 (예를 들어, 메모리(324 또는 324')에) 안전하게 저장될 수 있으며, 이로써, 중간 I/O 값들(306I)은 변경될 수는 없지만, 기기(114)가 예상된 PCF(126)를 수행했는지 여부를 조사하는 엔티티들에 의해 판독되거나 엔티티들에게 전송될 수 있다. 또한, 중간 I/O 값들(306I) 및 관련 정보는 다른 엔티티들(예를 들어, 라이센서 또는 키 발급 센터(102))에 보고될 수 있다. 이러한 정보는 손상된 기기들(114)을 식별하는데 사용되고 그리고/또는 기기(114)가 판매되었거나 사용된 관할 지역의 관련 법률 위반에 대한 결정적 증거를 제공함으로써 추가 침해를 중지시키는 도구로서 사용될 수 있다.The
예를 들어, 콘텐츠 제공자(112)가 재생 기기들(114) 상에서의 재생을 위해 콘텐츠를 제공하기를 원한다고 가정한다. 그 콘텐츠 제공자(114)는, 그들의 콘텐츠를 재생하도록 구비된 모든 기기들(114)이, 기기(114)의 DRM 시스템(116)에 의해 수행되는 DRM 처리의 일부로서 PCF(126)를 수행하기 위해 CFM(308)을 포함하도록 구성될 것을 요구할 수 있다. 라이센서 또는 키 발급 센터(102)는 기기(114)에 통합하기 위해 적절한 PCF(126)를 생성할 수 있으며, 그리고 기기(114) 상에 PCF를 수행하는 CFM(308)을 안전하게(예를 들어, 수행된 동작들을 공개하지 않고) 설치하기 위해 블랙박스(106A)를 기기 제조자(104)에게 제공할 수 있다. 그 다음, 기기들(114)은 소비자들에게 판매 또는 배포되며, 그 다음, 소비자들은 기기(114)를 사용하여 재생하기 위해 상기 권리부여 정보(124) 및 암호화된 콘텐츠(122)를 획득하기 위해 콘텐츠 라이센서(108)에 자신의 기기들(114)을 통신 가능하게 연결한다.For example, assume that
그 다음, 콘텐츠 제공자(112)는 콘텐츠(122)를 분할하고, 그리고 상기 콘텐츠의 세그먼트들을 암호화하며(이에 의해, 암호화된 콘텐츠 세그먼트들(212)을 생성), 이로써 상기 권리부여 정보(124) 및 적절한 PCF(126)의 사용은 암호화된 콘텐츠 세그먼트(212)를 리어셈블링 및/또는 해독하기 위해 요구된다. 단순 예에서, 콘텐츠 제공자(112)는 콘텐츠 세그먼트들(212A) 각각을 암호화할 수 있으며, 이로써, 콘텐츠 세그먼트들(212A)은 적어도 부분적으로 CFM(308)에서 PCF를 수행함으로써 입력 키(KI)로부터 생성된 출력 키(KO)를 사용하여서만 해독될 수 있다.The
인터넷 또는 다른 통신 수단을 통한 콘텐츠 라이센서(108)로의 기기(114)의 통신 연결 후에, 기기(114)는 권리부여 정보(124)를 수신하고, 그리고 EIP(202)는 기기(114)에서 구현되는 DRM 시스템의 일부로서 PCF(126)를 수행하기 위해 CFM(308)을 사용한다. 부정확한 PCF(126)가 기기(114)에 의해 수행된다면, 적절한 세그먼트들(212)이 어셈블링되지 않을 것이며, 그리고/또는 상기 어셈블링된 세그먼트들(214)은 적절히 해독되지 않을 것이다. 상기 예에서, 상기 기기(114)는 입력 키(KI)를 수신하며, 그리고 상기 기기(114) 상에 제조자에 의해 설치된 PCF(126)를 사용하여, 필요한 출력 키(예를 들어, 해독 정보(210))를 생성한다.After the communication connection of the
부정확한 PCF(126)가 (예를 들어, PCF(126)를 바이패스하거나 스푸핑함으로써) 수행되었다는 사실에 관계없이 세그먼트들(212)이 어셈블링되고 상기 어셈블링된 세그먼트들(214)이 적절하게 해독되도록 기기(114)가 손상된 경우, PCF(126)에 의해 계산된 중간 I/O 쌍들(306IA)은 기대 값들과 일치하지 않을 것이며, 그리고 이들의 비교는 기기(114)가 손상되었음을 나타낼 것이다. 이 정보는 해독된 콘텐츠(216)의 재생을 중단하거나 수정하기 위해 (예를 들어, 감소된 해상도로 다시 재생함으로써) 기기(114)에 의해 사용될 수 있으며, 또는 함수 라이센서(102) 또는 콘텐츠 라이센서(108)에게 보고될 수 있다.Regardless of the fact that the
또한, (결과적인 I/O 쌍들(306I)이 DRM 프로세스를 완료하고 콘텐츠를 제시하는데 필요한 제1 출력(304B)을 생성하는데 사용되지 않더라도) PCF(126)의 성능을 수행하거나 유도하는 임의의 비인가 엔티티는 독점 PCF(126)를 실행할 것이며, 그리고 이에 따라 콘텐츠 자체를 복사 또는 복제함에 의한 저작권 침해 그리고/또는 함수를 수행하거나 그것을 기기에서 구현함에 의한 특허 침해를 저지를 것이다. 이는 함수 라이센서(102) 및/또는 콘텐츠 라이센서(108)에게 추가적인 침해 또는 손해를 방지하기 위한 구제책을 구할 수 있는 다른 방안을 제공한다.Also, any unauthorized (or unauthorized) user who performs or derives the performance of the PCF 126 (even if the resulting I / O pairs 306I are not used to complete the DRM process and generate the first output 304B needed to present the content) The entity will execute the
도 6b는 CSA(204)에 의한 중간 출력 정보(306BB)의 생성시 PCF(126)의 사용의 적용을 나타내는 도면이다. 이 경우의 CFM(308)의 동작은 PCF(126)가 CSA(204)에 의해 수행되는 콘텐츠 세그먼트 어셈블리 동작들과 관련하여 실행된다는 점을 제외하면 도 6a에 제시된 동작과 유사하다. 예를 들어, EIP(202)는 콘텐츠 세그먼트들(212)을 암호화된 콘텐츠 스트림(214)으로 어셈블링할 때 CSA(204)에 제공되는 PID의 암호화된 버전을 제공받을 수 있다. 암호화된 PID는 CSA(204)로부터 CFM(308)으로 제공될 수 있으며, CFM(308)는 CSA(204)에 해독된 PID를 반환하여, 콘텐츠 세그먼트들(212)이 적절하게 어셈블링될 수 있게 한다. 대안적으로, CFM(308)은 적절한 PID를 생성하기 위해 CSA(204)에 의한 추가 프로세싱(예를 들어, 다른 해시 동작)을 요구하는 수 또는 값을 반환할 수 있다. 그 다음, CSA(204)는 암호화된 콘텐츠 스트림(214)을 생성하기 위해 암호화된 콘텐츠 세그먼트들을 어셈블링할 수 있으며, 암호화된 콘텐츠 스트림(214)은 해독을 위해 해독기(206)에 제공되어 해독된 콘텐츠(216)를 생성할 수 있다. 6B is a diagram showing the application of the use of the
도 6a와 관련하여 상술된 바와 같이, I/O 쌍들(306IB)을 포함하는 중간 결과들은 PCF(126)가 CSA(204)에 의해 정확하게 수행되었음을 확인하는데 사용될 수 있으며, 그 결과들은 해독된 콘텐츠(216)의 표시를 중단 또는 수정하는데 사용된다. I/O 쌍들(306IB) 또는 I/O 쌍들(306IB) 간의 비교 결과는, 데이터 또는 비교가 가능하게 될 때 또는 다른 시간에, 추가 동작을 위해 함수 라이센서(102) 또는 콘텐츠 라이센서(108) 또는 다른 엔티티에게 보고될 수 있다. 예를 들어, 결과는 암호화된 콘텐츠(122)가 프리젠테이션을 위해 수신되고 해독되는 동안, 또는 다음 라이센스 요청(118) 또는 콘텐츠 요청(120)을 통해 보고될 수 있다.Intermediate results, including I / O pairs 306IB, can be used to confirm that the
도 6c는 중간 출력 정보(306BC)의 생성시 CFM(308)에 의한 PCF(126)의 사용의 적용을 도시하는 도면이다. 이 경우 CFM(308)의 동작은, PCF(126)가 해독기(206)에 의해 수행되는 해독 동작들과 관련하여 실행된다는 것을 제외하면, 도 6a 및 도 6b에 도시된 것과 유사하다. 예를 들어, EIP(202)는 암호화된 콘텐츠 스트림(214)의 어셈블링된 암호화된 콘텐츠 세그먼트들(212)을 해독하여 해독된 콘텐츠(216)를 생성하기 위해 해독기(206)에 제공되는 하나 이상의 키들의 암호화된 버전을 포함하는 권리부여 정보(124)를 제공받을 수 있다. 암호화된 키(들)은 해독기(206)로부터 CFM(308)로 제공될 수 있으며, CFM(308)은 해독된 키(들)를 해독기(206)에 반환하기 위해 PCF(126)를 포함한 동작들을 실행하며, 이로써, 상기 암호화된 콘텐츠 스트림(214)의 암호화된 콘텐츠 세그먼트들은 적절하게 해독될 수 있다. 대안적으로, CFM(308)은 적절한 키(들)를 생성하기 위해 해독기(206)에 의한 추가 프로세싱(예를 들어, 다른 해시 동작 또는 다른 키 또는 비밀과의 결합 동작)을 요구하는 수 또는 값을 반환할 수 있다. 그 다음, 해독기(206)는 상기 암호화된 콘텐츠 스트림(214)의 암호화된 콘텐츠 세그먼트들을 해독하기 위해 그러한 키(들)를 사용하여 해독된 콘텐츠를 생성할 수 있으며, 해독된 콘텐츠는 재생 기기(114)의 디스플레이 상의 프리젠테이션을 위해 제공되거나 또는 재생 기기(114)에 통신 가능하게 결합된 디스플레이 또는 모니터가 구비되어 있다면 이들에게 제공된다.6C is a diagram showing the application of the use of
도 6a 및 도 6b와 관련하여 상술된 바와 같이, I/O 쌍들(306IC)을 포함하는 중간 결과들은 PCF(126)가 해독기(206)에 의해 올바르게 수행되었다는 것을 확인하는데 사용될 수 있으며, 그 결과들은 해독된 콘텐츠(216)의 프리젠테이션을 중단(suspending) 또는 수정하는데 사용된다. I/O 쌍들(306IC) 또는 I/O 쌍들(306IC) 간의 비교 결과는, 데이터 또는 비교가 가능하게 될 때 또는 다른 시간에, 추가 동작을 위해 함수 라이센서(102) 또는 콘텐츠 라이센서(108) 또는 다른 엔티티에게 보고될 수 있다. 예를 들어, 결과는 암호화된 콘텐츠(122)가 프리젠테이션을 위해 수신되고 해독되는 동안, 또는 다음 라이센스 요청(118) 또는 콘텐츠 요청(120)을 통해 보고될 수 있다.Intermediate results, including I / O pairs 306IC, can be used to confirm that the
상술된 바와 같이, PCF(126)는 DRM 시스템(116)의 CFM(308)에 의해 구현될 수 있는 PCF들(126)의 패밀리 중 하나일 수 있다. 또한, PCF들(126)은 PCF(126)를 중간 입력(306A)에 적용하여 PCF(126)에 적어도 다소 고유한 중간 출력(306B)을 생성하는 것으로부터 중간 I/O 쌍들(306I)이 기인하도록 정의될 수 있다. 이는 바람직할 수 있는 다수의 상이한 동작들을 취하기 위해 중간 I/O 쌍들(306I)이 사용되는 것을 허용한다.The
라이센싱된 호환 가능한 재생 기기들에 의한 라이센싱된 프리미엄 컨텐츠의 재생Regeneration of licensed premium content by licensed compatible playback devices
미디어 프로그램의 보급 및 재생과 관련된 하나의 문제점은, 실제로는 패키징된 미디어 프로그램 또는 기기가 프리미엄 경험을 제공하지 않은 경우 그리고/또는 경험을 제공하지만 공식적으로 라이센스가 부여되지 않은 경우, 위조자들이 패키징된 미디어 프로그램 또는 기기가 특정 품질 표준을 준수하고 그리고 라이센싱된 기기들 및/또는 매체라는 것을 나타내는 라벨, 로고, 또는 다른 모니커(moniker)를 패키징에 부착할 수 있다는 것이다.One problem associated with the dissemination and regeneration of media programs is that in reality, when the packaged media program or device does not provide a premium experience and / or provides experience but is not formally licensed, A label, logo, or other moniker may be attached to the packaging indicating that the program or device is in compliance with certain quality standards and is licensed devices and / or media.
예를 들어, HDR(high dynamic range) 재생을 갖는 미디어 프로그램이 소비자에게 제공될 수 있다고 하자. 이러한 미디어 프로그램은 표준 재생 기기(114)를 사용하여 SDR(standard dynamic range)로 재생될 수 있지만, HDR 표준들을 따르는 기기들만이 HDR을 갖는 미디어 프로그램들을 재생할 수 있다. 그러한 HDR 재생을 위한 표준들을 준수하는 제품들(미디어 프로그램들 및 재생 기기들(114)은 이와 같이 "인증된"것일 수 있으므로, 로고나 다른 휘장을 사용하여, 예를 들어 기기 자체 또는 기기의 패키징에, 인증이 표시될 수 있다.For example, suppose that a media program with high dynamic range (HDR) playback can be provided to a consumer. Such a media program may be reproduced in standard dynamic range (SDR) using the
이러한 프리미엄 콘텐츠와 관련하여, 두 가지 유형의 위조 미디어 프로그램들이 예상될 수 있다 : (1) 프리미엄 콘텐츠(예를 들어, HDR 비디오)를 포함하지 않지만 가짜 로고 또는 인증을 이용하여 패키징에 그것을 표시한 미디어 프로그램들, 그리고 (2) 프리미엄 콘텐츠를 포함하지만, 프리미엄 콘텐츠가 라이센스되지 않은 미디어 프로그램들(예를 들어, 미디어 프로그램이 미디어 프로그램을 제공할 수 있는 권한이 전혀 없는 비인가 소스로부터 나왔거나, 또는 미디어 프로그램이 프리미엄 형식이 아닌 경우). 또한, 두 가지 유형의 위조 기기들이 예상될 수 있다 : (1) 프리미엄 콘텐츠(예를 들어, HER 비디오)를 재생할 수 있는 것처럼 라벨링되어 있지만 사실 그렇게 할 수 없는 기기들, 그리고 (2) 프리미엄 컨텐츠를 재생할 수 있는 것처럼 라벨링이 되어 있고 그렇게 할 수 있는 기기들이지만, 프리미엄 형식으로 미디어 프로그램을 재생할 수 있는 권한이 전혀 없는 비인가 출처를 갖는 기기들.Regarding these premium content, two types of counterfeit media programs can be expected: (1) media that do not include premium content (eg, HDR video), but display it in packaging using a fake logo or certificate (2) media programs that include premium content but that do not have premium content licensed (e.g., a media program originates from an unauthorized source with no rights to provide the media program, Not in this premium format). In addition, two types of counterfeit devices may be expected: (1) devices that are labeled as capable of playing premium content (eg, HER video), but in fact can not, and (2) Devices that are labeled and capable of doing so, but that do not have the authority to play media programs in a premium format.
전술한 기술은 또한 미디어 프로그램 및 재생 기기(114) 모두가 프리미엄 콘텐츠 요구사항들을 따르고 그렇게 하도록 허가받았다는 것을 증명하는 정보의 표시를 제어하는데 사용될 수 있다.The techniques described above can also be used to control the display of information that both the media program and
예를 들어, PCF(126)는 라이센스 받고 따라서 프리미엄 콘텐츠를 제공하도록 인증된 재생 기기들(114)에게만 제공될 수 있다. 동시에, 프리미엄 콘텐츠를 포함하도록 인증된 미디어 프로그램들만이, 재생 기기(114)의 PCF(126)에 의해 조작될 때, 미디어 프로그램 및 재생 기기 모두가 정품이고 출처가 인가된 소스라는 것을 인증 받았다는 인지 가능한 표시(perceivable indication)를 제공하는데 사용될 수 있는 출력을 재생 기기(114)가 생성하게 하는 정보를 포함할 수 있다.For example,
이전과 마찬가지로, PCF 자체는 독점적이며 따라서 라이센싱 가능한 지적 재산을 포함할 수 있다. 따라서 PCF가 보호된 지적 재산인 경우, PCF(126)를 허가 없이 사용하는 모든 엔티티는 해당 지적 재산권의 침해에 대해 책임을 질 수 있다. 또한, 라이센스가 부여되지 않은 엔티티들에게 PCF를 제공함으로써 해당 라이센스를 위반하는 임의의 라이센스 부여된 엔티티는 해당 지적 재산권에 대한 기여 침해 또는 유도 침해에 대해서 뿐만 아니라 계약 위반에 대해서도 책임을 질 수 있다. 또한, 미디어 프로그램에 포함되고 PCF(126)에 의해 사용되는 정보는 (예를 들어, 저작권 법 하에서)보호된 지적 재산권일 수 있다.As before, the PCF itself is proprietary and can therefore include licensable intellectual property. Thus, if the PCF is a protected intellectual property, any entity that uses the
PCF(126)는 제조시에 재생 기기(114)에 설치되거나, 상술한 바와 같이 원격으로 재생 기기(114) 상에 설치될 수 있다. 또한, PCF(126)는 재생 기기(114)를 고객에게 배포한 후 원격으로 업데이트될 수 있다. PCF(126)에 의해 사용되는 정보는 보조 데이터를 위해 예약된 위치에서 전송 스트림으로 전송될 수 있거나, 또는 원하는 대로 프레임 또는 패킷 헤더에 배치될 수 있다. 적어도 부분적으로는 PCF(126)를 사용하여, 기기는 미디어 프로그램으로부터 정보를 검색하고, 콘텐츠를 제공하는데 필요한 값을 계산하며, 그리고 정확한 값이 계산되면, 콘텐츠를 제공한다.The
일 실시예에서, 제공된 "콘텐츠"는 미디어 프로그램이 정품 프리미엄 콘텐츠를 포함한다는 것을 나타내는 스플래시 스크린(splash screen)일 수 있다. 이러한 스플래시 스크린은 PCF(126)에 정확한 정보가 제공되는 경우에만 제공될 것인데, 이는 정품 미디어 프로그램이 정품 재생 기기(114) 상에서 재생되는 경우에만 발생할 것이다.In one embodiment, the provided "content" may be a splash screen indicating that the media program contains genuine premium content. This splash screen will only be provided if correct information is provided to the
이 기능은 가짜(bogus), 회색 시장(gray market) 또는 인증되지 않은 미디어 프로그램들 또는 재생 기기들을 식별하기 위해 세관 당국에 의해 사용될 수 있다. 이는 세관 공무원에게 정품의 인증된 재생 기기(114)를 공급하고, 그리고 알려진 정품의 인증된 재생 기기(114)에서 정품인 것으로 알려진 미디어 프로그램들을 재생하려고 시도할 것을 세관 공무원에게 지시함으로써 달성될 수 있다. 스플래시 스크린(또는 미디어 프로그램이 인증되었거나 정품이라는 것의 다른 표시)이 디스플레이되지 않는다면(미디어 프로그램과 함께 제공되는 정보가 잘못되었거나 누락된 경우일 것임), 세관 공무원은 미디어 프로그램이 정품임을 보증받지 않으며, 가짜, 회색 시장 또는 인증되지 않은 제품이라고 결론을 내릴 수 있다. 또한, 미디어 프로그램의 특정 특성들을 찾는 PCF(126)를 포함하는 것이 가능하며, 그리고 이러한 특성들에 기초하여, 미디어 프로그램을 정품이 아닌 것으로, 어쩌면 미디어 프로그램의 의심되는 소스로 식별하는 상이한 스플래시 스크린을 제공할 수도 있다. 또한, PCF(126)는 이 평가 결과를 컨텐츠 라이센서 또는 PCF(126) 라이센서와 같은 엔티티에 보고하여 침해 물품의 존재를 알릴 수 있다.This function may be used by customs authorities to identify bogus, gray market or unauthorized media programs or playback devices. This can be accomplished by supplying the
이와 유사하게, 공지된 정품 미디어 프로그램은 동일한 방식으로 재생 기기(114)가 정품인지를 확인하는데 사용될 수 있다. 공지된 정품 미디어 프로그램은 재생을 위해 재생 기기(114)에 제공된다. 재생 기기(114)가 정품이라면 적절한 PCF(126)를 포함할 것이기 때문에, 그리고 미디어 프로그램에 포함된 정보가 적어도 부분적으로 재생 기기(114)의 PCF(126)에 의해 처리될 때, "콘텐츠"(예를 들어, 스플래시 스크린 또는 로고)가 적절히 재생되어, 세관 공무원에게 재생 기기(114)가 정품인 인증된 제품(예를 들어, 프리미엄 콘텐츠를 재생하는 것이 허가됨)이라는 것을 알릴 것이다. 그러나 적절한 PCF(126)가 제공되지 않는다면, 스플래시 스크린 또는 로고의 표시가 부적절하게 재생되거나 전혀 재생되지 않을 것이며, 이에 따라 세관 공무원에게 재생 기기(114)가 정품인 인증된 제품이 아니라는 것을 알릴 것이다. 뿐만 아니라, 재생 기기(114)가 적절한 PCF(126)를 포함하지만 PCF(126)가 라이센싱되지 않았다면, 해당 재생 기기(114)의 제조자 및 사용자는 PCF(126)의 지적 재산권의 침해에 대해 책임을 질 수 있으며, 이에 따라 보상을 얻기 위한 그리고/또는 추가 침해를 방지하기 위한 또 다른 수단을 제공할 수 있다.Similarly, a known genuine media program can be used to verify that the
하드웨어 환경Hardware environment
재생 기기(114) 또는 그 요소들은 도 8에 도시된 바와 같이 컴퓨터 시스템(800)에서 구현될 수 있다. 컴퓨터 시스템(800)은 범용 하드웨어 프로세서(804A) 및/또는 특수 목적 하드웨어 프로세서(804B)(이하에서는, 대안적으로 총괄적으로 프로세서(804)로 지칭됨) 및 랜덤 액세스 메모리(RAM) 같은 메모리(806)를 포함하는 컴퓨터(802)를 포함한다. 컴퓨터(802)는 키보드(814), 마우스 기기(816) 및 프린터(828)와 같은 입/출력(I/O) 기기들을 포함하는 다른 기기들에 연결될 수 있다.The
일 실시예에서, 컴퓨터(802)는 운영체제(808)의 제어 하에서 컴퓨터 프로그램(810)에 의해 정의된 명령들을 수행하는 범용 프로세서(804A)에 의해 동작한다. 컴퓨터 프로그램(810) 및/또는 운영체제(808)는 메모리(806)에 저장될 수 있으며, 그리고 사용자 및/또는 다른 기기들과 인터페이스하여 입력 및 커맨드들을 수신할 수 있으며, 그리고 그러한 입력 및 커맨드들 그리고 컴퓨터 프로그램(810) 및 운영체제(808)에 의해 정의된 명령들에 기초하여 출력 및 결과들을 제공할 수 있다.In one embodiment, the
출력/결과들은 디스플레이(822)에 제시될 수 있으며 또는 프리젠테이션 또는 추가 처리 또는 동작을 위해 다른 기기에게 제공될 수 있다. 일 실시예에서, 디스플레이(822)는 액정에 의해 형성된 개별적으로 주소 지정 가능한 다수의 픽셀들을 갖는 LCD(liquid crystal display)를 포함한다. 디스플레이(822)의 각 픽셀은 컴퓨터 프로그램(810) 및/또는 운영체제(808)의 명령들을 입력 및 커맨드들에 적용한 후 프로세서(804)에 의해 생성된 데이터 또는 정보에 응답하여 디스플레이 상에 이미지의 일부를 형성하기 위해 불투명 또는 반투명 상태로 변화한다. 또한, 다른 디스플레이(822) 유형들은 디스플레이(822) 상에 제시된 이미지를 형성하기 위해 상태를 변화시키는 화소(picture element)들을 포함한다. 이미지는 그래픽 사용자 인터페이스(GUI) 모듈(818A)을 통해 제공될 수 있다. GUI 모듈(818A)이 개별 모듈로서 도시되었지만, GUI 기능들을 수행하는 명령들은 운영체제(808), 컴퓨터 프로그램(810)에 상주하거나 분산될 수 있거나 특수 목적 메모리 및 프로세서들로 구현될 수 있다.Outputs / results may be presented on
컴퓨터 프로그램(810) 명령들에 따라 컴퓨터(802)에 의해 수행된 동작들 중 일부 또는 전부는 특수 목적 프로세서(804B)에서 구현될 수 있다. 이 실시예에서, 컴퓨터 프로그램(810) 명령들 중 일부 또는 전부는 특수 목적 프로세서(804B) 내의 ROM(read only memory), PROM(programmable read only memory) 또는 플래시 메모리 또는 메모리(806)에 저장된 펌웨어 명령들을 통해 구현될 수 있다. 특수 목적 프로세서(804B)는 또한 본 발명을 구현하기 위한 동작들의 일부 또는 전부를 수행하기 위해 회로 설계를 통해 하드와이어될 수 있다. 또한, 특수 목적 프로세서(804B)는 기능들의 서브세트를 수행하기 위한 전용 회로, 그리고 컴퓨터 프로그램 명령들에 응답하는 것과 같은 보다 일반적인 기능들을 수행하기 위한 다른 회로들을 포함하는 하이브리드 프로세서일 수 있다. 일 실시예에서, 특수 목적 프로세서는 ASIC(application specific integrated circuit)이다.Some or all of the operations performed by the
또한, 컴퓨터(802)는 COBOL, C++, FORTRAN, 또는 다른 언어와 같은 프로그래밍 언어로 작성된 애플리케이션 프로그램(810)이 프로세서(804) 판독 가능 코드로 변환되도록 하는 컴파일러(812)를 구현할 수 있다. 완료 후에, 애플리케이션 또는 컴퓨터 프로그램(810)은, 컴파일러(812)를 사용하여 생성된 관계 및 로직을 사용하여, I/O 기기들로부터 수용되고 컴퓨터(802)의 메모리(806)에 저장된 데이터에 액세스하고 조작한다.The
또한, 컴퓨터(802)는 다른 컴퓨터로부터의 입력을 수용하고 다른 컴퓨터에 출력을 제공하기 위한 모뎀, 위성 링크, 이더넷 카드 또는 다른 기기와 같은 외부 통신 기기를 옵션으로 포함한다.The
일 실시예에서, 운영체제(808), 컴퓨터 프로그램(810) 및/또는 컴파일러(812)를 구현하는 명령들은 집 드라이브, 플로피 디스크 드라이브(824), 하드드라이브, CD-ROM 드라이브, 테이프 드라이브, 또는 플래시 드라이브와 같은 하나 이상의 고정식 또는 착탈식 데이터 저장 기기들을 포함할 수 있는 컴퓨터 판독 가능 매체, 예를 들어 데이터 저장 기기(820)에 유형적으로 구체화된다. 또한, 운영체제(808) 및 컴퓨터 프로그램(810)은, 컴퓨터(802)에 의해 액세스, 판독 및 실행될 때, 컴퓨터(802)가 본 발명을 구현 및/또는 사용하는데 필요한 단계들을 수행하게 하거나 명령들의 프로그램을 메모리에 로딩하게 하는 컴퓨터 프로그램 명령들로 구성되어, 컴퓨터가 본원에 설명된 방법 단계들을 실행하는 특별히 프로그램된 컴퓨터(specially programmed computer)로서 동작하게 하는 특수 목적 데이터 구조를 생성한다. 또한, 컴퓨터 프로그램(810) 및/또는 동작 명령들은 메모리(806) 및/또는 데이터 통신 기기들(830)에 유형적으로 구체화될 수 있으며, 이에 따라 본 발명에 따른 컴퓨터 프로그램 제품 또는 물품을 만들 수 있다. 이와 같이, 본원에 설명된 용어 "제조물", "프로그램 저장 기기" 및 "컴퓨터 프로그램 제품" 또는 "컴퓨터 판독 가능 저장 기기"는 임의의 컴퓨터 판독가능 기기 또는 매체로부터 액세스 가능한 컴퓨터 프로그램을 포함하도록 의도된다.In one embodiment, the instructions that implement
물론, 당업자는 상기 컴포넌트들, 임의의 수의 상이한 컴포넌트들, 주변 기기들 및 다른 기기들의 임의의 조합이 컴퓨터(802)와 함께 사용될 수 있다는 것을 인식할 것이다.Of course, those skilled in the art will recognize that any combination of the above components, any number of different components, peripherals, and other devices may be used with the
본 명세서에 "컴퓨터"라는 용어가 언급되었지만, 컴퓨터는 스마트폰, 휴대용 MP3 플레이어, 비디오 게임 콘솔, 노트북 컴퓨터, 포켓 컴퓨터, 또는 적절한 프로세싱, 통신 및 입/출력 기능을 갖는 임의의 다른 기기와 같은 휴대용 기기들을 포함할 수 있다.Although the term "computer" is referred to herein, the computer may be a portable device such as a smart phone, a portable MP3 player, a video game console, a notebook computer, a pocket computer, or any other device having appropriate processing, Devices.
결론conclusion
이상이 본 발명의 바람직한 실시예들에 대한 설명이다. 본 발명의 바람직한 실시예들에 대한 상기의 설명은 예시 및 설명을 위해 제공되었다. 그것은 본 발명을 개시된 정확한 형태로 제한하거나 포괄하려는 것은 아니다. 상기 교시에 비추어 많은 수정 및 변형이 가능하다. 예를 들어, 독점 라이센싱 가능한 함수의 예들이 예시적 목적으로 제시되었지만, 실제 독점 라이센싱 가능한 함수는 설명된 것보다 실질적으로 더 복잡할 수 있다.The foregoing is a description of preferred embodiments of the present invention. The foregoing description of the preferred embodiments of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teachings. For example, while examples of exclusively licensable functions are presented for illustrative purposes, actual exclusively licensable functions may be substantially more complex than described.
본 발명의 범위는 이 상세한 설명에 의해서가 아니라 오히려 본 명세서에 첨부된 청구항들에 의해 제한되는 것으로 의도된다. 상기 명세서, 예들 및 데이터는 본 발명의 조성물의 제조 및 사용에 대한 완전한 설명을 제공한다. 본 발명의 많은 실시예들이 본 발명의 사상 및 범위를 벗어나지 않고 이루어질 수 있으므로, 본 발명은 첨부된 청구범위에 존재한다.It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto. The above specification, examples and data provide a complete description of the manufacture and use of the compositions of the present invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the appended claims.
Claims (29)
상기 다수의 재생 기기들 각각은 암호 함수 모듈(cryptographic function module; CFM)을 포함하며,
상기 방법은 :
콘텐츠 라이센싱 에이전시(content licensing agency)로부터의 제1 입력을 상기 재생 기기에서 수신(accepting)하는 단계;
상기 기기에서, CFM을 사용하여 독점적 암호 함수에 따라 상기 제1 입력으로부터 제1 출력을 생성하는 단계로서, 상기 제1 출력은 상기 재생 기기에 의한 콘텐츠의 재생을 인에이블링하는데 필요하며, 상기 독점적 암호 함수는 상기 다수의 재생 기기들 각각의 CFM에 의해 실행 가능한 독점적 암호 함수들의 패밀리 중 하나인, 단계; 및
적어도 부분적으로 상기 제1 출력에 따라 상기 기기에 의한 상기 콘텐츠의 재생을 인에이블링하는 단계를 포함하며,
상기 독점적 암호 함수는 암호 함수 라이센싱 엔티티에 독점적이며 그리고 라이센스 소유자(licensee)의 라이센스를 조건으로 한 상기 재생 기기에 의한 실행을 위해 상기 라이센스 소유자에게 제공되는, 방법.CLAIMS 1. A method for making playback of content secure and traceable on a playback device of a plurality of playback devices,
Wherein each of the plurality of playback devices includes a cryptographic function module (CFM)
The method comprising:
Accepting a first input from a content licensing agency at the playback device;
Generating, in the device, a first output from the first input in accordance with a proprietary cryptographic function using a CFM, the first output being required to enable playback of the content by the playback device, Wherein the cryptographic function is one of a family of proprietary cryptographic functions executable by the CFM of each of the plurality of playback devices; And
Enabling playback of the content by the device at least partially in accordance with the first output,
Wherein the proprietary cryptographic function is exclusive to the cryptographic function licensing entity and is provided to the license holder for execution by the playback device subject to a license of the licensee.
상기 제1 입력으로부터 제1 출력을 생성하는 단계는 :
상기 재생 기기의 CFM에 대한 상기 제1 입력에 기초하여 중간 입력을 제공하는 단계;
상기 CFM을 이용하여, 상기 독점적 암호 함수에 따라 적어도 부분적으로 상기 중간 입력으로부터 중간 출력을 생성하는 단계로서, 상기 중간 입력 및 상기 중간 출력은 함께 상기 독점적 암호 함수와 고유하게 연관된 독점적 암호 함수 입/출력(I/O) 쌍을 포함하는, 단계;
상기 기기를 이용하여, 적어도 부분적으로 상기 중간 출력으로부터 상기 제1 출력을 생성하는 단계를 포함하는, 방법.The method according to claim 1,
Wherein generating a first output from the first input comprises:
Providing an intermediate input based on the first input to the CFM of the playback device;
Generating an intermediate output from the intermediate input at least partially in accordance with the proprietary cryptographic function using the CFM, wherein the intermediate input and the intermediate output together form a proprietary cryptographic function input / output (I / O) pair;
And using the instrument to generate the first output from the intermediate output at least partially.
상기 생성된 독점적 암호 함수 I/O 쌍을 판독하는 단계;
상기 중간 출력을 계산하는데 사용되는 상기 암호 함수와 고유하게 연관된 예상 암호 함수 I/O 쌍과 상기 암호 함수 I/O 쌍을 비교하는 단계; 및
상기 비교에 따라 상기 기기에 의한 상기 콘텐츠의 재생에 영향을 주는 동작을 취하는 단계를 더 포함하는, 방법.The method of claim 2,
Reading the generated exclusive cryptographic function I / O pair;
Comparing the cryptographic function I / O pair with an expected cryptographic function I / O pair uniquely associated with the cryptographic function used to calculate the intermediate output; And
Further comprising: taking an action that affects playback of the content by the device in accordance with the comparison.
상기 취해진 동작은 상기 기기에 의한 상기 콘텐츠의 재생을 디스에이블링하는 것을 포함하는, 방법.The method of claim 3,
Wherein the action taken comprises disabling playback of the content by the device.
상기 독점적 암호 함수는 라이센스 소유자의 라이센스에 따라 상기 기기 상에 설치되며, 그리고 상기 취해진 동작은 상기 비교를 사용하여 상기 라이센스 소유자를 식별하는 것을 포함하는,방법.The method of claim 3,
Wherein the proprietary cryptographic function is installed on the device in accordance with a license of a license holder and the action taken comprises identifying the license holder using the comparison.
상기 라이센스 소유자는 상기 재생 기기의 제조자이며;
상기 독점적 암호 함수는 상기 재생 기기의 제조자에 고유하며, 그리고 상기 제조자에 의해 상기 재생 기기에 설치되는, 방법.The method according to claim 1,
The license owner is a manufacturer of the playback device;
Wherein the proprietary cryptographic function is unique to the manufacturer of the playback device and is installed in the playback device by the manufacturer.
상기 독점적 암호 함수는 입/출력(I/O) 구분 불가능하며, 그리고 상기 재생 기기 상의 설치를 위해, 상기 독점적 암호 함수를 드러내지 않으면서 상기 암호 함수 라이센싱 엔티티로부터 상기 재생 기기에 제공되는, 방법.The method according to claim 1,
Wherein the proprietary cryptographic function is I / O indistinguishable and is provided to the playback device from the cryptographic function licensing entity for deployment on the playback device, without revealing the proprietary cryptographic function.
상기 재생 기기는 어떤 클래스의 재생 기기들 중 하나이며,
상기 독점적 암호 함수는 상기 재생 기기들의 클래스에 고유하며,
클래스는 상기 재생 기기가 사용되는 지리적 위치에 따라 정의되는, 방법.The method according to claim 1,
The playback device is one of a class of playback devices,
Wherein the proprietary cryptographic function is unique to the class of playback devices,
Wherein the class is defined according to the geographic location in which the playback device is used.
상기 독점적 암호 함수는 상기 콘텐츠에 고유한, 방법.The method according to claim 1,
Wherein the proprietary cryptographic function is unique to the content.
상기 콘텐츠는 콘텐츠 제공자에 의해 제공되며,
상기 독점적 암호 함수는 상기 콘텐츠 제공자에 고유한, 방법.The method according to claim 1,
The content is provided by a content provider,
Wherein the proprietary cryptographic function is unique to the content provider.
상기 독점적 암호 함수는 상기 콘텐츠를 갖는 콘텐츠 제공자에 의해 상기 재생 기기에 제공되며, 그리고 그 후 상기 CFM에 의한 실행을 위해 상기 재생 기기 상에 설치되는, 방법.The method according to claim 1,
Wherein the proprietary cryptographic function is provided to the playback device by a content provider having the content, and is then installed on the playback device for execution by the CFM.
상기 콘텐츠는 콘텐츠 키에 따라 암호화되는데 :
상기 제1 입력은 하나 이상의 제1 키들을 포함하는 권리부여 정보를 포함하며;
상기 제1 출력은 상기 암호화된 콘텐츠를 해독하기 위한 콘텐츠 키를 포함하는, 방법.The method according to claim 1,
The content is encrypted according to the content key:
Wherein the first input comprises entitlement information comprising one or more first keys;
Wherein the first output includes a content key for decrypting the encrypted content.
상기 제1 입력은 라이센스 파일과 함께 상기 콘텐츠 라이센싱 엔티티로부터 수신되며,
상기 라이센스 파일은 상기 콘텐츠의 재생을 인에이블링하기 위해 더 필요한, 상기 재생 기기에 의한 실행을 위한 재생 기기 명령들을 포함하며,
상기 재생 기기 명령들은 상기 독점적 암호 함수를 호출하는 재생 기기 동작을 포함하는, 방법.The method according to claim 1,
Wherein the first input is received from the content licensing entity with a license file,
The license file further comprising playback device instructions for execution by the playback device further needed to enable playback of the content,
Wherein the playback device commands include a playback device operation that calls the proprietary encryption function.
상기 콘텐츠는 인증된 재생 기기에서 재생되는 미디어 프로그램의 인증 버전을 검증하는 표시를 포함하는, 방법.The method according to claim 1,
Wherein the content includes an indication to verify an authenticated version of the media program being played on the authenticated playback device.
상기 콘텐츠는 스플래시 스크린(splash screen) 및 로고를 포함하는 그룹에서 선택되는, 방법.18. The method of claim 16,
Wherein the content is selected from the group comprising a splash screen and a logo.
제1 프로세서;
상기 프로세서에 통신 가능하게 결합된 메모리로서, 상기 메모리는 :
상기 기기에 제1 입력을 수신하기 위한 명령;
상기 제1 입력으로부터 중간 입력을 생성하기 위한 명령;
중간 출력을 수신하기 위한 명령;
제1 출력을 생성하기 위한 명령;
적어도 부분적으로 상기 제1 출력에 따라 상기 기기에 의한 상기 콘텐츠의 재생을 인에이블링하기 위한 명령을 포함하는 명령들을 저장하는, 메모리;
상기 기기에 통합된 암호 함수 모듈(cryptographic function module; CFM)로서, 상기 CFM에 의해 실행 가능한 암호 함수들의 패밀리의 독점적 암호 함수에 따라 상기 중간 입력으로부터 상기 중간 출력을 생성하기 위한 암호 함수 모듈을 포함하며,
상기 암호 함수는 암호 함수 라이센싱 엔티티에 독점적이며, 그리고 라이센스 소유자(licensee)의 라이센스를 조건으로 한 상기 기기에 의한 실행을 위해 상기 라이센스 소유자에게 제공되며, 상기 라이센스 소유자는 상기 콘텐츠 라이센싱 에이전시인, 기기.1. A playback device for playing content securely and trackably,
A first processor;
A memory communicatively coupled to the processor, the memory comprising:
Instructions for receiving a first input to the device;
Instructions for generating an intermediate input from the first input;
An instruction to receive the intermediate output;
Instructions for generating a first output;
Instructions for enabling playback of the content by the device at least partially in accordance with the first output;
A cryptographic function module (CFM) integrated in the device, the cryptographic function module for generating the intermediate output from the intermediate input according to a proprietary cryptographic function of a family of cryptographic functions executable by the CFM, ,
Wherein the cryptographic function is exclusively for a cryptographic function licensing entity and is provided to the license holder for execution by the device subject to a license of a licensee and the license owner is the content licensing agency.
상기 독점적 암호 함수는 I/O 구별 불가능하며, 그리고 상기 라이센스 소유자에게 상기 암호 함수를 드러내지 않으면서 암호 함수 라이센싱 엔티티로부터 상기 독점적 암호 함수의 상기 라이센스 소유자에게 제공되는, 기기.19. The method of claim 18,
Wherein the proprietary cryptographic function is I / O indistinguishable and is provided from the cryptographic function licensing entity to the license holder of the proprietary cryptographic function without revealing the cryptographic function to the license holder.
상기 CFM은 관련된 다수의 중간 입력들로부터 다수의 중간 출력들을 생성하며,
상기 다수의 중간 입력들과 연관된 상기 생성된 다수의 중간 출력들은 상기 독점적 암호 함수에 고유한 다수의 독점적 암호 함수 입/출력 쌍들을 포함하는, 기기.19. The method of claim 18,
The CFM generates a plurality of intermediate outputs from a plurality of associated intermediate inputs,
Wherein the generated plurality of intermediate outputs associated with the plurality of intermediate inputs comprise a plurality of proprietary cryptographic function input / output pairs unique to the proprietary cryptographic function.
상기 명령들은 :
상기 다수의 생성된 독점적 암호 함수 I/O 쌍들을 판독하기 위한 명령;
상기 중간 출력을 계산하는데 사용되는 상기 독점적 암호 함수와 고유하게 연관된 예상 암호 함수 I/O 쌍과 상기 독점적 암호 함수 I/O 쌍들을 비교하기 위한 명령; 및
상기 비교에 따라 상기 기기에 의한 상기 콘텐츠의 재생에 영향을 주는 동작을 취하는 명령을 더 포함하는, 기기.23. The method of claim 21,
The instructions include:
Instructions for reading the plurality of generated proprietary cryptographic function I / O pairs;
Instructions for comparing the proprietary cryptographic function I / O pairs with expected cryptographic function I / O pairs uniquely associated with the proprietary cryptographic functions used to calculate the intermediate output; And
Further comprising instructions to take an action that affects playback of the content by the device in accordance with the comparison.
상기 취해진 동작은 상기 기기에 의한 상기 콘텐츠의 재생을 디스에이블링하는 것을 포함하는, 기기.23. The method of claim 22,
Wherein the action taken comprises disabling playback of the content by the device.
상기 명령들은 상기 비교의 결과를 상기 콘텐츠의 소스에 보고하기 위한 명령들을 더 포함하는, 기기.23. The method of claim 22,
Wherein the instructions further comprise instructions for reporting a result of the comparison to a source of the content.
상기 CFM은 상기 독점적 암호 함수에 따라 적어도 부분적으로 상기 중간 입력으로부터 상기 중간 출력을 생성하기 위해 상기 제1 프로세서에 의한 실행을 위한 CFM 명령들을 포함하는, 기기.19. The method of claim 18,
Wherein the CFM comprises CFM instructions for execution by the first processor to at least partially generate the intermediate output from the intermediate input in accordance with the proprietary cryptographic function.
상기 CFM은 상기 제1 프로세서에 통신 가능하게 결합된 제2 프로세서를 포함하며,
상기 제2 프로세서는 적어도 부분적으로 상기 독점적 암호 함수에 따라 적어도 부분적으로 상기 중간 입력으로부터 상기 중간 출력을 생성하기 위한 것인, 기기.19. The method of claim 18,
Wherein the CFM comprises a second processor communicatively coupled to the first processor,
Wherein the second processor is for at least partially generating the intermediate output from the intermediate input at least in part according to the proprietary cryptographic function.
상기 콘텐츠는 콘텐츠 키에 따라 암호화되는데 :
상기 제1 입력은 하나 이상의 제1 키들을 포함하는 권리부여 정보를 포함하며;
상기 제1 출력은 상기 암호화된 콘텐츠를 해독하기 위한 콘텐츠 키를 포함하는, 기기.19. The method of claim 18,
The content is encrypted according to the content key:
Wherein the first input comprises entitlement information comprising one or more first keys;
Wherein the first output comprises a content key for decrypting the encrypted content.
상기 제1 입력은 라이센스 파일과 함께 콘텐츠 라이센싱 엔티티로부터 수신되며,
상기 라이센스 파일은 상기 콘텐츠의 재생을 인에이블링하기 위해 더 필요한, 상기 재생 기기에 의한 실행을 위한 재생 기기 명령들을 포함하며,
상기 재생 기기 명령들은 상기 암호 함수를 호출하는 재생 기기 동작을 포함하는, 기기.19. The method of claim 18,
Wherein the first input is received from a content licensing entity along with a license file,
The license file further comprising playback device instructions for execution by the playback device further needed to enable playback of the content,
Wherein the playback device commands include a playback device operation calling the cryptographic function.
라이센스 요청들을 수신하고 상기 콘텐츠를 재생하는데 필요한 권리부여 정보를 제공하기 위한 라이센스 제공자로서, 상기 권리부여 정보는 제1 입력을 포함하는, 라이센스 제공자;
콘텐츠 요청들을 수신하고 상기 콘텐츠의 암호화된 버전들을 제공하는 콘텐츠 제공자;
재생기기를 포함하며,
상기 재생 기기는 :
제1 프로세서;
상기 프로세서에 통신 가능하게 연결된 메모리;
비-착탈식 암호 함수 모듈(CFM)을 포함하며,
상기 메모리는 :
상기 기기에 상기 제1 입력을 수신하기 위한 명령;
상기 제1 입력으로부터 중간 입력을 생성하기 위한 명령;
중간 출력을 수신하기 위한 명령;
제1 출력을 생성하기 위한 명령;
적어도 부분적으로 상기 제1 출력에 따라 상기 재생 기기에 의한 상기 콘텐츠의 재생을 가능하게 하기 위한 명령을 포함하는 명령들을 저장하며,
상기 암호 함수 모듈은 상기 CFM에 의해 실행 가능한 암호 함수들의 패밀리의 독점적 암호 함수에 따라 상기 중간 입력으로부터 상기 중간 출력을 생성하기 위한 것이며,
상기 암호 함수는 암호 함수 라이센싱 엔티티에 독점적이며, 그리고 라이센스 소유자(licensee)의 라이센스를 조건으로 한 상기 기기에 의한 실행을 위해 상기 라이센스 소유자에게 제공되는, 시스템.
A system for secure and trackable reproduction of content,
A license provider for receiving license requests and providing the entitlement information needed to play the content, the entitlement information comprising a first input;
A content provider for receiving content requests and providing encrypted versions of the content;
Reproducing apparatus,
Wherein the playback device comprises:
A first processor;
A memory communicatively coupled to the processor;
A non-removable cryptographic function module (CFM)
The memory comprising:
Instructions for receiving the first input to the device;
Instructions for generating an intermediate input from the first input;
An instruction to receive the intermediate output;
Instructions for generating a first output;
At least in part, instructions for enabling playback of the content by the playback device in accordance with the first output,
Wherein the cryptographic function module is for generating the intermediate output from the intermediate input according to a proprietary cryptographic function of a family of cryptographic functions executable by the CFM,
Wherein the cryptographic function is exclusive to a cryptographic function licensing entity and is provided to the license holder for execution by the device subject to a license of the licensee.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/006,878 | 2016-01-26 | ||
US15/006,878 US10061905B2 (en) | 2016-01-26 | 2016-01-26 | Method and system for conditional access via license of proprietary functionality |
PCT/US2017/015194 WO2017132416A1 (en) | 2016-01-26 | 2017-01-26 | Method and system for conditional access via license of proprietary functionality |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180105687A true KR20180105687A (en) | 2018-09-28 |
KR102241909B1 KR102241909B1 (en) | 2021-04-19 |
Family
ID=59360543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020187024370A Active KR102241909B1 (en) | 2016-01-26 | 2017-01-26 | Method and system for conditional access through license of proprietary functions |
Country Status (7)
Country | Link |
---|---|
US (3) | US10061905B2 (en) |
EP (1) | EP3408775A4 (en) |
JP (1) | JP7032315B2 (en) |
KR (1) | KR102241909B1 (en) |
CN (1) | CN109074445B (en) |
CA (1) | CA3012182A1 (en) |
WO (1) | WO2017132416A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10061905B2 (en) * | 2016-01-26 | 2018-08-28 | Twentieth Century Fox Film Corporation | Method and system for conditional access via license of proprietary functionality |
DE102017213840A1 (en) * | 2017-08-08 | 2019-02-14 | Continental Automotive Gmbh | Method for dynamically adapting the functional scope of an electronic system or a computer program |
US12231409B2 (en) * | 2022-02-15 | 2025-02-18 | Capital One Services, Llc | Methods and systems for linking mobile applications to multi-access point providers using an intermediary database |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110225417A1 (en) * | 2006-12-13 | 2011-09-15 | Kavi Maharajh | Digital rights management in a mobile environment |
US20120290831A1 (en) * | 2009-12-28 | 2012-11-15 | Viaccess | Methods for decrypting, transmitting and receiving control words, storage medium and server for said methods |
US20140164760A1 (en) * | 2012-12-10 | 2014-06-12 | Time Warner Cable Inc. | Apparatus and methods for content transfer protection |
WO2015154720A1 (en) * | 2014-04-11 | 2015-10-15 | Television Broadcasts Limited | Method of delivering and protecting media content |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5237610A (en) | 1990-02-01 | 1993-08-17 | Scientific-Atlanta, Inc. | Independent external security module for a digitally upgradeable television signal decoder |
US5381481A (en) * | 1993-08-04 | 1995-01-10 | Scientific-Atlanta, Inc. | Method and apparatus for uniquely encrypting a plurality of services at a transmission site |
US8505108B2 (en) | 1993-11-18 | 2013-08-06 | Digimarc Corporation | Authentication using a digital watermark |
ATE412945T1 (en) | 1995-02-13 | 2008-11-15 | Intertrust Tech Corp | SYSTEMS AND METHODS FOR SECURE TRANSMISSION MANAGEMENT AND ELECTRONIC LEGAL PROTECTION |
US5793954A (en) * | 1995-12-20 | 1998-08-11 | Nb Networks | System and method for general purpose network analysis |
JPH10208385A (en) * | 1997-01-24 | 1998-08-07 | Matsushita Electric Ind Co Ltd | Information reproducing system |
US5920861A (en) | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
JPH1131130A (en) * | 1997-07-10 | 1999-02-02 | Fuji Xerox Co Ltd | Service providing device |
US20020012432A1 (en) | 1999-03-27 | 2002-01-31 | Microsoft Corporation | Secure video card in computing device having digital rights management (DRM) system |
US7319759B1 (en) | 1999-03-27 | 2008-01-15 | Microsoft Corporation | Producing a new black box for a digital rights management (DRM) system |
US7103574B1 (en) | 1999-03-27 | 2006-09-05 | Microsoft Corporation | Enforcement architecture and method for digital rights management |
JP2001242786A (en) | 1999-12-20 | 2001-09-07 | Fuji Photo Film Co Ltd | Device and method for distribution, and recording medium |
HU0101106D0 (en) * | 2001-03-14 | 2001-05-28 | Tozai Trading Corp | Id alsorithm |
KR20030022819A (en) | 2001-04-19 | 2003-03-17 | 마쯔시다덴기산교 가부시키가이샤 | License management system, license management device, relay device and terminal device |
US7239708B2 (en) | 2001-06-27 | 2007-07-03 | Microsoft Corporation | Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client |
US7249107B2 (en) | 2001-07-20 | 2007-07-24 | Microsoft Corporation | Redistribution of rights-managed content |
WO2003058485A1 (en) | 2002-01-12 | 2003-07-17 | Coretrust, Inc. | Method and system for the information protection of digital content |
FI20025018A7 (en) * | 2002-04-23 | 2003-10-24 | Nokia Corp | System for providing end-to-end encryption in a digital wireless data transmission network and corresponding terminal device |
US7523310B2 (en) | 2002-06-28 | 2009-04-21 | Microsoft Corporation | Domain-based trust models for rights management of content |
WO2005079369A2 (en) * | 2004-02-13 | 2005-09-01 | Eztakes | Content distribution using cd/dvd burners, high speed interconnects, and a burn and return policy |
US20050228752A1 (en) * | 2004-04-07 | 2005-10-13 | David Konetski | System and method for managing encrypted multimedia content with an information handling system |
WO2005117527A2 (en) | 2004-06-02 | 2005-12-15 | Brian Abram | An electronic device to secure authentication to the owner and methods of implementing a global system for highly secured authentication |
US11734393B2 (en) * | 2004-09-20 | 2023-08-22 | Warner Bros. Entertainment Inc. | Content distribution with renewable content protection |
CN100465984C (en) * | 2004-11-01 | 2009-03-04 | 松下电器产业株式会社 | Content usage device and content usage method |
US8156049B2 (en) * | 2004-11-04 | 2012-04-10 | International Business Machines Corporation | Universal DRM support for devices |
DE102005000796A1 (en) | 2005-01-05 | 2006-07-13 | Giesecke & Devrient Gmbh | Portable media with watermark functionality |
US8290874B2 (en) | 2005-04-22 | 2012-10-16 | Microsoft Corporation | Rights management system for streamed multimedia content |
US20070078775A1 (en) | 2005-09-14 | 2007-04-05 | Huapaya Luis M | System and method for preventing unauthorized use of digital works |
US7954092B2 (en) | 2005-12-24 | 2011-05-31 | International Business Machines Corporation | Creating an assured execution environment for at least one computer program executable on a computer system |
US7874015B2 (en) | 2006-05-12 | 2011-01-18 | At&T Intellectual Property I, L.P. | Methods, systems, and computer program products for controlling distribution of digital content in a file sharing system using license-based verification, encoded tagging, and time-limited fragment validity |
US8700915B2 (en) * | 2006-07-12 | 2014-04-15 | Irdeto Corporate B.V. | Method and system for verifying authenticity of at least part of an execution environment for executing a computer module |
US20080313084A1 (en) | 2007-06-18 | 2008-12-18 | Socolofsky David E | Digital Content Royalty Management System and Method |
US8166513B2 (en) | 2007-09-04 | 2012-04-24 | Sony Corporation | TV receiver using cable card for abstracting open cable application platform (OCAP) messages to and from the head end |
US8165286B2 (en) | 2008-04-02 | 2012-04-24 | Apple Inc. | Combination white box/black box cryptographic processes and apparatus |
US8762741B2 (en) * | 2009-01-29 | 2014-06-24 | Microsoft Corporation | Privacy-preserving communication |
US9043827B1 (en) * | 2009-12-16 | 2015-05-26 | Prime Research Alliance E, Inc. | Method and system for providing conditional access to encrypted content |
US9710616B2 (en) * | 2010-12-15 | 2017-07-18 | Ericsson Ab | DRM plugins |
KR101944468B1 (en) * | 2011-04-04 | 2019-04-30 | 삼성전자주식회사 | Method, host device, storage and machine-readable storage medium for protecting contents |
TW201243643A (en) * | 2011-04-22 | 2012-11-01 | Inst Information Industry | Hierarchical encryption/decryption device and method thereof |
US8914634B2 (en) * | 2012-04-10 | 2014-12-16 | Western Digital Technologies, Inc. | Digital rights management system transfer of content and distribution |
US20140090075A1 (en) * | 2012-09-26 | 2014-03-27 | Samsung Electronics Co., Ltd. | Flexible content protection system using downloadable drm module |
US20140281502A1 (en) * | 2013-03-15 | 2014-09-18 | General Instrument Corporation | Method and apparatus for embedding secret information in digital certificates |
EP2802152B1 (en) * | 2013-05-07 | 2017-07-05 | Nagravision S.A. | Method for secure processing a stream of encrypted digital audio / video data |
GB201418815D0 (en) * | 2014-10-22 | 2014-12-03 | Irdeto Bv | Providing access to content |
US9992171B2 (en) * | 2014-11-03 | 2018-06-05 | Sony Corporation | Method and system for digital rights management of encrypted digital content |
US9767324B2 (en) * | 2014-11-22 | 2017-09-19 | Intel Corporation | Transparent execution of secret content |
US10642962B2 (en) * | 2015-07-28 | 2020-05-05 | Western Digital Technologies, Inc. | Licensable function for securing stored data |
US20170041326A1 (en) * | 2015-08-04 | 2017-02-09 | Flexera Software Llc | Location driven software licensing |
US10061905B2 (en) * | 2016-01-26 | 2018-08-28 | Twentieth Century Fox Film Corporation | Method and system for conditional access via license of proprietary functionality |
-
2016
- 2016-01-26 US US15/006,878 patent/US10061905B2/en active Active
-
2017
- 2017-01-26 CN CN201780017408.1A patent/CN109074445B/en active Active
- 2017-01-26 KR KR1020187024370A patent/KR102241909B1/en active Active
- 2017-01-26 EP EP17744916.2A patent/EP3408775A4/en active Pending
- 2017-01-26 CA CA3012182A patent/CA3012182A1/en not_active Abandoned
- 2017-01-26 JP JP2018538679A patent/JP7032315B2/en active Active
- 2017-01-26 WO PCT/US2017/015194 patent/WO2017132416A1/en active Application Filing
-
2018
- 2018-08-27 US US16/114,029 patent/US10445475B2/en active Active
-
2019
- 2019-09-06 US US16/563,492 patent/US10936701B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110225417A1 (en) * | 2006-12-13 | 2011-09-15 | Kavi Maharajh | Digital rights management in a mobile environment |
US20120290831A1 (en) * | 2009-12-28 | 2012-11-15 | Viaccess | Methods for decrypting, transmitting and receiving control words, storage medium and server for said methods |
US20140164760A1 (en) * | 2012-12-10 | 2014-06-12 | Time Warner Cable Inc. | Apparatus and methods for content transfer protection |
WO2015154720A1 (en) * | 2014-04-11 | 2015-10-15 | Television Broadcasts Limited | Method of delivering and protecting media content |
Also Published As
Publication number | Publication date |
---|---|
US10061905B2 (en) | 2018-08-28 |
EP3408775A4 (en) | 2019-09-25 |
JP2019504419A (en) | 2019-02-14 |
US20190392116A1 (en) | 2019-12-26 |
JP7032315B2 (en) | 2022-03-08 |
US20170213016A1 (en) | 2017-07-27 |
CA3012182A1 (en) | 2017-08-03 |
US10936701B2 (en) | 2021-03-02 |
EP3408775A1 (en) | 2018-12-05 |
CN109074445A (en) | 2018-12-21 |
WO2017132416A1 (en) | 2017-08-03 |
US20180365393A1 (en) | 2018-12-20 |
CN109074445B (en) | 2020-06-26 |
US10445475B2 (en) | 2019-10-15 |
KR102241909B1 (en) | 2021-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190147143A1 (en) | Decoupling rights in a digital content unit from download | |
KR101081729B1 (en) | Reprogrammable security for controlling piracy and enabling interactive content | |
JP4798935B2 (en) | Content security method for providing renewable security over a long period of time, apparatus and computer-readable storage medium | |
US7987510B2 (en) | Self-protecting digital content | |
US8635453B2 (en) | Controller to be incorporated in storage medium device, storage medium device, system for manufacturing storage medium device, and method for manufacturing storage medium device | |
US20060149683A1 (en) | User terminal for receiving license | |
KR101105852B1 (en) | Apparatus and method for importing content including a plurality of usage restriction information | |
US10936701B2 (en) | Method and system for conditional access via license of proprietary functionality | |
KR101407139B1 (en) | Method of recording and securely distributing digital data, access device and recorder | |
Ripley et al. | Content Protection in the Digital Home. | |
KR101185560B1 (en) | Method and apparatus for re-importing a content | |
CN114726647B (en) | Safe distribution method and system of 4K film content and safe projection system | |
JP4795877B2 (en) | Content playback device | |
Infrastructure | Content Protection in the Digital Home |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0105 | International application |
Patent event date: 20180823 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20191017 Comment text: Request for Examination of Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20201111 Patent event code: PE09021S01D |
|
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: 20210402 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20210413 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20210414 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20240401 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20250324 Start annual number: 5 End annual number: 5 |