IP Library Granted Patent US 9,584,323
Granted Patent B2
US 9,584,323 · App. 14/993,577 · Granted Feb 28, 2017

Compressing encrypted data without the encryption key

Inventors: Camit Hazay (Yorktown Heights, NY); Ashish Jagmohan (Irvington, NY); Demijan Klinc (Yorktown Heights, NY); Hugo M. Krawczyk (Tarrytown, NY); Tal Rabin (Yorktown Heights, NY)
Assignee: International Business Machines Corporation
H04L9/32H04L9/0637H04L9/0819H04L63/0428H04L69/04G06F2221/2107H04L9/0618H04L2209/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 9,584,323
App. No.
14/993,577
Granted
Feb 28, 2017
Kind
B2
Abstract

A method, system and computer program product are disclosed for compressing encrypted data, wherein the data is encrypted by using a block encryption algorithm in a chained mode of operation, and the encrypted data is comprised of a set of N encrypted blocks, C 1 . . . C N . In one embodiment, the method comprises leaving block C N uncompressed, and compressing all of the blocks C 1 . . . C N in a defined sequence using a Slepian-Wolf code. In an embodiment, the data is encrypted using an encryption key K, and the compressing includes compressing all of the blocks C 1 . . . C N without using the encryption key. In one embodiment, the compressing includes outputting the blocks C 1 . . . C N as a set of compressed blocks CmprC 1 . . . CmprC N-1 , and the method further comprises decrypting C N to generate a reconstructed block {tilde over (X)} n , and decrypting and decompressing the set of compressed blocks using {tilde over (X)} n .

Claims (40)

1. A method of decompressing and decrypting a message comprised of a set of blocks including N-1 compressed encrypted blocks CEX N-1 , . . . , CEX 1 , and one uncompressed encrypted block EX N , the method comprising:

receiving the N-1 compressed encrypted blocks CEX N-1 , . . . CE 1 and the uncompressed encrypted block EX N ; and

decrypting the set of blocks, including

decrypting EX N to generate a decrypted block X N , and

decompressing and decoding the blocks CEX N-1 , . . . , CEX 1 to generate decompressed and decrypted blocks X N-1 , . . . , X 1 , including for each of the blocks CEX N-1 , . . . , CEX 1 , using output from the decrypting of another block in the decompressing of said each block, including

starting the decrypting the compressed encrypted blocks CEX N-1 , . . . , CEX 1 by using output from the decrypting of EX N to decrypt one of the blocks CEX N-1 , . . . , CEX 1 to generate another decrypted block.

2. The method according to claim 1 , wherein the decrypting the set of blocks includes decrypting the set of blocks in a defined sequence.

3. The method according to claim 2 , wherein the using output from the decrypting of another block includes using output from the decrypting of a preceding block in the defined sequence.

4. The method according to claim 3 , wherein the using output from the decrypting of a preceding block in the defined sequence includes using the output from the decrypting of an immediately preceding block in the defined sequence.

5. The method according to claim 2 , wherein the defined sequence starts with decrypting EX N .

6. The method according to claim 5 , wherein the defined sequence includes CEX N-1, CEX N-2 , . . . CEX 1 .

7. The method according to claim 1 , wherein the encrypted blocks are encrypted using a key K, and the compressed encrypted blocks are compressed without using K.

8. The method according to Claim 7 , wherein the decrypting the set of blocks includes decrypting the set of blocks using the key K.

9. The method according to claim 1 , wherein the decompressing and decoding the blocks CEX N-1 , . . . , CEX 1 includes using Slepian-Wolf decoding to decompress the blocks CEX N-1 , . . . , CEX 1 .

10. The method according to claim 1 , wherein:

the decompressing and decoding the blocks CEX N-1 , . . . , CEX 1 to generate decompressed and decrypted blocks X N-1 , . . . , X 1 includes generating an associated decrypted block from each of the blocks CEX N-1 , . . . , CEX 1 ; and

the using output from the decrypting of another block in the decompressing of said each block includes using one of the associated decrypted blocks in the decompressing of said each block.

11. A joint decryption and decompression system for decompressing and decrypting a message comprised of a set of blocks including N-1 compressed encrypted blocks CEX N-1 , . . . , CEX 1 , and one uncompressed encrypted block EX N , the system comprising:

one or more processor units; and

memory including computer program instructions that, when executed by the one or more processor units, cause the system to perform the steps of:

receiving the N-1 compressed encrypted blocks CEX N-1 , . . . , CEX 1 and the uncompressed encrypted block EX N ; and

decrypting the set of blocks, including

decrypting EX N to generate a decrypted block X N , and

decompress and decoding the blocks CEX N-1 , . . . , CEX 1 to generate decompressed and decrypted blocks X N-1 , . . . ,X 1 , including for each of the blocks CEX N-1 , . . . , CEX 1 , using output from the decrypting of another block in the decompressing of said block, including

starting the decryption of the compressed encrypted blocks CEX N-1 , . . . , CEX 1 by using output from the decrypting of EXN to decrypt one of the blocks CEX N-1 , . . . , CEX 1 to generate another decrypted block.

12. The system according to claim 1 , wherein the decrypting the set of blocks includes decrypting the set of blocks in a defined sequence.

13. The system according to claim 12 , wherein the using output from the decrypting of another block includes using output from the decrypting of a preceding block in the defined sequence.

14. The system according to claim 13 , wherein the using output from the decrypting of a preceding block in the defined sequence includes using the output from the decrypting of an immediately preceding block in the defined sequence.

15. The system according to claim 12 , wherein the defined sequence starts with decrypting EX N .

16. An article of manufacture comprising:

at least one tangible computer readable device having computer readable program code logic tangibly embodied therein to execute a machine instruction in a processing unit for decompressing and decrypting a message comprised of a set of blocks including N-1 compressed encrypted blocks CEX N-1 , . . . , CEX 1 , and one uncompressed encrypted block EX N , the computer readable program code logic, when executing, performing the following:

receiving the N-1 compressed encrypted blocks CEX N-1 , . . . CE 1 and the uncompressed encrypted block EX N ; and

decrypting the set of blocks, including

decrypting EX N to generate a decrypted block X N , and

decompressing and decoding the blocks CEX N-1 , . . . , CEX 1 to generate decompressed and decrypted blocks X N-1 , . . . , X 1 , including for each of the blocks CEX N-1 , . . . , CEX 1 , using output from the decrypting of another block in the decompressing of said each block, including

starting the decrypting the compressed encrypted blocks CEX N-1 , . . . , CEX 1 by using output from the decrypting of EX N to decrypt one of the blocks CEX N-1 , . . . , CEX 1 to generate another decrypted block.

17. The article of manufacture according to claim 16 , wherein the decrypting the set of blocks includes decrypting the set of blocks in a defined sequence.

18. The article of manufacture according to claim 17 , wherein the using output from the decrypting of another block includes using output from the decrypting of a preceding block in the defined sequence.

19. The article of manufacture according to claim 18 , wherein the using output from the decrypting of a preceding block in the defined sequence includes using the output from the decrypting of an immediately preceding block in the defined sequence.

20. The article of manufacture according to claim 17 , wherein the defined sequence starts with decrypting EX N .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2016
From: HAZAY, CAMIT; JAGMOHAN, ASHISH; KLINC, DEMIJAN; KRAWCZYK, HUGO M.; RABIN, TAL
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 037466/0967 →
Continuity (3)
Continuation 14581055 · Dec 23, 2014
Division 12610754 · Nov 2, 2009
Related Publication 20160127130A1 · May 5, 2016