[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DNA] Ordering Hash-based RAs



1 sounds fine.

            jak

----- Original Message ----- 
From: "Brett Pentland" <brett.pentland@eng.monash.edu.au>
To: <greg.daley@eng.monash.edu.au>
Cc: <dna@eng.monash.edu.au>
Sent: Sunday, May 22, 2005 11:25 PM
Subject: Re: [DNA] Ordering Hash-based RAs


> Greg Daley wrote:
> > Dear DT,
> > 
> > I really like the hash based RA scheme indicated in the
> > document draft-pentland-dna-protocol-00.
> 
> :)  That's good to hear.
> 
> > I think there's an issue with its robustness to false
> > or hijacking routers, which may limit its usefulness though.
> 
> Aside:  There will be many things that rogue devices can do to
> disrupt things if SEND is not used.  If SEND is used then I don't
> think the following scenario is a problem, however...
> 
> > The text presented allows a particular router to select an
> > interface identifier such that its SHA-1 hash will XOR with
> > the solicitor's received IID to provide the fastest ranked
> > response with high likelihood?
> > 
> > This is because the hijacking router knows the other Router's
> > addresses and their SHA-1 hashes.  It can precompute a hash likely
> > to XOR with the lowest value.  That is: it can generate a hash with
> > all leading zeros, by repeated computation of SHA-1 with different
> > link-local addresses.
> > 
> > With existing EUI-64 addresses, the high order bits of the
> > IPv6 IID aren't well distributed.  In fact, there's a likelihood
> > that the seven of the first 8 bits of the IID will be zero.
> > 
> > Considering that, the XOR will be lowest if the first few bits in the
> > usurping router's SHA-1 hash are zero.
> > 
> > In this way, a router has to perform O(2^zeros) SHA-1 computations
> > in order to find out a valid IID for generating a sequence of
> > leading zeros for the hash.
> > 
> > Link-local addresses with known low hashes could even be precomputed.
> > 
> > The essential issue here is that the solicitors' addresses aren't
> > well distributed.
> 
> Agreed.
> 
> > Two alternatives which overcome this issue are:
> > 
> > 1) Perform the XOR comparison with the low order bytes of the IID
> >    first (either reverse the XORed bit strings, or do bytewise
> >    comparisons starting at the 16th byte).
> > 
> > 2) Ensure that the solicitors' input values are well distributed,
> >    perhaps using a hash.
> > 
> > I'd lean towards 1).  It's probably fastest computationally, and
> >   was easy to implement in 16th-to 1st byte comparison form.
> 
> I'd also lean towards 1) since it doesn't require calculating a hash
> for each RS received.  Doing the bytewise comparison starting at the
> low order byte (the 8th since there's only 64 bits in the IID) sounds
> like the better option to me, and sounds worth doing.
> 
> Cheers,
> Brett.
>