<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Express uses HMAC SHA-256 for signing cookies (see <a href="https://github.com/visionmedia/node-cookie-signature/blob/master/index.js#L20">https://github.com/visionmedia/node-cookie-signature/blob/master/index.js#L20</a>) . Although it is possible to run a brute force attack to gain access to the the cookie, as far as I know there is no way to brute force a decently long and complex secret key in seconds/days.<div><div><br></div><div><div>The goal of the login sprint was <i>not </i>to significantly improve the security model nor the backend architecture of our current system. We left that mostly unchanged. Our goals were primarily to create a much faster, smoother single-sign-on experience for users (for which supercookies were needed), to make our apps easier to configure for login, and to allow the new events app to be deployed. We felt those goals were higher priority.</div></div><div><br></div><div><div>Keep in mind that the sensitivity of personal information has not changed, nor does gaining access to multiple apps provide a greater scope of information, nor does it include passwords, or even real names for that matter. </div></div><div><br></div><div>In the future we may choose to encrypt user passwords instead of using Persona, and we may offer third-party support for login. When that is the case we will need to invest resources in implementing security measures like per-user salts, etc. It can be done but it is more than what we scoped for this improvement cycle.</div><div><br></div><div>- Kate</div><div><br></div><div><div><br></div><div><br><div><div>On Feb 25, 2014, at 7:36 PM, Pomax <<a href="mailto:michiel@mozillafoundation.org">michiel@mozillafoundation.org</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">As a small followup, consider that right now I can sign up for webmaker, get a webmaker cookie on for instance thimble, and then run that cookie through a decompiler. After a few seconds to a few days I have a secret that comes up with the same hashed data - now I can spoof being someone else.<br><br>As it stands, that's per app, but with new auth, it'd be webmaker-wide. I'd strongly advise us to look into how we can start generating cookies on a per-user basis instead, with random secrets per user stored in the usermodel, and a short-term caching library that all the apps use to either fetch-from-cache or if not found, fetch from usermodel.<br><br>- Pomax<br>_______________________________________________<br>Webmaker-dev mailing list<br><a href="mailto:Webmaker-dev@mozilla.org">Webmaker-dev@mozilla.org</a><br>https://mail.mozilla.org/listinfo/webmaker-dev<br></blockquote></div><br></div></div></div></body></html>