IP Library Granted Patent US 10,129,024
Granted Patent B2
US 10,129,024 · App. 15/804,861 · Granted Nov 13, 2018

Encrypted file storage

Inventors: Erich Stuntebeck (Marietta, GA); Ramani Panchapakesan (Bangalore, IN); Akshay Laxminarayan (Bangalore, IN); Kumar Ashish (Bangalore, IN)
Assignee: AIRWATCH LLC
H04L9/0894G06F17/30091G06F17/30115G06F17/30138G06F17/30194G06F17/30221G06F21/602G06F21/6209G06F21/6218H04L9/14H04L63/0428H04L67/1097H04L67/303G06F8/61
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 10,129,024
App. No.
15/804,861
Granted
Nov 13, 2018
Kind
B2
Abstract

Various systems facilitate encrypted file storage. A client device may generate an encrypted version of a file. The client device may obtain at least one reference to at least one storage location for the encrypted version of the file. The client device may cause the encrypted version of the file to be store at the at least one storage location using the at least one reference to the at least one storage location.

Claims (85)

1. A method of storing files comprising:

sending, to an index server from a file management application on a client device, a request to store a first file on behalf of a user of the client device associated with access credentials of a user account in a cloud data storage provider;

receiving, by the file management application from the index server, a first storage location identified by the index server for the first file at the cloud data storage provider that is different from the index server;

encrypting, by the file management application, the first file based on a first key associated with the first storage location, the first key being different than the access credentials for the cloud data storage provider; and

sending by the file management application an encrypted version of the first file to the identified first storage location at the cloud data storage provider.

2. The method of claim 1 , further comprising:

sending, to the index server, a request from the client device to access the encrypted file;

receiving, from the index server, the first location for retrieving the encrypted file; and

obtaining the encrypted file from the first location by transmitting access credentials to the cloud storage provider.

3. The method of claim 2 , further comprising:

receiving multiple keys, including the first key, at the client device in response to the request to access the encrypted file; and

decrypting the encrypted file using the multiple keys.

4. The method of claim 1 , further comprising:

transmitting the first key to the index server from the client device;

requesting by the client device, access to the file; and

receiving a version of the first key for encrypting the encrypted first file.

5. The method of claim 1 , further comprising:

deleting, by the file management application, the first key from the client device after the encrypting.

6. The method of claim 1 , further comprising:

sending, from the client device to the index server, a request to store a second file;

receiving a second storage location unassociated with the cloud data storage provider,

wherein the second storage location is at the index server;

encrypting the second file based on a second key associated with the second storage location; and

sending, from the client device, the encrypted second file to second storage location using access credentials associated with the second storage location.

7. The method of claim 1 , wherein the encrypted version of the first file includes at least first and second partitions, the method further comprising:

requesting access to the encrypted version of the first file;

receiving, from the index server, first and second locations corresponding to the first and second partitions, wherein the first location is at the cloud storage provider;

receiving, from the index server, the first key for decrypting the first partition and a second key for decrypting the second partition; and

combining the first and second partitions, by the file management application, to provide access to the first file.

8. A system for storing files, comprising:

a non-transitory, computer-readable medium containing instructions; and

a hardware processor that executes the instructions for a file management

service at a client device to perform stages comprising:

sending, to an index server from the file management service, a request to store a first file on behalf of a user of the client device associated with access credentials of a user account in a cloud data storage provider;

receiving, by the file management application from the index server, a first storage location identified by the index server for the first file at the cloud data storage provider that is different from the index server;

encrypting, by the file management service, the first file based on a first key associated with the first storage location, the first key being different than the access credentials for the cloud data storage provider; and

sending by the file management application an encrypted version of the first file to the identified first storage location at the cloud data storage provider.

9. The system of claim 8 , the stages further comprising:

sending, to the index server, a request from the client device to access the encrypted file;

receiving, from the index server, the first location for retrieving the encrypted file; and

obtaining the encrypted file from the first location by transmitting access credentials to the cloud storage provider.

10. The system of claim 9 , the stages further comprising:

receiving multiple keys, including the first key, at the client device in response to the request to access the encrypted file; and

decrypting the encrypted file using the multiple keys.

11. The system of claim 8 , the stages further comprising:

transmitting the first key to the index server from the client device;

requesting, by the client device, access to the file; and

receiving a version of the first key for decrypting the encrypted first file.

12. The system of claim 8 , the stages further comprising:

deleting, by the file management service, the first key from the client device after the encrypting.

13. The system of claim 8 , the stages further comprising:

sending, from the client device to the index server, a request to store a second file;

receiving a second storage location unassociated with the cloud data storage provider,

wherein the second storage location is at the index server;

encrypting the second file based on a second key associated with the second storage location; and

sending, from the client device, the encrypted second file to second storage location using access credentials associated with the second storage location.

14. The system of claim 8 , wherein the encrypted version of the first file includes at least first and second partitions, the stages further comprising:

requesting access to the encrypted version of the first file;

receiving, from the index server, first and second locations corresponding to the first and second partitions, wherein the first location is at the cloud storage provider;

receiving, from the index server, the first key for decrypting the first partition and a second key for decrypting the second partition; and

combining the first and second partitions, by the file management service, to provide access to the first file.

15. A non-transitory, computer-readable medium containing instructions for a file management service of a client device, the instructions being executed by a hardware processor to perform stages comprising:

sending, to an index server from the file management service, a request to store a first file on behalf of a user of the client device associated with access credentials of a user account in a cloud data storage provider;

receiving, by the file management application from the index server, a first storage location identified by the index server for the first file at the cloud data storage provider that is different from the index server;

encrypting, by the file management service, the first file based on a first key associated with the first storage location, the first key being different than the access credentials for the cloud data storage provider; and

sending by the file management application an encrypted version of the first file to the identified first storage location at the cloud data storage provider.

16. The non-transitory, computer-readable medium of claim 15 , the stages further comprising:

sending, to the index server, a request from the client device to access the encrypted file;

receiving, from the index server, the first location for retrieving the encrypted file; and

obtaining the encrypted file from the first location by transmitting access credentials to the cloud storage provider.

17. The non-transitory, computer-readable medium of claim 16 , the stages further comprising:

receiving multiple keys, including the first key, at the client device in response to the request to access the encrypted file; and

decrypting the encrypted file using the multiple keys.

18. The non-transitory, computer-readable medium of claim 15 , the stages further comprising:

transmitting the first key to the index server from the client device;

requesting, by the client device, access to the file; and

receiving a version of the first key for decrypting the encrypted first file.

19. The non-transitory, computer-readable medium of claim 15 , the stages further comprising:

deleting, by the file management service, the first key from the client device after the encrypting.

20. The non-transitory, computer-readable medium of claim 15 , the stages further comprising:

sending, from the client device to the index server, a request to store a second file;

receiving a second storage location unassociated with the cloud data storage provider,

wherein the second storage location is at the index server;

encrypting the second file based on a second key associated with the second storage location; and

sending, from the client device, the encrypted second file to second storage location using access credentials associated with the second storage location.

Assignments (5)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2024
From: AIRWATCH LLC
To: VMWARE, INC.
Reel/Frame 067879/0157 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2024
From: STUNTEBECK, ERICH; PANCHAPAKESAN, RAMANI; LAXMINARAYAN, AKSHAY; ASHISH, KUMAR
To: AIRWATCH LLC
Reel/Frame 068063/0503 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
Continuity (4)
Continuation 15439375 · Feb 22, 2017
Continuation 15055847 · Feb 29, 2016
Continuation 14727909 · Jun 2, 2015
Related Publication 20180167213A1 · Jun 14, 2018