ed25519 curve operations using a supercop/ref10 implementation
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
test
.gitignore
.npmignore
.travis.yml
LICENSE
appveyor.yml
binding.gyp
index.js
package.json
readme.markdown
supercop.cc

readme.markdown

ed25519-supercop

ed25519 curve operations using a supercop/ref10 implementation

travis-image

This module provides C++ bindings for orlp/ed25519 (formerly nightcracker/ed25519).

supercop implementations use the same algorithm but different key formatting than sodium/nacl keys.

bittorrent's dht_store (bep44) extension uses supercop keys.

see also

For a pure javascript emscripten implementation, see:

methods

var ed = require('ed25519-supercop')

var seed = ed.createSeed()

Generate seed, a 32-byte buffer of cryptographically secure random data.

var keypair = ed.createKeyPair(seed)

Generate keypair from a 32-byte seed buffer.

  • keypair.publicKey - public key data (32 byte buffer)
  • keypair.secretKey - secret/private key data (64 byte buffer)

var signature = ed.sign(message, publicKey, secretKey)

Generate a 64-byte signature given:

  • message (string or buffer)
  • publicKey (32-byte buffer or hex string)
  • secretKey (64-byte buffer or hex string)

var ok = ed.verify(signature, message, publicKey)

Return a boolean ok, true if the 64-byte buffer or hex string signature signs a buffer or string message with the 32-byte or hex string publicKey.

install

npm install ed25519-supercop

license

MIT