Secure Execution Environment for DRM Trust Establishment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Establishing trust between a computerized device and a server system for digital rights management (DRM) is challenging due to the need for secure communication and authentication, especially in mobile devices where hardware support is limited.
Innovation Solution
The implementation of a secure execution environment like TrustZone, which includes a secure and non-secure execution environment, uses a specialized processing chipset (SoC) to create a chain of trust by authenticating the device and establishing a root of trust with the backend server through secure boot processes, device registration, and mutual authentication using cryptographic techniques.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a secure execution environment like TrustZone is implemented using a specialized processing chipset (SoC), then security and trust establishment are improved, but device complexity increases
Solution Approach 1:
The patent divides the execution environment into two distinct segments: a secure environment and a non-secure environment. This segmentation allows critical DRM operations to run in the secure environment while standard operations run in the non-secure environment, thereby improving trust establishment without requiring complete hardware redesign. The segmentation isolates security-critical functions from potential attacks originating in the non-secure environment.
Solution Approach 2:
The patent introduces a trusted execution environment as an intermediary layer between the non-secure application and the hardware resources. This intermediary establishes a chain of trust by verifying the integrity of software components and providing a secure communication channel, thereby improving reliability while managing complexity through a dedicated trust-establishment layer rather than pervasive security mechanisms throughout the entire system.
2Reliability
If secure boot processes and mutual authentication are implemented, then security against tampering is improved, but authentication time and processing overhead increase
Solution Approach 1:
The patent implements secure boot processes that perform authentication and integrity verification before the system becomes operational. By conducting these security checks preliminarily during the boot sequence, the system ensures anti-tampering security is established before any potentially vulnerable operations occur, while minimizing ongoing authentication time since the trust relationship is already established.
Solution Approach 2:
The mutual authentication mechanism provides feedback loops where the device verifies the server and the server verifies the device. This bidirectional verification ensures strong security against tampering by confirming both parties' identities and integrity. The feedback mechanism allows the system to abort authentication quickly if verification fails, potentially reducing average authentication time compared to unidirectional verification that must complete all steps regardless of early failures.
Data Source
AI summary
A DRM client on a device establishes trust with a DRM server for playback of digital content. The client executes in a secure execution environment, and the process includes (1) securely loading loader code from secure programmable memory and verifying it using a digital signature scheme and first key securely stored in the device; (2) by the verified loader code, loading DRM client code from the memory and verifying it using a digital signature scheme and second key included in the loader code; (3) by the verified DRM client code (a) obtaining a domain key from the memory; (b) encrypting the domain key with a device identifier using a DRM system key included in the DRM client code; and (c) sending the encrypted domain key and device identifier to the DRM server, whereby the device becomes registered to receive content licenses via secure communications encrypted using the domain key.


