Skip to content

owstack/ecies

Repository files navigation

Btc ECIES

NPM Package Build Status Coverage Status

A module for [btc][btc] that implements the Elliptic Curve Integrated Encryption Scheme (ECIES). Uses ECIES symmetric key negotiation from public keys to encrypt arbitrarily long data streams.

See the main btc repo or the btc guide on ECIES for more information.

Credit to @ryanxcharles for the original implementation.

Getting started

ECIES will allow to securely encrypt and decrypt messages using ECDSA key pairs (bitcoin cryptography).

var alice = ECIES()
  .privateKey(aliceKey)
  .publicKey(bobKey.publicKey);

var message = 'some secret message';
var encrypted = alice.encrypt(message);

// encrypted will contain an encrypted buffer only Bob can decrypt

var bob = ECIES()
  .privateKey(bobKey)
  .publicKey(aliceKey.publicKey);
var decrypted = bob
  .decrypt(encrypted)
  .toString();
// decrypted will be 'some secret message'

Contributing

See CONTRIBUTING.md on the repo for information about how to contribute.

License

Code released under the MIT license.

Copyright 2017-2019 Open Wallet Stack.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published