IP Library Granted Patent US 11,431,502
Granted Patent B2
US 11,431,502 · App. 17/025,199 · Granted Aug 30, 2022

Enhanced token transfer

Inventors: Thierry Duchastel (Cooper City, FL); Harold Teramoto (Margate, FL); Vikas Nambiar (Pembroke Pines, FL); Ashish Gujarathi (Parkland, FL)
Assignee: Citrix Systems, Inc.
H04L9/3213G06F16/955H04L9/0825H04L9/0891H04L9/0894
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 11,431,502
App. No.
17/025,199
Filed
Sep 18, 2020
Granted
Aug 30, 2022
Kind
B2
Art Unit
2435
USPC
713/168
Abstract

Methods and systems for token transfer are described herein. A remote computing device may receive, from a mobile computing device, a public key of a public-private key pair. The public key may be associated with a first application of the mobile computing device. The first application may be configured to send credentials to a second application of the mobile computing device. The second application may be isolated from other applications executable on the mobile computing device. The remote computing device may receive, from the first application, a token. The token may have been previously issued to the first application and may have been encrypted, using the public key, by the first application. The remote computing device may send, to the second application, the token to enable the second application to authenticate with a plurality of services that interact with the second application.

Claims (47)

1. A method comprising:

receiving, by a remote computing device and from a mobile computing device, a public key of a public-private key pair, wherein a first application of the mobile computing device is configured to send credentials to a second application of the mobile computing device, wherein the second application is isolated from other applications executable on the mobile computing device, and wherein the public key was generated by the second application based on a characteristic of the mobile computing device;

receiving, from the first application, a token, wherein the token was generated based on authentication, using a single set of credentials, of the first application and was encrypted, using the public key, by the first application; and

sending, to the second application, the token to enable the second application to authenticate, with the single set of credentials, with a plurality of services that interact with the second application.

2. The method of claim 1 , wherein sending the public key comprises:

determining, based on the characteristic of the mobile computing device, that the first application and the second application execute on a same computing device.

3. The method of claim 1 , further comprising:

storing the public key in a database, wherein sending the public key comprises querying, using the characteristic of the mobile computing device, the database to retrieve the public key.

4. The method of claim 1 , wherein receiving the public key comprises:

receiving, from a management application of the mobile computing device, the public key, the management application configured to manage the second application.

5. The method of claim 1 , wherein sending the public key comprises:

sending, to the first application, a Uniform Resource Locator (URL) configured to provide the public key.

6. The method of claim 1 , further comprising:

storing the public key in storage of the remote computing device; and

deleting the public key from storage of the remote computing device after a period of time.

7. The method of claim 1 , further comprising:

storing the public key in storage of the remote computing device; and

deleting, after sending the token, the public key from storage of the remote computing device.

8. The method of claim 1 , wherein the characteristic of the mobile computing device comprises a unique identifier of the mobile computing device.

9. A method comprising:

receiving, by a remote computing device and from a mobile computing device, data associated with a first application of the mobile computing device and a second application of the mobile computing device, wherein the second application is isolated from other applications executable on the mobile computing device;

causing the second application to generate a public-private key pair based on a characteristic of the mobile computing device;

receiving, from the first application, a token, wherein the token was generated based on authentication, using a single set of credentials, of the first application and was encrypted, using a public key of the public-private key pair, by the first application; and

sending, to the second application, the token to enable the second application to authenticate, with the single set of credentials, with a plurality of services that interact with the second application.

10. The method of claim 9 , wherein causing the second application to generate the public-private key pair is based on determining, based on the characteristic of the mobile computing device, that the first application and the second application execute on a same computing device.

11. The method of claim 9 , wherein receiving the public key comprises:

receiving, from a mobile computing device management application configured to manage the second application, the public key.

12. The method of claim 9 , wherein sending the public key to the first application comprises:

sending, to the first application, a Uniform Resource Locator (URL) configured to provide the public key.

13. The method of claim 9 , further comprising:

storing the public key in storage of the remote computing device; and

deleting the public key from storage of the remote computing device after a predetermined time period.

14. The method of claim 9 , further comprising:

storing the public key in storage of the remote computing device; and

deleting, after sending the token, the public key from storage of the remote computing device.

15. The method of claim 9 , wherein the data is configured to cause the second application to generate the public-private key pair.

16. A method comprising:

providing, by a mobile computing device, data to a remote computing device, the data associated with a first application of the mobile computing device and a second application of the mobile computing device, and the second application being isolated from other applications executable on the mobile computing device;

providing, by the mobile computing device, a public key, of a public-private key pair, to the remote computing device, the public-private key pair being generated by the second application and with use of a characteristic of the mobile computing device;

receiving, by the mobile computing device, the public key from the remote computing device, the public key being verifiable by the first application to determine that the public key was generated with use of the characteristic of the mobile computing device;

receiving, by the mobile computing device, a token from the remote computing device, the token being generated based on authentication, using a single set of credentials, of the first application and being encrypted, using the public key, by the first application; and

executing, by the mobile computing device, the second application with use of the received token to enable the second application to authenticate, with the single set of credentials, with a plurality of services that interact with the second application.

17. The method of claim 16 , wherein providing the public key comprises providing the public key using a mobile computing device management application.

18. The method of claim 16 , wherein the characteristic of the mobile computing device comprises a unique identifier of the mobile computing device.

19. The method of claim 16 , wherein executing the second application comprises:

decrypting, using at least a portion of the public-private key pair, the token.

20. The method of claim 16 , wherein the token corresponds to authentication of a user of the mobile computing device based on the single set of credentials.

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 →
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 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 →
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 →
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 →
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 Oct 14, 2020
From: DUCHASTEL, THIERRY; TERAMOTO, HAROLD; NAMBIAR, VIKAS; GUJARATHI, ASHISH
To: CITRIX SYSTEMS, INC.
Reel/Frame 054050/0818 →