From: hde+@cs.cmu.edu (Herbert Enderton)
Subject: Re: RSA (Was: RSA gobbledygook)
Organization: School of Computer Science, Carnegie Mellon
Date: Fri, 20 Nov 1992 23:09:30 GMT

In article <By0q3I.EEp@ncifcrf.gov> diachun@ncifcrf.gov (Justin Diachun) writes:
>In article <Bxz86J.GLo.1@cs.cmu.edu> hde+@cs.cmu.edu (Herbert Enderton) writes:
>>(2) Each server could have a key that it requires, along the lines of
>>the current reserved.c key.  The people officially sanctioned to
>>compile blessed binaries (there are very few of them and we must trust
>>them anyway) get all the keys.  So the binaries they release will be
>>allowed on all the servers that participate in this process.  Since
>>some client-hackers lean towards releasing info-borgs and others are
>>more conservative, a finicky server-god could choose which client-
>>hackers to give his key to.
>
>If I see this right, you imply that every time a new server is created
>that people want a client to play on, the client 'god' (we need a new
>term for them) would need to recompile his client on all platforms and
>put it up for ftp.  This happens fairly often--for example, the recent
>name change from ??? to romulus to patriot for the ulowell server.
>Then people that want to try the new server have to go get a new copy
>of the client.  This sounds more painful to me than a one time 'hunt
>for crypt' startup.  It seems to me that it should be the server god's
>job to say who can use his server, not a client controller who decides
>which servers he likes.  Unless I missed the point somewhere?

Okay, say there are 30 server gods (30 that care enough about stomping
out borgs that they want this system) and 5 blessed-client-releasers.
Each of the 30 server gods has a private key (e.g. a codeword, it
needn't be so hairy as reserved.c), and the client-releasers have
almost all the keys.  (One of the client-releasers trafficks in
info-borgs, so the conservative half of the server gods withhold their
keys from him).  Now a 31st server god, Alice, wants to start a new
no-borgs server.  If any of the 30 server gods, say Bob, trusts Alice
enough to give her his key (Bob just has to trust Alice not to create a
borg blessed for Bob's server), then Alice can set up her server with
Bob's key and nobody will have to modify the clients at all.  If nobody
trusts Alice, then she'll have to start her own key, tell it to the
client-releasers, and anybody that wants to play on her server would
have to ftp the updated client, so yes this would be a hassle, but I
doubt it would happen so often.  Moving a server from romulus to
patriot is no problem, you can just keep the same key.

Using RSA to exclude borgs is like using a sledgehammer to open a
walnut.  A simple private key system like the above has all the
important properties of the RSA stuff, but without any of the legal
hassles.  Actually, since I believe the server-gods to be a generally
trustworthy lot, I think the single-key-for-everybody system we have
now is adequate, but maybe it's time to change the key.  It's like they
tell you to change your password every semester, well, we've had the
same reserved.c for years now, and it's gotten out.

I don't understand all the legal problems with using RSA or other PKE
systems, but they seem to be considerable.  If there are people that
won't be able to legally play netrek on popular servers because of this
stupid system, I say scrap it.  Even if all it means is that every
player has to get a hold of crypt, ftp the right binary, and perhaps
exchange mail with Mike Polek, that means greatly increasing the
difficulty for a new player to play the game.  I don't want to see
hundreds of posts from newbies saying "okay, I've got netrek-dec.crypt,
now what do I do?".  I'm sorry you guys wasted so much effort
implementing RSA, but let's not throw good time after bad.

 -- Bert (Red Shirt)