IP Library Granted Patent US 8,266,676
Granted Patent B2
US 8,266,676 · App. 11/608,742 · Granted Sep 11, 2012

Method to verify the integrity of components on a trusted platform using integrity database services

Assignee: Harris Corporation
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 8,266,676
App. No.
11/608,742
Granted
Sep 11, 2012
Kind
B2
Abstract

A client platform can be verified prior to being granted access to a resource or service on a network by validating individual hardware and software components of the client platform. Digests are generated for the components of the client platform. The digests can be collected into an integrity report. An authenticator entity receives the integrity report and compares the digests with digests stored in either a local signature database, a global signature database in an integrity authority, or both. Alternatively, the digests can be collected and stored on a portable digest-collector dongle. Once digests are either validated or invalidated, an overall integrity/trust score can be generated. She overall integrity/trust score can be used to determine whether the client platform should be granted access to the resource on the network using a policy.

Claims (84)

1. A system for verifying the integrity of components within a trusted computing environment, comprising:

a client platform capable of being connected to a network, including an integrity report generator to generate an integrity report, wherein said integrity report includes a hash of at least one component of the client platform;

an integrity authority separate and remote from the client platform, and capable of being connected to the network, the integrity authority including a global signature database to store a first plurality of integrity records, wherein each of the first plurality of integrity records includes a trustworthy hash;

an authenticator entity including a local signature database to store a second plurality of integrity records, wherein each of the second plurality of integrity records includes a trustworthy hash,

wherein the authenticator entity is configured to compare said hash of at least one component of said integrity report with said trustworthy hash of each of the second plurality of integrity records;

an authentication server separate from the client platform, and capable of being connected to the network to remotely authenticate the client platform;

a verification server separate from the client platform, and capable of being connected to the network to receive said integrity report from the client platform, to compare said hash of at least one component of said integrity report with said trustworthy hash of each of the first plurality of integrity records from the integrity authority if said hash of at least one component of said integrity report is not found in said second plurality of integrity records, and to provide a trust report to the authentication server, wherein said trust report includes an integrity/trust score that is determined based at least in part on the comparison of said hash of at least one component with said trustworthy hash of each of the first plurality of integrity records and the second plurality of integrity records;

a resource available on the network; and

a policy server separate and remote from the client platform, and capable of being connected to the network to grant or deny access to the resource by the client platform according to the integrity/trust score,

wherein the authenticator entity includes the verification server, the authentication server, and the policy server and the authenticator entity is configured to periodically synchronize said local signature database with said first plurality of integrity records of said global signature database.

2. A system according to claim 1 , wherein the verification server includes a profiles database to store information regarding the client platform.

3. A system according to claim 1 , wherein said integrity report is digitally signed.

4. A system according to claim 1 , wherein:

said local signature database comprises a subset of said first plurality of integrity records of said global signature database; and

the verification server includes a comparator to compare said integrity report with said second plurality of integrity records or said first plurality of integrity records to generate said trust report.

5. A system according to claim 1 , wherein said trust report further includes:

a client platform identity identifying the client platform; and

a verification server identity identifying the verification server.

6. A system according to claim 1 , wherein the integrity authority is operative to harvest raw information of components, verify the correctness of said raw information, refine said raw information into refined information, and store said refined information.

7. A system according to claim 1 , wherein:

each of said first plurality of integrity records of said global signature database includes at least one hash of a component;

each of said second plurality of integrity records of said local signature database includes at least one hash of a component;

the local signature database is configured to periodically receive updates from the global signature database according to a corporate policy.

8. A system according to claim 1 , wherein:

each of said first plurality of integrity records of said global signature database includes information identifying the integrity authority; and

each of said second plurality of integrity records of said local signature database includes information identifying the integrity authority.

9. A system according to claim 1 , wherein the client platform is drawn from a set consisting of a mobile phone, personal digital assistant, network element, router, switch, server, and personal computer.

10. A system according to claim 3 , wherein said integrity report is digitally signed using a Trusted Platform Module (TPM) certificate.

11. A system according to claim 5 , wherein said trust report further includes a reference to a TPM certificate of the client platform.

12. A system according to claim 11 , wherein said integrity/trust score is determined in part by said TPM certificate.

13. A computer-implemented method for verifying the integrity of components, comprising:

verifying at least one component of an image file, wherein verifying includes:

generating an integrity report for at least one component of a client platform, the integrity report including a digest for the at least one component of the client platform;

checking whether each digest in the integrity report has a corresponding integrity record in a local signature database;

if one or more digests does not have a corresponding integrity record in the local signature database, checking whether the one or more digests has a corresponding integrity record in a global signature database associated with an integrity authority that is separate and remote from the client platform, and verifying the digests in the integrity report with the integrity authority against the integrity records in the global signature database; and

generating a trust report by a verification server including an integrity/trust score using the integrity report, the integrity/trust score being determined in part by a certificate used to sign the integrity report, wherein the verification server is separate from the client platform and remotely generates the trust report including the integrity/trust score;

deploying the client platform after verifying the at least one component of the image file, wherein deploying includes:

installing the at least one component of the image file on the client platform after verifying the image file; and

synchronizing the integrity records in the local signature database with the integrity records in the global signature database.

14. A computer-implemented method according to claim 13 , further comprising verifying at least one component of the client platform, wherein verifying includes generating the integrity report and the trust report.

15. A computer-implemented method according to claim 13 , further comprising:

deploying the client platform, wherein deploying includes:

installing the at least one component of the image file on the client platform prior to verifying the image file.

16. A computer-implemented method according to claim 14 , further comprising:

authenticating the client platform;

receiving the integrity report from the client platform; and

verifying components in the integrity report with an integrity authority.

17. A computer-implemented method according to claim 16 , further comprising:

generating the trust report including the integrity/trust score using integrity records stored in the integrity authority; and

granting access of the client platform to a resource if the integrity/trust score exceeds a threshold.

18. A computer-implemented method according to claim 16 , further comprising:

generating the trust report including the integrity/trust score using integrity records stored in the integrity authority; and

denying access of the client platform to a resource if the integrity/trust score does not exceed a threshold.

19. A system for verifying the integrity of components within a trusted computing environment, comprising:

an integrity authority capable of being connected to a network including a global signature database to store a first plurality of integrity records, wherein each of the first plurality of integrity records includes a trustworthy hash;

an authenticator entity including a local signature database to store a second plurality of integrity records, wherein each of the second plurality of integrity records includes a trustworthy hash,

wherein the authenticator entity is configured to compare said hash of at least one component of said integrity report with said trustworthy hash of each of the second plurality of integrity records;

an authentication server capable of being connected to the network to authenticate a client platform, wherein the integrity authority and the authentication server are separate and remote from the client platform;

a verification server separate from the client platform, and capable of being connected to the network to receive an integrity report from said client platform, to compare a hash of said integrity report with said trustworthy hash of each of the first plurality of integrity records from the integrity authority if said hash of said integrity report is not found in said second plurality of integrity records, and to provide a trust report to the authentication server, wherein the trust report includes an integrity/trust score that is determined based on the comparison of said hash of said integrity report with said trustworthy hash of each of the first plurality of integrity records and the second plurality of integrity records;

a resource available on the network;

a policy server separate from the client platform, and capable of being connected to the network to control access to the resource by said client platform according to the integrity/trust score,

wherein said integrity/trust score is used by the policy server to decide whether to grant or deny access to the resource by said client platform, and

wherein the authenticator entity includes the verification server, the authentication server, and the policy server and the authenticator entity is configured to periodically synchronize said local signature database with said first plurality of integrity records of said global signature database.

20. An article comprising a non-transitory machine-accessible and readable storage medium having associated data that, when accessed, results in a machine:

generating an integrity report for at least one component;

generating a trust report including an integrity/trust score using the integrity report, the integrity/trust score being determined in part by a Trusted Platform Module (TPM) certificate used to sign the integrity report;

authenticating a client platform;

receiving the integrity report including a plurality of digests from the client platform;

checking whether each of the plurality of digests has a corresponding integrity record in a local signature database;

if one or more of the digests does not have a corresponding integrity record in the local signature database, checking whether said one or more digests has a corresponding integrity record in a global signature database associated with an integrity authority that is separate and remote from the client platform, and verifying the plurality of digests in the integrity report with the remote integrity authority;

generating a trust report including an integrity/trust score using integrity records stored in the local signature database or the global signature database of the remote integrity authority;

granting access of the client platform to a resource if the integrity/trust score exceeds a threshold;

denying access of the client platform to the resource if the integrity/trust score does not exceed the threshold; and

synchronizing the integrity records in the local signature database with the integrity records in the global signature database.

21. An article according to claim 20 , further comprising verifying at least one component of the client platform, wherein verifying includes generating the integrity report and the trust report.

22. An article according to claim 20 , further comprising:

generating the trust report including the integrity/trust score using integrity records stored in the integrity authority.

23. An article according to claim 20 , further comprising verifying at least one component of an image file, wherein verifying includes generating the integrity report and the trust report.

24. An article according to claim 23 , further comprising:

deploying a client platform, wherein deploying includes:

installing the at least one component of the image file on the client platform prior to verifying the image file.

25. An article according to claim 23 , further comprising:

deploying a client platform, wherein deploying includes:

installing the at least one component of the image file on the client platform after verifying the image file.

Assignments (12)
SECURITY INTEREST Recorded Jul 7, 2016
From: FORTRESS CREDIT CO LLC
To: FORTRESS CREDIT OPPORTUNITIES I LP
Reel/Frame 039104/0946 →
SECURITY INTEREST Recorded Jul 7, 2016
From: FORTRESS CREDIT CO LLC
To: FORTRESS CREDIT OPPORTUNITIES I LP
Reel/Frame 039104/0979 →
SECURITY INTEREST Recorded Jan 13, 2015
From: SIGNACERT, INC
To: FORTRESS CREDIT CO LLC
Reel/Frame 034700/0390 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2015
From: SIGNACERT, INC
To: KIP SIGN P1 LP
Reel/Frame 034700/0842 →
SECURITY INTEREST Recorded Jan 13, 2015
From: KIP SIGN P1 LP
To: FORTRESS CREDIT CO LLC
Reel/Frame 034701/0170 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2013
From: HARRIS CORPORATION
To: SIGNACERT, INC.
Reel/Frame 029804/0310 →
SECURITY AGREEMENT Recorded Dec 13, 2012
From: SIGNACERT, INC.
To: HARRIS CORPORATION
Reel/Frame 029467/0639 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2011
From: SIGNACERT, INC.
To: HARRIS CORPORATION
Reel/Frame 026195/0473 →
RELEASE OF IP SECURITY AGREEMENT Recorded Jun 4, 2008
From: SILICON VALLEY BANK
To: SIGNACERT, INC.
Reel/Frame 021147/0412 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE IN A DOCUMENT PREVIOUSLY RECORDED AT REEL 020555 FRAME 0181. THE ASSIGNOR DOES HEREBY CONFIRM THE SECURITY AGREEMENT. Recorded Mar 31, 2008
From: SIGNACERT, INC.
To: SILICON VALLEY BANK
Reel/Frame 020723/0727 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2008
From: SIGNACERT, INC.
To: SILICON VALLEY BANK
Reel/Frame 020555/0181 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2007
From: HARDJONO, THOMAS PARASU; BLECKMANN, DAVID MAURITS; STARNES, WILLIAM WYATT; ANDERSEN, BRADLEY DOUGLAS
To: SIGNACERT, INC.
Reel/Frame 018969/0218 →
Continuity (7)
Continuation In Part 11288820 · Nov 28, 2005
Provisional Application 60749368 · Dec 9, 2005
Provisional Application 60759742 · Jan 17, 2006
Provisional Application 60637066 · Dec 17, 2004
Provisional Application 60631450 · Nov 29, 2004
Provisional Application 60631449 · Nov 29, 2004
Related Publication 20070143629A1 · Jun 21, 2007