US 12,218,915 B2
WAN optimization for encrypted data traffic using fully homomorphic encryption
Igor Golikov, Kfar Saba (IL); Aran Bergman, Givatayim (IL); Lior Gal, Yoqneam Illit (IL); Avishay Yanai, Petach-Tikva (IL); Israel Cidon, San Francisco, CA (US); Alex Markuze, Rosh HaAyin (IL); and Eyal Zohar, Shimshit (IL)
Assigned to VMware LLC, Palo Alto, CA (US)
Filed by VMware LLC, Palo Alto, CA (US)
Filed on Dec. 6, 2022, as Appl. No. 18/076,328.
Prior Publication US 2024/0187381 A1, Jun. 6, 2024
Int. Cl. H04L 9/40 (2022.01); H04L 9/14 (2006.01)
CPC H04L 63/0272 (2013.01) [H04L 63/0428 (2013.01); H04L 9/14 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method for WAN (wide area network) optimization for a WAN that connects a first site that sends a data stream to a second site, the method comprising:
at a gateway router deployed to a public cloud:
receiving, in the data stream, an optimized, encrypted file and a corresponding set of encrypted indices comprising unique identifiers that categorize the optimized, encrypted file;
using the set of encrypted indices and a particular encryption key to decompose the optimized, encrypted file and to identify (i) a set of full encrypted segments that comprise a first portion of the encrypted file and (ii) a set of encrypted values that comprise a second portion of the encrypted file, wherein each encrypted value in the set of encrypted values maps to a respective segment stored in a segment cache at the second site;
for each encrypted value in the set of encrypted values, retrieving the respective segment from the segment cache; and
using the identified set of full segments and set of retrieved segments to reconstruct the encrypted file;
wherein the gateway router comprises a first gateway router and the public cloud comprises a first public cloud, wherein receiving the optimized, encrypted file from the first site comprises receiving the optimized, encrypted file from a second gateway router that is deployed to a second gateway cloud to perform a set of WAN optimization operations on the data stream originating from a source device at the first site and to forward the optimized data stream to a destination device at the second site.