TL;DR
ClojureWerkz Scrypt is a tiny Clojure library for working with scrypt, a key derivation function. Scrypt can be used to hash passwords and generate cryptographic keys. It is an alternative to Bcrypt and PBKDF2.
Why Use Scrypt
Values (e.g. passwords) encrypted with Scrypt are much more computationally hard to crack than with most other available key derivation functions:
More can be found in the scrypt paper.
What’s In The Box
Scrypt is literally a couple of functions:
- Encrypt a value (e.g. a password)
- Verify a candidate against a hash (e.g. against a password used to authenticate)
Documentation
Scrypt is a small library and all of its documentation guide fits in the README.
Supported Clojure Versions
Scrypt supports Clojure 1.3+.
News and Updates
New releases and updates are announced on Twitter.
Scrypt is a ClojureWerkz Project
Scrypt is part of the group of libraries known as ClojureWerkz, together with
- Welle, a Riak client with batteries included
- Monger, a Clojure MongoDB client for a more civilized age
- Elastisch, a minimalistic Clojure client for ElasticSearch
- Titanium, a powerful graph library built on top of Titan
- Neocons, a Clojure client for the Neo4J REST API
- Langohr, a Clojure client for RabbitMQ that embraces the AMQP 0.9.1 model
- Quartzite, a powerful scheduling library
and several others. If you like Scrypt, you may also like our other projects.
Let us know what you think on Twitter or on the Clojure mailing list.
Michael on behalf of the ClojureWerkz Team.