IP Library Granted Patent US 7,725,396
Granted Patent B2
US 7,725,396 · App. 11/407,540 · Granted May 25, 2010

Secure keys for software activation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,725,396
App. No.
11/407,540
Granted
May 25, 2010
Kind
B2
Abstract

A secure method for generating and verifying keys to be utilized for software feature activation. The method includes secure key generation by a software manufacturer and secure key verification by the end software-product that reveals to the software which features to activate. This ensures that any key which activates a feature in the software is generated by the software manufacturer.

Claims (46)

1. A method of processing an activation key for software, comprising:

providing an activation key for the software; and

performing by a processor the following:

generating an original message digest using the activation key and a digest function; and

creating a digital signature by encrypting the original message digest using a private key of a private key and public key pair, the digital signature and the activation key for distribution to a customer for use in activating the software using the activation key, the digital signature, the digest function and the public key by decrypting the digital signature using the public key to reveal an original message digest, generating a comparison message digest using the activation key and the digest function and validating the activation key when the comparison message digest and the revealed original message digest match.

2. The method of claim 1 , wherein the digest function is a hash function.

3. The method of claim 1 , wherein the original message digest is generated using feature data included in the activation key, the feature data for enabling at least one specified feature of the software.

4. The method of claim 1 , further comprising including in the software the digest function and a public key of the private key and public key pair.

5. A system for processing an activation key and for activating software using the activation key, comprising:

an activation key generator that generates an activation key for the software;

a digest message generator that generates an original message digest using the activation key and a digest function;

a digital signature creator that creates a digital signature by encrypting the original message digest using a private key of a private key and public key pair, the digital signature and the activation key for distribution to a customer for use in activating the software using the activation key, the digital signature, the digest function and the public key;

a decryptor constructed to decrypt the digital signature using the public key to reveal an original message digest;

a message digest generator constructed to generate a comparison message digest using the activation key and the digest function;

a comparator constructed to validate the activation key when the comparison message digest and the revealed original message digest match; and

an activator constructed to activate the software when the activation key is validated.

6. The system of claim 5 , wherein the digest function is a hash function.

7. The system of claim 5 , wherein the digest message generator generates the original message digest using feature data included in the activation key, the feature data for enabling at least one specified feature of the software.

8. The system of claim 5 , wherein the digest function and a public key of the private key and public key pair are included in the software.

9. A method of activating software, comprising:

performing by a processor the following:

validating an activation key using the activation key, a digital signature, a digest function and a public key of a public key and private key pair, wherein the digital signature is generated from the activation key using the digest function and private key of the public key and private key pair; and

activating the software when the activation key is validated,

wherein validating the activation key comprises:

decrypting the digital signature using the public key to reveal an original message digest;

generating a comparison message digest using the activation key and the digest function; and

validating the activation key when the comparison message digest and the revealed original message digest match.

10. The method of claim 9 , wherein the digest function is a hash function.

11. The method of claim 9 , wherein the activation key includes feature data and the software is activated in the activating by using the feature data.

12. An apparatus for activating software, comprising:

a validator constructed to validate an activation key using the activation key, a digital signature, a digest function and a public key of a public key private key pair, wherein the digital signature is generated from the activation key using the digest function and private key of the public key and private key pair, the validator comprising:

a decryptor constructed to decrypt the digital signature using the public key to reveal an original message digest;

a message digest generator constructed to generate a comparison message digest using the activation key and the digest function; and

a comparator constructed to validate the activation key when the comparison message digest and the revealed original message digest match; and

an activator constructed to activate the software when the activation key is validated.

13. The apparatus of claim 12 , wherein the digest function is a hash function.

14. The apparatus of claim 12 , wherein the activation key includes feature data and the activator uses the feature data to activate the software.

15. A computer-readable storage medium storing computer-executable software, the software comprising:

a validator module that validates an activation key using the activation key, a digital signature, a digest function and a public key of a public key private key pair, wherein the digital signature is generated from the activation key using the digest function and private key of the public key and private key pair; and

an activator module that activates the software when the activation key is validated,

wherein the validator module further comprises:

a decryptor that decrypts the digital signature using the public key to reveal an original message digest;

a message digest generator that generates a comparison message digest using the activation key and the digest function; and

a comparator that validates the activation key when the comparison message digest and the revealed original message digest match.

16. The computer-readable storage medium of claim 15 , wherein the digest function is a hash function.

17. The computer-readable storage medium of claim 15 , wherein the activation key includes feature data and the activator in the activating uses the feature data to activate the software.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION NUMBER 10/075,623 PREVIOUSLY RECORDED AT REEL: 034484 FRAME: 0740. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT FOR SECURITY --- PATENTS. Recorded Jun 14, 2017
From: CORIANT OPERATIONS, INC.; TELLABS RESTON, LLC (FORMERLY KNOWN AS TELLABS RESTON, INC.); WICHORUS, LLC (FORMERLY KNOWN AS WICHORUS, INC.)
To: TELECOM HOLDING PARENT LLC
Reel/Frame 042980/0834 →
ASSIGNMENT FOR SECURITY - - PATENTS Recorded Nov 26, 2014
From: CORIANT OPERATIONS, INC.; TELLABS RESTON, LLC (FORMERLY KNOWN AS TELLABS RESTON, INC.); WICHORUS, LLC (FORMERLY KNOWN AS WICHORUS, INC.)
To: TELECOM HOLDING PARENT LLC
Reel/Frame 034484/0740 →
SECURITY AGREEMENT Recorded Dec 6, 2013
From: TELLABS OPERATIONS, INC.; TELLABS RESTON, LLC (FORMERLY KNOWN AS TELLABS RESTON, INC.); WICHORUS, LLC (FORMERLY KNOWN AS WICHORUS, INC.)
To: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGENT
Reel/Frame 031768/0155 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2006
From: STERN, KEVIN L.
To: TELLABS OPERATIONS, INC.
Reel/Frame 018104/0096 →