Norse Polytheistic Mythology

    node-cryptonight

    1.3.0 • Public • Published

    node-cryptonight

    node bindings for cryptonight hashing

    Requirements

    node-cryptonight requires Boost and Sodium

    Ubuntu
    sudo apt-get install libboost-all-dev libsodium-dev
    
    Mac
    brew install boost
    brew install libsodium
    

    Installation

    npm install --save node-cryptonight
    

    Testing

    Code is linted with standard and tested with Jest. Run npm test to lint and run tests.

    Usage Examples

    Synchronous Hashing
    const cryptonight = require('node-cryptonight').hash
    const hash = cryptonight(Buffer.from('This is a test'))
    console.log(hash) // <Buffer a0 84 f0 1d 14 37 ..>
    Synchronous Hashing with variant 1
    const cryptonight = require('node-cryptonight').hash
    const hash = cryptonight(Buffer.from('This is a test'), 1)
    console.log(hash) // <Buffer a0 84 f0 1d 14 37 ..>
    Synchronous Hashing with variant 4 and height 123
    const cryptonight = require('node-cryptonight').hash
    const hash = cryptonight(Buffer.from('This is a test'), 1, 123)
    console.log(hash) // <Buffer a0 84 f0 1d 14 37 ..>
    Asynchronous Hashing
    const cryptonight = require('node-cryptonight').asyncHash
    cryptonight(Buffer.from('This is a test'), hash => {
      console.log(hash) // <Buffer a0 84 f0 1d 14 37 ..>
    })
    Asynchronous Hashing with variant 1
    const cryptonight = require('node-cryptonight').asyncHash
    cryptonight(Buffer.from('This is a test'), 1, hash => {
      console.log(hash) // <Buffer a0 84 f0 1d 14 37 ..>
    })
    Asynchronous Hashing with variant 4 and height 123
    const cryptonight = require('node-cryptonight').asyncHash
    cryptonight(Buffer.from('This is a test'), 4, 123, hash => {
      console.log(hash) // <Buffer a0 84 f0 1d 14 37 ..>
    })
    Promise Wrapper Example
    function cryptonight(data) {
      return new Promise((resolve, reject) => {
        require('node-cryptonight').asyncHash(data, hash => {
          resolve(hash)
        })
      })
    }
     
    cryptonight(Buffer.from('This is a test'))
      .then(console.log) // <Buffer a0 84 f0 1d 14 37 ..>

    See Also

    License

    Released under the 3-Clause BSD License. Contains code from the Monero project. See LICENSE for more information.

    Install

    npm i node-cryptonight

    DownloadsWeekly Downloads

    0

    Version

    1.3.0

    License

    BSDv3

    Unpacked Size

    1.58 MB

    Total Files

    268

    Last publish

    Collaborators

    • excitableaardvark