KR20140049603A - 그래픽 프로세서 gpu로부터 비디오 디스플레이로의 hdcp 링크의 보안화 - Google Patents

그래픽 프로세서 gpu로부터 비디오 디스플레이로의 hdcp 링크의 보안화 Download PDF

Info

Publication number
KR20140049603A
KR20140049603A KR1020147007150A KR20147007150A KR20140049603A KR 20140049603 A KR20140049603 A KR 20140049603A KR 1020147007150 A KR1020147007150 A KR 1020147007150A KR 20147007150 A KR20147007150 A KR 20147007150A KR 20140049603 A KR20140049603 A KR 20140049603A
Authority
KR
South Korea
Prior art keywords
display
protection
driving
output
memory
Prior art date
Application number
KR1020147007150A
Other languages
English (en)
Other versions
KR101632930B1 (ko
Inventor
이안 씨. 헨드리
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20140049603A publication Critical patent/KR20140049603A/ko
Application granted granted Critical
Publication of KR101632930B1 publication Critical patent/KR101632930B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/0042Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the copy protection scheme being related to a specific access protection standard
    • G11B20/00463Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the copy protection scheme being related to a specific access protection standard high-bandwidth digital content protection [HDCP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/84Protecting input, output or interconnection devices output devices, e.g. displays or monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0053Embedding of the watermark in the coding stream, possibly without decoding; Embedding of the watermark in the compressed domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0064Image watermarking for copy protection or copy management, e.g. CGMS, copy only once, one-time copy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

비디오 재생 동안 보호 콘텐츠 보안화. 본 발명은 컴퓨터 시스템으로부터 디스플레이를 구동시키는 시스템을 제공한다. 동작 동안에, 상기 시스템은 저작권보호된 비디오 파일로부터 생성된 그래픽 출력을 보호 메모리에 기록하고, 상기 보호 메모리로부터 상기 디스플레이를 구동시킨다. 상기 그래픽 출력이 복사 방지 결핍인 경우, 상기 시스템은 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 중단한다. 특히, 상기 그래픽 출력 복사 방지의 결핍을 검출한 경우, 상기 시스템은 상기 그래픽 출력 보호의 결핍과 관련된 유예 기간 동안 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 계속한다. 그 후에, 상기 시스템은 상기 유예 기간 동안 상기 그래픽 출력 보호가 재개되지 않는 경우, 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 중단한다.

Description

그래픽 프로세서 GPU로부터 비디오 디스플레이로의 HDCP 링크의 보안화{SECURING A HDCP LINK FROM GRAPHIC PROCESSOR GPU TO VIDEO DISPLAY}
본 발명은 컴퓨터 시스템으로부터 디스플레이들을 구동시키는 것에 관한 것이다. 보다 구체적으로, 본 발명은 컴퓨터 시스템상의 비디오 재생 동안 보호 비디오 콘텐츠를 보안화하는 기술에 관한 것이다.
사용자와 컴퓨터 시스템 사이의 상호작용들은 컴퓨터 시스템에 외부 디스플레이들을 연결시킴으로써 용이하게 될 수 있다. 예를 들어, 랩탑 컴퓨터가 상이한 해상도, 치수, 픽셀 밀도, 및/또는 컬러 프로파일로 디스플레이하도록 연결될 수 있게 하는 표준화된 비디오 인터페이스, 예를 들어 DVI(Digital Visual Interface) 또는 HDMI(High-Definition Multimedia Interface)를 포함할 수 있다. 결국, 랩탑 컴퓨터에 대한 외부 디스플레이의 연결은 랩탑 컴퓨터의 사용자가 문서, 미디어 파일(예컨대, 비디오, 이미지들 등) 및/또는 랩탑 컴퓨터의 애플리케이션들을 위한 그래픽 사용자 인터페이스(GUI)들을 보는 데에 사용가능한 스크린 공간의 양을 증대시킬 수 있게 한다.
불행하게도, 컴퓨터 시스템으로부터 외부 디스플레이를 구동시키는 것은 다수의 보안 취약점들과 관련될 수 있다. 특히, 외부 디스플레이를 구동시키는데 사용되는 비디오 데이터는, 그 비디오 데이터가 비디오 인터페이스를 통해 외부 디스플레이로 송신될 때에 도청될 수 있다. 비디오 데이터가 도청되는 것을 방지하기 위해, HDCP(High-bandwidth Digital Content Protection)와 같은 보호 메커니즘을 사용함으로써 비디오 데이터가 외부 디스플레이로 전송되기 이전에 그 비디오 데이터를 암호화할 수 있다. 그러나, 도청자(eavesdropper)는 컴퓨터 시스템상의 신뢰할 수 없는 소프트웨어의 취약점 이용 및/또는 비디오 데이터의 암호화 만료를 이용하여 보호 메커니즘을 우회할 수 있다.
따라서, 비디오 데이터를 사용하여 외부 디스플레이를 구동시키는 동안의 비디오 데이터 보호를 강화하는 메커니즘이 필요하다.
개시된 실시예들은 컴퓨터 시스템으로부터 디스플레이를 구동시키는 시스템을 제공한다. 동작 동안에, 상기 시스템은 그래픽 출력을 보호 메모리에 기록하고, 상기 보호 메모리로부터 상기 디스플레이를 구동시킨다. 상기 그래픽 출력이 보호의 결핍인 경우, 상기 시스템은 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 중단한다. 특히, 상기 그래픽 출력 보호의 결핍을 검출한 경우, 상기 시스템은 상기 그래픽 출력 보호의 결핍과 관련된 유예 기간 동안 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 계속한다. 그 후에, 상기 시스템은 상기 유예 기간 동안 상기 그래픽 출력 보호가 재개되지 않는 경우, 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 중단한다. 상기 유예 기간의 길이가 예를 들어 퓨즈나 보안 마이크로프로세서를 사용하는 것에 의해 설정될 수 있으며/있거나 상기 유예 기간이 디스에이블될 수 있음에 유의한다. (또한, 상기 용어들 "그래픽 출력" 및 "디스플레이 링크"는 본 상세한 설명 및 첨부된 청구항들을 통해 상호 교환적으로 사용된다. 예를 들어, 본 발명은 몇몇 타입의 암호화를 통하여 "그래픽 출력" 또는 "디스플레이 링크"를 보호하는 것에 대해 다루고 있다. 또한, 본 명세서 및 첨부된 청구항들에서 사용되는 용어 "디스플레이 링크" 및 "그래픽 출력"은 종래의 디스플레이 송신기들, 예컨대 디스플레이포트(DisplayPort) 또는 HDMI 모두를 포괄하며, 예를 들어 HDCP 2.x 콘텐츠가 GPU에 의해 암호화되고 무선 디바이스에 의한 후속 송신을 위해 메모리에 기록되는 무선 표준들을 포함하는 것을 의미한다.)
몇몇 실시예들에서, 상기 시스템은 상기 디스플레이가 허용된 비보호 디스플레이 타입(예컨대, 내부 디스플레이)에 해당하는 경우, 상기 그래픽 출력 보호와 관계없이 상기 보호 메모리로부터 상기 디스플레이를 구동하는 것을 계속한다.
몇몇 실시예들에서, 상기 유예 기간은 시간, 프레임들의 수, 및/또는 심볼들의 수 중의 적어도 하나에 대응한다. (일부 케이스들에서는, 유예 기간이 존재하지 않을 수 있음에 유의한다. 또한, 상기 유예 기간은 상이한 시나리오들에 있어서 달라질 수 있다. 예를 들어, "터닝 온(turning on)"에 대한 유예 기간이 "HDCP 상실(losing HDCP)"에 대한 유예 기간과 상이할 수 있다.)
몇몇 실시예들에서, 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 중단하는 것은,
(i) 대체 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 것;
(ii) 더 낮은 해상도의 상기 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 것; 및
(iii) 상기 그래픽 출력을 사용하여 다른 디스플레이를 구동시키는 것,
중 적어도 하나를 포함한다.
몇몇 실시예들에서, 상기 대체 그래픽 출력은 그레이 영역 및 메시지 중의 적어도 하나이다.
몇몇 실시예들에서, 상기 보호는 상기 그래픽 출력의 암호화를 포함한다. (다른 실시예들에서는, 상기 시스템이 상이한 형태들의 액세스 제어를 사용할 수 있다.)
도 1은 본 발명에 따른 컴퓨터 시스템을 나타낸다.
도 2는 본 발명에 따른, 컴퓨터 시스템으로부터 디스플레이를 구동시키는 시스템을 나타낸다.
도 3은 본 발명에 따른 디스플레이 파이프를 나타낸다.
도 4는 본 발명에 따른 컴퓨터 시스템으로부터 디스플레이를 구동시키는 프로세스를 도시한 흐름도를 나타낸다.
본 도면들에서, 유사한 참조 부호들은 동일한 도면 요소들을 지시한다.
다음의 설명은 당업자가 본 실시예들을 제조 및 사용할 수 있도록 제공되며, 특정 애플리케이션 및 그 요구사항들의 맥락에서 제공된다. 본 발명의 각종 수정들은 당업자에게 용이하게 명백할 것이며, 여기에 규정된 일반 원리들은 본 발명의 사상 및 범위로부터 일탈함 없이 다른 실시예들 및 애플리케이션들에 적용될 수 있다. 따라서, 본 발명은 도시된 실시예들로 한정되지 않으며, 여기에 개시된 원리들 및 특징들과 일치되는 최광의 범위에 따라야 할 것이다.
본 상세한 설명에 기술된 데이터 구조들과 코드는 컴퓨터 시스템에 의한 사용을 위해 코드 및/또는 데이터를 저장할 수 있는 임의의 디바이스 또는 매체일 수 있는, 컴퓨터 판독가능 저장 매체에 일반적으로 저장된다. 컴퓨터 판독가능 저장 매체는 휘발성 메모리, 비-휘발성 메모리, 자기 및 광학 스토리지 디바이스들, 예컨대 디스크 드라이브, 자기 테이프, CD(compact disc), DVD(digital versatile discs 또는 digital video discs), 또는 현재 알려져 있거나 이후에 개발될 코드 및/또는 데이터를 저장가능한 다른 매체를 포함하며, 이에 한정되지 않는다.
본 상세한 설명에 기술되는 방법 및 프로세스는 전술한 컴퓨터 판독가능 저장 매체에 저장될 수 있는 코드 및/또는 데이터로 구현될 수 있다. 컴퓨터 시스템이 컴퓨터 판독가능 저장 매체에 저장된 코드 및/또는 데이터를 판독하여 실행할 경우, 컴퓨터 시스템은 컴퓨터 판독가능 저장 매체 내에 저장되어 데이터 구조 및 코드로 구현된 방법 및 프로세스를 수행한다.
또한, 본 발명의 방법들 및 프로세스들은 하드웨어 모듈들 또는 장치들에 포함될 수 있다. 이 모듈들 또는 장치들은 ASIC(application-specific integrated circuit) 칩, FPGA(field-programmable gate array), 특정 소프트웨어 모듈 또는 특정 시간에서의 코드의 일부, 및/또는 현재 알려져 있거나 이후에 개발될 다른 프로그래머블 논리 소자들을 실행하는 전용 또는 공유형 프로세서를 포함할 수 있으며, 이에 한정되지 않는다. 하드웨어 모듈들 또는 장치들이 활성화되는 경우, 그것들은 거기에 포함된 방법들 및 프로세스들을 수행한다.
본 실시예는 컴퓨터 시스템으로부터 디스플레이를 구동시키는 방법 및 시스템을 제공한다. 컴퓨터 시스템은 랩탑 컴퓨터, 퍼스널 컴퓨터, 워크스테이션, 및/또는 휴대용 전자 디바이스에 대응할 수 있다. 디스플레이는 CRT(cathode ray tube) 디스플레이, LCD(liquid crystal display), 플라즈마 디스플레이, OLED(organic light-emitting diode) 디스플레이, 표면 전도형 SED(electron-emitter display), 및/또는 다른 타입의 전자 디스플레이일 수 있다.
보다 구체적으로, 본 실시예는 저작권으로 보호되는 비디오 파일로부터 생성된 그래픽 출력과 같은 디스플레이를 구동시키는데 사용되는 그래픽 출력을 보안화하는 방법 및 시스템을 제공한다. 그래픽 출력은 보호 메모리에 기록될 수 있으며, 디스플레이는 상기 보호 메모리로부터 구동될 수 있다. 보호 메모리로부터 디스플레이를 구동시키기 이전에, HDCP(High-bandwidth Digital Content Protection)와 같은 보호 메커니즘이 추가로 사용되어 상기 그래픽 출력을 암호화할 수도 있다.
그래픽 출력의 비인가 복제를 방지하기 위해, 그래픽 출력 보호가 결핍한 경우에는 보호 메모리로부터 디스플레이를 구동시키는 것이 중단될 수 있다. 특히, 그래픽 출력 보호의 결핍을 검출한 경우, 상기 보호의 결핍과 관련된 유예 기간이 개시될 수 있으며, 상기 디스플레이는 그 유예 기간 동안 보호 메모리로부터 구동되는 것이 계속될 수 있다. 유예 기간 동안, 상기 그래프 출력의 보호가 재확립될 수 있고, 또는 상기 그래픽 출력이 비보호 그래픽 출력으로 대체되어 그래픽 출력의 디스플레이의 중단을 방지할 수 있다. 유예 기간 동안 그래픽 출력 보호가 재개되지 않는 경우에는, 보호 메모리로부터 디스플레이를 구동시키는 것이 중단될 수도 있다. 대신에, 대체 그래픽 출력 및/또는 더 낮은 해상도의 동일한 그래픽 출력을 사용하여 디스플레이가 구동될 수 있으며, 또는 상기 그래픽 출력은 다른 디스플레이를 구동하는데 사용될 수도 있다.
몇몇 실시예들에서, 유예 기간을 결정하는데 사용되는 정책은 주어진 디스플레이에 관한 복수의 콘텐츠 공급자들에 있어서 가장 엄격한 정책을 만족시킨다. 예를 들어, 은행 기록을 디스플레이하는 애플리케이션은 무선 디스플레이들에 대해서는 어떤 유예 기간도 허용되지 않지만, DVD 플레이어는 보다 관대한 유예 기간을 허락할 수 있음을 요구할 수 있다. 일반적으로, 하드웨어는 메모리가 보호되거나 세부적으로 추적 및 적용할 수 있는지에 기초하여서, 디스플레이를 제공할 가장 엄격한 정책을 적용할 수 있다. 예를 들어, 상이한 정책들은 상이한 메모리 암호화 키들에 관한 것일 수 있다(정책들의 계층의 각 유예 기간 정책은 자신의 키를 가짐). 주어진 그래픽 동작은 그것의 입력들 중의 하나를 위해 사용된 가장 엄격한 키와 관련되는 키를 사용하여 그것의 출력에 기록하게 된다. 따라서, 멀티-키 메모리 보호 시스템은 디스플레이 파이프가 그것의 메모리에 대한 키에 의해 표시되는 정책을 적용하는 것을 가능하게 한다.
도 1은 본 발명에 따른 컴퓨터 시스템(100)을 나타낸다. 컴퓨터 시스템(100)은 퍼스널 컴퓨터, 랩탑 컴퓨터, 휴대용 전자 디바이스, 워크스테이션, 및/또는 복수의 디스플레이들(120-122)을 구동시킬 수 있는 다른 전자 디바이스에 대응할 수 있다. 도 1에 나타낸 바와 같이, 컴퓨터 시스템(100)은 브리지 칩(104)을 통하여 반도체 메모리를 포함하는 메모리 서브시스템(106)으로 커플링되는 프로세서(102)를 포함한다. 또한, 프로세서(102)는 브리지 칩(104)에 커플링된 주변 장치 버스(108)를 통해 비-휘발성 스토리지를 포함하는 스토리지 디바이스(112)와 통신할 수 있다. 예를 들어, 스토리지 디바이스(112)는 비-휘발성 자기 스토리지를 포함하는 디스크 드라이브일 수 있다.
또한, 프로세서(102)는 디스플레이 카드(114)를 사용하여 디스플레이들(120-122)과 통신할 수 있다. 보다 구체적으로, 프로세서(102)는 브리지 칩(104)을 통하여 디스플레이 카드(114)에 커플링된다. 디스플레이 카드(114)는 각종 그래픽 처리 동작들을 수행함으로써 비디오 메모리(116)에 위치된 하나 이상의 프레임 버퍼들에 비디오 프레임들을 생성하는 GPU(graphics-processing unit)(110)를 포함한다. 그 후에, 비디오 프레임들은 디스플레이들(120-122)을 구동시키는 비디오 스트림들을 생성하는데 사용될 수 있다. 예를 들어, 비디오 스트림들은 표준화된 비디오 인터페이스, 예컨대 DVI(Digital Visual Interface), HDMI(High-Definition Multimedia Interface) 또는 무선 링크를 통해 전송되어서, 컴퓨터 시스템(100)에 연결되어 있는 외부 유선 또는 무선 디스플레이(예컨대, CRT(cathode ray tube) 디스플레이, LCD(liquid crystal display), 플라즈마 디스플레이, OLED(organic light-emitting diode) 디스플레이, 표면 전도형 SED(electron-emitter display) 등)를 구동시킬 수 있다.
GPU(110)에 의해 생성된 그래픽 출력(예컨대, 비디오 스트림들)이, 그 그래픽 출력이 비디오 인터페이스를 가로질러 외부 디스플레이에 송신될 시에 도청자에 의해 복제될 수 있다는 것을 당업자는 인식할 것이다. 영화들과 같은 보호(예컨대, 저작권이 있는) 비디오 콘텐츠로부터 생성된 그래픽 출력의 복제를 방지하기 위해, 상기 그래픽 출력은 HDCP(High-bandwidth Digital Content Protection)와 같은 보호 메커니즘을 사용하여 암호화될 수 있다. 일반적으로, 보호 콘텐츠는 사용자 또는 소유자가 그대로 전송되기를 원치 않는 임의의 콘텐츠를 포함할 수 있다. 예를 들어, 사용자의 100년 된 비-저작권 원고들은 보호 콘텐츠일 수 있다. 또한, 보호 콘텐츠는 단순히 사적인 정보를 포함할 수도 있다. 또한, 심지어 동일한 머신/디스플레이상의 상이한 타입의 콘텐츠들에 대해 상이한 유예 기간 정책을 적용하는 것이 바람직할 수 있다. 예를 들어, 유예 기간은 보호 콘텐츠 중의 임의의 주어진 부분에 대하여 최단의/최엄격한 유예기간으로 적용될 수 있다.
그러나, 도청자는 그래픽 출력을 생성 및/또는 디스플레이하는데 사용된 신뢰할 수 없는 소프트웨어의 취약점들 및/또는 보호 메커니즘의 결함들을 이용하여 보호 메커니즘을 우회할 수 있다. 예를 들어, 다수의 콘텐츠 공급자들은 내부 디스플레이로 재생할 경우 결합되는 HDCP와 같은 보호 메커니즘을 필요로 하지 않으며, 그 결과, 도청자는 컴퓨터 시스템(100)과 비안전 API(application-programming interface)를 사용하여 보호 비디오 콘텐츠를 포함하는 윈도우가 내부(예컨대, 빌트-인) 디스플레이에 있으며, 실제로는 그 윈도우가 외부 디스플레이에 위치해 있음을 보고할 수 있다. 비디오 콘텐츠가 비디오 인터페이스를 통해 암호화되지 않은 채로 외부 디스플레이로 전송되는 동안, 도청자는 비디오 콘텐츠를 복제할 수 있다.
하나 이상의 실시예들에서, 컴퓨터 시스템(100)은 외부 디스플레이로 비디오 콘텐츠를 재생하는 동안 보호 비디오 콘텐츠의 보안성을 증가시키는 기능을 포함한다. 도 2에 나타낸 바와 같이, 비디오 플레이어(200)는 GPU(110)와 통신하여 보호 비디오 콘텐츠로부터 렌더링 및/또는 그래픽 출력의 디스플레이를 가능하게 할 수 있다. 예를 들어, 비디오 플레이어(200)는 GPU(110) 및/또는 다른 H.264 비디오 디코더와 보안 세션(secure session)을 협상하여, 파일 및/또는 광 디스크로부터의 압축된 비디오 콘텐츠를 그래픽 출력의 일련의 프레임들로 디코딩할 수 있다. 상기 세션 협상 동안에, 비디오 플레이어(200)는 그 프레임들이 암호화 메커니즘 및/또는 액세스 제어를 통해 액세스가 제한될 수 있는, 보호 메모리(202)(예컨대, 비디오 메모리(116))에 기록될 것을 요구할 수 있다.
일단 세션이 확립되면, GPU(110)는 비디오 콘텐츠로부터 그래픽 출력을 생성하고, 그 그래픽 출력을 보호 메모리(202)에 기록할 수 있다. 그래픽 출력으로 외부 디스플레이(206)를 구동시키기 위해, (예컨대, 비디오 인터페이스를 통하여) 디스플레이(206)에 커플링된 디스플레이 파이프(204)가 외부 디스플레이(206)의 리프레시 레이트(refresh rate)로 보호 메모리(202)로부터 그래픽 출력을 인출할 수 있다(셀프-리프레시 패널들(등)에 있어서, GPU는 패널 리프레시 레이트와 상이한 레이트로 메모리로부터 인출할 수 있음에 유의). 전술한 바와 같이, 그래픽 출력이 비디오 인터페이스를 통해 디스플레이(206)로 전송될 시에, 그 그래픽 출력은 디스플레이 파이프(204)에 의한 판독 이전에 암호화되어 그래픽 출력의 복제를 방지할 수 있다. 그래픽 출력이 디스플레이(206)에 의해 수신된 이후에는, 그 그래픽 출력이 사용되어 디스플레이(206)를 업데이트함으로써 디스플레이(206)상의 그래픽 출력의 적절한 감상을 가능하게 하기 이전에, 그 암호화된 그래픽 출력이 복호화될 수 있다.
디스플레이(206)에 대한 그래픽 출력의 보안 전송을 더욱 용이하게 하기 위해, 디스플레이 파이프(204)는 그래픽 출력이 보호의 결핍인 경우(예컨대, 암호화되지 않은 경우) 보호 메모리로부터 외부 디스플레이의 구동을 중단시키도록 구성될 수 있다. 도 3에 나타낸 바와 같이, 디스플레이 파이프(204)는 보호 플래그(302), 파이프-활성 플래그(304), 내부 디스플레이 플래그(306), 및 유예 기간(308)을 포함하는 다수의 내부 파라미터들과 관련될 수 있다(또한, 플래그들은 어떤 타입의 내부 연결인지, 예컨대 eDP(Embedded DisplayPort) 대 LVDS(Low-Voltage Differential Signaling)를 나타낼 수 있음에 유의). 이들 파라미터들은 컴퓨터 시스템(100)으로부터 디스플레이(206)의 구동을 추적 및/또는 관리하기 위해 디스플레이 파이프(204)에 의해 사용될 수 있다.
먼저, 보호 플래그(302)는 보호 메모리(202)에서의 그래픽 출력의 보호를 추적할 수 있다. 예를 들어, 보호 플래그(302)는 그래픽 출력이 HDCP를 사용하여 암호화된 것을 나타낼 수 있으며, 그래픽 출력이 암호화되지 않은 경우에는 해제될 수 있다. (예를 들어, 보호 플래그(302)는 어떤 레벨의 HDCP 암호화가 사용되었는지(1.x 대 2.x) 또는 사용된 키 비트의 수를 나타낼 수 있으며, 이들 모두의 정보는 콘텐츠가 재생될 수 있는지를 결정할 시의 인자들이 될 수 있다.) 다음으로, 파이프-활성 플래그(304)는 디스플레이 파이프(204)의 상태를 명시할 수 있다. 예를 들어, 파이프-활성 플래그(304)는 디스플레이 파이프(204)가 활성적으로 디스플레이로 전송하고 있는 경우에는 설정되고, 디스플레이 파이프(204)가 비활성인 경우에는 해제될 수 있다. 유사하게, 내부 디스플레이 플래그(306)는 내부 또는 외부 디스플레이로서 디스플레이(206)를 식별할 수 있다. 예를 들어, 내부 디스플레이 플래그(306)는 디스플레이(206)가 내부 디스플레이인 경우(예컨대, 랩탑 컴퓨터 또는 휴대용 전자 디바이스용 빌트-인 디스플레이의 경우)에는 설정되고, 디스플레이(206)가 외부 디스플레이인 경우(예컨대, 비디오 인터페이스를 통하여 컴퓨터 시스템(100)에 연결된 경우) 해제될 수 있다.
비디오 플레이어(200)의 비디오 재생 동안, 디스플레이 파이프(204)는 보호 플래그(302), 파이프-활성 플래그(304), 및 내부 디스플레이 플래그(306)를 사용하여, 보호 메모리(202)로부터 디스플레이(206)를 구동시키는 것을 계속하거나 또는 중단시킬 수 있다. 먼저, 디스플레이 파이프(204)는 그래픽 출력이 보호되고 있음을 보호 플래그(302)가 나타내고, 디스플레이 파이프(204)가 비활성임을 파이프-활성 플래그(304)가 나타내고, 및/또는 디스플레이(206)가 내부 디스플레이임을 내부 디스플레이 플래그(306)가 나타내는 경우에만 보호 메모리(202)로부터 디스플레이(206)를 구동시키도록 구성될 수 있다. 예를 들어, 디스플레이 파이프(204)는 디스플레이(206)가 내부 디스플레이에 해당하는 경우, 그래픽 출력의 보호와 관계없이 보호 메모리(202)로부터 디스플레이(206)를 구동시키는 것을 계속할 수 있다. 다르게는, GPU(110)가 내부 디스플레이를 구동시키지 않는 경우 및/또는 그래픽 출력의 보호를 지원하는 내부 디스플레이를 구동시키는 경우, 디스플레이 파이프(204)는 디스플레이(206)의 구동 동안에 내부 디스플레이 플래그(306)를 무시할 수 있다. 몇몇 실시예들에서, 본 시스템은 내부 디스플레이들이 암호화 없이 사용될 수 있게 하지만, 이것은 상기 구현에 기초하는 퓨즈들(또는 다른 특정 메커니즘들)에 의해 불능화될 수 있다. 또한, 몇몇 실시예들에서는, 업스트림 콘텐츠-제어 시스템(예컨대, 상기 플레이어)이 상기 플레이어가 스스로 적절하게 구성할 수 있도록 상기 시스템이 무엇을 가능하게 할지를 인식가능한 보안 메커니즘이 존재한다. 예를 들어, 플레이어는 HDCP의 후속 버전들이 지원되는 경우 고 해상도들이 재생되는 것을 허용할 수 있으며, 하드웨어에 의해 요구될 수 있다.
그러나, 디스플레이(206)가 외부 디스플레이이고 또한 보호 메모리(202)의 그래픽 출력이 보호의 결핍(예컨대, 비암호화됨)인 경우, 디스플레이 파이프(204)는 보호 메모리(202)로부터 디스플레이(206)를 구동시키는 것을 중단할 수 있으며, 이에 의해 그래픽 출력의 비인가 복제를 방지한다. 보다 구체적으로, 디스플레이 파이프(204)는 그래픽 출력에서의 보호의 결핍을 검출할 시에 유예 기간(308)을 초기화할 수 있다. 일반적으로, 유예 기간(308)은 넓은 범위의 상이한 메커니즘들에 의해 적용될 수 있다. 예를 들어, 유예 기간(308)은 시간의 경과(예컨대, 초단위), (예컨대, 디스플레이 파이프(204)에 의해 디스플레이(206)로 전송되는) 그래픽 출력의 프레임들의 개수, 및/또는 (예컨대, 디스플레이 파이프(204)에 의해 디스플레이(206)로 전송되는) 심볼들의 개수의 경과에 기초하여 감소하는 타이머 및/또는 카운터에 의해 추적될 수 있다. 또한, 타이머 및/또는 카운터는 하드웨어, 보안 퓨즈, 마이크로코드, 및/또는 디스플레이 파이프(204)와 관련된 다른 보안 메커니즘에 의해 안전하게 제어될 수 있다.
유예 기간(308)을 개시하는 경우, 디스플레이 파이프(204)는 GPU(110) 및/또는 비디오 플레이어(200)에게 유예 기간(308) 및/또는 그래픽 출력에서의 보호의 결핍을 알리는 인터럽트(interrupt)를 생성할 수 있다. 다르게는, GPU(110) 및/또는 비디오 플레이어(200)가 디스플레이 파이프(204)를 주기적으로 폴링(polling)함으로써, 그래픽 출력 보호의 상태 및/또는 유예 기간(308)을 얻을 수 있다.
또한, 디스플레이 파이프(204)는 유예 기간(308) 동안 보호 메모리(202)로부터 디스플레이(206)를 계속 구동시킴으로써 GPU(110) 및/또는 비디오 플레이어(200)가 보호의 결핍으로부터 회복할 수 있게 할 수 있다. 예를 들어, GPU(110) 및/또는 비디오 플레이어(200)는 유예 기간(308)을 사용하여 그래픽 출력의 보호를 재확립할 수 있으며 또는 비보호 메모리로부터 디스플레이(206)를 구동시키는 것으로 전환할 수 있다. 유예 기간(308) 동안에 그래픽 출력의 보호가 재개되는 경우, 디스플레이 파이프(204)는 유예 기간(308)과 관련된 카운터 및/또는 타이머를 리셋할 수 있으며, 보호 메모리(202)로부터 디스플레이(206)를 구동시키는 것을 계속할 수 있다. 결과적으로, 유예 기간(308)은 그래픽 출력의 보호와 관련된 결함들 및/또는 다운타임들 동안에, 디스플레이(206)로 방해받음 없이 그래픽 출력을 감상하는 것을 용이하게 할 수 있다. 또한, 하드웨어는 재생성될 보호 콘텐츠를 요구하기 이전에 유예 기간들을 제한하는 카운터들을 제공할 수도 있다. 본 발명의 목적은 공격자가 모든 비보호 콘텐츠가 캡처되는 것을 가능하게 하는 패턴으로 HDCP를 인에이블 및 디스에이블함으로써, 그대로 콘텐츠를 전송하도록 유예 기간을 사용하는 것을 방지하기 위한 것이다.
한편, 유예 기간 동안 그래픽 출력의 보호가 재개되지 않는 경우, 디스플레이 파이프(204)는 보호 메모리(202)로부터 디스플레이(206)를 구동시키는 것을 중단시킬 수 있다. 대신에, 디스플레이 파이프(204)는 비보호 메모리로부터 디스플레이(206)를 구동시킬 수 있으며/있거나 보호 메모리(202)로부터 다른 디스플레이를 구동시킬 수 있다. 예를 들어, 디스플레이 파이프(204)는 더 낮은 해상도의 동일한 그래픽 출력 및/또는 그레이 영역과 같은 대체 그래픽 출력 및/또는 그래픽 출력에서의 보호의 결핍을 나타내는 메시지(예컨대, "HDCP 오프")를 사용하여 비보호 메모리로부터 디스플레이(206)를 구동시킬 수 있다. 다르게는, 디스플레이 파이프(204) 및/또는 다른 디스플레이 파이프는, 그래픽 출력의 보호가 상기 다른 디스플레이에서 인에이블되는 경우 및/또는 상기 다른 디스플레이가 내부 디스플레이에 해당하는 경우, 보호 메모리(202)로부터 상기 다른 디스플레이를 구동시킬 수도 있다.
내부 파라미터들(예컨대, 보호 플래그(302), 파이프-활성 플래그(304), 내부 디스플레이 플래그(306))에 기초하여 보호 메모리(202) 및/또는 비보호 메모리로부터 디스플레이(206)를 구동시키는 것을 제어하도록 디스플레이 파이프(204)를 구성함으로써, 도 2의 시스템은 디스플레이 파이프(204)의 상태를 스푸핑(spoofing)하여(예컨대, 비안전 API들을 이용하여) , 디스플레이 파이프(204)로부터 디스플레이(206)로 전송되는 비보호 그래픽 출력에의 액세스를 얻는 공격들을 피할 수 있게 된다. 동시에, 유예 기간(308)은 디스플레이(206)상의 그래픽 출력의 경험을 감상하는 것에 방해받음 없이, 보호 메모리(202)에 기록된 그래픽 출력의 보호에서의 일시적 경과로부터 GPU(110) 및/또는 디스플레이 파이프(204)가 회복할 수 있게 할 수 있다. 마지막으로, 그래픽 출력의 보호가 유예 기간(308) 동안 재개하지 않는 경우에 비보호 메모리로부터 디스플레이(206)를 구동시키는 것 및/또는 보호 메모리(202)로부터 다른 디스플레이를 구동시키는 것은, 보호 비디오 콘텐츠가 보호 비디오 출력들에서만 사용가능하고 또한 보호의 손실은 디스플레이 별로 적절하게 처리되는 것을 보장할 수 있다.
도 4는 본 발명에 따른, 컴퓨터 시스템으로부터 디스플레이를 구동시키는 프로세스를 도시한 흐름도를 나타낸다. 하나 이상의 실시예들에서는, 하나 이상의 스텝들이 생략, 반복, 및/또는 상이한 순서로 수행될 수 있다. 따라서, 도 4에 나타낸 스텝들의 특정 배열은 본 발명의 범위를 한정하는 것으로 해석되어서는 안된다.
먼저, 그래픽 출력이 보호 메모리에 기록된다(동작 400). 다음으로, 시스템은 디스플레이 링크가 활성인지의 여부를 결정한다(동작 402). 활성이 아닌 경우, 시스템은 디스플레이 파이프가 보호 메모리인지 비보호 메모리인지를 스캔아웃하는 것을 허용하지 않는다(동작 422). 일반적으로, 디스플레이 링크가 비활성인 경우, 그 디스플레이 링크는 보호 디스플레이 링크처럼 취급된다. 오프(off)로부터 비보호(unprotected)로의 파이프라인의 전환은 디스플레이 링크 보호를 상실한 것과 관련된 전환과 상이한 유예 기간 특성을 가질 수 있음에 유의한다. 또한, 현재의 시스템들은 일반적으로 소정 디코더 기능들을 위해 보호 메모리를 적용한다는 것에 유의한다. 그러나, 다른 그래픽 API(디코딩 제외)는 그래픽 출력들이 보호 메모리로 진행하게 하도록 확장될 수 있다. 또한, 이러한 보호 메모리는 콘텐츠가 보호 링크를 또한 필요로 하는 보호를 요구하게 된다.
그렇지 않으면, 동작 402에서 디스플레이 링크가 활성인 경우, 시스템은 디스플레이 링크가 보호되어 있는지의 여부를 결정한다(동작 404). 보호된 경우, 시스템은 디스플레이 파이프가 보호 메모리로부터 스캔아웃하는 것을 허용한다(동작 422). GPU에 의해 생성되는 그래픽 출력은 그래픽 출력을 디스플레이에 전송하기 이전에, 디스플레이 파이프에서 그 그래픽 출력을 암호화함으로써(예컨대, HDCP를 사용) 보호될 수 있으며, 이에 따라 도청자에 의한 그래픽 출력의 비인가 복제를 방지할 수 있음에 유의한다.
동작 404에서 디스플레이 링크가 보호되어 있지 않은 경우, 시스템은 그 디스플레이가 보호 디스플레이 타입(예를 들어, 외부 디스플레이)과 반대인 비보호 디스플레이 타입(예컨대, 내부 디스플레이)인지의 여부를 결정한다(동작 408). 그러한 경우, 시스템은 비보호 디스플레이 타입들이 허용되는지의 여부를 결정한다(동작 410). 그러한 경우, 시스템은 디스플레이 파이프가 보호 메모리로부터 스캔아웃하는 것을 허용한다(동작 422). 그렇지 않다면, 비보호 디스플레이 타입들(예컨대, 내부 디스플레이들)이 허용되지 않는 경우, 시스템은 디스플레이 파이프가 보호 메모리로부터의 스캔아웃에 대한 허용을 거부한다(동작 420). 예를 들어, 몇몇 비보호 디스플레이 타입들, 예컨대 내부 디스플레이들은 예를 들어, 퓨즈, 시스템의 보안 마이크로컨트롤러, 또는 정책을 통하여 상기 내부 디스플레이들이 디스에이블될 경우에, 허용되지 않을 수 있다.
동작 408에서, 디스플레이가 비보호 디스플레이 타입이 아닌 것으로 시스템이 결정한 경우, 시스템은 유예 기간이 사용가능한지의 여부를 결정하며, 여기서 상기 유예 기간은 그래픽 출력의 보호의 결핍과 관련된다(동작 412). 그렇지 않은 경우, 시스템은 디스플레이 파이프가 보호 메모리로부터의 스캔아웃에 대한 허용을 거부한다(동작 420).
그렇지 않으면, 유예 기간이 사용가능한 경우, 시스템은 유예 기간 동안에 보호 메모리로부터 계속해서 인출한다(동작 414). 유예 기간은, 예를 들어 시간의 경과 기간, 프레임들의 개수, 및/또는 디스플레이 파이프에 의해 추적되는 심볼들의 개수(또는 그 밖의 유사한 특징)에 대응할 수 있음에 유의한다.
다음으로, 시스템은 유예 기간 동안 그래픽 출력의 보호가 재개되었는지의 여부를 결정한다(동작 416). 예를 들어, 그래픽 출력의 보호는, GPU 및/또는 디스플레이 파이프가 그래픽 출력의 암호화에서의 결함으로부터 회복되는 경우에 재개될 수 있다. 유예 기간 동안 그래픽 출력의 보호가 재개되는 경우, 시스템은 그래픽 출력에서의 후속적인 보호의 결핍이 검출될 때까지((동작 406)), 디스플레이 파이프가 보호 메모리를 스캔아웃하는 것을 허용한다(동작 422). 이러한 전체 프로세스는 HDCP를 인에이블 및 디스에이블하여 유예 기간 동안 콘텐츠를 추출하는 조작을 방지하도록 하기 위해, 하드웨어에 의해 적용되는 제한들을 받을 수 있다.
유예 기간 동안 그래픽 출력의 보호가 재개되지 않는 경우, 시스템은 보호 메모리로부터의 스캔아웃을 중단한다(동작 418). 대안으로서, 디스플레이 파이프는 대체 그래픽 출력(예컨대, 그레이 영역, 메시지) 및/또는 낮은 해상도의 동일한 그래픽 출력을 이용하여 비보호 메모리로부터 인출할 수도 있고 또는 상기 그래픽 출력을 사용하여 다른 디스플레이가 구동될 수도 있다.
전술한 각종 실시예들은 예시 및 설명의 목적으로서만 제공되었다. 이들은 완전한 것이거나 개시된 형태들로 본 발명을 한정하려는 것으로 의도되지 않는다. 따라서, 당업자에게는 다수의 수정 및 변형이 명백할 것이다. 또한, 전술한 개시 내용은 본 발명을 한정하려는 것으로 의도되지 않는다.

Claims (33)

  1. 컴퓨터 시스템으로부터 디스플레이를 구동시키는 방법으로서,
    그래픽 출력을 보호 메모리에 기록하는 단계;
    상기 보호 메모리로부터 상기 디스플레이를 구동시키는 단계; 및
    상기 그래픽 출력이 보호의 결핍인 경우, 상기 보호 메모리로부터의 상기 디스플레이의 구동을 중단하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 그래픽 출력에서의 보호의 결핍의 검출 시에, 상기 그래픽 출력에서의 보호의 결핍과 관련된 유예 기간(grace period) 동안 상기 보호 메모리로부터의 상기 디스플레이의 구동을 계속하는 단계를 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 유예 기간은 시간 기간, 프레임들의 수 및/또는 심볼들의 수 중 적어도 하나에 대응하는 방법.
  4. 제2항에 있어서,
    상기 유예 기간의 지속시간은 설정가능한 방법.
  5. 제2항에 있어서,
    상기 유예 기간은 디스에이블될 수 있는 방법.
  6. 제2항에 있어서,
    상기 유예 기간은 시간 기간, 프레임들의 수 및/또는 심볼들의 수 중 적어도 하나에 대응하는 방법.
  7. 제2항에 있어서,
    유예 기간으로부터의 재개들의 횟수에 대한 제한이 존재하는 방법.
  8. 제2항에 있어서,
    상기 유예 기간은 상기 디스플레이에 대한 복수의 콘텐츠 공급자들의 가장 엄격한 유예 기간 정책을 만족시키는 방법.
  9. 제2항에 있어서,
    상기 보호 메모리로부터의 상기 디스플레이의 구동은, 상기 유예 기간 동안 상기 그래픽 출력의 보호가 재개되지 않는 경우에 중단되는 방법.
  10. 제1항에 있어서,
    상기 보호 메모리로부터의 상기 디스플레이의 구동을 중단하는 단계는,
    대체 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 단계;
    더 낮은 해상도의 상기 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 단계;
    상기 그래픽 출력을 사용하여 상이한 디스플레이를 구동시키는 단계; 및
    다른 하드웨어-적용 효과(hardware-enforced effect)를 사용하여 상기 디스플레이를 구동시키는 단계
    중 적어도 하나를 포함하는 방법.
  11. 제11항에 있어서,
    상기 대체 그래픽 출력은 그레이 영역 및 메시지 중 적어도 하나인 방법.
  12. 제1항에 있어서,
    상기 보호는 상기 그래픽 출력의 암호화를 포함하는 방법.
  13. 제1항에 있어서,
    상기 디스플레이의 구동은, 상기 디스플레이가 허용된 비보호 디스플레이 타입인 경우, 상기 그래픽 출력의 보호와 관계없이 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것을 포함하는 방법.
  14. 제13항에 있어서,
    허용된 비보호 디스플레이 타입들에 대해 상기 보호 메모리로부터의 상기 디스플레이의 구동은 선택적으로 디스에이블될 수 있는 방법.
  15. 제1항에 있어서,
    그래픽 출력 보호 없이 상기 보호 메모리로부터의 상기 디스플레이의 구동은 선택적으로 디스에이블될 수 있는 방법.
  16. 컴퓨터 시스템으로부터 디스플레이를 구동시키는 시스템으로서,
    그래픽 출력을 보호 메모리에 기록하도록 구성된 GPU(graphics-processing unit); 및
    디스플레이 파이프
    를 포함하고,
    상기 디스플레이 파이프는,
    상기 보호 메모리로부터 상기 디스플레이를 구동시키고,
    상기 그래픽 출력이 보호의 결핍인 경우, 상기 보호 메모리로부터의 상기 디스플레이의 구동을 중단하도록
    구성되는 시스템.
  17. 제16항에 있어서,
    상기 디스플레이 파이프는, 상기 그래픽 출력에서의 보호의 결핍과 관련된 유예 기간 동안 상기 보호 메모리로부터의 상기 디스플레이의 구동을 계속하도록 또한 구성되는 시스템.
  18. 제17항에 있어서,
    상기 유예 기간의 지속시간은 설정가능한 시스템.
  19. 제17항에 있어서,
    상기 유예 기간은 디스에이블될 수 있는 시스템.
  20. 제17항에 있어서,
    상기 유예 기간은 시간 기간, 프레임들의 수 및/또는 심볼들의 수 중 적어도 하나에 대응하는 시스템.
  21. 제17항에 있어서,
    유예 기간으로부터의 재개들의 횟수에 대한 제한이 존재하는 시스템.
  22. 제17항에 있어서,
    상기 유예 기간은 상기 디스플레이에 대한 복수의 콘텐츠 공급자들의 가장 엄격한 유예 기간 정책을 만족시키는 시스템.
  23. 제16항에 있어서,
    상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것은, 상기 유예 기간 동안 상기 그래픽 출력의 보호가 재개되지 않는 경우에 중단되는 시스템.
  24. 제16항에 있어서,
    상기 보호 메모리로부터의 상기 디스플레이의 구동을 중단하는 것은,
    대체 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 것;
    더 낮은 해상도의 상기 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 것;
    상기 그래픽 출력을 사용하여 상이한 디스플레이를 구동시키는 것; 및
    다른 하드웨어-적용 효과를 사용하여 상기 디스플레이를 구동시키는 것
    중 적어도 하나를 포함하는 시스템.
  25. 제24항에 있어서,
    상기 대체 그래픽 출력은 그레이 영역 및 메시지 중 적어도 하나인 시스템.
  26. 제16항에 있어서,
    상기 디스플레이 파이프는, 상기 디스플레이가 허용된 비보호 디스플레이 타입에 해당하는 경우, 상기 그래픽 출력의 보호와 관계없이 상기 보호 메모리로부터의 상기 디스플레이의 구동을 계속하도록 또한 구성되는 시스템.
  27. 제26항에 있어서,
    그래픽 출력 보호 없이 상기 보호 메모리로부터 상기 디스플레이를 구동시키는 것은 선택적으로 디스에이블될 수 있는 시스템.
  28. 컴퓨터에 의해 실행되는 경우, 상기 컴퓨터로 하여금, 컴퓨터 시스템으로부터 디스플레이를 구동시키는 방법을 수행하게 하는 명령어들을 저장하는 컴퓨터 판독가능 저장 매체로서,
    상기 방법은,
    그래픽 출력을 보호 메모리에 기록하는 단계;
    상기 보호 메모리로부터 상기 디스플레이를 구동시키는 단계; 및
    상기 그래픽 출력이 보호의 결핍인 경우, 상기 보호 메모리로부터의 상기 디스플레이의 구동을 중단하는 단계
    를 포함하는 컴퓨터 판독가능 저장 매체.
  29. 제28항에 있어서,
    상기 방법은, 상기 그래픽 출력에서의 보호의 결핍의 검출 시에, 상기 그래픽 출력에서의 보호의 결핍과 관련된 유예 기간 동안 상기 보호 메모리로부터의 상기 디스플레이의 구동을 계속하는 단계를 더 포함하는 컴퓨터 판독가능 저장 매체.
  30. 제29항에 있어서,
    상기 유예 기간은 시간 기간, 프레임들의 수 및/또는 심볼들의 수 중 적어도 하나에 대응하는 컴퓨터 판독가능 저장 매체.
  31. 제29항에 있어서,
    상기 보호 메모리로부터 상기 디스플레이를 구동시키는 단계는, 상기 유예 기간 동안 상기 그래픽 출력의 보호가 재개되지 않는 경우에 중단되는 컴퓨터 판독가능 저장 매체.
  32. 제28항에 있어서,
    상기 디스플레이가 허용된 비보호 디스플레이 타입에 해당하는 경우, 상기 그래픽 출력의 보호와 관계없이 상기 보호 메모리로부터의 상기 디스플레이의 구동을 계속하는 단계를 더 포함하는 컴퓨터 판독가능 저장 매체.
  33. 제28항에 있어서,
    상기 보호 메모리로부터의 상기 디스플레이의 구동을 중단하는 단계는,
    대체 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 단계;
    더 낮은 해상도의 상기 그래픽 출력을 사용하여 상기 디스플레이를 구동시키는 단계;
    상기 그래픽 출력을 사용하여 상이한 디스플레이를 구동시키는 단계; 및
    다른 하드웨어-적용 효과를 사용하여 상기 디스플레이를 구동시키는 단계
    중 적어도 하나를 포함하는 컴퓨터 판독가능 저장 매체.
KR1020147007150A 2011-08-18 2012-08-17 그래픽 프로세서 gpu로부터 비디오 디스플레이로의 hdcp 링크의 보안화 KR101632930B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/212,821 2011-08-18
US13/212,821 US9767840B2 (en) 2011-08-18 2011-08-18 Securing protected content during video playback
PCT/US2012/051482 WO2013026041A1 (en) 2011-08-18 2012-08-17 Securing a hdcp link from graphic processor gpu to video display

Publications (2)

Publication Number Publication Date
KR20140049603A true KR20140049603A (ko) 2014-04-25
KR101632930B1 KR101632930B1 (ko) 2016-06-24

Family

ID=46755148

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147007150A KR101632930B1 (ko) 2011-08-18 2012-08-17 그래픽 프로세서 gpu로부터 비디오 디스플레이로의 hdcp 링크의 보안화

Country Status (7)

Country Link
US (1) US9767840B2 (ko)
EP (1) EP2745234B1 (ko)
JP (1) JP5815867B2 (ko)
KR (1) KR101632930B1 (ko)
CN (1) CN103827886B (ko)
AU (1) AU2012296399B2 (ko)
WO (1) WO2013026041A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9177353B2 (en) 2013-03-15 2015-11-03 Intel Corporation Secure rendering of display surfaces
US9087202B2 (en) * 2013-05-10 2015-07-21 Intel Corporation Entry/exit architecture for protected device modules
US9705849B2 (en) * 2014-09-30 2017-07-11 Intel Corporation Technologies for distributed detection of security anomalies
US20160300068A1 (en) * 2015-04-07 2016-10-13 Dell Products, Lp System and Method to View Encrypted Information on a Security Enabled Display Device
CN109996114B (zh) * 2016-01-04 2021-02-26 华为技术有限公司 控制视频输出的方法及其装置、控制电路

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030135742A1 (en) * 2002-01-16 2003-07-17 Evans Glenn F. Secure video card methods and systems
EP1924095A1 (en) * 2005-08-26 2008-05-21 Matsushita Electric Industrial Co., Ltd. Signal source device

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993010518A2 (en) * 1991-11-21 1993-05-27 Videologic Limited Video/graphics memory system
US5596718A (en) * 1992-07-10 1997-01-21 Secure Computing Corporation Secure computer network using trusted path subsystem which encrypts/decrypts and communicates with user through local workstation user I/O devices without utilizing workstation processor
US6948070B1 (en) * 1995-02-13 2005-09-20 Intertrust Technologies Corporation Systems and methods for secure transaction management and electronic rights protection
US7095854B1 (en) * 1995-02-13 2006-08-22 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
CN101303717B (zh) * 1995-02-13 2015-04-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
JP4170424B2 (ja) * 1997-10-31 2008-10-22 株式会社東芝 コンピュータ
US20150297949A1 (en) * 2007-06-12 2015-10-22 Intheplay, Inc. Automatic sports broadcasting system
US6621496B1 (en) * 1999-02-26 2003-09-16 Micron Technology, Inc. Dual mode DDR SDRAM/SGRAM
EP1193975A4 (en) * 2000-04-04 2005-01-26 Sony Corp TRANSMITTER, SIGNAL TRANSMISSION METHOD, DATA DISTRIBUTION SYSTEM AND METHOD, DATA RECEIVER, DATA PROCESSING DEVICE AND METHOD AND DATA TRANSMITTER
US7114168B1 (en) * 2000-09-29 2006-09-26 Intel Corporation Method and apparatus for determining scope of content domain
US7987510B2 (en) * 2001-03-28 2011-07-26 Rovi Solutions Corporation Self-protecting digital content
US7055038B2 (en) * 2001-05-07 2006-05-30 Ati International Srl Method and apparatus for maintaining secure and nonsecure data in a shared memory system
US20030001978A1 (en) * 2001-06-12 2003-01-02 Xsides Corporation Method and system for enhancing display functionality in a set-top box environment
US20030037330A1 (en) * 2001-08-20 2003-02-20 General Instrument Corporation Methods and apparatus for the display of advertising material during personal versatile recorder trick play modes
US6819322B2 (en) * 2002-01-04 2004-11-16 Hewlett-Packard Development Company, L.P. Method and apparatus for detecting potential lock-up conditions in a video graphics controller
US7502470B2 (en) * 2003-01-13 2009-03-10 Silicon Image, Inc. Method and apparatus for content protection within an open architecture system
US20050144468A1 (en) * 2003-01-13 2005-06-30 Northcutt J. D. Method and apparatus for content protection in a personal digital network environment
US7302573B2 (en) * 2003-01-14 2007-11-27 Kabushiki Kaisha Toshiba Computer system and method for controlling output of reproduced video data
WO2004066620A1 (en) * 2003-01-20 2004-08-05 Nexvi Corporation Device and method for outputting a private image using a public display
US7426637B2 (en) * 2003-05-21 2008-09-16 Music Public Broadcasting, Inc. Method and system for controlled media sharing in a network
EP1642206B1 (en) * 2003-07-07 2017-12-20 Irdeto B.V. Reprogrammable security for controlling piracy and enabling interactive content
US8037178B1 (en) * 2003-09-19 2011-10-11 Hewlett-Packard Development Company, L.P. System and method for providing secure access to a remote desktop across firewalls in an interactive grid environment
US7703141B2 (en) * 2004-03-11 2010-04-20 Microsoft Corporation Methods and systems for protecting media content
DE102004018803A1 (de) * 2004-04-15 2005-10-27 Deutsche Thomson-Brandt Gmbh Aufzeichnungs- oder Wiedergabegerät für optische Aufzeichnungsträger
CA2563478A1 (en) * 2004-04-16 2005-10-27 James A. Aman Automatic event videoing, tracking and content generation system
US8087091B2 (en) * 2004-07-08 2011-12-27 Media Rights Technologies Method and system for preventing unauthorized reproduction of electronic media
KR100666981B1 (ko) * 2004-08-09 2007-01-10 삼성전자주식회사 디지털 방송 시스템의 데이터 수신 상태 관리 방법 및 장치
US8274518B2 (en) * 2004-12-30 2012-09-25 Microsoft Corporation Systems and methods for virtualizing graphics subsystems
US7904723B2 (en) * 2005-01-12 2011-03-08 Interdigital Technology Corporation Method and apparatus for enhancing security of wireless communications
JP2007074112A (ja) 2005-09-05 2007-03-22 Canon Inc 暗号化データ伝送システムおよび暗号化データ伝送方式
US7715587B2 (en) * 2005-10-28 2010-05-11 Lawrence N. Ginsberg Correlation-based system for watermarking continuous digital media
EP1846863B1 (en) * 2005-10-31 2010-04-21 Nero AG Hardware multimedia endpoint and personal computer
JP2007318279A (ja) 2006-05-24 2007-12-06 Sony Corp 情報処理装置
GB0615392D0 (en) * 2006-08-03 2006-09-13 Wivenhoe Technology Ltd Pseudo random number circuitry
US9281004B2 (en) * 2006-12-11 2016-03-08 Mitsubishi Electric Corporation Content assessment apparatus, content assessment method, information reproducing apparatus, and information reproducing method
US9069990B2 (en) * 2007-11-28 2015-06-30 Nvidia Corporation Secure information storage system and method
US8605097B1 (en) * 2007-12-14 2013-12-10 Nvidia Corporation Method and system for determining the compliance encrypted and non-encrypted display outputs
US8646052B2 (en) * 2008-03-31 2014-02-04 Intel Corporation Method and apparatus for providing a secure display window inside the primary display
US8087081B1 (en) * 2008-11-05 2011-12-27 Trend Micro Incorporated Selection of remotely located servers for computer security operations
US8316228B2 (en) * 2008-12-17 2012-11-20 L-3 Communications Corporation Trusted bypass for secure communication
US20100226526A1 (en) * 2008-12-31 2010-09-09 Modro Sierra K Mobile media, devices, and signaling
US20100306249A1 (en) * 2009-05-27 2010-12-02 James Hill Social network systems and methods
JP2011077640A (ja) 2009-09-29 2011-04-14 Sharp Corp 無線伝送システム
EP2312849A1 (en) * 2009-10-01 2011-04-20 Nxp B.V. Methods, systems and devices for compression of data and transmission thereof using video transmisssion standards
JP2011087176A (ja) 2009-10-16 2011-04-28 Sanyo Electric Co Ltd 映像表示装置
US8767820B2 (en) * 2009-11-11 2014-07-01 Dell Products, Lp Adaptive display compression for wireless transmission of rendered pixel data
US8650653B2 (en) * 2009-12-24 2014-02-11 Intel Corporation Trusted graphics rendering for safer browsing on mobile devices
JP2011135512A (ja) 2009-12-25 2011-07-07 Canon Inc 画像出力装置
US8359246B2 (en) * 2010-03-19 2013-01-22 Buchheit Brian K Secondary marketplace for digital media content
US9100693B2 (en) * 2010-06-08 2015-08-04 Intel Corporation Methods and apparatuses for securing playback content
EP2437194A1 (en) * 2010-10-01 2012-04-04 Nagravision S.A. System and method to prevent manipulation of video data transmitted on an HDMI link.
US20120079270A1 (en) * 2010-09-29 2012-03-29 Navin Patel Hardware-Assisted Content Protection for Graphics Processor
DK2437512T3 (da) * 2010-09-29 2013-10-28 Teliasonera Ab Social fjernsynstjeneste
US8625788B2 (en) * 2011-01-05 2014-01-07 Intel Corporation Method and apparatus for building a hardware root of trust and providing protected content processing within an open computing platform
JP4792543B2 (ja) 2011-02-04 2011-10-12 日立コンシューマエレクトロニクス株式会社 ディジタル信号記録再生装置、および、ディジタル信号記録再生方法
FR2971599B1 (fr) * 2011-02-11 2013-03-15 Jean Luc Leleu Procede de transaction securisee a partir d'un terminal non securise
US10692020B2 (en) * 2011-04-29 2020-06-23 Crestron Electronics, Inc. Real-time automatic meeting room reservation based on the number of actual participants
US9081911B2 (en) * 2011-05-31 2015-07-14 Architecture Technology Corporation Mediating communication of a universal serial bus device
US8560453B2 (en) * 2011-06-30 2013-10-15 Intel Corporation Method and apparatus for dynamic, real-time ad insertion based on meta-data within a hardware based root of trust
US8615656B2 (en) * 2012-01-09 2013-12-24 The Mitre Corporation Secure remote peripheral encryption tunnel
US9311504B2 (en) * 2014-06-23 2016-04-12 Ivo Welch Anti-identity-theft method and hardware database device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030135742A1 (en) * 2002-01-16 2003-07-17 Evans Glenn F. Secure video card methods and systems
EP1924095A1 (en) * 2005-08-26 2008-05-21 Matsushita Electric Industrial Co., Ltd. Signal source device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
http://www.digital-cp.com/files/static_page_files/F4DC275D-A5FB-7E01-E963D6CD986F8B68/HDCP%20rev%202.pdf *
http://www.necdisplay.com/Documents/WhitePapers/HDMI_HDCP.pdf *

Also Published As

Publication number Publication date
AU2012296399A1 (en) 2014-03-06
US20130044084A1 (en) 2013-02-21
JP2014529791A (ja) 2014-11-13
KR101632930B1 (ko) 2016-06-24
AU2012296399B2 (en) 2016-01-14
US9767840B2 (en) 2017-09-19
EP2745234B1 (en) 2016-06-01
CN103827886A (zh) 2014-05-28
JP5815867B2 (ja) 2015-11-17
WO2013026041A1 (en) 2013-02-21
EP2745234A1 (en) 2014-06-25
CN103827886B (zh) 2017-02-15

Similar Documents

Publication Publication Date Title
US10298972B2 (en) Source device, content providing method using source device, sink device and controlling method of the sink device
RU2573215C2 (ru) Устройство и способ для основанной на аппаратных средствах безопасной обработки данных с использованием правил диапазона адресов буферной памяти
US7502470B2 (en) Method and apparatus for content protection within an open architecture system
US8738929B2 (en) Auxiliary functionality for pixel data
KR101632930B1 (ko) 그래픽 프로세서 gpu로부터 비디오 디스플레이로의 hdcp 링크의 보안화
TWI487375B (zh) 確保重放內容之方法及裝置
US8181038B2 (en) Systems and methods for executing encrypted programs
CN104050420B (zh) 用于保护数据的系统和方法
US20130166922A1 (en) Method and system for frame buffer protection
JP4576100B2 (ja) 情報再生装置、セキュアモジュールおよび情報再生方法
KR102573758B1 (ko) 다중 디스플레이 시스템을 구성하는 디스플레이 장치 및 그 제어 방법
ES2600512T3 (es) Método para proteger contenidos de datos
US20220246110A1 (en) Dpu enhancement for improved hdcp user experience
CN115209220A (zh) 视频文件处理方法、装置、存储介质及电子设备
US10395051B2 (en) Image processing apparatus and control method thereof
US20220413957A1 (en) Monitoring for interception of image display pipeline and indicating to user
TWI502484B (zh) 顯示系統及顯示方法
TW202318232A (zh) 經加密圖形資料技術
KR20040000348A (ko) 비디오 카드 출력을 보호하기 위한 시스템 및 방법
TWI517687B (zh) 具資料保護功能之電視控制晶片與控制電視裝置之方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 4