Skip to content

A simple crypto encoder compatible with hypercore

License

Notifications You must be signed in to change notification settings

coboxcoop/crypto-encoder

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crypto-encoder

A simple hypercore-compatible crypto encoder.

Example

const hypercore = require('hypercore')
const Encoder = require('.')

const encryptionKey = Encoder.encryptionKey()
const valueEncoding = Encoder(encrytionKey, { valueEncoding: 'utf-8' })

const feed = hypercore(storage, { valueEncoding })

API

const Encoder = require('.')
const encryptionKey = Encoder.encryptionKey()

Generate a random 32 byte key to be used to encrypt.

const valueEncoding = Encoder(encryptionKey, opts)

Returns a message encoder used for encrypting messages in hypercore.

  • encryptionKey must be a buffer of length Encoder.KEYBYTES.
  • opts is an optional object which may contain:
    • opts.valueEncoder, an additional encoder to be used before encryption. May be one of:
      • The string 'utf-8' - utf-8 encoded strings will be assumed.
      • The string 'JSON' - JSON encoding will be assumed.
      • A custom encoder of the form { encode: [function] decode: [function] }

About

A simple crypto encoder compatible with hypercore

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%