Designing an efficient image Encryption-Then - Compression system

28
Designing an Efficient Image Encryption-Then-Compression System via Prediction Error Clustering and Random Permutation Presentation by Dig Vijay Kumar Yarlagadda [email protected]

Transcript of Designing an efficient image Encryption-Then - Compression system

Page 1: Designing an efficient image Encryption-Then - Compression system

Designing an Efficient ImageEncryption-Then-Compression System via Prediction

Error Clustering and Random Permutation

Presentation by Dig Vijay Kumar Yarlagadda

[email protected]

Page 2: Designing an efficient image Encryption-Then - Compression system

Contents• Objective• Introduction• Description• Status• Expected results• Conclusion• References

Page 3: Designing an efficient image Encryption-Then - Compression system

Objective• The objective of this project is on the practical design of a pair of image

encryption and compression schemes, in such a way that compressing the

encrypted images is almost equally efficient as compressing their original,

unencrypted counterparts. Meanwhile, reasonably high level of security needs

to be ensured.

Page 4: Designing an efficient image Encryption-Then - Compression system

Introduction• Consider an application scenario where a content owner wants to securely and

efficiently transmit an image to a recipient via an untrusted channel provider.

• Traditional Compression-then-Encryption (CTE) systems requires content owner

to perform both encryption and compression operations.

• Content owner wants to secure the image data through encryption with no

incentive to compress image, while channel provider is interested in compressing

the network traffic to maximise network utilization.

• It is desirable that this compression task is done by channel provider.

Page 5: Designing an efficient image Encryption-Then - Compression system

Encryption-then-Compression(ETC) system

Design Problem:

• How to compress an image if it’s

data is hidden?

The solution:

• Perform all operations in prediction

error domain

Page 6: Designing an efficient image Encryption-Then - Compression system

Prediction Error domain• Prediction errors are calculated in order to predict the desired target value

for new data.

• Method of calculating prediction error:

• Make a prediction i,j by using an image predictor GAP

• Calculate prediction error using formulaei,j = Ii,j - i,j

Page 7: Designing an efficient image Encryption-Then - Compression system

Image Encryption

Page 8: Designing an efficient image Encryption-Then - Compression system

Encryption Algorithm1. Compute the prediction errors i,j of whole image I.

2. Divide all prediction errors into L clusters Ck , for 0 ≤ k ≤ L-1

3. Reshape the prediction errors in each Ck into a 2-D block having four columns

and [|Ck|]/4] rows, where |Ck| denotes the number of prediction errors

in Ck.

Page 9: Designing an efficient image Encryption-Then - Compression system

Encryption Algorithm (cont.)4. Perform two key-driven cyclical shift operations to each resulting prediction

error block, and read out the data in raster-scan order to obtain the

permuted cluster k .

Page 10: Designing an efficient image Encryption-Then - Compression system

Encryption Algorithm (cont.)

5. The assembler concatenates all the permuted clusters k , for 0 ≤ k ≤ L-1, and

generates the final encrypted image.Ie = 0 1 …………….L-1

6. Pass Ie to Charlie together with the length of each cluster |k|, for 0 ≤ k ≤ L-2

Page 11: Designing an efficient image Encryption-Then - Compression system

Lossless compression of Encrypted image via Adaptive Arithmetic Coding

Page 12: Designing an efficient image Encryption-Then - Compression system

Lossless compression (cont.)

De-Assembler:

A De-assembler can be utilized to parse Ie into L segments 0 1 …………….L-1 in the

exact same way as that done at the encryption stage.

Adaptive Arithmetic Coding:

An adaptive AC is employed to losslessly encode each prediction error sequence k

into a binary bit stream Bk .

Page 13: Designing an efficient image Encryption-Then - Compression system

Lossless compression (cont.)

Assembler:

Assembler concatenates all Bk to produce the final compressed and encrypted

bit stream B, namely,

B = B0 B1............. BL-1

Page 14: Designing an efficient image Encryption-Then - Compression system

Sequential Decryption and Decompression

Page 15: Designing an efficient image Encryption-Then - Compression system

Sequential Decryption and Decompression

• Using the side information |Bk|, recipient divides B into L segments Bk , each

of which is associated a cluster of prediction errors.

• For each Bk , an adaptive arithmetic decoding can be applied to obtain the

corresponding permuted prediction error sequence k .

• As recipient knows the secret key K, the corresponding de-permutation

operation can be employed to get back the original Ck .

• With all the Ck , the decoding of the pixel values can be performed in a raster-

scan order.

Page 16: Designing an efficient image Encryption-Then - Compression system

Sequential Decryption and Decompression (cont.)

• For each location (i, j), the associated error energy estimator i,j and the

predicted value i,j can be calculated from the causal surroundings that have

already been decoded.

• The corresponding cluster index k can be determined using formula

k = {k|qk ≤ ∆i,j < qk+1}

• The reconstructed pixel can then be computed by

i,j = i,j + ei,j

Page 17: Designing an efficient image Encryption-Then - Compression system

Security and Performance analysisTest images

Page 18: Designing an efficient image Encryption-Then - Compression system

Security Analysis

Number of distinctive ways of permutation:

N =

Page 19: Designing an efficient image Encryption-Then - Compression system

Compression performance• Image predictor GAP has strong de-correlation capability.

• Arithmetic coding is 2 to 3 times more effective than traditional compression

techniques.

Page 20: Designing an efficient image Encryption-Then - Compression system

Status• An Encryption scheme is realized via prediction error clustering and random

permutation.

• Highly efficient compression has been realized by a context-adaptive

arithmetic coding approach.

• Security and Performance analysis yet to be performed.

Page 21: Designing an efficient image Encryption-Then - Compression system

Expected resultsLossless Compression Performance:Reconstruction results of directly

decoding the compressed and encrypted images:

Page 22: Designing an efficient image Encryption-Then - Compression system

Conclusion• An efficient image Encryption-then-Compression (ETC) System has been

designed. Encryption is realized via prediction error clustering and random

permutation. Highly efficient compression has been realized by a context-

adaptive arithmetic coding approach.

Page 23: Designing an efficient image Encryption-Then - Compression system

References[1]. Jiantao Zhou, Xianming Liu, Oscar C. Au, and Yuan Yan Tang, "Designing an Efficient

Image Encryption-then-Compression System via Prediction Error Clustering and Random

Permutation", IEEE Trans. Inf. Forensics Security, Vol.9, No.1, Jan. 2014.

[2]. X. Wu and N. Memon, "Context-based, adaptive, lossless image codec," IEEE Trans.

Commun., vol.45, no. 4, pp. 437–444, Apr. 1997.

[3]. Rafael C.Gonzalez and Richard E. Woods, "Digital Image Processing", Second Edition,

Jan.2004.

[4]. Xiaolin Wu and Nasir Memon, "CALIC – A Context based adaptive lossless image

CODEC", IEEE Trans. Inf. Forensics Security, vol. 3, no. 4. pp. 437-444, Apr. 1997.

Page 24: Designing an efficient image Encryption-Then - Compression system
Page 25: Designing an efficient image Encryption-Then - Compression system

THANK YOU

Page 26: Designing an efficient image Encryption-Then - Compression system

Gradient Adjusted Predictor(GAP)In GAP the gradient of the intensity function at the current pixel I is estimated by computed the following quantities:

dh = |I[i-1, j] – I[i-2, j]| + |I[i, j-1] – I[i-1, j-1]| + |I[i+1, j-1] – I[i, j-1]|dv = |I[i-1, j] – I[i-1, j-1]| + |I[i, j-1] – I[i, j-2]| + |I[i+1, j-1] – I[i+1, j-2]|

A prediction is then made by the following procedure:IF (dv – dh > 80) {sharp horizontal edge}

ELSE IF (dv – dh < -80) {sharp vertical edge}

Page 27: Designing an efficient image Encryption-Then - Compression system

Gradient Adjusted Predictor(GAP) (cont.)

ELSE { (w+n)/2 +(ne-nw)/4;IF (dv – dh > 32) {horizontal edge}

(w+n)/2 + (ne-nw)/4;ELSE IF (dv – dh > 8) { weak horizontal edge}

(3 + w)/4ELSE IF (dv – dh < -32) {vertical edge}

+ n)/2ELSE IF (dv – dh < -8) {weak vertical edge}

+ n)/4}

Page 28: Designing an efficient image Encryption-Then - Compression system

Gradient Adjusted Predictor(GAP) (cont.)

where n = I[i, j-1]w = I[i-1, j]ne = I[i+1, j-1]nw = I[i-1, j-1]nn = I[i, j-2]ww = I[i-2, j]

back to main slide