|Main||Links||Orders||Post||Next Page||Next + 10|
Encryption and Decryption
The Kryptos sculpture, outside the American CIA building. This large cryptogram in bronze was designed to be unsolvable. But it has been mostly solved.
Quoting from the NSA (National Security Agency) homepage: "It is said that NSA is one of the largest employers of mathematicians in the United States and perhaps the world. Mathematicians at NSA contribute directly to the two missions of the Agency: they help design cipher systems that will protect the integrity of U.S. information systems while others search for weaknesses in adversaries' codes."
Several famous ciphers are discussed at the rec.puzzles FAQ.
An online chapter of Numerical Recipes in C discusses encryption via addition of random bits. You'll need either a postscript reader or an acrobat reader.
Lavarand at SGI uses a lavalamp to generate seeds for a random number algorithm... quite nice.
The International PGP (Pretty Good Privacy) Page allows you to download PGP.
A description of the RSA algorithm can be found here. However, there have been improvements made on this algorithm, as described in The Art of Computer Programming.
FAQ is available here... a very nice intro to this field.
Basically, codes and ciphers involve doing something clever to a message.
Cryptography Lessons is a page discussing 40 different methods such as this one.
For example, the above was coded by turning packets of three letters backwards. It can be a lot of fun to try solving the clever trick that has been used. (I'll be adding such a puzzle here). Suppose, for example, I wrote out this paragraph in binary bits, then added the binary for sqrt(3). Such a message would be initially hard to crack, but once the trick was learned, it would be easy.
Methods for generating pseudo-random bits are therefore very important to cryptography.
The Quest for the Holy Value shows how randomness can actually lead to some non-random results. A very nice presentation.
Hotbits discusses Random
Numbers. I like their Java Applet of random noise.