This is an asm.js implementation of BusyBeaver - a password hashing, key derivation, and proof of work function intended to improve upon PBKDF2, bcrypt and scrypt in its resistance to brute forcing on hardware that isn't a 64-bit, general purpose CPU.
This page will load fast in Firefox, slowly in IE, and very slowly in Chrome. In Chrome, try BusyBeaver in Google Native Client.
I wrote about my experience with asm.js vs. Google Native Client in this post.
Consider that a single BusyBeaver digest with 50,000 iterations takes:
The compiled size of BusyBeaver is:
Look at the source code of BusyBeaver.js. Is it that much better than binary? Is it more compatible? Safer?
Why not implement PNaCl?
Calculating initial digest...