Skip to content

Commitant/argon2-wasm

 
 

Repository files navigation

Argon2 WebAssembly

Argon2 (with Argon2u support) run as WebAssembly.

Install

npm install --save argon2-wasm 

Usage

import argon2 from 'argon2-wasm'; argon2.hash({pass: 'password', salt: 'somesalt', distPath: 'dist'}).then(console.log); /* Logs: { hash: Uint8Array [ ... ], hashHex: 'f38afe1266d247cf1f6f836ffdbb0ab946c0a7edbcb4ba6e7324b32b9050441e', encoded: '$argon2d$v=19$m=1024,t=10,p=1$c29tZXNhbHQ$84r+EmbSR88fb4Nv/bsKuUbAp+28tLpucySzK5BQRB4' } */ 

The input object has the following parameters and defaults:

{string} pass password string {string} salt salt string {float} time (1) the number of iterations {float} mem (1024) used memory, in KiB {float} hashLen (24) desired hash length {float} parallelism (1) desired parallelism (will be computed in parallel only for PNaCl) {number} type (argon2.types.Argon2d) hash type: argon2.ArgonType.Argon2d, .Argon2i, .Argon2id or .Argon2u {string} distPath ('.') asm.js script location, without trailing slash 

Building

Prerequisites:

  • emscripten with WebAssembly support (howto)
  • CMake

Use the provided build script:

./build.sh

You can also use npm run-script build, which will call that directly.

License

MIT

About

Based off https://github.com/antelle/argon2-browser

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 64.7%
  • C++ 16.9%
  • Shell 10.2%
  • CMake 4.5%
  • C 3.7%