Protected Memory Display Driver for Secure Video Playback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems for driving external displays from a computer system are vulnerable to eavesdropping, as video data can be intercepted despite encryption mechanisms like HDCP, due to exploits in untrusted software and encryption lapses.

Innovation Solution

A system that writes graphical output to protected memory and drives the display from this memory, with a configurable grace period during which the display continues to operate if protection is lacking, and then discontinues if protection is not resumed, using alternative methods like lower resolution or substitute output.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If encryption mechanisms like HDCP are used to protect video data, then security against eavesdropping is improved, but the system becomes vulnerable to software exploits and encryption lapses

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system separates the display driving function into two independent paths: a protected path for encrypted graphical output and an unprotected path for unencrypted output. This segmentation allows the system to maintain security for external displays while providing a fallback path that avoids vulnerabilities in the encryption system, resolving the contradiction between security improvement and system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary mechanism (the display driver's protected memory path) that mediates between the encrypted graphical output and the external display. This intermediary ensures that only protected content is transmitted to external displays while allowing the system to gracefully handle encryption failures through the grace period mechanism, balancing security with robustness.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the system discontinues display driving when protection is lacking, then security is maintained, but playback interruption occurs

Engineering Contradiction:
ImprovesecurityVSAvoidplayback continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements a grace period mechanism that acts as a cushion against security failures. When protection is detected to be lacking, the system does not immediately discontinue display driving but allows a predetermined grace period to elapse first. This beforehand cushioning provides a buffer that prevents immediate playback interruption while still maintaining security by eventually discontinuing unprotected display output, thus resolving the contradiction between security maintenance and playback continuity.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Reliability

If protected memory is used for external displays, then unauthorized copying is prevented, but system complexity increases

Engineering Contradiction:
Improvecopy protectionVSAvoidmemory management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system applies local quality by treating different display paths differently: external displays receive protected graphical output through protected memory, while internal displays can use unprotected memory. This localized application of protection only where needed (external displays) maintains copy protection effectiveness while minimizing the overall complexity of memory management compared to applying protection universally to all displays.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9767840B2Securing protected content during video playback
Publication Date: 2017.09.19 APPLE INC
  • US9767840B2 patent drawing
  • US9767840B2 patent drawing
  • US9767840B2 patent drawing

AI summary

The disclosed embodiments provide a system that drives a display from a computer system. During operation, the system writes graphical output to protected memory and drives the display from the protected memory. If the graphical output lacks protection, the system discontinues the driving of the display from the protected memory. In particular, upon detecting a lack of protection in the graphical output, the system continues to drive the display from the protected memory during a grace period associated with the lack of protection in the graphical output. The system then discontinues driving of the display from the protected memory if protection of the graphical output does not resume during the grace period.