<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: lucida console;color: #000000">A question came up recently in our implementation of IdentityServer around unicode host names and punycode encoding of those host names. <span style="font-size: 10pt;line-height: 1.5">I looked thru the discovery spec and couldn't parse it well enough to know the answer to my question, so I thought I'd ask here.</span><div><br></div><div>Should the issuer in the discovery document be punycode for host names with unicode characters? The issuer is a URI but, AFAICT, the URI spec says that encoding is context-dependent. So in URLs unicode host names need to be punycode, but in a JSON document (either in discovery or a JWT) they don't seem like they need to be.</div><div><br></div><div>Should the URLs in the document document (e.g. authorize and token endpoints) be <span style="font-size: 13.3333px;line-height: 20px">punycode for host names with unicode characters? From what I've seen client/RP libraries don't do well with non-punycode URLs from discovery (meaning they don't encode them before trying to use them). But often pen-testers dislike the URLs not matching the original authority URL. Maybe this last point is pedantic.</span></div><div><span style="font-size: 13.3333px"><br></span></div><div><span style="font-size: 13.3333px">It'd be best if there were simply a directive in the spec that simply tells me which way to do it, but in the </span><span style="font-size: 13.3333px;line-height: 19.9999px">absence</span><span style="font-size: 13.3333px"> of that, a</span><span style="font-size: 13.3333px;line-height: 1.5">ny insight would be appreciated. </span></div><div><span style="font-size: 13.3333px;line-height: 1.5"><br></span></div><div><span style="font-size: 13.3333px;line-height: 1.5">Thanks.</span></div><div><div><div><br></div><div class="mb_sig"><span style="font-family: Lucida Console">-Brock</span><div><br></div></div></div></div></div>