IP Library Granted Patent US 9,405,524
Granted Patent B1
US 9,405,524 · App. 14/266,793 · Granted Aug 2, 2016

Software verification system and methods

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 9,405,524
App. No.
14/266,793
Granted
Aug 2, 2016
Kind
B1
Abstract

A method for detecting a confirmation of a properly installed software product on a computing device, determining the software product installation properties of the properly installed software product, and storing information relating to at least one or more software product installation properties of the properly installed software product.

Claims (31)

1. A device comprising a non-transitory computer readable medium storing instructions for generating a product definition for a software product and validating installations of that software product using the generated product definition,

(a) wherein the device is configured to be physically coupled to a computer via a hardware interface such that the computer can execute the stored instructions for generating a product definition for a software product and validating installations of that software product using the generated product definition;

(b) wherein the device and instructions are configured to enable the device to be utilized in a method comprising

(i) physically coupling the device to a first computer having a first installation of a first software product installed thereon,

(ii) executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation including

(A) generating, for each file of the first installation on the first computer which includes a version number, a hash value for that respective file,

(B) generating information about registry entries on the first computer for the first software product,

(iii) physically coupling the device to a second computer having a second installation of the first software product installed thereon, and

(iv) executing, using a processor of the second computer, instructions stored on the device which attempt to validate the second installation, such validation including

(A) comparing the generated hash values for the first installation to generated hash values for the second installation, and

(B) comparing the generated information about registry entries on the first computer for the first software product to registry entries on the second computer for the first software product.

2. The device of claim 1 , wherein generating, for each file of the first installation on the first computer which includes a version number, a hash value for that respective file comprises generating an MD5 hash value.

3. The device of claim 1 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises generating information about a database object.

4. The device of claim 1 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises generating information about a table.

5. The device of claim 1 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises utilizing information about a last modified time of a file.

6. The device of claim 1 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises setting a flag to indicate whether a file is optional.

7. A method comprising

(a) providing a device comprising a non-transitory computer readable medium storing instructions for generating a product definition for a software product and validating installations of that software product using the generated product definition, wherein the device is configured to be physically coupled to a computer via a hardware interface such that the computer can execute the stored instructions for generating a product definition for a software product and validating installations of that software product using the generated product definition;

(b) physically coupling the device to a first computer having a first installation of a first software product installed thereon;

(c) executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation including

(i) generating, for each file of the first installation on the first computer which includes a version number, a hash value for that respective file,

(ii) generating information about registry entries on the first computer for the first software product;

(d) physically coupling the device to a second computer having a second installation of the first software product installed thereon; and

(e) executing, using a processor of the second computer, instructions stored on the device which attempt to validate the second installation, such validation including

(i) comparing the generated hash values for the first installation to generated hash values for the second installation, and

(ii) comparing the generated information about registry entries on the first computer for the first software product to registry entries on the second computer for the first software product.

8. The method of claim 7 , wherein generating, for each file of the first installation on the first computer which includes a version number, a hash value for that respective file comprises generating an MD5 hash value.

9. The method of claim 7 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises generating information about a database object.

10. The method of claim 7 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises generating information about a table.

11. The method of claim 7 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises utilizing information about a last modified time of a file.

12. The method of claim 7 , wherein, with respect to executing, using a processor of the first computer, instructions stored on the device which generate a first product definition for the first installation of the first software product installed on the first computer, such generation comprises setting a flag to indicate whether a file is optional.

Assignments (2)
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded May 16, 2022
From: ALLSCRIPTS SOFTWARE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 060073/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2016
From: DAVIS, GEORGE FRANK SQUIRES
To: ALLSCRIPTS SOFTWARE, LLC
Reel/Frame 039027/0362 →