Is it just me, or are the names Alice and Bob used often in connection to programming, emailing, encoding...? Where did these names come from? What is their relation to computers and programming?
The names Alice and Bob are commonly used placeholder names for archetypal characters in fields such as cryptography and physics. The names are used for convenience, since explanations such as "Person A wants to send a message to person B" can be difficult to follow in complex systems involving many steps. Following the alphabet, the specific names have evolved into common parlance within these fields—helping technical topics to be explained in a more understandable fashion.
I believe these names are used because they are common names for the first two letters of the alphabet. Another example is Charlie; in security questions, Charlie is often attempting to eavesdrop on Alice and Bob's comunications.
I have a background in telecom. We talk a lot about the "A side" (caller - the originator) and the "B side" (called - the destination) of a call. When someone in telecom says "... and the A side did this or that...", we all understand it's the originator of the call who took action.
Now that we are migrating to voice-over-ip, you can see the same Alice and Bob (the originator and the destination) used in to illustrate the SIP RFC 3261 (http://www.ietf.org/rfc/rfc3261.txt).
This is the first few lines from the very first figure from the SIP RFC 3261 (note that the proxies are also A [Atlanta] and B [Biloxi]):
atlanta.com . . . biloxi.com
. proxy proxy .
. .
Alice's . . . . . . . . . . . . . . . . . . . . Bob's
softphone SIP Phone
| | | |
| INVITE F1 | | |
|--------------->| INVITE F2 | |
| 100 Trying F3 |--------------->| INVITE F4 |
|<---------------| 100 Trying F5 |--------------->|
So
Alice = the A side of a call, the originator
Bob = the B side of a call, the destination
I guess you can extend that to all types of request/response systems. Alice is the source, B is the sink.