Contents - Keywords - Search || InstantCrypt Home - Previous - Next


© 2006 by Wolfgang Schlage

Crypthography Intuitive: Twintograpy

Cryptographic Principles


In traditional ("symmetrical") cryptography, sender and recipient share a key, which first the sender uses to encrypt and then the recipient uses to decrypt the message that they want to keep secret. This key has to be secret too, because otherwise the encrypted message could be read by others. This creates the problem of how to get this key from the sender to the recipient: If it is not safe to send the message, can it be safe to send the key?


In public-key cryptography, each participant has his/her own key, or to be more exact, each one has his/her own key pair.

A Pair of Twins for Secret Messaging


Such a key pair works like a pair of twins who, growing up together, have developed a secret language: what is spoken in that secret language by one twin, only the other can understand, and what is said by the other can only be understood by the first. In our case, these twins would be even more extreme than usual twins with a secret language: each twin is not even able to understand what he (or she) himself (or herself) has said! Thus, to retranslate from the secret into the normal language it always takes the other twin. 


If you were so lucky as to be able to employ such a peculiar pair of twins and wanted to get confidential information from others, you would send one of the twins (the more outgoing, let’s say) into the world (this would be your "public" twin) and let the other one (your "private" or "secret" twin) stay home with you. Then, whoever wants to send you a secret message could speak with your public twin, have him/her translate the message into their secret twin language, and then send it to his sibling at home who would retranslate the message into normal language for you.


You would guard your private twin extremely well, as you would not want to see him/her tempted or forced to work for others, telling them the secrets that were only meant for you. But you would not worry at all about your public twin, who can roam about freely: as your public twin cannot understand the secret words s/he has spoken him-/herself, even if it was just a second ago (!), nobody could use him/her to get access to your messages once they are made secret by translation.


And if you wanted to send confidential information to others, you would try to get a hold of their public twin, have him/her translate your message into their secret language, and send it to their private/secret twin. You only want to be really sure that that public twin to whom you give your secrets really works for the intended recipient of your messages (and does not just pretend to do so, instead working for your worst enemy!). Thus, you might give the alleged owner of a public twin a call, asking her to describe her public twin to you (height?,

eye color?, body type?), so you can see if you are in the process of being duped.


Use Your Twins to Authenticate ( = "Sign") Messages


You can also use your twins to “sign” a message, that is, give other people a way to verify that you authorized it: Just let your secret twin translate the message into the secret language he shares only with his sibling and attach this translation as your “twintological signature” to the open or secret version of the message. Whoever wants to know if the message is from you, just has to get a hold of your public twin and ask him to retranslate the “signature” into normal language. If the retranslated signature and the message correspond, it shows that are both from you: only someone with access to your secret twin could have produced it in the first place. This is another reason why you want to guard your secret twin so well, namely to prevent others from forging your twintological signature.


Summing Up Twintology


So, to make your twintological system work, you have to:



1. 

Get a pair of twins,


2.

Send your public twin around to everyone who wants to send you a message,


3.

Get a hold of the public twin of all the people to whom you want to send messages.


Back to Keys


Now that I think about it—such a pair of twins is probably pretty hard to come by in the real world. But, hey!, with a public-key encryption program you can create your own pair of keys that work just as well (and cheaper, too). You send one of them (your public key) to whomever wants to send you confidential messages, and the other you keep secret, to decipher/decrypt these messages and to sign your own.


And you would collect the public keys of all your correspondents, so that you can encrypt messages to each one of them. (We call such a key collection a keyring, but actually it looks more like an address book.) When you want to send a message to a friend, you pick out his/her key from the key ring (just as you would normally look up a mailing address in an address book) and use it for encryption.

To sum it up, to participate in public key cryptography, you have to:

 


1. 

Create your own key pair.


2.

Send your public key to all your correspondents and keep your private key secret.


3.

Collect the public keys of all your correspondents.


And then you are set: welcome to the world of public-twin, umm, -key, cryptography!