Skip to content
Commits on Apr 16, 2016
Commits on Apr 12, 2016
  1. Remove old Rubies from travis CI

    committed Apr 12, 2016
Commits on Mar 25, 2016
  1. Update gems

    committed Mar 24, 2016
  2. Eliminate warning due to redefinition of secret=

    /Users/glenn/src/secretsharing/lib/secretsharing/shamir/secret.rb:96: warning: method redefined; discarding old secret=
    committed Mar 24, 2016
Commits on Mar 24, 2016
Commits on Jul 8, 2015
  1. Oops. 32 * 8 != 512

    committed Jul 8, 2015
  2. README changes

    committed Jul 8, 2015
  3. Rubocop

    committed Jul 8, 2015
  4. Remove old backport of Base64.urlsafe_decode64 and Base64.urlsafe_enc…

    …ode64.
    
    Currently supported Rubies support this natively.
    committed Jul 8, 2015
  5. Additional sanity checking on incoming String arg of encoded Integer …

    …secret.
    
    Resolves issue on Ruby HEAD (2.3.0-dev)
    committed Jul 7, 2015
  6. Use stubs to ensure bit_length backport is being tested on all Ruby v…

    …ersions, not just those that it applies to.
    committed Jul 7, 2015
  7. Replace broken backports gem Bignum#bit_length with custom monkey-pat…

    …ch for MRI < 2.1
    
    I filed the following bug with backports gem:
    
    marcandre/backports#95
    
    Added some tests to cover this function, but they will only be using
    the backport version if the current Ruby runtime doesn't support #bit_length
    
    Also, backports gem need require => false in Gemfile so *all* backports
    don't get loaded which we don't want. That is why I had to also bring in
    Range#bsearch manually. So now we are not using the backports gem at all.
    committed Jul 7, 2015
Commits on Jul 7, 2015
  1. Update gemspec

    committed Jul 6, 2015
  2. No longer a need to support OpenSSL::BN to initialize. Just call Open…

    …SSL::BN#to_i if you still have them around.
    committed Jul 6, 2015
  3. OpenSSL be gone.

    Converted last use of OpenSSL::BN over to pure Ruby variants of the Math code.
    
    You can still pass in an OpenSSL::BN object as a secret. For now.
    committed Jul 6, 2015
Commits on Jul 6, 2015
  1. Resolve all Rubocop issues. 100% test coverage. Remove 'safe' primes …

    …tests which are not strictly required.
    committed Jul 6, 2015
  2. Internal prime generation, no longer depend on OpenSSL::BN.generate_p…

    …rime
    
    Perform miller-rabin testing on all primes since Ruby's Prime.prime?()
    is impossibly slow.
    
    Miller-Rabin is the recommended prime verification test for cryptographic purposes.
    
    Generate 'safe' primes, not just large primes. Slower but more secure.
    
    OpenSSL primes had an issue with primes less than 15 bits in length
    always returning 35879 inexplicably and may have also had a problem with
    primes less than 64 bits. This might have been a serious issue for small
    secrets which would always use the same prime.
    committed Jul 6, 2015
Commits on Jul 5, 2015
  1. Refactor random number generation. Almost eliminate need to pass arou…

    …nd OpenSSL::BN in favor of Ruby Numerics (Bignum)
    
    OpenSSL::BN was poorly documented and not really needed since Ruby can handle numbers of arbitrary length.
    
    - There was previously a bug in the random number generation where the numbers generated were bitlength + 1.
    - Broke out the random number generation into a requested Byte and bit length methods.
    - Using Rbnacl RNG
    
    There is still a few cases of OpenSSL::BN being used for internal Math. Will refactor later.
    committed Jul 5, 2015
Commits on Jul 4, 2015
  1. Use a pure Ruby alternative to OpenSSL::BN num_bits to calculate num …

    …significant binary bits.
    committed Jul 3, 2015
  2. Comment changes.

    committed Jul 3, 2015
Something went wrong with that request. Please try again.