I have been running an Anonymous IRC server for a short time now. This allows a real time conversation, as opposed to the monologue provided via netnews or mail. Currently, when a user logs in, the internal (and external) representation of the user is: NICKNAME!user@anon.host Users have the ability to change their Nickname, and all other people have to identify people is by their Nickname. People who have used IRC for awhile have told me that this would promote anarchy on the channels, because it makes it impossible to ban/ignore certain people from conversations. So my fix is going to be running users Hostname through a one-way hash function. So references to users will be: NICKNAME!user@HASH(Real-Hostname) The question is, what kind of hash do it use? My first idea was to use a hash function that has many collisions, a simple "summing" of the ascii characters. This would make sure that people would have certain ID's, and ban/ignore would work. This would also make it harder to be sure you had the correct host if you were going to try to brute force out a users hostname. A couple other people have suggested using a hash function that is much more complex. So that no collisions will occur, and all users will have unique "ID's" associated with their Nickname. If collisions occur, it is ok. Just the possibility for banning/ignoring people you don't intend goes up. Any suggestions on this one? I was also thinking of allowing users to come on the system as NICK!user@anon.host and then switch between that, and their NICK!user@HASH(Real-Host). This would allow people to be both completely anonymous or, if they wanted, have and identity attached to themselves. This way people could ban/ignore anyone at "anon.host" if they didn't want to deal with "anonymous" people. To connect to my server, load up an IRC client, and change your server to "drown.slip.andrew.cmu.edu". In standard clients, "/server drown.slip.andrew.cmu.edu", is how to do this. For more information about irc, ftp to CSA.BU.EDU. -Matt panzer@drown.slip.andrew.cmu.edu