IP Library Granted Patent US 10,404,449
Granted Patent B2
US 10,404,449 · App. 15/503,723 · Granted Sep 3, 2019

Method for encrypting data for distributed storage

Inventor: Ghassan Karame (Heidelberg, DE)
Assignee: NEC CORPORATION
H04L9/0631H04L9/0637G06F17/16
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,404,449
App. No.
15/503,723
Granted
Sep 3, 2019
Kind
B2
Abstract

A method for encrypting data with an encryption entity includes, in a step a), dividing a plaintext into a number of N blocks. In a step b), each of the blocks are encrypted with an encryption key resulting in a number of ciphertext blocks. In a step c), a linear All-Or-Nothing scheme is applied on the ciphertext blocks. In a step d), each of the ciphertext blocks output from step c) is transformed with a transformation procedure such that the information in different ciphertext blocks is transformed differently based on the encryption key and such that the transformation procedure is only revertable with knowledge of the encryption key. In a step e), the transformed ciphertext blocks are dispersed according to an information dispersal procedure.

Claims (28)

1. A method for encrypting data with an encryption entity, the method comprising:

a) Dividing a plaintext into a number of N blocks,

b) Encrypting each of the blocks with an encryption key resulting in a number of ciphertext blocks,

c) Applying a linear All-Or-Nothing scheme on the ciphertext blocks by applying a matrix multiplication with a matrix, wherein matrix elements on a diagonal of the matrix are zero and all other matrix elements are one,

d) Transforming each of the ciphertext blocks output from step c) with a transformation procedure such that the information in different ciphertext blocks is transformed differently based on the encryption key and such that the transformation procedure is only revertable with knowledge of the encryption key, and

e) Dispersing the transformed ciphertext blocks according to an information dispersal procedure.

2. The method according to claim 1 , wherein the transformation procedure performs a cyclic bitwise operation.

3. The method according to claim 1 , wherein the matrix multiplication is performed by XOR- and AND-operations.

4. The method according to claim 1 , wherein the transformation procedure performs a keyed bit permutation per block using a respective index of each ciphertext block as additional random information.

5. The method according to claim 1 , wherein the transformation procedure performs a keyed block cipher encryption per ciphertext block using a respective index of each ciphertext block as additional random information.

6. The method according to claim 2 , wherein a cyclic bitwise shifting per ciphertext block is performed using a trapdoor function with input of the encryption key and an index of the respective ciphertext block.

7. The method according to claim 6 , wherein the cyclic bitwise shifting is performed using the trapdoor function modulo the size of the respective ciphertext block.

8. The method according to claim 2 , wherein a cyclic bitwise shifting is performed on all the ciphertext blocks simultaneously using a function with input of the encryption key and modulo the size of all the ciphertext blocks.

9. The method according to claim 8 , wherein the function is a one-way cryptographic function.

10. The method according to claim 2 , wherein the ciphertext blocks are permuted after the cyclic bitwise operation.

11. A system for encrypting data with an encryption entity, the system comprising one or more encryption entities including memory and one or more computer processors, which individually or in cooperation with each other, are configured to perform the following steps:

a) Dividing a plaintext into a number of N blocks,

b) Encrypting each of the blocks with an encryption key resulting in a number of ciphertext blocks,

c) Applying a linear All-Or-Nothing scheme on the ciphertext blocks by applying a matrix multiplication with a matrix, wherein matrix elements on a diagonal of the matrix are zero and all other matrix elements are one,

d) Transforming each of the ciphertext blocks output from step c) with a transformation procedure such that the information in different ciphertext blocks is transformed differently based on the encryption key and such that the transformation procedure is only revertable with knowledge of the encryption key, and

e) Dispersing the transformed ciphertext blocks according to an information dispersal procedure.

12. The system according to claim 11 , wherein the one or more encryption entities are clients.

13. A method for encrypting data with an encryption entity, the method comprising:

a) Dividing a plaintext into a number of N blocks,

b) Encrypting each of the blocks with an encryption key resulting in a number of ciphertext blocks,

c) Applying a linear All-Or-Nothing scheme on the ciphertext blocks by applying a matrix multiplication with a matrix, wherein matrix elements on a diagonal of the matrix are zero and all other matrix elements are one,

d) Transforming each of the ciphertext blocks output from step c) with a transformation procedure, which performs a keyed bit permutation per block using a respective index of each ciphertext block as additional random information or performs a keyed block cipher encryption per ciphertext block using the respective index of each ciphertext block as the additional random information, such that the information in different ciphertext blocks is transformed differently based on the encryption key and such that the transformation procedure is only revertable with knowledge of the encryption key, and

e) Dispersing the transformed ciphertext blocks according to an information dispersal procedure.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2019
From: NEC LABORATORIES EUROPE GMBH
To: NEC CORPORATION
Reel/Frame 049810/0624 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 29, 2017
From: NEC EUROPE LTD.
To: NEC LABORATORIES EUROPE GMBH
Reel/Frame 044979/0698 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2017
From: KARAME, GHASSAN
To: NEC EUROPE LTD.
Reel/Frame 041392/0919 →
Continuity (1)
Related Publication 20180351731A1 · Dec 6, 2018