<div dir="ltr"><div>Relevant etherpad - <a href="https://etherpad.openstack.org/p/icehouse-token-revocation">https://etherpad.openstack.org/p/icehouse-token-revocation</a></div><div><br></div>In the etherpad, we reverted the example for "<span style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:12px;line-height:16px">explicit token revocation called on a single token" to use "</span><span style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:12px;line-height:16px">expires_at" as the identifier for the event (rather than a hash of the token). Because rescoping tokens maintains the expiration of the original token, a single revocation event can revoke an entire chain at once.</span><div>
<span style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:12px;line-height:16px"><br></span></div><div><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px">There's still a small chance of collision (revoking more tokens than intended), but I don't think it's worth complicating the design further to solve, as explicit token revocations are rare (relative to authorization changes, etc).</span></font></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Nov 12, 2013 at 12:59 PM, Eric Windisch <span dir="ltr"><<a href="mailto:eric@cloudscaling.com" target="_blank">eric@cloudscaling.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">During the token revocation discussion at the summit, I suggested it<br>
would be possible to revoke tokens using a hash of the token id (which<br>
is already an MD5 hash). That way, the revocation file would be able<br>
to specify individual hashes for revocation without dangerously<br>
presenting secrets.<br>
<br>
I should amend that suggestion to say that should this be done, the<br>
hash will need to be salted. Otherwise, rainbow tables could be used<br>
to attack the original secrets. In fact, this would be exacerbated by<br>
the fact there would be a limited domain to the hash function, knowing<br>
that the input would always be the 128bit output of MD5.<br>
<br>
This much might be obvious, but I felt it was worth clarifying and<br>
etching into the blueprint or other design documentation.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Regards,<br>
Eric Windisch<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div><br></div>-Dolph
</div>