IP Library Granted Patent US 9,948,632
Granted Patent B2
US 9,948,632 · App. 14/923,840 · Granted Apr 17, 2018

Sharing data between sandboxed applications with certificates

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 9,948,632
App. No.
14/923,840
Granted
Apr 17, 2018
Kind
B2
Abstract

Disclosed are various approaches for sharing data between sandboxed applications with certificates. A request for a certificate is received from a client device. The certificate is then generated, wherein the certificate comprises data to be shared between applications executing on the client device. A response is sent to the client device, wherein the response includes the certificate.

Claims (43)

1. A system, comprising:

a client device comprising a first application executing in a first sandbox and a second application executing in a second sandbox;

a computing device in data communication with the client device, the computing device comprising a processor and a memory; and

machine-readable instructions stored in the memory that, when executed by the processor, cause the computing device to at least:

receive a request for a certificate from the first application executing in the first sandbox on the client device, the request containing a message generated by the first application to be delivered to the second application executing in the second sandbox on the client device;

generate the certificate;

insert the message into the certificate;

send a response to the client device, wherein the response includes the certificate; and

instruct the client device to store the certificate in a user certificate store or a machine certificate store;

wherein the second client application is configured to cause the client device to parse the certificate to identify the message inserted into the certificate.

2. The system of claim 1 , wherein the machine-readable instructions further cause the computing device to at least send a message to the client device, wherein the message directs the client device to send the request to the computing device.

3. The system of claim 1 , wherein the machine-readable instructions further cause the computing device to at least encrypt the message inserted into the certificate.

4. The system of claim 3 , wherein the machine readable instructions that cause the computing device to at least encrypt the message inserted into the certificate further comprise machine readable instructions that cause the computing device to encrypt the message using a symmetric encryption key shared by the first application and the second application.

5. The system of claim 1 , wherein the request and the response comply with a version of the simple certificate enrollment protocol (SCEP).

6. The system of claim 1 , wherein the certificate is an X.509 certificate and the message is inserted into a public key field of the X.509 certificate.

7. The system of claim 1 , wherein the message from the first application to the second application comprises an application programming interface (API) call.

8. A method, comprising:

sending, from a first application executing in a first sandbox on a first computing device, a request for a certificate, the request comprising a message generated by the first application to be delivered to a second application executing in a second sandbox on the first computing device;

receiving, with a second computing device, the request for the certificate from the first application executing on the first computing device;

generating, with the second computing device, the certificate;

inserting, with the second computing device, the message into the certificate;

sending, with the second computing device, a response to the client device, wherein the response includes the certificate;

instructing, with the second computing device, the first computing device to store the certificate in a user certificate store or a machine certificate store; and

parsing, with the second application executing on the first computing device, the certificate to identify the message inserted into the certificate.

9. The method of claim 8 , wherein the message comprises a first message and the method further comprises sending a second message from the second computing device to the first computing device, wherein the second message directs the client device to send the request to the second computing device.

10. The method of claim 8 , further comprising, with the second computing device, encrypting the message inserted into the certificate.

11. The method of claim 10 , wherein encrypting the message inserted into the certificate further comprises encrypting the message using a symmetric encryption key shared by the first application and the second application.

12. The method of claim 8 , wherein the request and the response comply with a version of the simple certificate enrollment protocol (SCEP).

13. The method of claim 8 , wherein the certificate is an X.509 certificate and the message is inserted into a public key field of the X.509 certificate.

14. The method of claim 8 , wherein the message from the first application to the second application comprises a list of applications currently installed on the first computing device.

15. A plurality of non-transitory computer readable mediums, comprising: a non-transitory computer readable medium comprising a first set of machine readable instructions that, when executed by a first processor of a computing device, cause the computing device to at least:

establish data communication with a first application executing in a first sandbox on a client device and a second application executing in a second sandbox on the client device;

receive a request for a certificate from the first application executing in the first sandbox on the client device, the request containing a message generated by the first application to be delivered to second application executing in the second sandbox on the client device;

generate the certificate;

insert the message into the certificate;

send a response to the client device, wherein the response includes the certificate; and

instruct the client device to store the certificate in a user certificate store or a machine certificate store; and

a second non-transitory computer readable medium comprising a second set of machine readable instructions embodying the second application executing on the client device that, when executed by a second processor of the client device, cause the client device to parse the certificate to identify the message inserted into the certificate.

16. The plurality of non-transitory computer readable mediums of claim 15 , wherein the message comprises a first message and the machine readable instructions further cause the computing device to at least send a second message to the client device, wherein the second message directs the client device to send the request to the application.

17. The plurality of non-transitory computer readable mediums of claim 15 , wherein the machine readable instructions further cause the computing device to at least encrypt the message inserted into the certificate.

18. The plurality of non-transitory computer readable mediums of claim 15 , wherein the request and the response comply with a version of the simple certificate enrollment protocol (SCEP).

19. The plurality of non-transitory computer readable mediums of claim 15 , wherein the certificate is an X.509 certificate and the message is inserted into a public key field of the X.509 certificate.

20. The plurality of non-transitory computer readable mediums of claim 15 , wherein the message from the first application to the second application comprises an event notification from the first application to the second application.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: AIRWATCH LLC
To: OMNISSA, LLC
Reel/Frame 068327/0670 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2015
From: MURTHY, VARUN; REGULA, KALYAN; SHANTHARAM, SHRAVAN; ROSZAK, JASON
To: AIRWATCH LLC
Reel/Frame 036921/0293 →