Skip to content

Commit

Permalink
Initial version of argon2id gem
Browse files Browse the repository at this point in the history
Inspired by the recommendation for the Argon2id password-hashing
function in [The Copenhagen Book][] and [OWASP Password Storage Cheat
Sheet][], this aims to provide native, pre-compiled bindings to the
[reference C implementation of Argon2][Argon2].

There is an existing [Ruby Argon2 gem][] but that provides bindings via
FFI and I was keen to re-use my experience developing the [re2][] gem.

  [The Copenhagen Book]: https://thecopenhagenbook.com/password-authentication
  [OWASP Password Storage Cheat Sheet]: https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html#argon2id
  [Argon2]: https://github.com/P-H-C/phc-winner-argon2
  [Ruby Argon2 gem]: https://github.com/technion/ruby-argon2)
  [re2]: https://github.com/mudge/re2
  • Loading branch information
mudge committed Oct 31, 2024
0 parents commit 762ffc5
Show file tree
Hide file tree
Showing 20 changed files with 1,235 additions and 0 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/precompile-gem.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Precompile native gem

on:
workflow_call:
inputs:
platform:
required: true
type: string

jobs:
precompile-gem:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: "3.3"
bundler-cache: true
- run: bundle exec rake gem:${{ inputs.platform }}
- uses: actions/upload-artifact@v4
with:
name: "cruby-${{ inputs.platform }}-gem"
path: pkg/*.gem
Loading

0 comments on commit 762ffc5

Please sign in to comment.