[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: about draft-bagnulo-multi6dt-hba-00.txt
Hi Francis,
sorry for the delay
thanks for these new comments, they are very much appreciated.
some answers below...
El 01/11/2004, a las 16:40, Francis Dupont escribió:
In your previous mail you wrote:
But there is at least
another interpretation... BTW the encoding gives only a static (i.e.,
easy to precompute : 0x 30 42 30 0D 06 09 2A 86 48 86 F7 0D 01 01 01
05 00
03 31 00 <48 octets> but please check :-) prefix.
ok, i will try to clearify this
=> note that I've checked this...
Finally I am not convinced a type tag is not required for HBA CGAs,
i.e.,
today HBA CGAs are not more usable than CGAs...
i am not following this, could you expand a bit?
=> the question was about type tags for HBAs... finally I believe we
don't need them, i.e., HBAs which are not CGAs have no use of type
tags,
HBAs which are CGAs are covered by the CGA document
(draft-ietf-send-cga-06.txt).
agree
PS: I have an OpenSSL module for CGAs (with new/free/dup/d2i/i2d and
check/sign/verify). I can send it to who'd like to extend it to HBA
(I'm using the standard BSD licence). It should be easy because if
I've
understood the design the multi-prefix extension is an extension
field?
we are planning to implement HBA, so this would be really helpful.
I will contact you later.
=> I had some free time in this long weekend so I wrote the code
great!
are you planning to make it public?
and
now I have some new comments:
- draft-ietf-send-cga-06.txt is not clear enough about where the
extension
fields are included in the hash (here the multi-prefix extension) :
... Note that the hash values are computed over
the entire CGA Parameters data structure, including any unrecognized
extension fields.
but:
2. Concatenate from left to right the modifier, 9 zero octets, and
the encoded public key. Execute the SHA-1 algorithm on the
concatenation. Take the 112 leftmost bits of the SHA-1 hash
value. The result is Hash2.
and:
5. Concatenate from left to right the final modifier value, the
subnet prefix, the collision count and the encoded public key.
Execute the SHA-1 algorithm on the concatenation. Take the 64
leftmost bits of the SHA-1 hash value. The result is Hash1.
Well, as i read it, the new extensions should be included both in the
cga generation and verification, only that since at this point there
are no extension specified, the algorithm presented in the spec doesn't
explicitely include them.
So in draft-bagnulo-multi6dt-hba-00.txt the extension is in Hash2
(good decision) but not in Hash1 (does it matter?):
well, this is my mistake, thanks for catching it
The multiprefix extension should be included both in the generation and
the verification of HAsh1
i will fix this in the next version
3. Concatenate from left to right the Modifier, 9 zero octets, the
encoded public key or the encoded Extended Modifier (if no public
key was provided) and the Multi-Prefix Extension. Execute the
SHA-1 algorithm on the concatenation. Take the 112 leftmost bits
of the SHA-1 hash value. The result is Hash2.
and:
6.1. Concatenate from left to right the final modifier value,
Prefix[i], the collision count, the encoded public key or the
encoded Extended Modifier (if no public key was provided).
Execute the SHA-1 algorithm on the concatenation. Take the 64
leftmost bits of the SHA-1 hash value. The result is
Hash1[i].
Please fix this with Tuomas!
AFAIU, the multiprefix extension should be included both in the
generation and verification of Hash1 and Hash2
makes sense?
- the second point is about the Ext Type (TBD IANA): we have to
propose
a common value in order to get interoperability (and examples :-).
Ok, would you propose a value that you like? ( i mean what did you use
in your implementation? :-)
- the last point is about the collision count: I believe it should be
per HBA not global as described:
5. Set the 8-bit collision count to zero.
6. For i=1 to n do
...
6.4. Perform duplicate address detection if required. If an
address collision is detected, increment the collision count
by
one and go back to step (6). However, after three collisions,
stop and report the error.
I propose to put the 5 in the first step of 6 and go back to the
next
step (currently 6.1 but it should become 6.2) when DAD fails.
I can see that there is an advantage in making the collision count per
HBA as you suggest, since in the case that DAD fails, then you only
need to regenerate a single HBA and not the whole set.
However, i can see some disadvantages when using the HBAs for multi6 if
we do this. (Note that the following argument is assuming a specific
usage of HBAs in the multi6 protocol, which may not be the case at the
end, so it may well not apply)
My point is that if the collision count is per HBA, then the
differences between the CGA Parameter Data Structure (hereafter
CGA_PDS) of the different HBas of the HBA set will be increased. I
mean, if the collision count is global, then the only difference
between the CGA_PDS of the different HBAs of an HBA set is the prefix
included in the subnet prefix field, and considering that the prefix is
included in the HBa itself, it is not a big deal.
However, if the collision count is per HBA, then the difference between
the different CGA_PDS of the different HBAs of an HBA set will be the
subnet prefix and maybe the collision count.
Now, why does this matter?
Because this means that the different values of the collision count
that correspond to each CGA_PDS of each HBA of the HBA set will need to
the transmitted to the other end, so that the receiver can generate all
the different CGA_PDSs
I mean, if the collision count are global, then one CGA_PDS contains
all the information of all the CGA_PDS of all the HBAs of the HBA set.
If we use per HBA collision counts, then, the last statement is no
longer true, and we will need to transmit such additional collsion
count information.
Now, in any case, the probability of collision is low, so i don't think
that any option would pose any problems, just that i feel that the
global option would result in a simpler multi6 protocol
Regards, marcelo
------------------------------------------
Please note that my former email address
mbagnulo@ing.uc3m.es is no longer in use
Please send mail to:
marcelo at it dot uc3m dot es
------------------------------------------