2
Colour image secret sharing R. Lukac and K.N. Plataniotis A secret sharing scheme suitable for encrypting colour images is introduced. The required colour shares are obtained during encryption by operating at the bit-levels. Perfect reconstruction is achieved by the decryption module using only logical operations. Introduction: Cryptographic secret sharing techniques are essential for cost-effective image protection of scanned documents and digital personal photographs that are distributed via public networks. These techniques are based on the principle of sharing secret information among a group of participants. The shared secret can be recovered only when a coalition of willing participants are polling their encrypted images, the so-called shares, together [1]. Using the well-known {k, n}-visual sharing scheme (VSS) [1] the commonly used solutions first produce a halftoned version of the input colour image and then apply the VSS strategy to generate n shares. If k (or more) shares are stacked together, the decryption process allows for the recovery of the visual information. In the case of the simple {2, 2}- VSS, the dithered version of the continuous-tone colour image is encrypted into two shares [1]. Both shares should be stacked together for the visual message to be revealed. Note that colour visual crypto- graphy schemes currently in use generate decrypted images with noticeable visual impairments. This can be attributed to (i) the need for binary or dithered inputs [2], and (ii) the limited number of colours for which the schemes work well [3]. It is therefore necessary to develop a new method capable of processing true colour images in a cost-effective manner. Proposed colour image secret sharing: Based on the nature of multimedia applications and the requirements of the end-users, the secret sharing techniques for colour images must allow for perfect reconstruction of colour inputs such as natural images and computer- generated artwork. Modern cryptographic applications need to dispose with the complete image characteristics of the revealed input, including colour, structural information and fine image details. The black and white {k, n}-VSS is conventionally defined using n m 1 m 2 basis matrices A 0 and A 1 . Through the use of the matrices the scheme replaces each input binary pixel of the K 1 K 2 input image with an m 1 m 2 block of binary pixels in each of the n binary shares S 1 , S 2 , ... , S n generated. Thus, each share represents an m 1 K 1 m 2 K 2 image array. In the case of {2, 2}-VSS considered here, the basis matrices are the 2 4-sized A f2;2g 0 ¼ 1; 0; 1; 0 1; 0; 1; 0 and A f2;2g 1 ¼ 1; 0; 1; 0 0; 1; 0; 1 and thus the procedure results in two 2K 1 2K 2 shares S 1 and S 2 . Each row of A 0 {2,2} (or A 1 {2,2} ) corresponds to 2 2 blocks s 0 ¼ [s 0 (2p 1,2q 1), s 0 (2p 1,2q), s 0 (2p,2q 1), s 0 (2p,2q)] and s 00 ¼ [s 00 (2p 1,2q 1), s 00 (2p 1,2q), s 00 (2p,2q 1), s 00 (2p,2q)] of binary pixels s 0 (,) and s 00 (,) , respectively. Blocks s 0 and s 00 are used to encrypt the input binary pixel located at the position ( p, q) of the K 1 K 2 binary input. Let x(i): Z 2 ! Z 3 be a K 1 K 2 red-green-blue (RGB) colour image representing a two-dimensional matrix of the three-component colour vectors (pixels) x ( p,q) ¼ [x ( p,q)1 , x ( p,q) 2 , x ( p,q)3 ] located at the spatial position ( p, q), for p ¼ 1, 2, ... , K 1 and q ¼ 1, 2, ... , K 2 . Assuming that c describes the colour channel (i.e. c ¼ 1 for red, c ¼ 2 for green, and c ¼ 3 for blue) and the colour component x (p,q)c is coded with B bits allowing x (p,q)c to take an integer value between 0 and 2 B 1, the colour vector x (p,q) can be equivalently expressed in a binary form as follows: x (p,q) ¼ P b¼1 B x ( p,q) b 2 Bb , where x ( p,q) b ¼ [x ( p,q)1 b , x ( p,q)2 b , x ( p,q)3 b ] 2 {0, 1} 3 denotes the binary vector at the b-bit level, with b ¼ 1 denoting the most significant bits (MSB). Note that 0 and 1 correspond to white and black, respectively. If the cth component of the binary vector x ( p,q) b is white (x ( p,q)c b ¼ 0), encryption is performed through [s 1 , s 2 ] T 2 C 0 {2,2} replacing x (p,q)c b by binary blocks s 1 and s 2 in each of the two shares. Otherwise, the reference binary component is black (x ( p,q)c b ¼ 1), and encryption is defined via [s 1 , s 2 ] T 2 C 1 {2,2} . The sets C 0 {2,2} and C 1 {2,2} contain all the matrices (graphically interpreted in Fig. 1) obtained as column permu- tations of the basis matrices A 0 {2,2} and A 1 {2,2} , respectively. By replacing the binary components x (p,q)c b with binary blocks s 1 and s 2 for one particular b, the process generates two 2K 1 2K 2 vector-valued binary shares S 1 b and S 2 b , respectively. A random number generator guides the choice of [s 1 b , s 2 b ] T and determines the random character of S 1 b and S 2 b . Thus, the process modifies both the spatial correlation between spatially neighbouring binary vectors s (u,v) 0b ¼ [s (u,v)1 0b , s (u,v)2 0b , s (u,v)3 0b ] 2 S 1 b or s (u,v) 00b ¼ [s (u,v)1 00b , s (u,v)2 00b , s (u,v)3 00b ] 2 S 1 b , for u ¼ 1, 2, ... ,2K 1 and v ¼ 1, 2, ... ,2K 2 , and the spectral correlation among components s (u,v)c 0b or s (u,v)c 00b , for c ¼ 1, 2, 3, of the individual binary vectors s (u,v) 0b or s (u,v) 00b , respectively. Bit-level stacking of the encrypted bit-levels produces the colour vectors s (u,v) 0 2 S 1 and s (u,v) 00 2 S 2 as s (u,v) 0 ¼ P b¼1 B s (u,v) 0b 2 Bb and s (u,v) 00 ¼ P b¼1 B s (u,v) 00b 2 Bb . Therefore, the colour shares S 1 and S 2 can be consid- ered 2K 1 2K 2 colour RGB images. Due to random processing taking place at the bit-levels, S 1 and S 2 contain only random, colour-noise-like information. Since encryption is realised in the decomposed binary vector space, no detectable relationship between the original colour vectors x (p,q) and the colour noise of S 1 or S 2 can be found in the RGB colour domain (Figs. 2 and 3). This considerably increases security and prevents unauthorised decryption through brute-force enumeration. Fig. 1 Graphical interpretation of the used {2, 2}-VSS strategy: (left) 2 2 share blocks included in C {2,2} 0 , (right) 2 2 share blocks included in C {2,2} 1 a b Fig. 2 Test colour images a Natural colour image Parrots b Financial document a b c d e f Fig. 3 Details of colour noise in shares generated by proposed colour image encryption scheme ac Natural colour image df Financial document Images correspond to: a, d original image, b, e colour share S 1 , c, f colour share S 2 The proposed decryption procedure is designed to satisfy the perfect reconstruction property. By design, the original colour data must be recovered from the colour shares S 1 and S 2 (Fig. 3). To this end, the decryption module first decomposes the colour shares and then crypto- ELECTRONICS LETTERS 29th April 2004 Vol. 40 No. 9

Colour image secret sharing - University of Toronto

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Colour image secret sharing - University of Toronto

Colour image secret sharing

R. Lukac and K.N. Plataniotis

A secret sharing scheme suitable for encrypting colour images is

introduced. The required colour shares are obtained during encryption

by operating at the bit-levels. Perfect reconstruction is achieved by the

decryption module using only logical operations.

Introduction: Cryptographic secret sharing techniques are essential

for cost-effective image protection of scanned documents and digital

personal photographs that are distributed via public networks. These

techniques are based on the principle of sharing secret information

among a group of participants. The shared secret can be recovered

only when a coalition of willing participants are polling their

encrypted images, the so-called shares, together [1].

Using the well-known {k, n}-visual sharing scheme (VSS) [1] the

commonly used solutions first produce a halftoned version of the input

colour image and then apply the VSS strategy to generate n shares. If k

(or more) shares are stacked together, the decryption process allows for

the recovery of the visual information. In the case of the simple {2, 2}-

VSS, the dithered version of the continuous-tone colour image is

encrypted into two shares [1]. Both shares should be stacked together

for the visual message to be revealed. Note that colour visual crypto-

graphy schemes currently in use generate decrypted images with

noticeable visual impairments. This can be attributed to (i) the need

for binary or dithered inputs [2], and (ii) the limited number of colours

for which the schemes work well [3]. It is therefore necessary to

develop a new method capable of processing true colour images in a

cost-effective manner.

Proposed colour image secret sharing: Based on the nature of

multimedia applications and the requirements of the end-users, the

secret sharing techniques for colour images must allow for perfect

reconstruction of colour inputs such as natural images and computer-

generated artwork. Modern cryptographic applications need to

dispose with the complete image characteristics of the revealed

input, including colour, structural information and fine image details.

The black and white {k, n}-VSS is conventionally defined using

n�m1m2 basis matrices A0 and A1. Through the use of the matrices

the scheme replaces each input binary pixel of the K1�K2 input

image with an m1�m2 block of binary pixels in each of the n binary

shares S1, S2, . . . , Sn generated. Thus, each share represents an

m1K1�m2K2 image array. In the case of {2, 2}-VSS considered here,

the basis matrices are the 2� 4-sized

Af2;2g0 ¼

1; 0; 1; 0

1; 0; 1; 0

� �and

Af2;2g1 ¼

1; 0; 1; 0

0; 1; 0; 1

� �

and thus the procedure results in two 2K1� 2K2 shares S1 and S2. Each

row of A0{2,2} (or A1

{2,2}) corresponds to 2� 2 blocks s0 ¼ [s0(2p�

1,2q� 1), s0(2p� 1,2q), s0(2p,2q� 1), s0(2p,2q)] and s00 ¼ [s00(2p�

1,2q� 1), s00(2p� 1,2q), s00(2p,2q� 1), s00(2p,2q)] of binary pixels

s0(�,�) and s00(�,�), respectively. Blocks s0 and s00 are used to encrypt the

input binary pixel located at the position ( p, q) of the K1�K2 binary

input.

Let x(i) : Z2!Z3 be a K1�K2 red-green-blue (RGB) colour image

representing a two-dimensional matrix of the three-component colour

vectors (pixels) x( p,q)¼ [x( p,q)1, x( p,q)2, x( p,q)3] located at the spatial

position ( p, q), for p¼ 1, 2, . . . , K1 and q¼ 1, 2, . . . , K2. Assuming

that c describes the colour channel (i.e. c¼ 1 for red, c¼ 2 for green,

and c¼ 3 for blue) and the colour component x(p,q)c is coded with B bits

allowing x(p,q)c to take an integer value between 0 and 2B� 1, the colour

vector x(p,q) can be equivalently expressed in a binary form as follows:

x(p,q)¼P

b¼1B x( p,q)

b 2B�b, where x( p,q)b

¼ [x( p,q)1b , x( p,q)2

b , x( p,q)3b ]2 {0, 1}3

denotes the binary vector at the b-bit level, with b¼ 1 denoting the most

significant bits (MSB). Note that 0 and 1 correspond to white and black,

respectively.

If the cth component of the binary vector x( p,q)b is white (x( p,q)c

b¼ 0),

encryption is performed through [s1, s2]T2C0

{2,2} replacing x(p,q)cb by

binary blocks s1 and s2 in each of the two shares. Otherwise, the

reference binary component is black (x( p,q)cb

¼ 1), and encryption is

defined via [s1, s2]T2C1

{2,2}. The sets C0{2,2} and C1

{2,2} contain all the

matrices (graphically interpreted in Fig. 1) obtained as column permu-

tations of the basis matrices A0{2,2} and A1

{2,2}, respectively. By replacing

the binary components x(p,q)cb with binary blocks s1 and s2 for one

particular b, the process generates two 2K1� 2K2 vector-valued binary

shares S1b and S2

b, respectively. A random number generator guides the

choice of [s1b, s2

b]T and determines the random character of S1b and S2

b.

Thus, the process modifies both the spatial correlation between spatially

neighbouring binary vectors s(u,v)0b

¼ [s(u,v)10b , s(u,v)2

0b , s(u,v)30b ]2 S1

b or s(u,v)00b

¼

[s(u,v)100b , s(u,v)2

00b , s(u,v)300b ]2 S1

b, for u¼ 1, 2, . . . , 2K1 and v¼ 1, 2, . . . , 2K2,

and the spectral correlation among components s(u,v)c0b or s(u,v)c

00b , for

c¼ 1, 2, 3, of the individual binary vectors s(u,v)0b or s(u,v)

00b , respectively.

Bit-level stacking of the encrypted bit-levels produces the colour

vectors s(u,v)0

2S1 and s(u,v)00

2S2 as s(u,v)0

¼P

b¼1B s(u,v)

0b 2B�b and s(u,v)00

¼Pb¼1B s(u,v)

00b 2B�b. Therefore, the colour shares S1 and S2 can be consid-

ered 2K1� 2K2 colour RGB images. Due to random processing taking

place at the bit-levels, S1 and S2 contain only random, colour-noise-like

information. Since encryption is realised in the decomposed binary

vector space, no detectable relationship between the original colour

vectors x(p,q) and the colour noise of S1 or S2 can be found in the RGB

colour domain (Figs. 2 and 3). This considerably increases security and

prevents unauthorised decryption through brute-force enumeration.

Fig. 1 Graphical interpretation of the used {2, 2}-VSS strategy: (left) 2� 2share blocks included in C{2,2}

0 , (right) 2� 2 share blocks included inC{2,2}1

a b

Fig. 2 Test colour images

a Natural colour image Parrotsb Financial document

a b c

d e f

Fig. 3 Details of colour noise in shares generated by proposed colourimage encryption scheme

a–cNatural colour imaged–f Financial documentImages correspond to: a, d original image, b, e colour share S1, c, f colour share S2

The proposed decryption procedure is designed to satisfy the perfect

reconstruction property. By design, the original colour data must be

recovered from the colour shares S1 and S2 (Fig. 3). To this end, the

decryption module first decomposes the colour shares and then crypto-

ELECTRONICS LETTERS 29th April 2004 Vol. 40 No. 9

Page 2: Colour image secret sharing - University of Toronto

graphically processes, now decrypts, the binary vector arrays. Assuming

that (p, q), for p¼ 1, 2, . . . , K1 and q¼ 1, 2, . . . , K2, denotes the spatial

position in the original image and c denotes the colour channel, the

corresponding 2� 2 binary share blocks are sc0b¼ {s(2p�1,2q�1)c

0b ,

s(2p�1,2q)c0b , s(2p,2q�1)c

0b , s(2p,2q)c0b } and sc

00b¼ {s(2p�1,2q�1)c

00b , s(2p�1,2q)c00b ,

s(2p,2q�1)c00b , s(2p,2q)c

00b }. Based on the arrangements of the basis matrices

A0{2,2} and A1

{2,2} used in image encryption, if both blocks are consistent,

i.e. sc0b¼ sc

00b, the decrypted original bit x(i,j)cb is assigned white, i.e.

x(i,j)cb

¼ 0. Otherwise, the blocks are inconsistent, i.e. sc0b6¼ sc

00b and the

original bit is recovered as black, i.e. x(i,j)cb

¼ 1. This logical comparison

forms the decryption function used to restore the binary vectors x(p,q)b .

The procedure finishes with the bit-level stacking x(p,q)¼Pb¼1B x(p,q)

b 2B�b resulting in the original colour vector x(p,q).

a

b e

c d f

Fig. 4 Details of images corresponding to: a, d original image, b, ehalftoning-based solution, c, f proposed colour sharing solution

Results: A number of RGB colour images coded with 8 bits per

colour component have been used to evaluate the proposed crypto-

graphic solution. Examples, such as natural colour image and financial

document, are shown in Fig. 2. Since the proposed method satisfies

the perfect reconstruction property, the efficiency of the proposed

solution is measured only subjectively. The method is compared

(Fig. 4) to the widely used halftoning-based colour {2, 2}-VSS [2].

As can be seen from Fig. 4 the conventional approach makes the

decrypted image darker and changes the spatial resolution of the image.

Conversely, the proposed solution decrypts the colour input without

introducing any impairments or increasing its spatial dimensions.

Moreover, the same excellent performance is delivered for input

images that differ significantly in terms of colour, fine details and

structural information.

Conclusions: A secret sharing technique for cryptographic colour

image processing is introduced. The method operates in the decom-

posed bit-levels of the input colour vectors to change both spatial and

spectral correlation characteristics of the share outputs and produce

random, colour-noise-like images for secure transmission and access.

The decryption process satisfies the perfect reconstruction property

and recovers the original colour image by logically decrypting the

decomposed bit vector-arrays of the colour shares.

Acknowledgment: The work of R. Lukac is supported by a NATO=NSERC Science award.

# IEE 2004 3 December 2003

Electronics Letters online no: 20040381

doi: 10.1049/el:20040381

R. Lukac and K.N. Plataniotis (The Edward S. Rogers Sr. Department of

ECE, University of Toronto, Bell Canada Multimedia Laboratory, Room

BA 4157, 10 King’s College Road, Toronto, Ontario M5S 3G4, Canada)

E-mail: [email protected]

References

1 Lin, C.C., and Tsai, W.H.: ‘Visual cryptography for gray-level imagesby dithering techniques’, Pattern Recognit. Lett., 2003, 24, (1–3),pp. 349–358

2 Hou, J.C.: ‘Visual cryptography for color images’, Pattern Recognit.,2003, 36, (7), pp. 1619–1629

3 Ishihara, T., and Koga, H.: ‘A visual secret sharing scheme for colorimages based on meanvalue-color mixing’, IEICE Trans. Fundam., 2003,E86-A, (1), pp. 194–197

ELECTRONICS LETTERS 29th April 2004 Vol. 40 No. 9