On Tue, May 30, 2017 at 6:32 PM, Brian E Carpenter < brian.e.carpen...@gmail.com> wrote:
> Now getting to Eric's COMMENTs: > > On 25/05/2017 14:32, Eric Rescorla wrote: > ... > > ---------------------------------------------------------------------- > > COMMENT: > > ---------------------------------------------------------------------- > > > > > > S 3.5.4.3. > > After a GRASP device successfully discovers a locator for a > > Discovery > > Responder supporting a specific objective, it MUST cache this > > information, including the interface index via which it was > > discovered. This cache record MAY be used for future negotiation or > > synchronization, and the locator SHOULD be passed on when > > appropriate > > as a Divert option to another Discovery Initiator. > > > > What's an "interface index" > > It's a term of art in the socket API: > https://tools.ietf.org/html/rfc3493#section-4 > Does it need a reference? > Yes. > > S 3.7. > > You seem to be going to a lot of trouble to deal wit session > > ID collisions. Why don't you just make session IDs 128-bit > > random values and then you won't have to worry about > > collisions. > > Well, yes, the odds would be better with 128 than 32 but > that's extra bits on the wire and there'd still be the > birthday paradox... Why is this amount of extra bits on the wire significant? As far as birthday paradox, I suspect this protocol is going to break down well before 2^32 endpoints, let alone 2^64. > The Session ID SHOULD have a very low collision rate locally. It > > MUST be generated by a pseudo-random algorithm using a locally > > generated seed which is unlikely to be used by any other device in > > the same network [RFC4086]. > > > > Why don't you just require a cryptographically secure PRNG? > > That will be required to implement the rest of this protocol > > Well, certainly there will be for the security bootstrap > and the ACP. Is there a different reference for that? > I'm not understanding the question here. You basically can't build any cryptographic system without a secure PRNG (in the worst case, if you have a private key you can use that to seed the PRNG). > S 3.8.6. > > If a node receives a Request message for an objective for which no > > ASA is currently listening, it MUST immediately close the relevant > > socket to indicate this to the initiator. This is to avoid > > unnecessary timeouts if, for example, an ASA exits prematurely but > > the GRASP core is listening on its behalf. > > > > This is not secure. You need a secure indication of non-knowledge, > > not a transport-level close. > > I don't see this as a security issue. There would be an alternative, > which is to send back an immediate M_DECLINE, but that is quite > a bit harder to implement and I don't really see an advantage: > the requester will just get back an error code in either case. > An ASA must always be ready for an error return. > If the attacker can force an error when the other side didn't want one then that implicates the security of the system. > > S 3.9.5.4. > > What are the semantics of a Divert URI? What do I dow ith the > > path part? > > Two things on this: > Following Alexy's comment, we are likely to add protocol/port > to this type of locator option. Given that, is there anything special > about the Divert case? A URI should be valid however you receive it. > Again, what do you do with the path section of the URI? > > S 3.10.4. > > The semantics of "dry run" seem pretty unclear. Is it just > > "tell me if you would be sad about doing this"? > > This is explained better in an earlier section: > https://tools.ietf.org/html/draft-ietf-anima-grasp-12#section-3.5.5 This just seems to say "it's up to the ASA" -Ekr > > > We will try to clarify this, at least with a cross-reference. > > Thanks, > Brian >
_______________________________________________ Anima mailing list Anima@ietf.org https://www.ietf.org/mailman/listinfo/anima