Subject: [Unbearable] Ben Campbell's Yes on draft-ietf-tokbind-protocol-17: (with COMMENT)

From: Ben Campbell <[email-masked]>
Date: Wed, 09 May 2018 12:55:11 -0700

Ben Campbell has entered the following ballot position for
draft-ietf-tokbind-protocol-17: Yes

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)

Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.

The document, along with other ballot positions, can be found here:
https://datatracker.ietf.org/doc/draft-ietf-tokbind-protocol/

----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

Thanks for this document. I am balloting "yes", but I have a few minor comments:

Minor Comments:

§1.1: Please consider using the boilerplate from 8174 across this cluster.
There are a few instances of lower case keywords across the set.

§3.1: This section does not seem to sufficiently define the difference between
provided_token_binding and referred_token_binding, other than as a mention of
the use case from the HTTPS doc. It would be nice if other application protocol
bindings did not have to refer to the HTTPS doc to fully understand the basic
protocol. (Or is it assumed that only HTTPS will use referred_token_binding)?

§3.2, last paragraph: Why is this a SHOULD? Do you envision scenarios where it
would make sense to behave differently? For example, if an application made
Token Binding IDs available as structured data, what would be the consequences?

§3.3, last bullet: Is the EKM from the TLS connection at the time the binding
is established (rather than when it might later be used)?

§4.1, 2nd paragraph: Why only a SHOULD? It seems like intentionally storing
keys in an insecure manner makes the entire protocol pointless.

§6.1 (and others): I'm not sure what it means for the expert to be "advised to
encourage". Is there something more concrete that could be said? Does this give
the advisor grounds to reject a registration?

Editorial Comments:

§1: Please expand TPM on first mention.

---

From: Andrei Popov <[email-masked]>
Date: Wed, 9 May 2018 22:16:31 +0000

> §1.1: Please consider using the boilerplate from 8174 across this cluster.
Will do.

> §3.1: This section does not seem to sufficiently define the difference between provided_token_binding and referred_token_binding, other than as a mention of the use case from the HTTPS doc. It would be nice if other application protocol bindings did not have to refer to the HTTPS doc to fully understand the basic protocol.
Section 3.1 introduces the TB types, but Sections 4.1 and 4.2 have specific processing requirements, from the perspective of the basic protocol. The use of referred Token Binding requires interaction with an application protocol, and HTTPS is one such protocol, therefore the reference seems appropriate.

> §3.2, last paragraph: Why is this a SHOULD?
From the perspective of being able to change the internal representation of the Token Binding IDs in the future, it would be best if applications did not rely on a particular TB ID structure.
One way to achieve this is to treat TB IDs as opaque byte sequences. There are other ways, and different representations make sense for different APIs, therefore it's not a MUST.

> §3.3, last bullet: Is the EKM from the TLS connection at the time the binding is established (rather than when it might later be used)?
It's the EKM from the current TLS connection where Token Binding is being established.

> §4.1, 2nd paragraph: Why only a SHOULD? It seems like intentionally storing keys in an insecure manner makes the entire protocol pointless.
I do not mind saying MUST, but the degree to which TB keys can be protected depends on the client device capabilities.

> §6.1 (and others): I'm not sure what it means for the expert to be "advised to encourage". Is there something more concrete that could be said? Does this give the advisor grounds to reject a registration?
We could say "...expert will require the inclusion of a reference to a permanent and readily available specification..."

> §1: Please expand TPM on first mention.
Will do.

Thanks,

Andrei

-----Original Message-----
From: Ben Campbell <[email-masked]> 
Sent: Wednesday, May 9, 2018 12:55 PM
To: The IESG <[email-masked]>
Cc: [email-masked]; John Bradley <[email-masked]>; [email-masked]; [email-masked]; [email-masked]
Subject: Ben Campbell's Yes on draft-ietf-tokbind-protocol-17: (with COMMENT)

When responding, please keep the subject line intact and reply to all email addresses included in the To and CC lines. (Feel free to cut this introductory paragraph, however.)

Please refer to https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Fiesg%2Fstatement%2Fdiscuss-criteria.html&data=02%7C01%7CAndrei.Popov%40microsoft.com%7Cbef59ff1c14f45d3294108d5b5e6c79a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636614925167967005&sdata=dlNij3YGOsg2g%2Br2hg4kCy2jyGYjZglxTJMhHfABd%2Fo%3D&reserved=0
for more information about IESG DISCUSS and COMMENT positions.

The document, along with other ballot positions, can be found here:
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-ietf-tokbind-protocol%2F&data=02%7C01%7CAndrei.Popov%40microsoft.com%7Cbef59ff1c14f45d3294108d5b5e6c79a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636614925167967005&sdata=gmXDfLO1%2B9%2F%2BE6BIdqNUn1OsaSGVBPCSrOXu0bpVQnw%3D&reserved=0

Minor Comments:

§3.1: This section does not seem to sufficiently define the difference between provided_token_binding and referred_token_binding, other than as a mention of the use case from the HTTPS doc. It would be nice if other application protocol bindings did not have to refer to the HTTPS doc to fully understand the basic protocol. (Or is it assumed that only HTTPS will use referred_token_binding)?

§3.2, last paragraph: Why is this a SHOULD? Do you envision scenarios where it would make sense to behave differently? For example, if an application made Token Binding IDs available as structured data, what would be the consequences?

§3.3, last bullet: Is the EKM from the TLS connection at the time the binding is established (rather than when it might later be used)?

§4.1, 2nd paragraph: Why only a SHOULD? It seems like intentionally storing keys in an insecure manner makes the entire protocol pointless.

§6.1 (and others): I'm not sure what it means for the expert to be "advised to encourage". Is there something more concrete that could be said? Does this give the advisor grounds to reject a registration?

Editorial Comments:

---

From: Andrei Popov <[email-masked]>
Date: Thu, 10 May 2018 02:48:49 +0000

TBNEGO-13 (https://tools.ietf.org/html/draft-ietf-tokbind-negotiation-13) , TBPROTO-18 (https://tools.ietf.org/html/draft-ietf-tokbind-protocol-18) and HTTPSTB-15 (https://tools.ietf.org/html/draft-ietf-tokbind-https-15) have been uploaded. These documents incorporate changes addressing review feedback so far.
I've only made boilerplate changes in HTTPSTB; the editor of this draft will review the feedback and update as needed.

Thanks for helping us improve the drafts,

Andrei

-----Original Message-----
From: Andrei Popov 
Sent: Wednesday, May 9, 2018 3:17 PM
To: 'Ben Campbell' <[email-masked]>; The IESG <[email-masked]>
Cc: [email-masked]; John Bradley <[email-masked]>; [email-masked]; [email-masked]; [email-masked]
Subject: RE: Ben Campbell's Yes on draft-ietf-tokbind-protocol-17: (with COMMENT)

Will do.

Will do.

Thanks,

Andrei

-----Original Message-----
From: Ben Campbell <[email-masked]> 
Sent: Wednesday, May 9, 2018 12:55 PM
To: The IESG <[email-masked]>
Cc: [email-masked]; John Bradley <[email-masked]>; [email-masked]; [email-masked]; [email-masked]
Subject: Ben Campbell's Yes on draft-ietf-tokbind-protocol-17: (with COMMENT)

Minor Comments:

Editorial Comments:

---

From: Ben Campbell <[email-masked]>
Date: Wed, 9 May 2018 22:24:48 -0500

> On May 9, 2018, at 5:16 PM, Andrei Popov <[email-masked]> wrote:
> 

I don’t object to the reference existing, but this draft is the one describing protocol semantics, so I think some more description in the draft itself would be reasonable. This is, of course, not a blocking comment.

> One way to achieve this is to treat TB IDs as opaque byte sequences. There are other ways, and different representations make sense for different APIs, therefore it's not a MUST.

It would be helpful to say that in the text.

> It's the EKM from the current TLS connection where Token Binding is being established.

Please consider clarifying that in the text.

> I do not mind saying MUST, but the degree to which TB keys can be protected depends on the client device capabilities.

I do not suggest the MUST describe a particular method of protection. But the SHOULD could possibly interpreted to allow implementations to have no protection at all in some cases.

> We could say "...expert will require the inclusion of a reference to a permanent and readily available specification…"

That is better, assuming it was the working group intent.

---

From: Andrei Popov <[email-masked]>
Date: Thu, 10 May 2018 03:58:46 +0000

Yes, I've made these clarifications in https://tools.ietf.org/html/draft-ietf-tokbind-protocol-18.