XSalsa20 implemented in Javascript and WebAssembly
npm install xsalsa20XSalsa20 implemented in Javascript and WebAssembly.
```
npm install xsalsa20

` js
var crypto = require('crypto')
var xsalsa20 = require('xsalsa20')
var key = crypto.randomBytes(32)
var nonce = crypto.randomBytes(24)
var xor = xsalsa20(nonce, key)
console.log(xor.update(Buffer.from('hello')))
console.log(xor.update(Buffer.from('world')))
xor.finalize()
`
#### var xor = xsalsa20(nonce, key)
Create a new xor instance.
Nonce should be a 24 byte buffer/uint8array and key should be 32 bytes.
#### var output = xor.update(input, [output])
Update the xor instance with a new input buffer. Optionally you can pass in an output buffer.
#### xor.finalize()
Call this method last. Clears internal state.
The bulk of this module is implemented in WebAssembly in the xsalsa20.wat file. To build the thin Javascript wrapper do:
```
npm run compile
MIT