Replies inline below...

From: Stephen Kent [mailto:[email protected]]
Sent: Monday, September 15, 2014 7:56 AM
To: Mike Jones; Kathleen Moriarty; [email protected]; [email protected]; 
[email protected]; [email protected]
Subject: Re: JWK member names, was: [jose] SECDIR review of 
draft-ietf-jose-json-web-key-31

Mike,

Sure.  Here's an analysis of the requirements about duplicate member names.

There could be two very different kinds of objections to the present text:
A.  People think we have the semantics for duplicate identifiers wrong.
B.  People think we should explain the current semantics for duplicate 
identifiers more clearly.

I sure hope that we're dealing with B and not A.  Stephen, which is the nature 
of your critique of this text?
C- don't accept duplicate IDs, is what I was hoping for.

I noted why allowing a recipient to accept a dup name, and use just the last 
instance, will
likely lead to such behavior being perpetuated, based on PKIX experience.

So you're advocating this alternative from the analysis, correct?
1.  Require producers not use duplicate members and require consumers to reject 
inputs with duplicate member names.
Pros:  This is the most locked-down, consistent, and alternative.
Cons:  Real JSON parsers don't all reject duplicate inputs.  If we force people 
to write custom parsers, this will result in exploitable bugs (and some just 
won't do it and won't be conformant).

The primary reason that the working group changed from this alternative in 
draft -12 in July 2013 to the present one is that it allows JSON parsers as 
actually deployed and supported to be used.  The argument made then was that 
forcing people to write a custom parser to reject duplicate member names is 
likely to create security bugs, since insufficiently locked down parsers are a 
fertile area for security vulnerabilities.  It was thought that it was better 
to have people using well-maintained, standard parsers and count on producers 
to not emit duplicate member names in the first place.  Is there some aspect of 
this reasoning that doesn't seem convincing to you, Stephen?

As for perpetuating the behavior, it's not clear to me that the behavior will 
ever start, since producers can't use duplicate member names and consumers are 
allowed to reject them.  Thus, producers can't count on consumers accepting the 
illegal inputs, and so have a strong disincentive against ever producing them.  
Is there something I'm missing here?

Also, in a reply to Tim, I think you argued that people have already 
implemented JOSE and so
we ought not make any changes at this late stage. If that's what you said, I 
disagree emphatically.
The IETF always warns implementers that specs may change until an RFC is 
published, and thus
one implements a pre-RFC spec at risk.

You apparently misunderstood the point of my reply to Tim.  I wasn't saying 
that changes aren't possible.  I was saying that we want JOSE to be usable by 
people now - not just several years in the future when parsers for a more 
locked-down JSON dialect may become available.

Steve

                                                            -- Mike

_______________________________________________
jose mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/jose

Reply via email to