I was thinking about cryptography the other day (ok, I know I'm weird, shut up) - and I was imagining a good analogy for public key cryptography. I want to write it down before I forget it. Let's say that you created a lockbox (creating a public/private key pair) with two openings. The first opening allows you to easily remove the contents of the lockbox, perhaps a lid to the box. This is locked and you keep the key to yourself (your private key). The second opening is shaped in such a way that you can deposit documents, but documents can not be retrieved without considerable effort. The shape/size and limits of the second opening represent the complexity of the algorithm you've chosen. Perhaps that opening is S shaped, and accepts at most 1 sheet of paper at a time (thus you would have a hard time obtaining the contents of the lockbox through that hole). This opening is locked shut with a second lock, but copies of these keys are made and given to anyone asking for one. By using this second key, people who want to make a deposit know that the key is for YOUR lockbox, and they use the key to open it, verifying that you will be the recipient. They fold their message into that S-shape and stick it through the hole, unable to retrieve it. You come along and open the box with your key and easily remove the now unfolded sheet of paper.
I'll have to analyze the analogy sometime when I have the time to see how it holds up and can be worked to make it a more interesting story (and see if it leads to any insights).