Well, welcome, my apologies. For some reason, I left things that this thing is 6480 and it refuses
to do anything more. So that might become a problem later. We shall see.
What? So first, I wanted to show you this.
Well, this is what we're talking about.
I would like to stress that I did not make this. They used this to sell their product.
Who am I? I'm H.P. von Bram, a board member of the Gado Foundation and a Gado contributor
for the last ten years or so. And I do Gado consulting for a living and I like to play with
old computers in my spare time.
So what is this talk about? This talk is about map two, which stands for message exchange
protocol two from MCI, the company that you just saw the wonderful ad for. The interesting
thing is that it is not SMDB. So what was MCI? MCI was a company that did commercial
email starting in 1983 and they kept running until about 2003. What they did was initially
they had a sort of an alternative to things like talax and so I'm a little bit discombobulated
for everything now working. Talax and telegrams and such. I had a cheaper way of doing that
essentially. I worked as you paid them five dollars a month in 1983 money, so that is definitely
a lot more money than it is today. And that would let you send five messages a month with
some additional costs if you wanted to send more and more messages. And it sounds insane,
but at the time the alternative was to send a telegram where you paid by the word, which
they didn't charge you for. Another thing you could do was you could dial in to the MCI
mail system and send a physical letter to someone and how that worked was they would send the
message through their network to the closest laser printer that was available, printed out and
then mail it to the recipient, meaning that you could send the message from one side of the
US to the other side of the US. And at the time I ridiculously short amount of time. Also at
the time having a laser printer was really expensive. So there were people that would just send
themselves documents that I wanted to wanted to need it to be printed. And it was cheaper to
just use your MCI thing to just have laser laser printed copies of their documents mail to you.
So originally it was a BBS-like system and originally this is a thing that changed pretty
quickly. You didn't pay to dial up because the thinking was you paid your $5. You're going to
be dialing in to the service to send or receive your five messages and that was it. But people
found that you could use the BBS-dyline server because I didn't charge you for storing
draft emails. So people would just use them as a word processor so that he didn't have to buy
a word processor. So that is when the free dial in ended and it's stopping. So you could send
your electronic email via anything at the time that basically lets you send any messages at all.
So if I had a terminal to another person with a terminal for you to post telegram facts,
Deluxe X400 computer and eventually even other internet users. And the internet was really a
very different place at the time. So this was a very proud message that was sent to the periodic
electronic newsletter that was entirely dedicated to MCI mail and they were very proudly telling
you that it switched their connection to computer users by the more standardized X400 interface.
You know the one that we still use today to send email. So why am I even talking about this?
Well first of all just seeing old software working is fun at least I think so. I guess all of you
think so as well because although I should probably wouldn't be in this room. And the other thing
is it's just a completely different way of dealing with emails compared to what we do today. So
first I'm going to give you a very short graphic here about how email works today. So if you send an
email you're email client assuming you're still using email client or realize that a lot of people
will only be using web mail but let's pretend for a moment you're using a native email client.
You type your email in your email client. Your email client makes a connection to an email server.
It uses the simple message simple mail of message transfer protocol. I forget which one of the two it is.
Probably should have remembered that. Send the email to your ISP's SMTP server. Your ISP's SMTP server
will call the ISP's SMTP server of the person that has your mailbox, the target mailbox and then
something else happens whereas the receiver doesn't get their email via the simple mail transfer
protocol that via I-MAP or pop 3. The post office protocol or the mail application block.
That is not how MEP2 worked. So in the bottom left you see a
if you send a message to between two people who are both subscribed to MCI mail.
Send their message to the server using MAP2 and the receiver also uses MEP2. So there is now
distinction between sending and receiving messages between clients and servers with a map2 protocol.
If you wanted to talk to other servers, the map2 servers could talk SMTP to internet users later
when that became a thing or they could talk to so-called REM servers, remote email systems.
We'll talk about that later using different protocols. So the interesting thing here really
is just that there is no defiant role in an MEP2 implementation. So every client has to be a full
server because the only way to send a message is by becoming a server and sending a message to
the client. I'll try to go a little bit faster. MCI was only ever accessible for your dial-up,
so there was never a TCP app interface to it at all. Although they did for some reason have a
web client at some point so you could throw away the way to get your email without dialing up
what's via this web interface. And it expects a connection to only be 7 bit clean, which is really
interesting. So all of the packets expect to only ever send 7 bit ASCII and everything else needs
to be escaped. Which is a very interesting thing. So how does a basic MEP2 session work? The server sends
a reply in it to the client, even though never got to a risk leave. The client can do something
like scan a folder inbox. See if there's any messages. Server replies with a reply scan. The server
then a client says turn in this case that means out there are messages for me. Turn means reverse
the client and server roles. So in this case the client which starts off being the server says,
okay, now I want to be declining now. Then you see the server creates a message and talks
and the interesting thing is that if the client did have the message to send this thing would
look exactly the same except that the turn would come after the client had sent the message using
the exactly the same protocol. So this is another short message example. So for instance if the
client asks what messages are in my inbox and there aren't this is the kind of the message that
would get sent back and forth. The first message that the client that a server receives
is this in this case reply in it. It's a very, it's a very friendly protocol. Every PDU at the
top will always say this is successful or not successful in plain to experience very friendly.
See, this is also a very interesting feature and this is the thing where it really kind of
the parts from what we expect the message service to be now. So every subscriber to MCI mail is essentially
part of a global address book and you can just use the same protocol to see who is behind this
address. So in this case we tried to send an email to just this name so no address or anything
but the MCI mail server did not have an account by this name. And here we tried to send an email
to someone just called Jay Smith and turns out we have more than one Jay Smith persons we have.
And here we have someone just this number and the mail server will happily just resolve this number
for you. So there's not really any anonymity in this. If you give someone your email address or your
MCI number then you've also given them where you work where you live etc. So why did I learn all of this?
Well, the only way to reverse engine or anything is spiked obviously. I was looking at MCI
mail because of the Microsoft Bob mail clients. Why I was looking into that you'll have to see
me other talk yesterday. And somebody was basically trying to scan people to giving them money to
get the MCI to get the mail server clients in Microsoft Bob working again and I was like how hard
can that be two years ago. So I wrote a replacement server because you know come to
come to have this situation going on people not using the Microsoft Bob mail clients terrible thing.
So one of the interesting thing is because the client and the server are the same thing
figuring out what the client and the server expect is relatively straightforward because if you can
reverse engineer clients you've basically seen most of the things that the server can do as well.
The only real difference with the client and the server is that the server so like a normal client will
not reply to a request for what is in my inbox because the client doesn't have one. It everything
else is basically the same. And when I got quite far in reverse engineering it I ended up actually
getting a copy of the official spec from about 92 from someone who used to work there. They actually
did like a new revision of the spec to get rid of some of the names that they had in their official
spec but yeah it was very fun. But I wrote it in Rust and you know when someone uses
Rust because they will tell you. And I will try to see if the demo is going to work and this set up.
I'm somewhat skeptical but we shall give it a go. That's it. This is even going to fit.
Yeah. Well that's a no.
This is the Windows 10 client in 64480. Let's see. See if this will do anything.
Thank you. Thank you. Yeah this is this is a very visual medium
and let's see if the DOS clients will work. I got this is terrible.
That didn't sleep well this is how you want to this is the most you will ever want to see if
from Windows any way. So I guess I guess that's okay. Let's see if my DOS box will start.
Right. I think maybe the demo is going to have to
where I'm just going to have to believe me that it works I guess. Let's see. All right can we go?
Nope. No.
This is fun.
Okay. You think this would be the worst talk I've ever given but it's really not.
I'm going to let's see if this will do this come back now.
Yeah okay well nothing works anymore. I got to quit this. It's something maybe.
Let's see if I can get back to the
this work. No. Okay well I guess that's the end of my time.
You can go to see if you want to try this if you ever want to see this there you can sign up
for an account for this thing at MCIMail.net which I was going to show you but if you ever want to try
this yourself okay.