Hi Göran, Paul, Olaf,

Sorry for the slow reply.

I agree with Göran's original assessment that the language referring to
7049bis does provide enough information to have a deterministic encoding
for the HKDF inputs.

As such, I don't think pull #28 is needed, and would prefer that it was
reverted (the specific wording doesn't do a great job indicating that the
whole list of requirements is "normative", to the extent that any example
can be normative).

Thanks,

Ben

On Thu, Oct 15, 2020 at 05:24:37PM +0000, Göran Selander wrote:
> Hi Paul,
> 
> Returning to the final remaining comment in your review. I made a pull 
> request to clarify the change I proposed at the end of the mail below (to 
> which I didn't find a response but I may have missed it):
> 
> https://github.com/ace-wg/ace-dtls-profile/pull/28
> 
> Does this address your concern?
> 
> Thanks,
> Göran
> 
> 
> On 2020-09-25, 17:07, "Göran Selander" <goran.selan...@ericsson.com> wrote:
> 
>     Hi Paul,
> 
>     On 2020-09-17, 17:26, "Paul Kyzivat" <pkyzi...@alum.mit.edu> wrote:
> 
>         Hi Olaf,
> 
>         On 9/17/20 4:09 AM, Olaf Bergmann wrote:
>         > Hi Paul,
>         > 
>         > Responding to you remaining comments please see inline.
>         > 
>         > Paul Kyzivat <pkyzi...@alum.mit.edu> writes:
>         > 
>         >>>>> * Also in section 3.3:
>         >>>>>
>         >>>>>      All CBOR data types are encoded in CBOR using preferred 
> serialization
>         >>>>>      and deterministic encoding as specified in Section 4 of
>         >>>>>      [I-D.ietf-cbor-7049bis].  This implies in particular that 
> the "type"
>         >>>>>      and "L" components use the minimum length encoding.  The 
> content of
>         >>>>>      the "access_token" field is treated as opaque data for the 
> purpose of
>         >>>>>      key derivation.
>         >>>>>
>         >>>>> IIUC the type of serialization and encoding is a requirement. 
> Will
>         >>>>> need some rewording to make it so.
>         >>>>
>         >>>> I take it that you and Ben have agreed that the example 
> description does
>         >>>> not necessarily need normative language as the description of 
> this key
>         >>>> derivation procedure is meant as an example how the 
> authorization server
>         >>>> and the resource server can securely agree on a shared secret to 
> be used
>         >>>> between the client and the resource server.
>         >>
>         >> This still confuses me. IIUC preferred serialization and 
> deterministic
>         >> encoding are *optional* in CBOR. The text hear seems to require it,
>         >> but doesn't use normative language to do so.
>         >>
>         >> If these are required for things to work then you make a normative
>         >> statement about it. E.g., "The "type" and "L" components MUST use 
> the
>         >> minimum length encoding."
>         >>
>         >> Or do you intend that some other (non-minimum-length) MAY be used? 
> (In
>         >> which case both sides would need a side agreement on what encoding 
> is
>         >> used.)
>         > 
>         > The text here just gives an example how key derivation may be used 
> by
>         > the authorization server and the resource server to agree on a 
> shared
>         > secret (that is used to encrypt the traffic between the resource 
> server
>         > and the to-be-authorized client).
>         > 
>         > To that regard, the text is not really normative. The only normative
>         > language we need here would be to avoid security issues. Commenting 
> on
>         > the data representation here is to be understood as a suggestion to 
> use,
>         > e.g., preferred CBOR serialization according to 7049bis.
>         > 
>         > [...]
> 
>         Sorry to be so dense, but I'm still not getting it.
> 
>         I take your point that this is only an example of a way to agree on a 
>         shared secret. But at the end of the day they indeed must somehow 
> agree 
>         on a shared secret. *If* they use this technique then it will only 
> work 
>         if they also agree on a consistent way to do the serialization and 
>         encoding that is otherwise not standardized. So they need a side 
>         agreement, which is not a good situation for a standardized protocol.
> 
>         At the very least it seems like you should highlight that some sort 
> of 
>         out of band communication is required between the authorization and 
>         resource servers to establish the shared secret or the algorithm to 
> be 
>         used for deriving the shared secret.
> 
>     [GS]
>     I'm not sure I understand the issue correctly. 
> 
>     Section 4.1 of ietf-cbor-7049bis states:
>     'The preferred serialization always uses the shortest form of 
> representing the argument'
> 
>     This seems to me to be in coherence with:
>     "All CBOR data types are encoded in CBOR using preferred serialization 
> and deterministic encoding"
>     and
>     'This implies in particular that the "type" and "L" components use the 
> minimum length encoding. '
> 
>     If I understand right you would like to replace the latter sentence with:
>     'The "type" and "L" components MUST use the minimum length encoding.'
> 
>     But there are multiple statements in this example which could be replaced 
> with normative language, e.g.,:
> 
>     'In this example, HKDF consists of the composition of the HKDF-Extract 
> and HKDF-Expand steps [RFC5869].'
> 
>     'The symmetric key is derived from the key identifier, the key derivation 
> key and other data:'
> 
>     'type is set to the constant text string "ACE-CoAP-DTLS-key-derivation" '
> 
> 
>     Would you be happy with only the specific normative statement you 
> proposed (which BTW is fine to me) or would you like to see all statements 
> like this to be replaced with normative text (or can we make a normative 
> formulation at the beginning of the example indicating that "compliance to 
> this example REQUIRES the following:")?
> 
>     Thanks,
>     Göran
> 
> 
> 
> 

_______________________________________________
Gen-art mailing list
Gen-art@ietf.org
https://www.ietf.org/mailman/listinfo/gen-art

Reply via email to