sodium-browserify

1.3.0 • Public • Published

sodium-browserify

A polyfil between the apis of node-sodium and libsodium-wrappers, heir to crypto-browserify

Mainly, this wraps libsodium-wrappers to make it work with buffers, and pass the same tests as it does in node, and in the browser.

UPDATE: WebAssembly!

This now uses webassembly, for a massive speed improvement. one of the weird quirks of webassembly is that it gets loaded async, which means you'll only get this speed improvement after waiting a little while, say 50ms, but in most applications something else will need to load, such as reading database state or waiting for connections, so this will happen on it's own.

If you try to use this before the wasm has loaded, it will fallback to tweetnacl.

An event is available to ensure wasm is loaded before proceeding:

var s = require('sodium-browserify')

s.events.on('sodium-browserify:wasm loaded', function() {
  console.log("wasm was loaded!")
})

Tests are generated from sodium, with values stored in JSON so that they can be run in the browser.

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i sodium-browserify

Weekly Downloads

72

Version

1.3.0

License

MIT

Unpacked Size

1.05 MB

Total Files

13

Last publish

Collaborators

  • dominictarr