<div dir="ltr"><div>Sorry we didn't get a chance to talk in Chicago on this topic Mike, my trip was all too brief. I'll be around this week though, hopefully we can discuss this with the relevant parties.<br></div><div><br></div><div>As of yesterday, AppAuth for iOS and macOS is now <a href="https://github.com/openid/AppAuth-iOS/pull/101">passing</a> all but those 4 signature verification tests in the "code" profile. I'm preparing the certification packet, once we have a final decision on the optionality of those tests, I'm hoping to certify.</div><div><br></div><div>Incidentally, one of the cool things about how we implemented these tests in AppAuth, is that we actually <b>built them into our continuous-integration testing pipeline</b>. The conformance tests run alongside our unit tests for every release, and every git push. The certification log output is automatic too, meaning anyone can run the certification tests and produce the same output at the click of a button.</div><div><br></div><div>I think this is a huge value-add for the RP certification program. Previously we only had unit tests in the library, no end-to-end tests due to the fact we didn't have an OP with interaction-less responses that we could use for automated testing. The RP certification program has made this available, and by using it, our test coverage is vastly improved.</div><div><br></div><div>Thank you Roland, Mike, the Foundation and everyone who is working on this, it's a very valuable effort!</div><div><br></div><div>Best,</div><div>William</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Mar 26, 2017 at 1:29 PM, Mike Jones <span dir="ltr"><<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="blue" vlink="purple">
<div class="m_3647925707323825383WordSection1">
<p class="MsoNormal"><span style="color:#002060">One thought is that this maybe should depend upon how the RP registers.  If it registers with support for signature algorithms, then that support should be tested – even for response_type=code.  If it registers
 only with support for “alg”: “none”, then it obviously can’t be tested then.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#002060"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#002060">My logic is that if the RP can check signatures, the OP provides a bad signature, and the RP doesn’t catch it, that seems like a scenario what shouldn’t pass certification.  Let’s talk about this in person in
 Chicago this week.  I’d love to hear what others think about this as well.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#002060"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#002060">                              <wbr>                         -- Mike<u></u><u></u></span></p>
<p class="MsoNormal"><a name="m_3647925707323825383__MailEndCompose"><span style="color:#002060"><u></u> <u></u></span></a></p>
<span></span>
<p class="MsoNormal"><b>From:</b> Openid-specs-ab [mailto:<a href="mailto:openid-specs-ab-bounces@lists.openid.net" target="_blank">openid-specs-ab-<wbr>bounces@lists.openid.net</a>]
<b>On Behalf Of </b>William Denniss via Openid-specs-ab<br>
<b>Sent:</b> Sunday, March 26, 2017 11:13 AM<br>
<b>To:</b> <a href="mailto:openid-specs-ab@lists.openid.net" target="_blank">openid-specs-ab@lists.openid.<wbr>net</a><br>
<b>Subject:</b> [Openid-specs-ab] RP Tests: ID Token signature validation for code flow<u></u><u></u></p><div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">Regarding the <a href="https://rp.certification.openid.net:8080/list?profile=C" target="_blank">
'code' response type tests</a>, my understanding is that it's not necessary to validate the ID Token signature as it was obtained via a HTTPS connection to the OP.<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">This test follows that logic:<u></u><u></u></p>
<div>
<p class="MsoNormal">rp-id_token-sig-none<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">However, these 4 tests assume signature validation for the code flow:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">rp-id_token-kid-absent-single-<wbr>jwks<br>
rp-id_token-kid-absent-<wbr>multiple-jwks<br>
rp-id_token-bad-sig-rs256<br>
rp-id_token-sig-rs256<u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Can they be made optional for the 'code' response type tests?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
</div></div></div>
</div>

</blockquote></div><br></div>