Thursday, April 06, 2000, 9:06:57 AM, Dirk wrote:
SL>>     This is untrue.  The string, as a whole, needs to be unique, that is the
SL>> /only/ requirement of it per RFC822.

> But that _must_ be guaranteed!! that is _another_ requirement by this RFC.

    Dirk, what part of "The string, as a whole, needs to be unique" does not
state what you just said?  Why are you reiterating it.

SL>>     No, it is not wrong.  For it to be wrong means that the above assumption
SL>> is true.

> IMHO my assumption is true :-)

     4.6.1.  MESSAGE-ID / RESENT-MESSAGE-ID

             This field contains a unique identifier  (the  local-part
        address  unit)  which  refers to THIS version of THIS message.
        The uniqueness of the message identifier is guaranteed by  the
        host  which  generates  it.  This identifier is intended to be
        machine readable and not necessarily meaningful to humans.   A
        message  identifier pertains to exactly one instantiation of a
        particular message; subsequent revisions to the message should
        each receive new message identifiers.

    Your assumption is false.  Nowhere in the above section does it state that
the machine name even be used.

> How can the Host ensure that if all Strings after "@" are allowed??

    You're making several false assumptions in this statement:

1: That strings require @.
2: That a domain is required after @.
3: That there aren't other methods of providing for a unique MSGID.

> If you have two the Bat on different PCs sending mails at the same
> time with the same string after the "@" you get the same MID (stronger
> algorithm or not).

    No, you do not.  It is not an automatic thing.  Furthermore a sufficiently
strong algorithm would make duplication such an astronomically improbable
thing that, for all intents and purposes, it would be impossible.

> Every one can get his own FQDN, even for free.

    No, they cannot.  Furthermore, relying upon people to do so means that
most people won't and, thus, we get duplication.

    I now have some simple math problems for you.

    Please calculate the probability of duplication occurring in the following
algorithm for MSGID (<>'s are to denote the different elements):
<YYYYMMDDhhmmss><pid><rand_shortint>@<HOST>

    Let me break it down for you.  A person would have to send a message from
the same ISP at the exact same second running a program with the exact same
pid which then chooses the exact same integer.  Well, the PID on my Linux box
can be anything from 1 to ~32,000 and a shortint is 65535.  So right there for
those two elements we have approximately 2,147,418,112 elements.  And that is
only for one /SECOND/.  Each day that means 1.8553692492e14 combinations.  Let
me write that out.  185,536,924,920,000.

    Now, clearly you have indicated this is not unique enough for you.  Fine.
How about this one, just as simple:
MD5_hash(<YYYYMMDDhhmmss><pid><rand_shortint><FROM><TO/BCC>@<HOST>)

    IE, now it is the same number of combinations as above except we've added
the FROM field, the TO field and the BCC field.  We then take that and run it
through an MD5 hashing algorithm and use the has as the MSGID.  It is, in
theory, possible for MD5 hashes to take two inputs and come up with the same
hash, but it isn't all that likely.  Now, I'm just a layman when it comes to
how MD5 hashes work, but I do believe you can take a string and generate a 64,
email legal character hash and use that as a MSGID (remember, it doesn't need
to be human readable).  That means, in theory, we need the email address
sending to the same email addresses at the same second with the same pid on
the same ISP and choose the same shortint before the MD5 hash is unique.  If
my math is correct, we have 8.3436993590661e93.  Let me write that out.
8,343,699,359,066,100,000,000,000,000,000,000,000,000,000,000,000,000,000,000,
000,000,000,000,000,000,000,000,000,000,000,000.  Of course I'm not up on M%
hashes, I admitted that, so the total space available is most likely smaller
than that.  Of course, even at 1/2 it is still a pretty large number.

    Tell me, Dirk, is that unique enough for you?  Considering both of these
are trivial for the computer to do each time by comparison to require each
user to get a FQDN when most can barely hit the send button I think it is also
clear which is better to try to go for.

-- 
         Steve C. Lamb         | I'm your priest, I'm your shrink, I'm your
         ICQ: 5107343          | main connection to the switchboard of souls.
-------------------------------+---------------------------------------------

-- 
--------------------------------------------------------------
View the TBUDL archive at http://tbudl.thebat.dutaint.com
To send a message to the list moderation team double click here:
   <mailto:[EMAIL PROTECTED]>
To Unsubscribe from TBUDL, double click here and send the message:
   <mailto:[EMAIL PROTECTED]>
--------------------------------------------------------------

You are subscribed as : [email protected]


Reply via email to