IP Library › Granted Patent US 12,199,953
Granted Patent B2
US 12,199,953 · App. 17/540,883 · Granted Jan 14, 2025

Systems and methods for encrypted browser cache

Inventors: Christopher Fleck (Fort Lauderdale, FL); Abhishek Chauhan (Santa Clara, CA)
Assignee: Citrix Systems, Inc.
H04L63/0428G06F12/1408G06F2212/1052
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,199,953
App. No.
17/540,883
Filed
Dec 2, 2021
Granted
Jan 14, 2025
Kind
B2
Art Unit
2495
USPC
713/168
Abstract

Embodiments described include systems and methods of an encrypted cache. An embedded browser of a client application executing on a client device may provide access to a network application accessed via the client application. The embedded browser may detect an event at the client device that causes the network application to send or request application data. The embedded browser may access a copy of the application data from encrypted cache of the embedded browser. The encrypted cache may be maintained for the user and store application data for network application(s) accessed by the user. The embedded browser may use the cached application data for establishing or updating a user interface of the network application for display at the client device.

Claims (29)

1. A method comprising:

establishing, by the client device, one of a first session and a second session using a browser embedded in a client application of a client device;

encrypting, by the client device, data received from the first session of a user with an application hosted on a remote computing device, the data being stored encrypted in a cache according to the user;

detecting, by the client device, an event on the client device that is to cause the application to use the encrypted data in the second session instead of requesting or sending other application data during the second session; and

using, by the client device responsive to detecting the event, in the second session, a copy of the encrypted data to display a user interface of the application for display at the client device.

2. The method of claim 1 , further comprising encrypting the data for storage in the cache based at least on the application or a user associated with one of the client device or the application.

3. The method of claim 1 , further comprising accessing, by the client device responsive to detecting the event, the copy of the data from the cache.

4. The method of claim 1 , wherein the copy of the data is decrypted from the encrypted data.

5. The method of claim 1 , wherein the event is to cause the client device to request or send the other data during the second session with the application.

6. The method of claim 1 , further comprising using, by the client device, the copy of the data to provide or update the user interface of the application for display at the client device.

7. A system comprising:

a client device having a cache and one or more processors configured to:

establish one of a first session and a second session using a browser embedded in a client application of the client device;

encrypt data received from the first session of a user with an application hosted on a remote computing device, the data being stored encrypted in a cache, the data encrypted according to the user;

detect an event on the client device that is to cause the application to use the encrypted data in the second session instead of requesting or sending other application data during the second session; and

use, responsive to detecting the event, in the second session, a copy of the encrypted data to display a user interface of the application for display at the client device.

8. The system of claim 7 , wherein the client device is further configured to encrypt the data for storage in the cache based at least on the application or a user associated with one of the client device or the application.

9. The system of claim 7 , wherein the client device is further configured to access, responsive to detecting the event, the copy of the data from the cache.

10. The system of claim 7 , wherein the copy of the data is decrypted from the encrypted data.

11. The system of claim 7 , wherein the client device is further configured to use the copy of the data to provide or update the user interface of the application for display at the client device.

12. A non-transitory computer readable medium storing program instructions for causing one or more processors to:

establish one of a first session and a second session using a browser embedded in a client application of a client device;

encrypt data received from the first session of a user with an application hosted on a remote computing device, the data being stored encrypted in a cache, the data encrypted according to the user;

detect an event on the client device that is to cause the application to use the encrypted data in the second session instead of requesting or sending other application data during the second session; and

use, responsive to detecting the event, in the second session, a copy of the encrypted data to display a user interface of the application for display at the client device.

13. The non-transitory computer readable medium of claim 12 , wherein the program instructions further cause the one or more processors to encrypt the data for storage in the cache based at least on the application or a user associated with one of the client device or the application.

14. The non-transitory computer readable medium of claim 12 , wherein the program instructions further cause the one or more processors to access, responsive to detecting the event, the copy of the data from the cache, the copy of the data being decrypted from the encrypted data.

15. The non-transitory computer readable medium of claim 12 , wherein the event is to cause the client device to request or send the other application data during the second session with the application.

16. The non-transitory computer readable medium of claim 12 , wherein the program instructions further cause the one or more processors to use the copy of the data to provide or update the user interface of the application for display at the client device.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2021
From: FLECK, CHRISTOPHER; CHAUHAN, ABHISHEK
To: CITRIX SYSTEMS, INC.
Reel/Frame 058273/0393 →
Continuity (2)
Continuation 16183190 · Nov 7, 2018
Related Publication 20220094672A1 · Mar 24, 2022
References Cited (18)
US 6988206B1 · Alcalay · 2006 [cited by examiner]
US 8407590B1 · Shamis · 2013 [cited by examiner]
US 10581819B1 · Lototskiy · 2020 [cited by examiner]
US 20090144546A1 · Jancula et al. · 2009 [cited by applicant]
US 20100235750A1 · Noland · 2010 [cited by applicant]
US 20130282683A1 · Kohavi et al. · 2013 [cited by applicant]
US 20140298348A1 · Qureshi · 2014 [cited by examiner]
US 20150089287A1 · Jayakumar et al. · 2015 [cited by applicant]
US 20170099149A1 · Eber · 2017 [cited by examiner]
US 20180124027A1 · Venkiteswaran · 2018 [cited by examiner]
WO WO2014047168A1 · 2014 [cited by applicant]
Extended European Search Report for EP Appl. No. 19207300.5, dated Jan. 5, 2022. [cited by applicant]
Examination Report on EP Appl. No. 19207300.5 dated Dec. 3, 2020. [cited by applicant]
Extended Search Report for EP Appl. No. 19207300.5 dated Mar. 23, 2020. [cited by applicant]
Final Office Action on U.S. Appl. No. 16/183,190 dated Jan. 6, 2021. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 16/183,190 dated Apr. 29, 2021. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 16/183,190 dated Aug. 10, 2020 (13 pages). [cited by applicant]
Notice of Allowance on U.S. Appl. No. 16/183,190 dated Aug. 9, 2021. [cited by applicant]