<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";
        color:black;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.EmailStyle22
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";
        color:black;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">You don’t mean the first SHOULD.  Rather, we’re recommending asymmetric signatures.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext"> George Fletcher [mailto:gffletch@aol.com]
<br>
<b>Sent:</b> Monday, October 28, 2013 12:53 PM<br>
<b>To:</b> John Bradley; Mike Jones<br>
<b>Cc:</b> openid-specs-ab@lists.openid.net<br>
<b>Subject:</b> Re: [Openid-specs-ab] Questions about multiple audiences for ID Tokens using MAC algorithms<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-family:"Helvetica","sans-serif"">Thanks for the clarifications! What about combining what John and Mike said into something like...<br>
<br>
ID Tokens containing a 'azp' value SHOULD be signed with an asymmetric key. The verification steps for ID Tokens signed with a MAC based algorithm containing either mulitple 'aud' values and/or an 'azp' value are unspecified and out-of-scope for this document.<br>
<br>
Thanks,<br>
George</span><o:p></o:p></p>
<div>
<p class="MsoNormal">On 10/28/13 2:33 PM, John Bradley wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">I think the point of signing is so that the audience can verify it.  In the case that the azp is different from the audience the azp the token should be treated as opaque to the azp party.
<o:p></o:p></p>
<div>
<p class="MsoNormal">I appreciate that clients may do content sniffing as they do in SAML in some cases.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">In general it is best for the AS to use a asymmetric signature all the time to get around these issues.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The simple rule for symmetric keys is you is the one shared with the audience,  the use of azp should not impact that.  <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">If that is to confusing I am OK with saying tokens containing azp MUST be signed with a asymmetric key and forget this corner case.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I don't consider a token with azp one that necessarily has multiple audiences.  It is possible to have two or more audiences where one is also the azp, that defiantly needs asymmetric signing.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">John B.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal">On Oct 25, 2013, at 6:04 PM, Mike Jones <<a href="mailto:Michael.Jones@microsoft.com">Michael.Jones@microsoft.com</a>> wrote:<o:p></o:p></p>
</div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">John, your reply didn’t answer the question about which Client ID would be used if the “aud” and “azp” values refer to different parties.  I could see arguments
 for either.</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Partly for that reason, I’m prone to have us say that the behavior is unspecified if a MAC algorithm is used and the “aud” is multi-valued or if an “azp” value
 is present that is different than the “aud” value.</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">That would leave the door open to specify it later, but avoids us making important decisions about use cases we have no experience with now.</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">                                                                -- Mike</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<div>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span class="apple-converted-space"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> </span></span><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">Torsten
 Lodderstedt [<a href="mailto:torsten@lodderstedt.net">mailto:torsten@lodderstedt.net</a>]<span class="apple-converted-space"> </span><br>
<b>Sent:</b><span class="apple-converted-space"> </span>Friday, October 25, 2013 1:59 PM<br>
<b>To:</b><span class="apple-converted-space"> </span>John Bradley<br>
<b>Cc:</b><span class="apple-converted-space"> </span>Mike Jones; <a href="mailto:openid-specs-ab@lists.openid.net">
openid-specs-ab@lists.openid.net</a><br>
<b>Subject:</b><span class="apple-converted-space"> </span>Re: [Openid-specs-ab] Questions about multiple audiences for ID Tokens using MAC algorithms</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><br>
Am 25.10.2013 um 21:40 schrieb John Bradley <<a href="mailto:ve7jtb@ve7jtb.com"><span style="color:purple">ve7jtb@ve7jtb.com</span></a>>:<o:p></o:p></span></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">A token with a single audience that is different from the AZP is fine to integrity protect with mac as long as there the AZP is not expected to validate the token.  <o:p></o:p></span></p>
</div>
</blockquote>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">I think this is only possible for id tokens issued via code grant type, right?<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><br>
<br>
<br>
<o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">I personally think symmetric key management argues that it is not scalable.  However we should not preclude that use.   <br>
<br>
Sent from my iPhone<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><br>
On Oct 24, 2013, at 10:32 PM, Torsten Lodderstedt <<a href="mailto:torsten@lodderstedt.net"><span style="color:purple">torsten@lodderstedt.net</span></a>> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="margin-bottom:12.0pt">Hi all,<br>
<br>
MAC as symmetric alg only makes sense (from a security perspective) for two parties. I consider sharing a symmetric key among more than two parties a bad design. So in my opinion this restriction makes sense.<span class="apple-converted-space"> </span><br>
<br>
Wrt 5. Yes, we should tighten it.<br>
<br>
Regards,<br>
Torsten.<span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><br>
<br>
Mike Jones <<a href="mailto:Michael.Jones@microsoft.com"><span style="color:purple">Michael.Jones@microsoft.com</span></a>> schrieb:<span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><a href="http://openid.bitbucket.org/openid-connect-core-1_0.html#IDTokenValidation"><span style="color:purple">http://openid.bitbucket.org/openid-connect-core-1_0.html#IDTokenValidation</span></a>contains
 this text that George asked about in his review:<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal"><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">7.  If the<span class="apple-converted-space"> </span></span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">alg</span></tt><span class="apple-converted-space"><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif""> </span></span><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">parameter
 of the JWT header is a MAC based algorithm such as<span class="apple-converted-space"> </span></span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">HS256</span></tt><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">,<span class="apple-converted-space"> </span></span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">HS384</span></tt><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">,
 or<span class="apple-converted-space"> </span></span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">HS512</span></tt><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">, the octets of the UTF-8 representation of the<span class="apple-converted-space"> </span></span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">client_secret</span></tt><span class="apple-converted-space"><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif""> </span></span><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">corresponding
 to the<span class="apple-converted-space"> </span></span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">client_id</span></tt><span class="apple-converted-space"><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif""> </span></span><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">contained
 in the</span><tt><span lang="EN" style="font-size:10.0pt;color:#003366">aud</span></tt><span class="apple-converted-space"><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif""> </span></span><span lang="EN" style="font-size:10.0pt;font-family:"Verdana","sans-serif"">(audience)
 Claim are used as the key to validate the signature.<span style="background:yellow">Multiple audiences are not supported for MAC based algorithms.</span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
<p> <o:p></o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">George wrote:<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">“Why not? Wouldn't the secret associated with the azp work for the client to validate the id_token?  If we want interoperability across the use of audience and azp we are
 going to need to describe how it works in an extension document. It is not clear from this spec how it is to work and I was on most of the calls:)”<o:p></o:p></span></p>
</div>
<p> <o:p></o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">These questions arise:<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal" style="text-indent:-.25in"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">1.</span><span style="font-size:7.0pt">      <span class="apple-converted-space"> </span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">Does
 anyone remember the history behind the highlighted sentence?  I’m pretty sure that this was written before we had an “azp” claim.<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal" style="text-indent:-.25in"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">2.</span><span style="font-size:7.0pt">      <span class="apple-converted-space"> </span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">If
 there’s an “azp” claim and an “aud” claim and the values are different, which Client Secret would be the right one to use as the key value?  (George seems to be suggesting that it’s the one associated with the Client ID in the “azp” value.)<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal" style="text-indent:-.25in"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">3.</span><span style="font-size:7.0pt">      <span class="apple-converted-space"> </span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">If
 we did want to relax the restriction prohibiting multiple audiences, which value would be used for the key?  And would all the parties that need to valid the ID Token signature actually have access to this value?<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal" style="text-indent:-.25in"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">4.</span><span style="font-size:7.0pt">      <span class="apple-converted-space"> </span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">Or
 should we leave the text above as-is for now, and deal with this case as an extension later, if a need for it ever comes up?<o:p></o:p></span></p>
</div>
<div style="margin-left:.5in">
<p class="MsoNormal" style="text-indent:-.25in"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">5.</span><span style="font-size:7.0pt">      <span class="apple-converted-space"> </span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">If
 we’re not defining how multi-valued audiences would work with MAC signatures for now, should we also tighten this be requiring that any “azp” value that is include have the same value as the single-valued audience value?<o:p></o:p></span></p>
</div>
<p> <o:p></o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">                                                            -- Mike<o:p></o:p></span></p>
</div>
<p> <o:p></o:p></p>
<pre style="text-align:center"><hr size="2" width="100%" align="center"></pre>
<pre><o:p> </o:p></pre>
<pre>Openid-specs-ab mailing list<o:p></o:p></pre>
<pre><a href="mailto:Openid-specs-ab@lists.openid.net"><span style="color:purple">Openid-specs-ab@lists.openid.net</span></a><o:p></o:p></pre>
<pre><a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab"><span style="color:purple">http://lists.openid.net/mailman/listinfo/openid-specs-ab</span></a><o:p></o:p></pre>
</div>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">_______________________________________________<br>
Openid-specs-ab mailing list<br>
<a href="mailto:Openid-specs-ab@lists.openid.net"><span style="color:purple">Openid-specs-ab@lists.openid.net</span></a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab"><span style="color:purple">http://lists.openid.net/mailman/listinfo/openid-specs-ab</span></a><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
</div>
</blockquote>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><br>
<br>
<br>
<o:p></o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>Openid-specs-ab mailing list<o:p></o:p></pre>
<pre><a href="mailto:Openid-specs-ab@lists.openid.net">Openid-specs-ab@lists.openid.net</a><o:p></o:p></pre>
<pre><a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">-- <br>
<a href="http://connect.me/gffletch" title="View full card on
        Connect.Me"><span style="text-decoration:none"><img border="0" width="359" height="113" id="_x0000_i1026" src="cid:image001.png@01CED3DC.EFBDEAF0" alt="George Fletcher"></span></a><o:p></o:p></p>
</div>
</div>
</body>
</html>