IP Library Granted Patent US 12,373,150
Granted Patent B2
US 12,373,150 · App. 18/381,154 · Granted Jul 29, 2025

Secure printing in a virtualized computing environment

Inventors: Hui Yuan (Beijing, CN); Kun Shi (Beijing, CN); Zhiyu Li (Beijing, CN); Hui Zhang (Beijing, CN)
Assignee: Omnissa, LLC
G06F3/1297G06F3/1222G06F3/1238
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 12,373,150
App. No.
18/381,154
Granted
Jul 29, 2025
Kind
B2
Abstract

Secure printing may be performed in a virtual desktop infrastructure (VDI) in a virtualized computing environment. When a file is selected for secure printing, print data for the file is stored, and a corresponding entry is created in a metadata map. A message is sent to a user device to inform a user that the file is available for secure printing. The message may include a uniform resource locator (URL) link having a hash code corresponding to the stored print data. If the user accesses the URL link to request the secure printing, the hash code is retrieved from the URL link and compared against the entry in the metadata map. If there is a match between the hash code and the entry in the metadata map, the file is sent to a target local printer for printing.

Claims (64)

1. A method to perform secure printing in a virtualized computing environment that includes a host device, the method comprising:

receiving, from the host device, print data of a file;

determining whether secure printing is to be applied to the print data;

in response to determination that the secure printing is to be applied to the print data, sending a message to a user device to notify a user of the user device that the print data is available for the secure printing;

in response to receiving a print request from the user device to securely print the print data, comparing a hash code in the message to an entry in a metadata map; and

in response to the hash code matching the entry in the metadata map, performing the secure printing of the print data at a printer.

2. The method of claim 1 , wherein the print data is received by a first user device from the host device, and wherein sending the message to the user device comprises sending the message to a second user device.

3. The method of claim 1 , wherein sending the message to the user device includes sending a uniform resource locator (URL) link having the hash code to the user device.

4. The method of claim 1 , further comprising storing the received print data in a storage, wherein the entry in the metadata map comprises a key-value pair, wherein the hash code is the key, and wherein a path, in the storage where the print data is located, is the value.

5. The method of claim 1 , wherein the hash code is a first hash code, and wherein the method further comprises:

calculating a second hash code for the print data; and

comparing the first hash code to the second hash code,

wherein performing the secure printing of the print data is performed in response to the first hash code matching the second hash code.

6. The method of claim 1 , further comprising:

in response to determination that the secure printing is inapplicable to the print data, sending the print data to the printer for printing directly.

7. The method of claim 1 , further comprising:

storing multiple print data, received from the host device, in a storage, wherein multiple paths respectively correspond to locations in the storage where the multiple print data are stored;

determining a storage time for the print data in each of the multiple paths;

deleting any print data having a storage time that exceeds an expiration threshold; and

calculating the hash code for any print data having a storage time that is less than the expiration threshold, and placing the hash code and corresponding path of the print data into the metadata map.

8. A non-transitory computer-readable medium having instructions stored thereon, which in response to execution by one or more processors, cause the one or more processors to perform a method to perform secure printing in a virtualized computing environment that includes a host device, wherein the method comprises:

receiving, from the host device, print data of a file;

determining whether secure printing is to be applied to the print data;

in response to determination that the secure printing is to be applied to the print data, sending a message to a user device to notify a user of the user device that the print data is available for the secure printing;

in response to receiving a print request from the user device to securely print the print data, comparing a hash code in the message to an entry in a metadata map; and

in response to the hash code matching the entry in the metadata map, performing the secure printing of the print data at a printer.

9. The non-transitory computer-readable medium of claim 8 , wherein the print data is received by a first user device from the host device, and wherein sending the message to the user device comprises sending the message to a second user device.

10. The non-transitory computer-readable medium of claim 8 , wherein sending the message to the user device includes sending a uniform resource locator (URL) link having the hash code to the user device.

11. The non-transitory computer-readable medium of claim 8 , wherein the method further comprises:

storing the received print data in a storage, wherein the entry in the metadata map comprises a key-value pair, wherein the hash code is the key, and wherein a path, in the storage where the print data is located, is the value.

12. The non-transitory computer-readable medium of claim 8 , wherein the hash code is a first hash code, and wherein the method further comprises:

calculating a second hash code for the print data; and

comparing the first hash code to the second hash code,

wherein performing the secure printing of the print data is performed in response to the first hash code matching the second hash code.

13. The non-transitory computer-readable medium of claim 8 , wherein the method further comprises:

in response to determination that the secure printing is inapplicable to the print data, sending the print data to the printer for printing directly.

14. The non-transitory computer-readable medium of claim 8 , wherein the method further comprises:

storing multiple print data, received from the host device, in a storage, wherein multiple paths respectively correspond to locations in the storage where the multiple print data are stored;

determining a storage time for the print data in each of the multiple paths;

deleting any print data having a storage time that exceeds an expiration threshold; and

calculating the hash code for any print data having a storage time that is less than the expiration threshold, and placing the hash code and corresponding path of the print data into the metadata map.

15. A computing device to perform secure printing in a virtualized computing environment that includes a host device, the computing device comprising:

one or more processors; and

a non-transitory computer-readable medium having instructions stored thereon, which in response to execution by the one or more processors, cause the one or more processors to perform operations that include:

receive, from the host device, print data of a file;

determine whether secure printing is to be applied to the print data;

in response to determination that the secure printing is to be applied to the print data, send a message to a user device to notify a user of the user device that the print data is available for the secure printing;

in response to receiving a print request from the user device to securely print the print data, compare a hash code in the message to an entry in a metadata map; and

in response to the hash code matching the entry in the metadata map, perform the secure printing of the print data at a printer.

16. The computing device of claim 15 , wherein the print data is received by a first user device from the host device, and wherein the operations to send the message to the user device include operations to send the message to a second user device.

17. The computing device of claim 15 , wherein the operations to send the message to the user device includes operations to send a uniform resource locator (URL) link having the hash code to the user device.

18. The computing device of claim 15 , wherein the operations further include:

store the received print data in a storage, wherein the entry in the metadata map comprises a key-value pair, wherein the hash code is the key, and wherein a path, in the storage where the print data is located, is the value.

19. The computing device of claim 15 , wherein the operations to receive the printing-related properties for the local printer comprise operations to:

receive, by the simulator, one or more extensible markup language (XML) files that describe the printing-related properties.

20. The computing device of claim 15 , wherein the hash code is a first hash code, and wherein the operations further include:

calculate a second hash code for the print data; and

compare the first hash code to the second hash code,

wherein the secure printing of the print data is performed in response to the first hash code matching the second hash code.

21. The computing device of claim 15 , wherein the operations further include:

store multiple print data, received from the host device, in a storage, wherein multiple paths respectively correspond to locations in the storage where the multiple print data are stored;

determine a storage time for the print data in each of the multiple paths;

delete any print data having a storage time that exceeds an expiration threshold; and

calculate the hash code for any print data having a storage time that is less than the expiration threshold, and place the hash code and corresponding path of the print data into the metadata map.

Assignments (4)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 25, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067239/0402 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2023
From: YUAN, HUI; SHI, KUN; LI, ZHIYU; ZHANG, HUI
To: VMWARE, INC.
Reel/Frame 065259/0210 →