1.0.4 • Published 4 years ago

chacha20-universal v1.0.4

Weekly downloads
533
License
ISC
Repository
github
Last release
4 years ago

chacha20-universal

Chacha20 implemented in Javascript.

npm install chacha20-universal

Usage

var crypto = require('crypto')
var Chacha20 = require('chacha20')

var key = crypto.randomBytes(32)
var nonce = crypto.randomBytes(24)
var out = Buffer.alloc(5)
var xor = new Chacha20(nonce, key)

xor.update(out, Buffer.from('hello'))
xor.update(out, Buffer.from('world'))

console.log(out)
// e.g. <Buffer 7c 77 23 51 f9>

xor.finalize()

API

var xor = chacha20(nonce, key, [counter])

Create a new xor instance.

nonce should be a 12 byte buffer/uint8array and key should be 32 byte. An optional counter may be passed as a number.

xor.update(output, input)

Update the xor instance with a new input buffer, the result is written to output buffer. output should be the same byte length as input.

xor.final()

Call this method last. Clears internal state.

License

MIT

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago