The crypto primitives used in hypercore, extracted into a separate module
npm install hypercore-crypto
const crypto = require('hypercore-crypto')
const keyPair = crypto.keyPair()
console.log(keyPair) // prints a ed25519 keypairReturns an ED25519 keypair that can be used for tree signing.
Signs a message (buffer).
Verifies a signature for a message.
Hashes a leaf node in a merkle tree.
Hash a parent node in a merkle tree. left and right should look like this:
{
index: treeIndex,
hash: hashOfThisNode,
size: byteSizeOfThisTree
}Hashes the merkle root of the tree. peaks should be an array of the peaks of the tree and should look like above.
Returns a buffer containing random bytes of size size.
Return a hash derived from a publicKey that can used for discovery
without disclosing the public key.
Make a list of namespaces from a specific publicly known name. Use this to namespace capabilities or hashes / signatures across algorithms.
MIT