visual cryptography
DESCRIPTION
Visual Cryptography 2 by 2 scheme, applications,advantages and disadvantages.TRANSCRIPT
-- Pallavi Khandekar
What is VC?
• Secret sharing scheme.
• Visual Cryptography (VC) was introduced by Moni Naor and Adi Shamir in Eurocrypt (1994).
• Used to encrypt written text/ pictures etc in a perfectly secure way.
• Decoding is done by human visual system, without any computation.
Secret Sharing Scheme
• Method of dividing a secret amongst a group of participants.
• Each of the participants get a share of the secret.
• Sufficient number of shares combined reveals the secret.
Share 1
Share 2
Share 1 +Share 2
Example - k by n Scheme (k,n)
• Consider data D (text / image) divided into – n number of shares (D1, D2 …. Dn)– k or more shares when overlapped reveals information
about the data– k-1 or fewer shares when overlapped reveal no
information about the data
• If k = n then all participants are required to reconstruct the secret.
Preliminary Notations
• n = Group size
• k = Threshold
• m = number of pixels in a share. (loss in resolution from the original image to the recovered image)
• ɑ = the relative difference in the weight between the combined shares that come from a white pixel and a black pixel in the original image. Represents loss in contrast.
Preliminary Notations (contd..)
• C0 = Collection of n × m Boolean matrices for shares of white pixel.
• C1 = Collection of n × m Boolean matrices for shares of black pixel.
• V = ORed k rows.
• H(V) = Hamming weight.
• d = number in [1,m]
Example 2 by 2 scheme (2 subpixels)
Partition for black and white pixels in 2 by 2scheme.
Example 2 by 2 scheme (2 subpixels)
• n = 2
• m = 2
• k = 2
• V0 = [0,1] or [1,0]
This scheme can be explained by below values
• V1 = [1,1] or [1,1]
• H(V0 ) = 1
• H(V1) = 2
• ɑ = H(V1) - H(V0 ) / m = 1/2
Implementation• Platform: .Net Framework 3.5
• Language: C#
• Reason for selecting .Net:– Previous experience working on .Net.– It is optimal for developing and demonstrating application through UI.– .NET also has lot of support for image acquisition and manipulation.
• Other Platforms: Matlab, Python etc
DEMO
Technique Used
0 01 1
S0
S1
S0
S1
White Pixel Black Pixel
Results for Text
Results for Image
Result for Image (contd..)
2 by 2 scheme with 4 sub pixels
Horizontal shares Vertical shares Diagonal shares
Results in 2 by 2 scheme (2 subpixels)
• The secret image I is encoded into Share1 & Share2 two shares.
• D is decoded by superimposing these two shares with 50% loss of contrast. (ɑ = ½)
• The decoded image is identified, although some contrast loss is observed.
• Due to pixel expansion the width of the decoded image is twice as that of the original image.
Advantages
• Simple to implement
• Decryption algorithm not required (Use a human Visual System). So a person unknown to cryptography can decrypt the message.
• We can send cipher text through FAX or E-MAIL.
• Lower computational cost since the secret message is recognized only by human eyes and not cryptographically computed.
Disadvantages
• The contrast of the reconstructed image is not maintained.
• Perfect alignment of the transparencies is troublesome.
• Due to pixel expansion the width of the decoded image is twice as that of the original image. Leads to loss of information due to change in aspect ratio.
• Additional processing is required for colored images.
Application• Biometric security
• Watermarking
• Steganography
• Remote electronic voting
• Bank customer identification– Bank sends customer a set of keys in advance– Bank web site displays cipher– Customer applies overlay, reads transaction key– Customer enters transaction key
References
• http://en.wikipedia.org/wiki/File:Visual_crypto_animation_demo.gif
• http://users.telenet.be/d.rijmenants/en/visualcrypto.htm
• http://www.cs.nccu.edu.tw/~raylin/UndergraduateCourse/ComtenporaryCryptography/Spring2009/VisualCrypto.pdf
Thank you!
Questions?