IP Library Granted Patent US 10,187,203
Granted Patent B2
US 10,187,203 · App. 15/252,051 · Granted Jan 22, 2019

Secure storage encryption system

Inventors: Bjorn Hamel (Dublin, CA); Jonathan David Ruggiero (Walnut Creek, CA)
Assignee: Workday, Inc.
H04L9/0822H04L9/083H04L9/14H04L9/30
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,187,203
App. No.
15/252,051
Granted
Jan 22, 2019
Kind
B2
Abstract

A system for secure storage of data includes a key database and a processor. The processor is configured to receive a request associated with securely storing data and encrypt the tenant service key using a tenant master key. The data is encrypted using the tenant service key. The processor is further configured to encrypt the tenant master key using a customer key and store encrypted tenant service key and encrypted tenant master key in the key database.

Claims (36)

1. A system for secure storage of data comprising:

a key database;

a hardware processor configured to:

receive a request associated with securely storing data;

encrypt a tenant service key using a tenant master key to obtain an encrypted tenant service key, wherein the data is encrypted using the tenant service key;

encrypt the tenant master key using a customer key to obtain an encrypted tenant master key;

assign a first identifier for the encrypted tenant service key, a second identifier for the encrypted tenant master key, and a third identifier for the customer key;

store the encrypted tenant service key, the encrypted tenant master key, and the first, second, and third identifiers in the key database; and

store the customer key and the first, second, and third identifiers in a hardware security module, wherein the hardware security module is located remotely from the key database, wherein a key management system requests operations to be performed with the customer key, wherein the encrypted tenant master key is transmitted from the key management system to a key release system, wherein the customer key never leaves the key release system, wherein the encrypted tenant master key is decrypted by the key release system using the customer key to obtain a decrypted tenant master key, and wherein the decrypted tenant master key is transmitted from the key release system to the key management system.

2. The system of claim 1 , wherein the tenant service key is encrypted using the key management system.

3. The system of claim 1 , wherein the tenant master key is encrypted using the key management system.

4. The system of claim 1 , wherein the hardware processor is further configured to perform key based operations with the customer key inside the hardware security module.

5. The system of claim 4 , wherein the hardware security module is part of the key release system.

6. The system of claim 5 , wherein the key release system is physically remote from the key management system.

7. The system of claim 6 , wherein the tenant master key is transmitted from the key release system using a public/private key communications.

8. The system of claim 1 , wherein the hardware security module is part of the key release system.

9. The system of claim 8 , wherein the key release system is physically remote from the key management system.

10. The system of claim 1 , wherein the encryption of the tenant service key is logged.

11. The system of claim 1 , wherein the encryption of the tenant master key is logged.

12. The system of claim 1 , wherein the storage of the data is logged.

13. The system of claim 1 , wherein the hardware processor is further configured to log the first, second, and third identifiers in an audit database associated with a stored encrypted data storage location.

14. The system of claim 13 , wherein the hardware processor is further configured to log an encrypted tenant service key location, an encrypted tenant master key location, and an encrypted customer key location in the audit database associated with the stored encrypted data storage location.

15. A method for secure storage of data comprising:

receiving a request associated with securely storing data;

encrypting, using a processor, a tenant service key using a tenant master key to obtain an encrypted tenant service key, wherein the data is encrypted using the tenant service key;

encrypting the tenant master key using a customer key to obtain an encrypted tenant master key;

assigning a first identifier for the encrypted tenant service key, a second identifier for the encrypted tenant master key, and a third identifier for the customer key;

storing the encrypted tenant service key, the encrypted tenant master key, and the first, second, and third identifiers in a key database; and

storing the customer key and the first, second, and third identifiers in a hardware security module, wherein the hardware security module is located remotely from the key database, wherein a key management system requests operations to be performed with the customer key, wherein the encrypted tenant master key is transmitted from the key management system to a key release system, wherein the customer key never leaves the key release system, wherein the encrypted tenant master key is decrypted by the key release system using the customer key to obtain a decrypted tenant master key, and wherein the decrypted tenant master key is transmitted from the key release system to the key management system.

16. A computer program product for securely storing data, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving a request associated with securely storing data;

encrypting, using a processor, a tenant service key using a tenant master key to obtain an encrypted tenant service key, wherein the data is encrypted using the tenant service key;

encrypting the tenant master key using a customer key to obtain an encrypted tenant master key;

assigning a first identifier for the encrypted tenant service key, a second identifier for the encrypted tenant master key, and a third identifier for the customer key;

storing the encrypted tenant service key, the encrypted tenant master key, and the first, second, and third identifiers in a key database; and

storing the customer key and the first, second, and third identifiers in a hardware security module, wherein the hardware security module is located remotely from the key database, wherein a key management system requests operations to be performed with the customer key, wherein the encrypted tenant master key is transmitted from the key management system to a key release system, wherein the customer key never leaves the key release system, wherein the encrypted tenant master key is decrypted by the key release system using the customer key to obtain a decrypted tenant master key, and wherein the decrypted tenant master key is transmitted from the key release system to the key management system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2016
From: HAMEL, BJORN; RUGGIERO, JONATHAN DAVID
To: WORKDAY, INC.
Reel/Frame 040734/0680 →
Continuity (1)
Related Publication 20180062835A1 · Mar 1, 2018