This visual cryptography method uses a four sub-pixel subdivision method that I haven't seen before, but almost precisely the same effect is achieved when visually demonstrating a Vernam cipher (a.k.a. one-time pad).<p>1. Create a one-time-pad, or key. This is a set of randomly chosen 1's and 0's. Now, make a bitmap out of this data set, with 1 denoting a white pixel and 0 denoting a black pixel. It will look like static.<p>2. Distribute a copy of the key to the person you are trying to communicate with via a secure channel. (This is the hard part, security wise).<p>3. create your message as a black and white (not greyscale) image. It should have the same dimensions as your key.<p>4. Pixel-wise XOR the key with the message. If the key was well randomized, the resulting cypher will also appear to be perfectly random static.<p>5. Send the cypher to the person who is holding the copy of the key.<p>6. When that person receives the cypher, if he XOR's the cypher with the key, out will pop the original message!<p>The only visual difference to this method vs that in the linked article is that the message won't start to show up when you're a pixel or two out of alignment because there is no four-pixel subdivision. You have to line things up spot-on.<p>The Vernam cipher was originally published in 1926, so it's defintely older than "Visual Cryptography". However, I don't know if the visual demonstrations of it (I've only seen them in lectures, not surprisingly, with transparent overheads!), predate visual cryptography. I've seen a couple of lecturers use this technique to demonstrate how a one-time-pad works and, crucially, why you can't reuse keys more than once.<p>Does anyone know if this Visual Cryptography offers anything useful that a one time pad doesn't? The linked page is very cool and all, and I wish one as well constructed existed for one-time-pads! (Possibly one does, but I was too lazy to spend more than a minute searching for it.)
Visual cryptography is fun! I used the idea to make wedding invitations when I got married. We printed out black and white patterns on transparencies along with some other graphics, then when you overlapped the "his" and "hers" transparencies you got the secret message.<p>It took some fiddling to be effective. I originally wanted a high-resolution image but that made alignment really hard. It ended up being larger pixels at maybe 8 pixels per inch.
I've played around with this idea in the past. Here is a demo with three images encrypted in two different images.<p>use the arrow keys to move the images around or drag them.<p>If you overlap them perfectly, you see one image. 5 pixels left of that is another image, and 5 pixels right of center is a third image. They were originally photos and end up very high contrast :-)<p><a href="http://bettermagician.com/topsecret/" rel="nofollow">http://bettermagician.com/topsecret/</a><p>Here is a version with only two images though with a better grayscale. due to the method I was trying you can see some information leak through:
<a href="http://bettermagician.com/topsecret/big.html" rel="nofollow">http://bettermagician.com/topsecret/big.html</a>
The bottom section about surveys is an established technique:
<a href="http://en.wikipedia.org/wiki/Randomized_response" rel="nofollow">http://en.wikipedia.org/wiki/Randomized_response</a>
I have an idea for using visual cryptography to improve patient safety in healthcare centers. Although it isn't directly related to the type of cryptography mentioned here, I'm interested in sharing it to receive feedback from fellow HN users who know more about visual cryptography. (I'm a layman when it comes to the subject.)<p>Without further ado: My friend, a nurse, told me that serious medical complications can occur because of breakdowns in communication among patients, nurses and other healthcare professionals. As information changes hands, misspellings and misinterpretations of records can seriously harm patients.<p>For example, you might have heard the story of a girl in Ohio who overdosed in 2011 because a nurse accidentally prescribed her the wrong dose of medication. It was a simple clerical error; the nurse had been prescribing the same amount for years.<p>I'm interested in using visual encryption to help validate patient information, especially the types of information (names, contact info, treatment regimens) that remain relatively constant over time.<p>Imagine if there were an easily recognizable, thumbnail-sized image on patient medical records. The image would pose no security risk because no sensitive data could be deduced from it, but even the slightest change in a patient's record would make it appear entirely different.<p>I think this might be one extra useful layer of security that would help patients and healthcare professionals safely validate their information. But, as I said, I'm a layperson when it comes to cryptography.<p>I'm interested in learning more about this approach, as well as the subject in general, and welcome any feedback from people who know more about visual cryptography.
(reposting my comment from the dupe)<p>The exceptionally cool follow-on to this is David Chaum's work on using visual cryptography for voting --<p><a href="http://www.constitution2.org/wiki/files/2004_chaum_secret_ballot_receipts.pdf" rel="nofollow">http://www.constitution2.org/wiki/files/2004_chaum_secret_ba...</a><p>People have since built further on that work, but I seem to recall that Chaum's paper is what started a wave of work on end-to-end verifiable voting.
This reminds me a bit of a CAPTCHA experiment that I put together where the idea is that a human would need to position the cursor in a specific place to be able to read the underlying message. I think its a really cool idea [1].<p>A similar approach could use (a much lower-res) version of this encoding for fun!<p>[1] <a href="http://embed.plnkr.co/LGHrxf/preview" rel="nofollow">http://embed.plnkr.co/LGHrxf/preview</a>
This takes me back to when I was a young boy, and I used to get these James Bond magazines. They used a slightly different technique, but basically there was an image that just looked like random noise like the images shown here, and you'd place a coloured plastic filter over it to reveal a hidden message. Very interesting stuff.
From what I understand, it's hard to known when brute-forced decryption is "done" (i.e., the decryption yielded plain text data that is the original data). As far as I know, machines look for patterns in the potentially decrypted data that look like common formats (or for data that correspond to real letters/words in a certain language). Does visual cryptography make decryption "done-ness" harder to detect?
You can say D-H key exchange works the same way with colors as demonstration. But it's cool to see this demonstration. Moral of the story: don't trust your Google logo :) It might have a hidden secret!
Using Gimp <a href="http://silveiraneto.net/2013/09/18/one-time-pad-using-gimp/" rel="nofollow">http://silveiraneto.net/2013/09/18/one-time-pad-using-gimp/</a>