A module for bitcore 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 bitcore repo or the bitcore guide on ECIES for more information.
Credit to @ryanxcharles for the original implementation.
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'
See CONTRIBUTING.md on the main bitcore repo for information about how to contribute.
Code released under the MIT license.
Copyright 2013-2015 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc.