Bch ECIES
A module for [bch][bch] 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 bch repo or the bch guide on ECIES for more information.
Credit to [@ryanxcharles][ryan] 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 main bch repo for information about how to contribute.
License
Code released under the MIT license.
Copyright 2017 Open Wallet Stack.