IP Library Granted Patent US 7,565,544
Granted Patent B1
US 7,565,544 · App. 11/098,719 · Granted Jul 21, 2009

Systems and methods for verifying the trustworthiness of a file comprising computer instructions

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,565,544
App. No.
11/098,719
Granted
Jul 21, 2009
Kind
B1
Abstract

An exemplary method involves receiving a request to process a file comprising computer instructions. The file may be a script, a source code file, a binary file, etc. The method also involves identifying a digital signature embedded in comments within the file. The method also involves attempting to validate the digital signature. If the digital signature is validated, the file is processed. If the digital signature is not validated, the file is not processed. The file may include multiple digital signatures. When this occurs, the file may be processed only if all of the multiple digital signatures are validated. Alternatively, the file may be processed if any of the multiple digital signatures are validated.

Claims (94)

1. A method for verifying the trustworthiness of a file comprising computer instructions, the method comprising:

receiving a request to process the file;

identifying a digital signature embedded in comments within the file;

attempting to validate the digital signature;

if the digital signature is validated, processing the file; and

if the digital signature is not validated, not processing the file.

2. The method of claim 1 , wherein the file is a script.

3. The method of claim 1 , wherein the file is a source code file.

4. The method of claim 1 , wherein the file is a binary file.

5. The method of claim 1 , further comprising determining whether a connection through which the request is received is authenticated, and wherein the step of attempting to validate the signature is only performed if the connection is not authenticated.

6. The method of claim 1 , wherein the file comprises multiple digital signatures.

7. The method of claim 6 , wherein the method comprises attempting to validate all of the multiple digital signatures, and wherein the file is processed only if all of the multiple digital signatures are validated.

8. The method of claim 6 , wherein the file is processed if any of the multiple digital signatures are validated.

9. The method of claim 1 , wherein the method is performed by a managed node in a computer network, and wherein the request is received from an administrative system for the computer network.

10. The method of claim 1 , wherein the request is received from an original equipment manufacturer system.

11. A computer system configured for verifying the trustworthiness of a file comprising computer instructions, the computer system comprising:

a processor;

memory in electronic communication with the processor;

instructions stored in the memory, the instructions being executable to:

receive a request to process the file;

identify a digital signature embedded in comments within the file;

attempt to validate the digital signature;

if the digital signature is validated, process the file; and

if the digital signature is not validated, not process the file.

12. The computer system of claim 11 , wherein the file is a script.

13. The computer system of claim 11 , wherein the file comprises multiple digital signatures.

14. A computer-readable medium stored on a storage medium, the computer-readable medium comprising executable instructions for verifying the trustworthiness of a file comprising computer instructions, the instructions being executable to:

receive a request to process the file;

identify a digital signature embedded in comments within the file;

attempt to validate the digital signature;

if the digital signature is validated, process the file; and

if the digital signature is not validated, not process the file.

15. The computer-readable medium of claim 14 , wherein the file is a script.

16. The computer-readable medium of claim 14 , wherein the file comprises multiple digital signatures.

17. A file that is configured to allow verification of the file by a validator on a computer system, the file comprising:

computer instructions;

a signature comment line;

a comment indicator at the beginning of the signature comment line;

a signature tag within the signature comment line; and

a digital signature within the signature comment line.

18. The file of claim 17 , wherein the file is a script.

19. The file of claim 17 , further comprising a certificate identifier within the signature comment line.

20. The file of claim 17 , further comprising multiple digital signatures.

21. A method for simplifying the process of receiving updates, or new software, for a computer system, comprising:

a script engine receiving a request to process a script that comprises here document data;

the script engine receiving the script;

the script engine processing the script;

in response to processing the script, the script engine launching a here document utility, and the here document utility reading the here document data from the script and writing the here document data to a file.

22. The method of claim 21 , wherein the script is a batch file.

23. The method of claim 21 , wherein the here document data is binary file data.

24. The method of claim 21 , further comprising, in response to processing the script, the here document utility decrypting the here document data.

25. The method of claim 21 , further comprising, in response to processing the script, the here document utility decompressing the here document data.

26. The method of claim 21 , further comprising:

a script validator identifying a digital signature in the script; and

the script validator attempting to validate the digital signature, wherein the script engine processes the script only if the digital signature is validated.

27. The method of claim 21 , further comprising:

a script validator identifying multiple digital signatures in the batch file; and

the script validator attempting to validate all of the multiple digital signatures, wherein

the script engine processes the batch file only if all of the multiple digital signatures are validated.

28. The method of claim 21 , further comprising:

a script validator identifying multiple digital signatures in the batch file; and

the script validator attempting to validate at least one of the multiple digital signatures, wherein the script engine processes the batch file if any of the multiple digital signatures are validated.

29. The method of claim 21 , wherein the method is performed by a managed node in a computer network, and wherein the request is received from an administrative system for the computer network.

30. The method of claim 21 , wherein the request is received from an original equipment manufacturer system.

31. A computer system that is configured for simplifying the process of receiving updates, or new software, for a computer system, the computer system comprising:

a processor;

memory in electronic communication with the processor;

a script engine;

a here document utility;

instructions stored in the memory, the instructions being executable to:

receive by the script engine a request to process a script that comprises here document data;

receive the script by the script engine;

process the script by the script engine; and

in response to processing the script, launch by the script engine the here document utility, the here document utility reading the here document data from the script and writing the here document data to a file.

32. The computer system of claim 31 , wherein the script is a batch file.

33. The computer system of claim 31 , wherein the here document data is binary file data.

34. The computer system of claim 31 , further comprising a script validator, and wherein the instructions are further executable to:

identify by the script validator a digital signature in the script; and

attempt to validate by the script validator the digital signature, wherein the script engine processes the script only if the digital signature is validated.

35. A computer-readable medium stored on a storage medium, the computer-readable medium comprising executable instructions for simplifying the process of receiving updates, or new software, for a computer system, instructions being executable to:

receive by a script engine a request to process a script that comprises here document data;

receive the script by the script engine;

process the script by the script engine;

in response to processing the script, launch by the script engine a here document utility, the here document utility reading the here document data from the script and writing the here document data to a file.

36. The computer-readable medium of claim 35 , wherein the script is a batch file.

37. The computer-readable medium of claim 35 , wherein the here document data is binary file data.

38. The computer-readable medium of claim 35 , wherein the instructions are further executable to:

identify by a script validator a digital signature in the script; and

attempt by the script validator to validate the digital signature, wherein the script engine processes the script only if the digital signature is validated.

39. A script that simplifies the process of updating a computer system, comprising: here document data;

a launch command that instructs a script engine to launch a here document utility;

an input command that instructs the here document utility to read the here document data from the script; and

an output command that instructs the here document utility to write the here document data to a file.

40. The script of claim 39 , wherein the here document data is binary file data.

Assignments (33)
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY 14633493 WHICH WAS ENTERED INCORRECTLY AS 14633793 PREVIOUSLY RECORDED ON REEL 71176 FRAME 315. ASSIGNOR(S) HEREBY CONFIRMS THE FIRST LIEN NEWCO SECURITY AGREEMENT. Recorded Nov 10, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 073818/0515 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2025
From: IVANTI SECURITY HOLDINGS LLC
To: IVANTI, INC.
Reel/Frame 071958/0203 →
2025-1 SECOND LIEN SECURITY AGREEMENT Recorded May 5, 2025
From: IVANTI SECURITY INTERMEDIATE HOLDINGS LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 071176/0498 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2025
From: IVANTI, INC.
To: IVANTI SECURITY HOLDINGS LLC
Reel/Frame 071180/0690 →
FIRST LIEN NEWCO SECURITY AGREEMENT Recorded May 5, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 071176/0315 →
PARTIAL RELEASE OF SECURITY INTERESTS Recorded May 5, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; CHERWELL SOFTWARE, LLC
Reel/Frame 071176/0289 →
SECURITY INTEREST Recorded May 3, 2025
From: IVANTI SECURITY HOLDINGS LLC
To: ALTER DOMUS (US) LLC
Reel/Frame 071165/0164 →
RELEASE OF SECURITY INTEREST Recorded May 2, 2025
From: ALTER DOMUS (US) LLC
To: IVANTI SECURITY HOLDINGS LLC
Reel/Frame 071162/0130 →
NOTICE OF SUCCESSION OF AGENCY FOR SECURITY INTEREST AT REEL/FRAME 054665/0873 Recorded Apr 29, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: ALTER DOMUS (US) LLC, AS SUCCESSOR AGENT
Reel/Frame 071123/0386 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; IVANTI, INC.; MOBILEIRON, INC.; IVANTI US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 054665/0062 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; INVANTI, INC.; MOBILEIRON, INC.; INVANTI US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 054665/0873 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 41459/0387 Recorded Dec 1, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: CRIMSON CORPORATION
Reel/Frame 054637/0161 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 41052/0762 Recorded Dec 1, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: CRIMSON CORPORATION
Reel/Frame 054560/0857 →
MERGER Recorded Apr 19, 2018
From: CRIMSON CORPORATION
To: IVANTI, INC.
Reel/Frame 045983/0075 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 40182/0345 Recorded Jan 23, 2017
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 041463/0581 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 40183/0506 Recorded Jan 23, 2017
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 041463/0457 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jan 20, 2017
From: CRIMSON CORPORATION
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 041052/0762 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jan 20, 2017
From: CRIMSON CORPORATION
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 041459/0387 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Sep 29, 2016
From: CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 040182/0345 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Sep 29, 2016
From: CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 040183/0506 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT R/F 031029/0849 Recorded Sep 28, 2016
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 040171/0307 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT R/F 032333/0637 Recorded Sep 28, 2016
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 040171/0037 →
SECURITY AGREEMENT Recorded Feb 25, 2014
From: LANDESK SOFTWARE, INC.; CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 032333/0637 →
SECURITY AGREEMENT Recorded Aug 16, 2013
From: LANDESK GROUP, INC.; LANDSLIDE HOLDINGS, INC.; CRIMSON ACQUISITION CORP.; LANDESKSOFTWARE, INC.; CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 031029/0849 →
RELEASE OF SECURITY INTEREST Recorded Aug 12, 2013
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: CRIMSON CORPORATION
Reel/Frame 030993/0644 →
PATENT SECURITY AGREEMENT Recorded Jul 26, 2012
From: CRIMSON CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 028643/0847 →
RELEASE OF SECURITY INTEREST Recorded Jun 20, 2012
From: WELLS FARGO CAPITAL FINANCE, LLC
To: LANDESK GROUP, INC.; LANDSLIDE HOLDINGS, INC.; LANDESK SOFTWARE, INC.; CRIMSON ACQUISITION CORP.; CRIMSON CORPORATION
Reel/Frame 028413/0913 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 29, 2012
From: D.E. SHAW DIRECT CAPITAL PORTFOLIOS, L.L.C., AS AGENT
To: LANDESK SOFTWARE, INC.; CRIMSON CORPORATION
Reel/Frame 027783/0491 →
PATENT SECURITY AGREEMENT Recorded Sep 30, 2010
From: LAN DESK SOFTWARE, INC.; CRIMSON CORPORATION
To: D. E. SHAW DIRECT CAPITAL PORTFOLIOS, L.L.C. AS AGENT
Reel/Frame 025095/0982 →
PATENT SECURITY AGREEMENT Recorded Sep 28, 2010
From: LANDESK GROUP, INC.; LANDSLIDE HOLDINGS, INC.; LANDESK SOFTWARE, INC.; CRIMSON ACQUISITION CORP.; CRIMSON CORPORATION
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 025056/0391 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2010
From: LANDESK SOFTWARE LTD.
To: CRIMSON HOLDING CORP.
Reel/Frame 024823/0641 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2010
From: CRIMSON HOLDING CORP.
To: LANDESK GROUP LIMITED
Reel/Frame 024823/0649 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2010
From: LANDESK GROUP LIMITED
To: CRIMSON CORPORATION
Reel/Frame 024823/0656 →