Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 38

Visual Cryptography

(OR) Reading Between the Lines

Ecaterina Valică
http://students.info.uaic.ro/~evalica/
Agenda
 Introduction
 k out of n sharing problem
 Model
 General k out of k Scheme
 2 out of n Scheme
 2 out of 2 Scheme (2 subpixels)
 2 out of 2 Scheme (4 subpixels)
 3 out of 3 Scheme
 2 out of 6 Scheme
 Extensions
 Applications
 References
Introduction
 Visual cryptography (VC) was introduced by
Moni Naor and Adi Shamir at EUROCRYPT
1994.
 It is used to encrypt written material (printed
text, handwritten notes, pictures, etc) in a
perfectly secure way.
 The decoding is done by the human visual
system directly, without any computation cost.
Introduction
 Divide image into two Simple example
parts:
 Key:
a transparency
 Cipher:
a printed page
 Separately, they are
random noise
 Combination reveals an
image
k out of n sharing problem
 Extended to k out of n sharing problem
 For a set P of n participants, a secret image S is
encoded into n shadow images called shares
(shadows), where each participant in P receives
one share.
 The original message is visible if any k or more
of them are stacked together, but totally invisible
if fewer than k transparencies are stacked
together (or analysed by any other method)
Model
 Assume the message consists of a collection
of black and white pixels and each pixel is
handled separately.
 Each share is a collection of m black and white
subpixels.
 The resulting picture can be thought as a [nxm]
Boolean matrix S = [si,j]
 si,j = 1 if the j-th subpixel in the i-th share is black.
 si,j = 0 if the j-th subpixel in the i-th share is white.
Model
m

 Pixels are split:


Pixel Subpixels

 n shares per pixel:


m

si,j Share 1

Share 2

Share n
Model
 The grey level of the combined share is
interpreted by the visual system:
 as black if H (V )  d
 as white if H (V )  d  am .
 1  d  m is some fixed threshold and a  0
is the relative difference.
 H(V) is the hamming weight of the “OR”
combined share vector of rows i1,…in in
S vector.
Model: Stacking & Contrast
m

Stacking
m

: V

H(V)

H(V)  mB

contrast = (mB-mW)/m
H(V)  mW

mW < mB
Model
General k out of k Scheme
 Matrix size = k x 2k-1
 S0 : handles the white pixels
 All
2k-1 columns have an even number of 1’s
 No two k rows are the same
 S1 : handles the black pixels
 All
2k-1 columns have an odd number of 1’s
 No two k rows are the same

 C0/C1 : all the permutation of columns in S0/S1


2 out of n Scheme
 m=n
 White pixel - a random column-permutation of:
1 0 0  0
1 0 0  0

1 0 0  0
 
    
1 0 0  0

 Black pixel - a random column-permutation of:


1 0 0  0
0 1 0  0

0 0 1  0
 
    
0 0 0  1
2 out of 2 Scheme (2 subpixels)
 Black and white image: each pixel
divided in 2 sub-pixels
 Randomly choose between black and
white.
 If white, then randomly choose one of
the two rows for white.
2 out of 2 Scheme (2 subpixels)
 If black, then randomly choose between one of
the two rows for black.
2 out of 2 Scheme (2 subpixels)
2 out of 2 Scheme (2 subpixels)
 Example:
2 out of 2 Scheme (2 subpixels)
 The two subpixels per pixel variant can
distort the aspect ratio of the original
image

+
2 out of 2 Scheme (4 subpixels)
 Each pixel encoded as
a 2x2 cell
 in two shares (key and cipher)
 Each share has 2 black, 2 transparent
subpixels
 When stacked, shares combine to
 Solid black
 Half black (seen as gray)
2 out of 2 Scheme (4 subpixels)
 6 ways to place two black subpixels in the 2 x 2 square

 White pixel: two identical arrays


 Black pixel: two complementary arrays

0101 1010 0011 1100 0110 1001


C 0  {           }
0101 1010 0011 1100 0110 1001
0101 1010 0011 1100  0110  1001
C 1  {           }
1010 0101 1100  0011 1001 0110 
2 out of 2 Scheme (4 subpixels)

Horizontal shares Vertical shares Diagonal shares


2 out of 2 Scheme (4 subpixels)
pixel
0 1 2 3 4 5 0 1 2 3 4 5

share1

share2

stack

4 0
1 5

random
3 out of 3 Scheme (4 subpixels)
 With same 2 x 2 array (4 subpixel) layout
 0011
C0={ 24 matrices obtained by permuting the columns of  0101 }
 
0110 
1100 
C1={ 24 matrices obtained by permuting the columns of 1010 }
 
1001

0011 1100 0101 1010 0110 1001

horizontal shares vertical shares diagonal shares


3 out of 3 Scheme (4 subpixels)

Original Share #1 Share #2 Share #3

Share Share #1+#2 Share #2+#3 Share #1+ #3


#1+#2+#3
2 out of 6 Scheme
 Any 2 or more shares out of the 6
produced
1100 
1100 
 
1100 
C0={ 24 matrices obtained by permuting the columns of   }
1100 
1100 
 
1100 
1100 
1010 
 
1001
C1={ 24 matrices obtained by permuting the columns of   }
 0101
 0011
 
0110 
2 out of 6 Scheme

Share#1 Share#2 Share#3 Share#4 Share#5 Share#6

2 shares 3 shares 4 shares 5 shares 6 shares


Extensions - Four Gray Levels
 Each pixel encoded as
A 3x3 cell
3 black, 6 transparent
 Combine to 3, 4, 5, or 6 black
Extensions - Grey Scale Encryption

 Pixel range from 0 (white) to 255 (black)


 Encode pixel with a half-circle

Share #1 Share #2 Stacked Color


White

Gray

Black
Extensions - Continuous Gray level

 Each pixel encoded as 33% black circle


 Combine for any gray from 33% to 67%
black
Extensions - Extended VC
 Ateniese et al., 2001
 Send innocent looking transparencies, e.g.
Send images a dog, a house, and get a spy
message with no trace.

 
Extensions - Color VC
 Verheul and van Tilborg’s method
 For a C-color image, we expand each pixel to
C subpixels on two images.
 For each subpixel, we divide it to C regions.
One fixed region for one color.
 If the subpixel is assigned color C1 , only the
region belonged to C1will have the color.
Other regions are left black.
Extensions - Color VC
 Verheul and van Tilborg’s method

Four Four
subpixels regions

One pixel on Combined


four- color
image
Extensions - Color VC
 Rijmen and Preneel’s method
 Each pixel is divided into 4 subpixels, with the color
red, green, blue and white.
 In any order, we can get 24 different combination of
colors. We average the combination to present the
color.
 To encode, choose the closest combination, select a
random order on the first share. According to the
combination, we can get the second share.
Extensions - Color VC
 Rijmen and Preneel’s method
Combined Combined
Pattern1 Pattern2 Pattern1 Pattern2
Result Result
Extensions - Color VC
Applications
 Remote Electronic Voting
 Anti-Spam Bot Safeguard
 Banking Customer Identification
 Message Concealment
 Key Management
References
 Naor and Shamir, Visual Cryptography, in
Advances in Cryptology - Eurocrypt ‘94
 www.cacr.math.uwaterloo.ca/~dstinson/visual.
html
 http://homes.esat.kuleuven.be/~fvercaut/t
alks/visual.pdf
 http://
www.cse.psu.edu/~rsharris/visualcryptog
raphy/viscrypt.ppt
References
 http://netlab.mgt.ncu.edu.tw/computersecu
rity/2002/ppt/%E5%BD%A9%E8%89%B2
%E8%A6%96%E8%A6%BA%E5%AF%86
%E7%A2%BC%E5%8F%8A%E5%85%B
6%E6%87%89%E7%94%A8.ppt
 http://163.17.135.4/imgra
/PPT/200500022.ppt

You might also like