<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)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@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;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
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;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:410665278;
        mso-list-template-ids:1268667360;}
@list l0:level1
        {mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level2
        {mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level3
        {mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level4
        {mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level5
        {mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level6
        {mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level7
        {mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level8
        {mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level9
        {mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1
        {mso-list-id:552540213;
        mso-list-template-ids:-994019776;}
@list l1:level1
        {mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level2
        {mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level3
        {mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level4
        {mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level5
        {mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level6
        {mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level7
        {mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level8
        {mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level9
        {mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></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 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">Thanks for your thorough review, Garyl.  Replies inline…<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>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Garyl Erickson [mailto:garyl.erickson@forgerock.com]
<br>
<b>Sent:</b> Thursday, April 02, 2015 8:13 PM<br>
<b>To:</b> Mike Jones<br>
<b>Cc:</b> openid-specs-ab@lists.openid.net; Don Thibeau; Mike Leszcz; Ian Glazer; Roshni Chandrashekhar; Eve Maler<br>
<b>Subject:</b> Re: Conformance profile document updated<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Hello Mike,<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I do have some questions about the table in §3.1.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Regarding the Basic, Implicit & Hybrid conformance profile columns:<o:p></o:p></p>
</div>
<div>
<ol start="1" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
In the ID Token section, I'm seeing a number of tests with Test ID IdToken.verify() rather than an actual test name. Also in that section, I've not found a test in the online tool named OP-IDToken-Signature. Is this perhaps OP-IDToken-HS256, which is an Extra
 test online?<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">The tests that are function names, such as
</span>IdToken.verify()<span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">, are invoked by other tests.  They are in the spreadsheet for internal tracking purposes, so that we’re certain that all features are tested, even if not
 by a test specifically for that feature.  I will clarify that in the next version of the doc.<o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">If you’re testing with dynamic registration support configured in, then
</span><span style="font-size:10.0pt;font-family:"Courier New"">OP-IDToken-Signature</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> is replaced by
</span><span style="font-size:10.0pt;font-family:"Courier New"">OP-IDToken-RS256</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">.  I personally think that it will simplify things for testers if for the next round of certification
 testing, we restructure the tool so that there are no either/or tests – just a fixed set of tests for each profile.  (Things are currently this way because some of the tests are testing multiple things, some of which don’t apply for some profiles.)  But we’re
 not going to change this during the lockdown period for phase 1.<o:p></o:p></span></p>
<ol start="2" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
In the UserInfo Endpoint section, for Test ID OP-UserInfo-Body, what does "Warning if broken" mean? Also, what is Test ID OpenIDSchema.verify()?<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">“Warning if broken” means that we aren’t going to require supporting the functionality for the Basic
 conformance profile, but we are leaving the test in place for interop testing purposes.  You can be certified if you get this warning but implementations should still aim to support the functionality.<o:p></o:p></span></p>
<ol start="3" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
In the scope Request Parameter section, again I've not found a test in the online tool named OP-IDToken-Signature.<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Per my reply to 1, you’d be seeing this if you were using static registration.<o:p></o:p></span></p>
<ol start="4" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
In the Misc Request Parameters section, for Test ID OP-Req-id_token_hint, what does SHOULD mean? Should it be 'no err'?<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">The SHOULD means that support for this functionality is a SHOULD in the spec.  This is one of the
 places where the working group decided to require functionality that is designated as RECOMMENDED or SHOULD in the spec.  I agree that this should be clarified in the table.<o:p></o:p></span></p>
<ol start="5" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
In the OAuth Behaviors section, what is Test ID VerifyState()? Also, what do "Warning if under 30s", "OAuth MUST" and "OAuth SHOULD" mean? I'm expecting to see a simple 'y' or 'no err' (meaning a warning is ok) or a blank cell, or perhaps an * leading to a
 footnote explaining anything not as straightforward.<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Yes, in the next version of the document, we should simplify it for consumption by testers.  The
 audience of the more nuanced descriptions was the working group to help them decide what we should do in each case.  But you’re right that testers don’t need or want this fine-grained information – they want yes/no values.  (See the
</span><span style="font-size:10.5pt;font-family:"Helvetica","sans-serif";color:#5A5A5A"><a href="http://openid.net/wordpress-content/uploads/2015/04/Certification-Submission-Examples.pdf">Certification Submission Examples</a></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">
 document for lists of actual tests presented by the test tool for different testing profiles.)<o:p></o:p></span></p>
<ol start="6" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
In the Client Authentication section, having separate lines for OP-ClientAuth-Basic-Dynamic and OP-ClientAuth-Basic-Static means both should pass, but the instructions elsewhere imply one or the other should be run, depending on whether dynamic registration
 is used by the tests. Similarly for OP-ClientAuth-SecretPost-Dynamic and OP-ClientAuth-SecretPost-Static.<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">This is one of the cases where related but different tests are presented by the tool, depending upon
 whether you’re testing with static or dynamic registration.  Again, per my answer to 1, I think that for subsequent certification phases, we should restructure these tests so none alternate.  But they do at present.  Those presented by the tool are the authoritative
 set.  The documents are there as supplemental information to help people understand why the test tool does what it does.<o:p></o:p></span></p>
<p class="MsoNormal">Regarding the Dynamic conformance profile column:<o:p></o:p></p>
<div>
<ol start="1" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2">
In the Discovery section, there are 11 lines with Test IDs that look like function names, not test names, with only 6 lines that list actual tests.<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Per my answer to 1, these *<b>are</b>* function names.
</span><span style="font-size:11.0pt;font-family:Wingdings;color:#1F497D">J</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">  The functions are called by other tests you’ll be running, so there’s nothing extra that testers
 need to do for these.<o:p></o:p></span></p>
<ol start="2" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2">
In the Dynamic Client Registration section, there's a line with no Test ID. Also, should SHOULD be "no err"?<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">That means that there’s no test for the feature at present.  Therefore, there’s nothing you need
 to do for this.<o:p></o:p></span></p>
<ol start="3" type="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2">
In the request_uri Request Parameter section, I've not found an online test named OP-request_uri-Unsigned. (This might be a copy and paste typo of the next line for OP-request_uri-Unsigned-Dynamic (which does exist)).<o:p></o:p></li></ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">This is another case where different versions of a test are presented based on the static/dynamic
 configuration.  No typo.<o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">I’ll close by saying that the
</span><span style="font-size:10.5pt;font-family:"Helvetica","sans-serif";color:#5A5A5A"><a href="http://openid.net/wordpress-content/uploads/2015/04/Certification-Submission-Examples.pdf">Certification Submission Examples</a></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">
 document referenced from <a href="http://openid.net/certification/submission/">http://openid.net/certification/submission/</a> is the one that’s targeted at testers – not the Conformance Profiles document that you’re reviewing above.  That shouldn’t have any
 of the ambiguities or confusing content that you’re citing above.  If it does, please bring it to our attention.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal">Regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Garyl<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Thanks again for the thorough review!<o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">                                                            -- Mike<o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Sun, Mar 29, 2015 at 10:51 PM, Mike Jones <<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>> wrote:<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I updated the conformance profile document to reflect the minor changes we’ve made to the profiles over the past month.  The new version is posted at
<a href="http://openid.net/wordpress-content/uploads/2015/03/OpenID-Connect-Conformance-Profiles.pdf" target="_blank">
http://openid.net/wordpress-content/uploads/2015/03/OpenID-Connect-Conformance-Profiles.pdf</a> and linked to from the main certification page at
<a href="http://openid.net/certification/" target="_blank">http://openid.net/certification/</a>.  Unless people find bugs in this version, this will be the one we go with for phase 1 of the certification program.<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I’ll still working on writing the closed-form instructions to testers, and should have those for people to review within a day or so.<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="color:#888888"> <o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="color:#888888">                                                                           -- Mike<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>