Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed last year.
Improve this question
Someone asked about a JavaScript implementation of bCrypt a while back and appears to have written their own code to handle the implementation. Does anyone have an implementation of sCrypt in JavaScript?
The answer linked above points to a project that no longer exists.
This project, however, is still around: https://github.com/tonyg/js-scrypt
If you are talking about tenebrix, the choice of scrypt was better then bcrypt for the goals set. I so far have only found one incomplete javascript implementation of scrypt and hit on this page while searching.
https://github.com/byrongibson/scrypt-js https://github.com/cheongwy/node-scrypt-js was all I found so far, and seems no code yet.
Guess as a new reason I can't just comment on this above like I wanted, sigh.
https://github.com/tonyg/js-scrypt is an emscripten-compiled version of Colin Percival's scrypt() function.
Here are the two I can find:
- https://github.com/barrysteyn/node-scrypt
- https://github.com/cheongwy/node-scrypt-js
I've tried only barrysteyn's node-scrypt, and its excellent. He recently put a lot of effort into making the library conform to javascript conventions, and the API is great.
Tony's works great in chrome, chrome's js executes cost of 16384 faster than CryptSharp's SCrypt does. Around 200ms for chrome and 450ms for CryptSharp.
Trouble is that IE takes upwards of 24 seconds and FF upwards of 16 seconds.
Unfortunately, not all browsers are created equal..
I'll toss my implementation into the ring: https://github.com/cryptocoinjs/scryptsy. It is based upon https://github.com/cheongwy/node-scrypt-js, but has been cleaned up and tested in both Node.js and the browser.
Here are two options:
- https://github.com/ricmoo/scrypt-js
- https://github.com/dchest/scrypt-async-js
They're pretty comparable.