IP Library Granted Patent US 8,171,301
Granted Patent B2
US 8,171,301 · App. 12/247,210 · Granted May 1, 2012

Method and system for integrated securing and managing of virtual machines and virtual appliances

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,171,301
App. No.
12/247,210
Granted
May 1, 2012
Kind
B2
Abstract

Method and system for the integrated securing and managing of virtual machines and virtual appliances are presented. Sealing the virtual appliance at the computer of a sender, verifying authenticity of the sender at a recipient computer and managing the execution of the VA are performed in a seamless fashion.

Claims (86)

1. A method for integrated securing and managing a virtual appliance (VA) comprising an operating system and software applications, the method comprising:

(a1) sealing the VA at a sender computer, including attaching to the VA a signature of a sender and policies governing usage of the VA to generate a sealed VA;

(b1) verifying authenticity of the sender upon receiving the sealed VA at a recipient computer; and

(c1) managing execution of the VA on the recipient computer in accordance with the policies;

whereby preserving the integrity of the VA and protecting the VA from unauthorized use.

2. The method of claim 1 , further comprising attaching a Delta file to the VA, the Delta file including changes made to the VA on the sender computer, the step being performed before the step (a1).

3. The method of claim 2 , wherein the step (a1) further comprises:

(a3) creating a signature uniquely identifying the sender;

(b3) creating policies for managing ownership of the VA;

(c3) creating policies for managing operations performed by the VA; and

(d3) producing the sealed VA by attaching the signature and the policies generated in the steps (b3) and (c3) to the VA, and delivering the sealed VA to a recipient to be received at the recipient computer.

4. The method of claim 3 , wherein the step (a3) further comprises:

(a4) using cryptographic keys, comprising a private key and a public key, at both the sender and the recipient;

(b4) determining a hash of contents of a file containing the VA; and

(c4) encrypting the hash with the private key of the recipient.

5. The method as described in claim 4 , further comprising encrypting the sealed VA for providing further security.

6. The method of claim 5 , wherein the encrypting further comprises:

(a6) using a one-time symmetric key for performing symmetric cryptography in securing the sealed VA;

(b6) encrypting the sealed VA with the one-time symmetric key; and

(c6) encrypting the one-time symmetric key with the public key of the recipient.

7. The method of claim 6 , wherein the step (b1) further comprises:

(a7) verifying the signature uniquely identifying the sender by using the public key of the sender;

(b7) retrieving the hash generated in the step (b4);

(c7) determining a hash of contents of the file containing the VA at the recipient computer; and

(d7) comparing the hash determined in the step (c7) with the hash retrieved in step (b7) for verifying an identity of the sender.

8. The method as described in claim 7 , further comprising the following steps, the steps being performed before the step (a7):

(a8) decrypting the one-time symmetric key with the private key of the recipient; and

(b8) decrypting the sealed VA using the one-time symmetric key obtained in step (a8).

9. The method of claim 2 , wherein the step (c1) further comprises:

(a9) loading the VA at the recipient computer; and

(b9) using the VA in accordance with the policies created in the steps (b3) and (c3).

10. The method of claim 9 , further comprising applying the changes in the Delta file to the VA, the step being performed after the step (a9).

11. The method of claim 9 , wherein the step (a9) further comprises:

(a11) verifying accessibility of files containing the operating system and the software applications;

(b11) loading contents of the files on the recipient computer; and

(c11) creating a new Delta file for recording changes made to the VA on the recipient computer.

12. A method of claim 11 , wherein the step (b9) further comprises:

(a12) executing the software applications in the VA in one of the following modes:

(a12-i) read-only mode when no changes are allowed to be made to the VA on the recipient computer; or

(a12ii) read and write mode when changes are allowed to be made to the VA on the recipient computer; and

(b12) recording changes made in the new Delta file during the executing of the step (a12).

13. The method of claim 12 , further comprising:

(a24) generating a signature of the recipient;

(b24) saving the VA; and

(c24) sealing the VA at the recipient computer including attaching the signature, the policies and the new Delta file to the VA.

14. A system for securing a virtual appliance (VA), comprising an operating system and software applications, the system comprising:

a processor and a non-transitory computer readable storage medium, storing computer executable instructions to be executed by the processor, forming:

(a13) a sealing module, attaching to the VA a signature of a sender and policies, governing usage of the VA, to generate a sealed VA at a sender computer;

(b13) a security enforcement module, verifying authenticity of the sender upon receiving the sealed VA at a recipient computer;

(c13) an execution management module, managing execution of the VA on the recipient computer in accordance with the policies; and

(d13) metadata module, including metadata, comprising resource requirement data and runtime data for the VA.

15. The system of claim 14 , further comprising a first Delta file handler module, recording changes made to the VA on the sender computer and generating a Delta file, including said changes.

16. The system of claim 15 , wherein the sealing module (a13) further comprises:

(a15) a security provisioning module, creating a signature uniquely identifying the sender;

(b15) a policy generation module, creating policies for managing ownership of the VA; and

(c15) a delivery module, producing the sealed VA, including attaching the signature and the policies to the VA, and delivering the sealed VA to a recipient.

17. The system of claim 16 , wherein the security provisioning module (a15) further comprises:

(a16) a hash generation module, creating a hash of contents of a file containing the VA; and

(b16) a signature generation module, encrypting the hash with a private key of the recipient.

18. The system of claim 17 , wherein the signature generation module (b16) further comprises a symmetric encryption module, encrypting the sealed VA with a one-time symmetric key, and encrypting the one-time symmetric key with the public key of the recipient, thereby providing further security.

19. The system of claim 18 , wherein the security enforcement module (b13) further comprises:

(a18) a signature verification module, verifying the signature; and

(b18) a hash verification module, determining a hash of contents of the file containing the VA at the recipient computer and comparing with the hash generated by the hash generation module (a16).

20. The system of claim 19 , wherein the signature verification module further comprises a symmetric decryption module, decrypting the sealed VA generated by the symmetric encryption module.

21. The system of claim 15 , wherein the execution management module (c13) further comprises a policy enforcement module, using the VA in accordance with the policies.

22. The system of claim 21 , wherein the execution management module further comprises a second Delta file handler module, recording changes made to the VA on the recipient computer and generating a new Delta file, including said changes.

23. The system of claim 21 , wherein the policy enforcement module further comprises a rules engine, processing rules describing policies for managing ownership of the VA and policies for managing operations performed by the VA using the metadata of the metadata module (d13).

24. A non-transitory computer readable medium, having a computer readable instructions stored thereon for execution by a processor to perform the following:

(a23) sealing the VA at a sender computer, including attaching to the VA a signature of a sender and policies governing usage of the VA to generate a sealed VA:

(b23) verifying authenticity of the sender upon receiving the sealed VA at a recipient computer: and (c23) managing execution of the VA on the recipient computer in accordance with the policies:

thereby preserving the integrity of the VA and protecting the VA from unauthorized use.

25. A system for integrated securing and managing a virtual appliance (VA) comprising an operating system and software applications, the system comprising:

a processor;

a non-transitory computer readable storage medium, storing computer executable instructions for execution by the processor, causing the processor to:

seal the VA at a sender computer, including attaching to the VA a signature of a sender and policies governing usage of the VA to generate a sealed VA;

verify authenticity of the sender upon receiving the sealed VA at a recipient computer; and

manage execution of the VA on the recipient computer in accordance with the policies.

26. The system of claim 25 , wherein the computer readable instructions further cause the processor to attach a Delta file to the VA, the Delta file including changes made to the VA on the sender computer before the VA has been sealed.

27. The system of claim 26 , wherein the computer readable instructions further cause the processor to:

load the VA at the recipient computer; and

create policies for managing ownership of the VA and operations performed by the VA.

28. The system of claim 27 , wherein the computer readable instructions further cause the processor to apply the changes in the Delta file to the VA after the VA has been loaded at the recipient computer.

29. The system of claim 27 , wherein the computer readable instructions further cause the processor to:

verify accessibility of files containing the operating system and the software applications;

load contents of the files on the recipient computer; and

create a new Delta file for recording changes made to the VA on the recipient computer.

Assignments (20)
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS - REEL/FRAME 066615-0824 Recorded Aug 22, 2025
From: JEFFERIES FINANCE LLC
To: SNOW SOFTWARE, INC.
Reel/Frame 072527/0879 →
MERGER Recorded Nov 22, 2024
From: SNOW SOFTWARE US, INC.
To: FLEXERA SOFTWARE LLC
Reel/Frame 069373/0957 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Apr 18, 2024
From: JEFFERIES FINANCE LLC
To: SNOW SOFTWARE, INC.
Reel/Frame 067165/0214 →
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Feb 16, 2024
From: SNOW SOFTWARE, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 066615/0824 →
PATENT SECURITY AGREEMENT (SECOND LIEN) Recorded Feb 16, 2024
From: SNOW SOFTWARE, INC.
To: JEFFERIES FINANCE LLC, AS SECOND LIEN COLLATERAL AGENT
Reel/Frame 066619/0340 →
RELEASE OF SECURITY INTEREST Recorded Feb 15, 2024
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: SNOW SOFTWARE, INC.
Reel/Frame 066471/0027 →
RELEASE OF SECURITY INTEREST Recorded Jul 8, 2021
From: OBSIDIAN AGENCY SERVICES, INC.
To: EMBOTICS CORPORATION
Reel/Frame 056792/0547 →
PATENT SECURITY AGREEMENT Recorded Jul 7, 2021
From: SNOW SOFTWARE, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 056784/0335 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2021
From: EMBOTICS ULC
To: SNOW SOFTWARE, INC.
Reel/Frame 056746/0317 →
CHANGE OF NAME Recorded Jul 2, 2021
From: EMBOTICS CORPORATION
To: EMBOTICS ULC
Reel/Frame 056745/0413 →
AMALGAMATION Recorded Jul 2, 2021
From: EMBOTICS CORPORATION; KEYSTRIKE CANADA INC.
To: EMBOTICS CORPORATION
Reel/Frame 056756/0440 →
SECURITY INTEREST Recorded Dec 12, 2019
From: EMBOTICS CORPORATION
To: OBSIDIAN AGENCY SERVICES, INC., AS COLLATERAL AGENT
Reel/Frame 051262/0731 →
CHANGE OF NAME Recorded Dec 11, 2019
From: 1229377 B.C. LTD
To: EMBOTICS CORPORATION
Reel/Frame 051256/0529 →
RELEASE OF SECURITY INTEREST Recorded Dec 11, 2019
From: CANADIAN IMPERIAL BANK OF COMMERCE
To: EMBOTICS CORPORATION
Reel/Frame 051247/0045 →
MERGER AND CHANGE OF NAME Recorded Dec 11, 2019
From: EMBOTICS CORPORATION; 1229377 B.C. LTD.
To: 1229377 B.C. LTD
Reel/Frame 051256/0371 →
SECURITY INTEREST Recorded Dec 12, 2018
From: EMBOTICS CORPORATION
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 047750/0272 →
CHANGE OF ADDRESS Recorded Jan 19, 2017
From: EMBOTICS CORPORATION
To: EMBOTICS CORPORATION
Reel/Frame 041420/0583 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR ADDRESS PREVIOUSLY RECORDED ON REEL 025711 FRAME 0741. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECTION OF THE ASSIGNOR ADDRESS FROM "511 LEGGET DRIVE" TO "411 LEGGET DRIVE". Recorded Jul 30, 2012
From: EMBOTICS CORPORATION
To: EMBOTICS CORPORATION
Reel/Frame 028680/0752 →
CHANGE OF COMPANY ADDRESS Recorded Jan 28, 2011
From: EMBOTICS CORPORATION
To: EMBOTICS CORPORATION
Reel/Frame 025711/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2008
From: SEGUIN, JEAN-MARC L.; LITKEY, JAY M.; LYNCH, DAVID M.; JAMENSKY, MARK
To: EMBOTICS CORPORATION
Reel/Frame 021646/0938 →