NeXTSTEP Programming Mastermind

    xsalsa20
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/xsalsa20 package

    1.2.0 • Public • Published

    xsalsa20

    XSalsa20 implemented in Javascript and WebAssembly.

    npm install xsalsa20
    

    build status

    Usage

    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()

    API

    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.

    Contributing

    The bulk of this module is implemented in WebAssembly in the xsalsa20.wat file. To build the thin Javascript wrapper do:

    npm run compile
    

    License

    MIT

    Keywords

    none

    Install

    npm i xsalsa20

    DownloadsWeekly Downloads

    17,866

    Version

    1.2.0

    License

    MIT

    Unpacked Size

    47.3 kB

    Total Files

    8

    Last publish

    Collaborators

    • mafintosh