Protection Scheme for AACS Keys
First Claim
1. A method for protecting a software video player having Advanced Access Content System (AACS), comprising:
- creating a temporary random key when the software video player is started;
encrypting a fixed random key with the temporary random key to form an encrypted fixed random key;
dividing the encrypted fixed random key into the segments;
storing the segments at noncontiguous regions of memory;
reading the segments from the noncontiguous regions of memory;
assembling the segments to form the encrypted fixed random key;
decrypting the encrypted fixed random key with the temporary random key to form the fixed random key;
extracting AACS key data from a pack file;
decrypting the AACS key data with the fixed random key to retrieve AACS Device Keys;
generating an AACS Title Key using the AACS Device Key;
clearing the AACS Device Keys and the fixed random key from memory after the AACS Title Key is generated;
decrying encrypted AACS content with the AACS Title Key to form AACS content; and
displaying the AACS content.
5 Assignments
0 Petitions
Accused Products
Abstract
A method for protecting a software video player having Advanced Access Content System (AACS) includes reading segments of an encrypted first key from noncontiguous regions of memory, assembling the segments to form the encrypted first key, decrypting the encrypted first key with a second key to form a first key, extracting AACS key data from a pack file, decrypting the AACS key data to retrieve AACS Device Keys, generating an AACS Title Key using the AACS Device Key, clearing the AACS Device Keys and the first key from memory after the AACS Title Key is generated, decrying encrypted AACS content with the AACS Title Key to form AACS content, and displaying the AACS content.
65 Citations
12 Claims
-
1. A method for protecting a software video player having Advanced Access Content System (AACS), comprising:
-
creating a temporary random key when the software video player is started; encrypting a fixed random key with the temporary random key to form an encrypted fixed random key; dividing the encrypted fixed random key into the segments; storing the segments at noncontiguous regions of memory; reading the segments from the noncontiguous regions of memory; assembling the segments to form the encrypted fixed random key; decrypting the encrypted fixed random key with the temporary random key to form the fixed random key; extracting AACS key data from a pack file; decrypting the AACS key data with the fixed random key to retrieve AACS Device Keys; generating an AACS Title Key using the AACS Device Key; clearing the AACS Device Keys and the fixed random key from memory after the AACS Title Key is generated; decrying encrypted AACS content with the AACS Title Key to form AACS content; and
displaying the AACS content. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
Specification