github.com/ysbaddaden/scrypt-crystal

Crystal bindings for Colin Percival's scrypt library

27 stars
5 dependents
License: BSD-2-Clause

Installation

# Add this to your shard.yml
dependencies:
  scrypt:
    github: ysbaddaden/scrypt-crystal
    version: ~> 0.3.1

Then run:

shards install

shard.yml

Crystal
0.31.0
License
BSD-2-Clause
Authors
Julien Portalier, Colin Percival

Dependencies

Development Dependencies

  • minitest>= 0.5.0github: ysbaddaden/minitest.crdev

README

scrypt (crystal)

Crystal bindings for Colin Percival's scrypt library.

The scrypt key derivation function was originally developed for use in the Tarsnap online backup system and is designed to be far more secure against hardware brute-force attacks than alternative functions such as PBKDF2 or bcrypt.

  • http://www.tarsnap.com/scrypt.html

Install

Using Shards, add the scrypt dependency to your shard.yml then run shards install.

dependencies:
  scrypt:
    github: ysbaddaden/scrypt-crystal

If you're not using Shards, you may clone the repository then run make lib to download and compile the libscrypt.a library.

Usage

require "scrypt"

# hash
hashed_password = Scrypt::Password.create("super awesome")

# compare
hashed_password == "super awesome"  # => true
hashed_password == "super wrong"    # => false

Authors

License

Distributed under the BSD 2-Clause license.