IP Library Granted Patent US 11,783,089
Granted Patent B2
US 11,783,089 · App. 17/123,713 · Granted Oct 10, 2023

Multi-tenancy architecture

Inventor: Richard J. Takahashi (Layton, UT)
Assignee: SECTURION SYSTEMS, INC.
G06F21/72G06F21/602H04L9/083
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,783,089
App. No.
17/123,713
Granted
Oct 10, 2023
Kind
B2
Abstract

A system includes a security device, configured for cryptographic processing, coupled to receive incoming data from a plurality of data sources (e.g., data from different customers), wherein the incoming data includes first data from a first data source; a controller (e.g., an external key manager) configured to select a first set of keys from a plurality of key sets, each of the key sets corresponding to one of the plurality of data sources, wherein the first set of keys is used by the security device to encrypt the first data; and a common encrypted data storage, coupled to receive the encrypted first data from the security device.

Claims (75)

1. A system, comprising:

at least one processor, ASIC, or field-programmable gate array configured to:

receive a first data packet from a first data source, the first data packet including a tag associated with the first data source;

authenticate data of the first data packet;

detect a tag of the first data packet that identifies the first data source;

select a first set of keys based on the tag;

encrypt the first data packet using the first set of keys;

send, over a network, the encrypted first data packet to a storage;

read, over the network, the first data packet from the storage;

detect the tag of the first data packet read from the storage;

select the first set of keys based on the detected tag; and

decrypt the first data packet read from the storage using the first set of keys.

2. The system of claim 1 , further including a packet input engine configured to receive the first data packet and detect the tag in the first data packet, and a packet output engine configured to send the encrypted first data packet to the storage.

3. The system of claim 2 , wherein the packet input engine is further configured to provide a signal to a key cache for selecting the first set of keys.

4. A system comprising:

at least one processor, ASIC, or field-programmable gate array configured to:

receive a first data packet from a first data source, the first data packet including a tag associated with the first data source;

authenticate data of the first data packet;

select, in response to authenticating the data of the first data packet, a first key based on the tag;

encrypt the first data packet using the first key;

send, over a network, the encrypted first data packet to a storage;

read, over the network, the first data packet from the storage;

after reading the first data packet from the storage, decrypt the first data packet using the first key; and

after decrypting the first data packet, send the first data packet to the first data source; and

at least one switch or router configured to:

when reading the first data packet from the storage, detect the tag; and

select a first cryptographic engine and the first key for decrypting the first data packet based on the detected tag.

5. The system of claim 4 , further comprising at least one memory configured to store a plurality of keys including the first key.

6. The system of claim 4 , further comprising at least one key cache, wherein the at least one processor, ASIC, or field-programmable gate array is further configured to authorize access to keys in the at least one key cache.

7. The system of claim 4 , wherein a second key is selected for encrypting the first data packet, and the second key is selected based on the tag of the first data packet.

8. The system of claim 4 , wherein the received first data packet further includes a header, the header remains in the clear during encrypting of the first data packet, and the at least one processor, ASIC, or field-programmable gate array is further configured to send the header to the storage along with the encrypted first data packet.

9. The system of claim 4 , wherein the first data packet is encrypted by a second cryptographic engine, and the at least one processor, ASIC, or field-programmable gate array is further configured to, after encrypting the first data packet, zeroize the second cryptographic engine.

10. The system of claim 4 , wherein the at least one processor, ASIC, or field-programmable gate array includes a systolic-matrix array of FPGAs configured to support at least one security protocol.

11. The system of claim 4 , wherein the tag is a first tag that identifies a source of data, the first data packet further comprises a second tag, and the at least one processor, ASIC, or field-programmable gate array is further configured to determine a type of packet based on the second tag.

12. The system of claim 11 , wherein the first cryptographic engine is selected for encrypting the first data packet based on the second tag.

13. A system comprising:

at least one memory configured to store a key; and

at least one processor, ASIC, or field-programmable gate array configured to:

receive a first data packet from a first source, the first data packet including a tag associated with the first data source;

authenticate data of the first data packet;

select, in response to authenticating the data of the first data packet, a first key based on the tag;

in response to receiving the first data packet, determine an association of the first data packet with the first source;

select, based on the association of the first data packet with the first source, a first processor;

encrypt, by the selected first processor using the first key, the first data packet;

send the encrypted first data packet to storage;

read the encrypted first data packet from the storage;

detect the tag when reading the encrypted first data packet; and

select the first processor and the first key for decrypting the encrypted first data packet based on the detected tag.

14. The system of claim 13 , wherein the at least one processor, ASIC, or field-programmable gate array is further configured to select the first processor based on the tag.

15. The system of claim 13 , wherein the at least one processor, ASIC, or field-programmable gate array is further configured to include a packet input engine to receive the first data packet and detect the tag in the first data packet, and a packet output engine to send the encrypted first data packet to the storage.

16. The system of claim 13 , further including a key cache for storing the first key.

17. The system of claim 13 , wherein the at least one processor, ASIC, or field-programmable gate array is further configured to include an input cryptographic core for encrypting the first data packet using the first key, and an output cryptographic core for decrypting the encrypted first data packet using the first key.

18. A security device comprising:

a packet input engine configured to receive a data packet from a data source, authenticate the data source and provide a first key selection signal based on a detected tag in the data packet once the data source is authenticated;

an input key cache configured to select, based on the first key selection signal, a first set of keys stored in the input key cache for encrypting the data packet;

an input cryptographic core configured to receive and encrypt the data packet using the first set of keys; and

a packet output engine configured to receive and output the encrypted data packet to a storage device.

19. The security device of claim 18 , wherein the packet output engine is further configured to retrieve the encrypted data packet from the storage device and provide a second key selection signal based on the detected tag in the encrypted data packet.

20. The security device of claim 19 , further comprising:

an output key cache configured to select, based on the second key selection signal, a second set of keys stored in the output key cache for decrypting the encrypted data packet; and

an output cryptographic core configured to receive and decrypt the encrypted data packet, wherein the packet input engine is further configured to receive and send the decrypted data packet to the data source.

21. The security device of claim 18 , further comprising a key loader controller configured to load the first set of keys to be stored in the input key cache prior to the packet input engine receiving the data packet, and to load a second set of keys to be stored in the output key cache prior to the packet output engine receiving the encrypted data packet.

22. A system comprising:

a physical interface; and

at least one processor, ASIC, or field-programmable gate array configured to:

receive, via the physical interface, a first data packet from a first data source;

encrypt the first data packet using a cryptographic engine;

after encrypting the first data packet, zeroize the cryptographic engine;

send, over a network, the encrypted first data packet to a data storage;

read, over the network, the first data packet from the data storage;

after reading the first data packet from the data storage, decrypt the first data packet; and

after decrypting the first data packet, send the first data packet to the first data source.

23. The system of claim 22 , wherein the first data packet includes a tag associated with the first data source, and the cryptographic engine is a first cryptographic engine, the system further comprising at least one switch or router configured to:

when reading the first data packet from the data storage, detect the tag; and

select a second cryptographic engine for decrypting the first data packet based on the detected tag.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2020
From: TAKAHASHI, RICHARD J.
To: SECTURION SYSTEMS, INC.
Reel/Frame 054668/0297 →
Continuity (5)
Continuation 15824015 · Nov 28, 2017
Continuation 15150624 · May 10, 2016
Continuation 14208337 · Mar 13, 2014
Provisional Application 61806775 · Mar 29, 2013
Related Publication 20220019699A1 · Jan 20, 2022
Cited By (3)
US 12,632,395 US 12,634,264 US 12,711,281