[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

libscrypt, python bindings



Hi everyone. I'm looking to use scrypt in a key-stretching phase for a
Mozilla user-key-wrapping system that we're building (initial proposal
is in https://wiki.mozilla.org/Identity/CryptoIdeas/01-PBKDF-scrypt).

I imagine this question has been asked a thousand times before, but I
can't find an archive of this list, so I'll apologize for the
repetition:

 Has anyone built a "libscrypt"? Or python/node.js bindings for scrypt?

The closest I could find was something in the chromium-os "third_party"
repository:

 http://git.chromium.org/gitweb/?p=chromiumos/third_party/libscrypt.git;a=summary

but I've no idea how accurate or supported it might be.

If I were to build a library form of scrypt, and then some language
bindings to it, and put it up on github, would anyone oppose?

Also, has anyone tried implementing scrypt in javascript and measured
how much of a performance hit you get? The key-wrapping system we're
investigating requires a pure-JS fallback, but I've assumed that the
object overhead in JS would negate a lot of the cost-magnifying benefits
of scrypt (relative to an attacker who gets to use C). So I've specced
out an offloaded (trusted) server to run scrypt for you. I plan to try
cross-compiling scrypt.c into JS with Emscripten just in case it is fast
enough (10x slower would probably be ok, 1000x probably not), but I'm
not optimistic.

thanks!
 -Brian Warner, Mozilla "Identity" group
  warner@lothar.com