System and method for activating individualized software modules in a digital broadcast environment
First Claim
Patent Images
1. A method for providing selective use of locked software modules on a receiver comprising:
- decrypting an encrypted certificate stored on a storage medium;
using part of the decrypted certificate to initialize the locked software modules indicated by the certificate, including setting a code enabled flag corresponding to the enabled modules;
receiving a request for the use of a specific locked software module;
checking the code enabled flag corresponding to the specific locked software module to see if it can be used; and
if the flag indicates use is allowed, using the specific locked software module.,
6 Assignments
0 Petitions
Accused Products
Abstract
A system and method is disclosed for enabling individualized software functions in a device. In accordance with one embodiment of the present invention software is distributed as omnibus installations containing various software modules that are initially turned off. The user gains access to the turned off modules by requesting a certificate from a system provider. The system provider creates and transmits a certificate containing the information required to enable the desired module. The device can then use the certificate to access the desired software.
-
Citations
23 Claims
-
1. A method for providing selective use of locked software modules on a receiver comprising:
-
decrypting an encrypted certificate stored on a storage medium;
using part of the decrypted certificate to initialize the locked software modules indicated by the certificate, including setting a code enabled flag corresponding to the enabled modules;
receiving a request for the use of a specific locked software module;
checking the code enabled flag corresponding to the specific locked software module to see if it can be used; and
if the flag indicates use is allowed, using the specific locked software module., - View Dependent Claims (2, 3, 4, 18)
-
-
5. A method for obtaining enhanced software capabilities comprising:
-
transmitting a features request and a receiver ID from a first device to a system provider;
the system provider;
receiving the features request and the receiver ID at the system provider;
generating a certificate to enable the requested features;
retrieving a secret key associated with the receiver ID;
encrypting at least part of the certificate using the secret key;
transmitting the encrypted certificate;
receiving the encrypted certificate at the first device; and
decrypting the encrypted certificate using a secret key stored at the first device. - View Dependent Claims (6, 7, 8)
-
-
9. A method for enhancing software capabilities on a receiver comprising:
-
receiving a features request and a receiver ID;
generating a certificate to enable the requested features;
retrieving a key associated with the receiver ID;
encrypting at least part of the certificate using the key; and
transmitting the encrypted certificate.
-
-
10. A method for obtaining enhanced software capabilities comprising:
-
transmitting a features request and a receiver ID from a first device to a system provider;
receiving an encrypted certificate at the first device; and
decrypting the encrypted certificate using a secret key stored at the first device. - View Dependent Claims (11, 12, 15, 16, 17)
-
-
13. The method of claim 13 wherein the step of checking certificate integrity comprises:
-
applying a hash function to at least a portion of the certificate and a hash string;
comparing the result to a hash result stored in the certificate. - View Dependent Claims (14)
-
-
19. An apparatus capable of providing individualized software functions comprising:
-
means for interfacing with a user;
means for generating a receiver identification code;
means for transmitting a new function request, including the receiver identification code;
means for receiving a certificate; and
means for using a code in the certificate to enable a new function. - View Dependent Claims (20, 21, 22)
-
-
23. An apparatus capable of providing individualized software functions comprising:
-
means for interfacing with a user;
means for generating a receiver identification code;
means for encrypting the receiver identification code;
means for transmitting a new function request, including the receiver identification code;
means for receiving a certificate;
means for authenticating the certificate;
means for decrypting the certificate; and
means for using a code in the certificate to enable the new function.
-
Specification