Visual Cryptography

29,340 views

Published on

Naor's and Shamir's Visual Cryptography

Published in: Technology, Art & Photos
8 Comments
12 Likes
Statistics
Notes
  • Njce! Thanks for sharing.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • algo???????
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • how to genrate into n shares
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hi. My name is Dat. I'm a student in a university in Viet Nam.
    I'm studying about Visual Crytography and I see your document about VC in the Internet.
    I think it's a interest project and If you have code C# and document about VC, please give me.
    Thank you so much!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • thnx but more examples will be better
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
29,340
On SlideShare
0
From Embeds
0
Number of Embeds
90
Actions
Shares
0
Downloads
1,822
Comments
8
Likes
12
Embeds 0
No embeds

No notes for slide

Visual Cryptography

  1. 1. Visual Cryptography (OR) Reading Between the Lines Ecaterina Valică http://students.info.uaic.ro/~evalica/
  2. 2. Agenda <ul><li>Introduction </li></ul><ul><li>k out of n sharing problem </li></ul><ul><li>Model </li></ul><ul><li>General k out of k Scheme </li></ul><ul><li>2 out of n Scheme </li></ul><ul><li>2 out of 2 Scheme (2 subpixels) </li></ul><ul><li>2 out of 2 Scheme (4 subpixels) </li></ul><ul><li>3 out of 3 Scheme </li></ul><ul><li>2 out of 6 Scheme </li></ul><ul><li>Extensions </li></ul><ul><li>Applications </li></ul><ul><li>References </li></ul>
  3. 3. Introduction <ul><li>Visual cryptography (VC) was introduced by Moni Naor and Adi Shamir at EUROCRYPT 19 94 . </li></ul><ul><li>It is used to encrypt written material (printed text, handwritten notes, pictures, etc) in a perfectly secure way. </li></ul><ul><li>The decoding is done by the human visual system directly , without any computation cost. </li></ul>
  4. 4. Introduction <ul><li>Divide image into two parts: </li></ul><ul><ul><li>Key: </li></ul></ul><ul><ul><ul><li>a transparency </li></ul></ul></ul><ul><ul><li>Cipher: </li></ul></ul><ul><ul><ul><li>a printed page </li></ul></ul></ul><ul><li>Separately, they are random noise </li></ul><ul><li>Combination reveals an image </li></ul>Simple example
  5. 5. <ul><li>Extended to k out of n sharing problem </li></ul><ul><li>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. </li></ul><ul><li>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) </li></ul>k out of n sharing problem
  6. 6. Model <ul><li>Assume the message consists of a collection of black and white pixels and each pixel is handled separately. </li></ul><ul><li>Each share is a collection of m black and white subpixels. </li></ul><ul><li>The resulting picture can be thought as a [ n x m ] Boolean matrix S = [s i,j ] </li></ul><ul><ul><li>s i,j = 1 if the j-th subpixel in the i-th share is black. </li></ul></ul><ul><ul><li>s i,j = 0 if the j-th subpixel in the i-th share is white. </li></ul></ul>
  7. 7. Model <ul><li>Pixels are split: </li></ul>Pixel Subpixels s i,j m <ul><li>n shares per pixel: </li></ul>m n Share 1 Share 2 Share n
  8. 8. <ul><li>The grey level of the combined share is interpreted by the visual system: </li></ul><ul><ul><li>as black if </li></ul></ul><ul><ul><li>as white if . </li></ul></ul><ul><li>is some fixed threshold and </li></ul><ul><li>is the relative difference. </li></ul><ul><li>H(V) is the hamming weight of the “ OR ” combined share vector of rows i 1 ,…i n in S vector. </li></ul>Model
  9. 9. Stacking Model: Stacking & Contrast m m : V H(V) H(V)  m B H(V)  m W m W < m B contrast = (m B -m W )/m
  10. 10. Model
  11. 11. General k out of k Scheme <ul><li>Matrix size = k x 2 k-1 </li></ul><ul><li>S 0 : handles the white pixels </li></ul><ul><ul><li>All 2 k -1 columns have an even number of 1’s </li></ul></ul><ul><ul><li>No two k rows are the same </li></ul></ul><ul><li>S 1 : handles the black pixels </li></ul><ul><ul><li>All 2 k -1 columns have an odd number of 1’s </li></ul></ul><ul><ul><li>No two k rows are the same </li></ul></ul><ul><li>C 0 /C 1 : all the permutation of columns in S 0 /S 1 </li></ul>
  12. 12. 2 out of n Scheme <ul><li>m = n </li></ul><ul><li>White pixel - a random column-permutation of: </li></ul><ul><li>Black pixel - a random column-permutation of: </li></ul>
  13. 13. 2 out of 2 Scheme (2 subpixels) <ul><li>Black and white image: each pixel divided in 2 sub-pixels </li></ul><ul><li>Randomly choose between black and white. </li></ul><ul><li>If white, then randomly choose one of the two rows for white. </li></ul>
  14. 14. 2 out of 2 Scheme (2 subpixels) <ul><li>If black, then randomly choose between one of the two rows for black. </li></ul>
  15. 15. 2 out of 2 Scheme (2 subpixels)
  16. 16. 2 out of 2 Scheme (2 subpixels) <ul><li>Example: </li></ul>
  17. 17. 2 out of 2 Scheme (2 subpixels) + <ul><li>The two subpixels per pixel variant can distort the aspect ratio of the original image </li></ul>
  18. 18. 2 out of 2 Scheme (4 subpixels) <ul><li>Each pixel encoded as </li></ul><ul><ul><li>a 2x2 cell </li></ul></ul><ul><ul><li>in two shares (key and cipher) </li></ul></ul><ul><li>Each share has 2 black, 2 transparent subpixels </li></ul><ul><li>When stacked, shares combine to </li></ul><ul><ul><li>Solid black </li></ul></ul><ul><ul><li>Half black (seen as gray) </li></ul></ul>
  19. 19. <ul><li>6 ways to place two black subpixels in the 2 x 2 square </li></ul><ul><li>White pixel: two identical arrays </li></ul><ul><li>Black pixel: two complementary arrays </li></ul>2 out of 2 Scheme (4 subpixels)
  20. 20. Horizontal shares Vertical shares Diagonal shares 2 out of 2 Scheme (4 subpixels)
  21. 21. 2 out of 2 Scheme (4 subpixels)
  22. 22. share1 share2 stack pixel random 0 1 2 3 4 5 0 1 2 3 4 5 4 1 0 5
  23. 23. 3 out of 3 Scheme (4 subpixels) <ul><li>With same 2 x 2 array (4 subpixel) layout </li></ul>C 0 ={ 24 matrices obtained by permuting the columns of } C 1 ={ 24 matrices obtained by permuting the columns of } 0011 1100 0101 1010 0110 1001 horizontal shares vertical shares diagonal shares
  24. 24. 3 out of 3 Scheme (4 subpixels) Original Share #1 Share #2 Share #3 Share #1+#2+#3 Share #1+#2 Share #2+#3 Share #1+ #3
  25. 25. 2 out of 6 Scheme <ul><li>Any 2 or more shares out of the 6 produced </li></ul>C 0 ={ 24 matrices obtained by permuting the columns of } C 1 ={ 24 matrices obtained by permuting the columns of }
  26. 26. 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
  27. 27. Extensions - Four Gray Levels <ul><li>Each pixel encoded as </li></ul><ul><ul><li>A 3x3 cell </li></ul></ul><ul><ul><li>3 black, 6 transparent </li></ul></ul><ul><li>Combine to 3, 4, 5, or 6 black </li></ul>
  28. 28. <ul><li>Pixel range from 0 (white) to 255 (black) </li></ul><ul><li>Encode pixel with a half-circle </li></ul>Extensions - Grey Scale Encryption Share #1 Share #2 Stacked Color White Gray Black
  29. 29. Extensions - Continuous Gray level <ul><li>Each pixel encoded as 33% black circle </li></ul><ul><li>Combine for any gray from 33% to 67% black </li></ul>
  30. 30. <ul><li>Ateniese et al., 2001 </li></ul><ul><li>Send innocent looking transparencies, e.g. Send images a dog, a house, and get a spy message with no trace. </li></ul>Extensions - Extended VC  
  31. 31. Extensions - Color VC <ul><li>Verheul and van Tilborg ’s method </li></ul><ul><ul><li>For a C-color image, we expand each pixel to C subpixels on two images. </li></ul></ul><ul><ul><li>For each subpixel, we divide it to C regions. One fixed region for one color. </li></ul></ul><ul><ul><li>If the subpixel is assigned color C 1 , only the region belonged to C 1 will have the color. Other regions are left black. </li></ul></ul>
  32. 32. Extensions - Color VC <ul><li>Verheul and van Tilborg ’s method </li></ul>Four subpixels Four regions Combined One pixel on four- color image
  33. 33. Extensions - Color VC <ul><li>Rijmen and Preneel ’s method </li></ul><ul><ul><li>Each pixel is divided into 4 subpixels, with the color red, green, blue and white. </li></ul></ul><ul><ul><li>In any order, we can get 24 different combination of colors. We average the combination to present the color. </li></ul></ul><ul><ul><li>To encode, choose the closest combination, select a random order on the first share. According to the combination, we can get the second share. </li></ul></ul>
  34. 34. Extensions - Color VC <ul><li>Rijmen and Preneel ’s method </li></ul>Pattern1 Pattern1 Pattern2 Pattern2 Combined Result Combined Result
  35. 35. Extensions - Color VC
  36. 36. Applications <ul><li>Remote Electronic Voting </li></ul><ul><li>Anti-Spam Bot Safeguard </li></ul><ul><li>Banking Customer Identification </li></ul><ul><li>Message Concealment </li></ul><ul><li>Key Management </li></ul>
  37. 37. References <ul><li>Naor and Shamir, Visual Cryptography, in A dvances in Cryptology - Eurocrypt ‘94 </li></ul><ul><li>www.cacr.math.uwaterloo.ca/~dstinson/visual.html </li></ul><ul><li>http://homes.esat.kuleuven.be/~fvercaut/talks/visual.pdf </li></ul><ul><li>http:// www.cse.psu.edu/~rsharris/visualcryptography/viscrypt.ppt </li></ul>
  38. 38. References <ul><li>http://netlab.mgt.ncu.edu.tw/computersecurity/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%B6%E6%87%89%E7%94%A8.ppt </li></ul><ul><li>http://163.17.135.4/ imgra /PPT/200500022.ppt </li></ul>

×