Sharon Goldberg<p>Excited to share a new IETF internet draft that <span class="h-card" translate="no"><a href="https://mstdn.social/@bifurcation" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>bifurcation</span></a></span> and I just submitted to the OAuth working group. </p><p>We introduce PIKA: Proof of Issue Key Authority, to solve a problem relevant to <a href="https://infosec.exchange/tags/openpubkey" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>openpubkey</span></a>, <a href="https://infosec.exchange/tags/oidc" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>oidc</span></a> and JWTs in general. </p><p>What's a PIKA and why do I care? </p><p>OpenPubkey uses PK Tokens to allow an OpenID Provider (OP) to bind user identities to user-held public keys. This essentially allows the OP to act like a certificate authority, without any changes to today's OIDC.</p><p>PK Tokens are signed by the OP's signing keys. But, OP's rotate their signing keys over time. What happens if we need to use a PK Token *after* the OP rotates signing key? </p><p>This is where the PIKA comes in. </p><p>In this draft, we introduce the PIKA and show how it can be combined with a timestamping authority to allow PK Tokens to be used even after the OP rotates it signing key. The PIKA is a secure object that allows you to cache the OP's key, and verify using the OP's key even if the OP is offline. </p><p>And that's why I got interested in this work. </p><p>But our solution is much more generic and widely applicable than to just OpenPubkey. PIKAs allow the verification of JWTs, ID Tokens and other OIDC Tokens without querying the OP directly. You can use them to reduce the load on a OP, or to build applications that require caching or historical information about OP keys. Historical information about signing key is a particularly important in <a href="https://infosec.exchange/tags/softwaresupplychain" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>softwaresupplychain</span></a> usecases.</p><p>We're still digesting all the different ways that PIKAs can be used. Feel free to get in touch if you have any feedback!</p><p><a href="https://www.ietf.org/archive/id/draft-barnes-oauth-pika-00.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">ietf.org/archive/id/draft-barn</span><span class="invisible">es-oauth-pika-00.html</span></a></p>