<div>HTTP GET is supposed to be completely effect-free on the server.  But nonces in OpenID messages violate that aspect of the HTTP spec, since any subsequent GET with the same positive assertion will (or should) fail.  I speculate that some <a href="http://meta.stackoverflow.com/questions/32247/cant-login-to-so-with-openid-the-signature-verification-failed/36583#36583">random login failures on StackOverflow</a> may be caused because a browser, an accelerator plugin, or a proxy attempted to repeat the assertion-carrying GET request (since that&#39;s supposed to be safe), and a subsequent request is the one whose response is displayed in the browser, failing user login.</div>
<div><a href="http://meta.stackoverflow.com/questions/32247/cant-login-to-so-with-openid-the-signature-verification-failed/36583#36583"></a><br clear="all">POST is a better fit with the HTTP spec for how the message is actually processed on the server.  I know lately we&#39;ve been looking for ways to cram more data into &lt; 2KB payloads so we can get off POST and onto GET since the user experience is better.  But I wonder if we can put our heads together and figure out how to have our cake and eat it too with this nonce problem.  This error doesn&#39;t come up often, but it can come up, apparently does come up, and is a natural side-effect of the way OpenID communicates.</div>
<div><br></div><div>Any ideas?</div><div><br></div><div>--<br>Andrew Arnott<br>&quot;I [may] not agree with what you have to say, but I&#39;ll defend to the death your right to say it.&quot; - S. G. Tallentyre<br>
</div>