The SJCL project in Ruby for compatibility
Ruby
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib bug fix: uninitialized constant SJCL Jul 25, 2017
spec Better error handling Jan 7, 2015
.gitignore Ruby >2.0 fixes, move PBKDF into lib Mar 17, 2014
.travis.yml Ruby >2.0 fixes, move PBKDF into lib Mar 17, 2014
Gemfile Ruby >2.0 fixes, move PBKDF into lib Mar 17, 2014
LICENSE Add MIT License [skip ci] Mar 17, 2014
README.md Update README.md Aug 3, 2015
Rakefile
sjcl.gemspec Ruby >2.0 fixes, move PBKDF into lib Mar 17, 2014

README.md

SJCL_rb

Build Status

A demonstration of SJCL AES-CCM in pure Ruby. Not supported now that Gibberish is compatible with SJCL.

Defaults to 256 bit AES in CCM mode with 100_000 iterations PBKDF2

Usage

enc = SJCL.encrypt('password', "Something to encrypt")
dec = SJCL.decrypt('password', enc)

# Custom number of PBKDF2 iterations
enc = SJCL.encrypt('password', "Something to encrypt", {:iter => 10_000})

Usage

dec = SJCL.decrypt('password', enc)

Dev Goals

  • Should be 100% compatible with SJCL Javascript library in AES-CCM mode
  • Written in pure ruby

TODO

  • Test interop with node module directly

Changelog

  • 1.0.1
    • Match comparison fucntion from SJCL js
    • Include SJCL version in JSON
    • Better errors thrown
    • Update docs
  • 1.0.0
    • Update to use OpenSSL PBKDF2 function for increased speed
    • Increase default iterations to 100,000