A very interesting idea. I tried it with a few words, like a passphrase for example. It wouldn't hide those very well because it is like a word search puzzle. With random characters, including much of the character set you use to hide them, it would work quite well for manual use.
Incidentally, I couldn't use the print function. It had a problem with an unknown certificate -- not sure why you would use ssl since the data should be all local -- but I guess that is probably simple to fix. Let me know if it works on some machines, and I'll try to help figure out what happened. Maybe it's incompatible with the Opera browser?
what is the purpose of showing it and what is your purpose of hiding it?
I didn't notice any problem with certificate. Would you send me screenshot of that message?
If Opera gives you trouble also, I can suggest that you try having the page run in 'quirks mode' which supposedly makes it more tolerant. You could detect the Opera browser and use quirks mode only in that case.
At one point I got a non-responsive page in Chromium and had to kill it. I also noticed that when Opera repainted a page it was quite slow at one point. I suspect there may be cases when the script becomes quite compute bound.
This is clearly a good idea for something like a bitcoin private key. It could be attacked if the image were scanned and the non-randomness of your coding sequence used to reduce the trials. I think it would be interesting to analyze your idea further, since protecting the private keys without losing them is one of the major issues with bitcoin right now.
I havent get the purpose of this tool yet. @ SonLight wrote like some puzzle games or something familiar. Also there is no certificate error showing in my chrome either. Good luck
You might want to randomize the other characters better and include fake words to confuse an attacker if the document on which it is printed becomes compromised.
I tried it again. In Opera it still brings up another window when you say "print", which then disappears. In Firefox it brings up a blank browser window, then brings up a standard Linux print form, which works fine.
I don't consider this very secure at present, but it's a great idea to experiment with. It surely is good enough to hide something from friends and family. I hope you think of a way to make use of a complex pattern while being easier to remember than most passwords.
By studying your html-code and js-code I learned a lot of new things.