Subject: [stir] A few comments on the PASSporT Document

From: Russ Housley <[email-masked]>
Date: Thu, 21 Apr 2016 13:44:37 -0400

I needed to chase a bunch of references to figure out what really goes in the iat claim.  This leads me to two comments.

(1)  Let’s help the reader and tell them that the iat claim contains a JSON numeric value representing the number of seconds from 1970-01-01 00:00:00 UTC.

(2) The iat claim carries the time that the token was issued.  Section 7 tells that the token should be handled in a "reasonable for clock drift and transmission time.”  This makes sense, but neither Section 3.2.1.1 nor Section 7 tells what ought to happen if it is determined to be stale.

The syntax of the mky claim seems to go against a JOSE design principle.  JOSE used very compact representations for everything.  However, the mky claim uses a whole lot of colons.  This leads to a third comment.

(3) To align with the JOSE principle, should the mky claim syntax use a hex string or a base64 string to carry the hash values.

Thanks,
  Russ

---

From: "Peterson, Jon" <[email-masked]>
Date: Thu, 21 Apr 2016 18:04:54 +0000

Thanks for these notes Russ.

>I needed to chase a bunch of references to figure out what really goes in
>the iat claim.  This leads me to two comments.
>
>(1)  Let¹s help the reader and tell them that the iat claim contains a
>JSON numeric value representing the number of seconds from 1970-01-01
>00:00:00 UTC.

Sounds good to me. That claim is defined in baseline JWS/JWT, but agreed
it would be helpful to informationally reiterate its syntax in the
PASSporT spec.

>(2) The iat claim carries the time that the token was issued.  Section 7
>tells that the token should be handled in a "reasonable for clock drift
>and transmission time.²  This makes sense, but neither Section 3.2.1.1
>nor Section 7 tells what ought to happen if it is determined to be stale.

This is where the hand-off between RFC4474bis and PASSporT can be murky.
The behavior for SIP as a using protocol of PASSporT with regards to the
freshness of Date/iat is given in RFC4474bis. Other using protocols might
want to use other means to ascertain freshness; SIP behavior really comes
down to comparing iat with the Date header, and we don't want that
using-protocol-specific language to be in PASSporT.

I can also imagine PASSporT tokens being evaluated historically, rather
than in real time, and the determination of "freshness" for those purposes
might be different, or even just irrelevant.

What we can say about iat in PASSporT though is that using protocols are
required to specify how they determine freshness (like, what they compare
it to). Would that make sense as a way to approach this?

>The syntax of the mky claim seems to go against a JOSE design principle.
>JOSE used very compact representations for everything.  However, the mky
>claim uses a whole lot of colons.  This leads to a third comment.
>
>(3) To align with the JOSE principle, should the mky claim syntax use a
>hex string or a base64 string to carry the hash values.

Jonathan Lennox provided some compelling reasons for us to move mky to a
JSON array format, similar to what WebRTC has done (so it's clear which
keys can match to which m= lines in SDP, say). That at least was my
take-away from the discussions around this in Buenos Aires. Would that be
satisfactory for you?

Jon Peterson
Neustar, Inc.

>
>Thanks,
>  Russ
>
>
>_______________________________________________
>stir mailing list
>[email-masked]
>https://www.ietf.org/mailman/listinfo/stir

---

From: Russ Housley <[email-masked]>
Date: Thu, 21 Apr 2016 16:26:18 -0400

> it would be helpful to informationally reiterate its syntax in the

Thanks.

> it to). Would that make sense as a way to approach this?

Yes, that makes sense to me.

> take-away from the discussions around this in Buenos Aires. Would that be

I think so.

Russ

---

From: Chris Wendt <[email-masked]>
Date: Thu, 21 Apr 2016 20:56:48 -0400

> On Apr 21, 2016, at 4:26 PM, Russ Housley <[email-masked]> wrote:
> 
> Jon:
> 

Agree.

> Yes, that makes sense to me.

Agree.

>> take-away from the discussions around this in Buenos Aires. Would that be

So, Jon, the idea is to use this format?

{
       "fingerprint": [ {
         "algorithm": "sha-256",
         "digest": "4A:AD:B9:B1:3F:...:E5:7C:AB"
       }, {
         "algorithm": "sha-1",
         "digest": "74:E9:76:C8:19:...:F4:45:6B"
       } ]
     }

(from 5.6.4) in draft-ietf-rtcweb-security-arch-11

I’m not sure that addresses the size part, do we need the colon’s as Russ suggests?
Maybe use smaller key’s?

{
       "fp": [ {
         "alg": "sha-256",
         "dgst": "4AADB9B13F...E57CAB"
       }, {
         "alg": "sha-1",
         "dgst": "74E976C819...F4456B"
       } ]
     }

Could do even further encoding of fingerprint to reduce size as suggested in https://webrtchacks.com/the-minimum-viable-sdp/ <https://webrtchacks.com/the-minimum-viable-sdp/>

Thoughts?

---

From: Richard Shockey <[email-masked]>
Date: Thu, 21 Apr 2016 21:21:32 -0400

And please more examples.  The vendor community is begining  to ask serious questions about time tables and roadmaps.  The commitment to deploy is very real. 

Where does this actually show up in the headers. What does or should it look like? 

How this might show up on UA’s is another issue but totally out of scope for this WG now and in the future. 

— 
Richard Shockey
Shockey Consulting LLC
Chairman of the Board SIP Forum
www.shockey.us
www.sipforum.org
richard<at>shockey.us
Skype-Linkedin-Facebook rshockey101
PSTN +1 703-593-2683

From:  stir <[email-masked]> on behalf of Chris Wendt <[email-masked]>
Date:  Thursday, April 21, 2016 at 8:56 PM
To:  Russ Housley <[email-masked]>
Cc:  IETF STIR Mail List <[email-masked]>, Jon Peterson <[email-masked]>
Subject:  Re: [stir] A few comments on the PASSporT Document

Jon:

Thanks.

Agree.

Agree.

I think so.

{
       "fingerprint": [ {
         "algorithm": "sha-256",

{
       "fp": [ {
         "alg": "sha-256",

Could do even further encoding of fingerprint to reduce size as suggested in https://webrtchacks.com/the-minimum-viable-sdp/

Thoughts?

_______________________________________________ stir mailing list [email-masked] https://www.ietf.org/mailman/listinfo/stir

---

From: Robert Sparks <[email-masked]>
Date: Thu, 21 Apr 2016 21:42:02 -0500

Of course.

As I noted in the meeting at IETF95, I will produce some in the next 
month or so. I'm expecting implementations to produce even more.

That said, the text is there now, and the list conversation has been 
pretty clear about what's still in motion. I hope nobody is waiting on 
examples before commenting or beginning implementation.

RjS

On 4/21/16 8:21 PM, Richard Shockey wrote:
>
> And please more examples.  The vendor community is begining  to ask 
> serious questions about time tables and roadmaps.  The commitment to 
> deploy is very real.
>
> From: stir <[email-masked] <mailto:[email-masked]>> on 
> behalf of Chris Wendt <[email-masked] 
> <mailto:[email-masked]>>
> To: Russ Housley <[email-masked] <mailto:[email-masked]>>
> Cc: IETF STIR Mail List <[email-masked] <mailto:[email-masked]>>, Jon 
> Peterson <[email-masked] <mailto:[email-masked]>>
>> On Apr 21, 2016, at 4:26 PM, Russ Housley <[email-masked] 
>> <mailto:[email-masked]>> wrote:
>>
>> Jon:
>>
> Could do even further encoding of fingerprint to reduce size as 
> suggested in https://webrtchacks.com/the-minimum-viable-sdp/
>
> Thoughts?
>
>
>
>
> _______________________________________________ stir mailing list 
> [email-masked] <mailto:[email-masked]>