IP Library Granted Patent US 11,601,257
Granted Patent B2
US 11,601,257 · App. 17/112,679 · Granted Mar 7, 2023

Creating deterministic ciphertext using wide-block encryption

Inventor: Glen Alan Jaquette (Tucson, AZ)
Assignee: International Business Machines Corporation
H04L9/0637H04L9/065H04L9/0625H04L2209/24H04L2209/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 11,601,257
App. No.
17/112,679
Granted
Mar 7, 2023
Kind
B2
Abstract

A computer-implemented method according to one embodiment includes compressing an uncompressed instance of data to create a compressed instance of data; encrypting the compressed instance of data utilizing wide-block encryption in response to determining that a size of the compressed instance of data is less than a predetermined threshold; and adding a zero pad to the encrypted compressed instance of data to create a ciphertext string.

Claims (31)

1. A computer-implemented method, comprising:

compressing an uncompressed instance of data to create a compressed instance of data;

encrypting the compressed instance of data utilizing wide-block encryption in response to determining that a size of the compressed instance of data is less than a predetermined threshold;

adding a zero pad to the encrypted compressed instance of data to create a ciphertext string;

storing the ciphertext string in data storage having other ciphertext strings stored therein, thereby forming a plurality of stored ciphertext strings; and

deduplicating the stored ciphertext strings by analyzing the stored ciphertext strings for detecting redundant ciphertext strings, and removing the detected redundant ciphertext strings from the data storage.

2. The computer-implemented method of claim 1 , wherein the uncompressed instance of data includes an instance of plaintext.

3. The computer-implemented method of claim 1 , wherein the compressed instance of data is abandoned or deleted in response to determining that the size of the compressed instance of data is greater than the predetermined threshold.

4. The computer-implemented method of claim 1 , wherein the compressed instance of data is encrypted in response to determining that, a sum of the size of the compressed instance of data, a length field added to the compressed instance of data, and a predetermined minimum zero pad length is less than the predetermined threshold.

5. The computer-implemented method of claim 1 , wherein the wide-block encryption includes an Encrypt Mix Encrypt V2 Advanced Encryption Standard (EME2-AES) encryption algorithm.

6. The computer-implemented method of claim 1 , wherein the wide-block encryption includes an Extended Codebook Advanced Encryption Standard (XCB-AES) encryption algorithm.

7. The computer-implemented method of claim 1 , further comprising adding a length field to the encrypted compressed instance of data, wherein the length field includes a field having a predetermined length that indicates a length of the encrypted compressed instance of data.

8. The computer-implemented method of claim 1 , wherein the zero pad includes a variable number of bytes of a highly compressible pattern.

9. The computer-implemented method of claim 1 , wherein a length of a length field added to the compressed instance of data, the encrypted compressed instance of data, and the zero pad equals a length of the uncompressed instance of data.

10. The computer-implemented method of claim 1 , wherein the data storage is part of a data storage system having multiple storage tiers.

11. The computer-implemented method of claim 10 , wherein removing the detected redundant ciphertext strings from the data storage includes migrating the redundant ciphertext strings to a different tier of the data storage system.

12. A computer-implemented method, comprising;

compressing an uncompressed instance of data to create a compressed instance of data;

encrypting the compressed instance of data utilizing wide-block encryption in response to determining that a size of the compressed instance of data is less than a predetermined threshold; and

adding a zero pad to the encrypted compressed instance of data to create a ciphertext string; and

identifying the encrypted compressed instance of data, utilizing the zero pad, in response to receiving the encrypted compressed instance of data or reading the encrypted compressed instance of data from storage.

13. A computer-implemented method, comprising:

determining that a size of a compressed instance of data is greater than a predetermined threshold; and

encrypting an uncompressed instance of the data utilizing wide-block encryption, without first compressing the uncompressed instance of the data, to create a ciphertext string;

storing the ciphertext string in data storage having other ciphertext strings stored therein, thereby forming a plurality of stored ciphertext strings; and

deduplicating the stored ciphertext strings by analyzing the stored ciphertext strings for detecting redundant ciphertext strings, and removing the detected redundant ciphertext strings from the data storage.

14. The computer-implemented method of claim 13 , wherein the encrypted uncompressed instance of data has the same length as the uncompressed instance of data.

15. The computer-implemented method of claim 13 , wherein the wide-block encryption includes an encryption algorithm selected from the group consisting of: an Encrypt Mix Encrypt V2 Advanced Encryption Standard (EME2-AES) encryption algorithm and an Extended Codebook Advanced Encryption Standard (XCB-AES) encryption algorithm.

16. The computer-implemented method of claim 13 , comprising compressing a second instance of data in response to determining that a size of the compressed second instance of data is less than the predetermined threshold; encrypting the second instance of data to create a second ciphertext string; storing the second ciphertext string in the data storage as one of the stored ciphertext strings; and deduplicating the stored ciphertext strings.

17. The computer-implemented method of claim 13 , wherein the data storage is part of a data storage system having multiple storage tiers.

18. The computer-implemented method of claim 17 , wherein removing the detected redundant ciphertext strings from the data storage includes migrating the redundant ciphertext strings to a different tier of the data storage system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 29, 2020
From: JAQUETTE, GLEN ALAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 054768/0780 →
Continuity (1)
Related Publication 20220182219A1 · Jun 9, 2022
Cited By (1)
US 12,277,097