Permalink
Switch branches/tags
Nothing to show
Commits on Apr 16, 2016
Commits on Apr 12, 2016
Commits on Mar 25, 2016
  1. Update gems

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

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

    grempe committed Jul 8, 2015
  2. README changes

    grempe committed Jul 8, 2015
  3. Rubocop

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

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

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

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

    grempe committed Jul 8, 2015
    …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.
Commits on Jul 7, 2015
  1. Update gemspec

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

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

    grempe committed Jul 7, 2015
    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.
Commits on Jul 6, 2015
  1. Resolve all Rubocop issues. 100% test coverage. Remove 'safe' primes …

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

    grempe committed Jul 6, 2015
    …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.
Commits on Jul 5, 2015
  1. Refactor random number generation. Almost eliminate need to pass arou…

    grempe committed Jul 5, 2015
    …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.
Commits on Jul 4, 2015
  1. Use a pure Ruby alternative to OpenSSL::BN num_bits to calculate num …

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

    grempe committed Jul 4, 2015