Merge pull request #372 from ryanxcharles/feature/ECIES-example

add ECIES example
This commit is contained in:
Ryan X. Charles 2014-06-06 15:59:11 -07:00
commit ddd52c2025
2 changed files with 31 additions and 0 deletions

30
examples/ECIES.js Normal file
View File

@ -0,0 +1,30 @@
var run = function() {
bitcore = typeof (bitcore) === 'undefined' ? require('../bitcore') : bitcore;
console.log('ECIES: Elliptic Curve Integrated Encryption Scheme');
console.log('A way of encrypting with a public key and decrypting with a private key.');
var key = bitcore.Key.generateSync();
console.log('Private key: ' + key.private.toString('hex'));
console.log('Public key: ' + key.public.toString('hex'));
var message = new Buffer('This is a message to be encrypted');
console.log('Message: "' + message.toString() + '"');
var encrypted = bitcore.ECIES.encrypt(key.public, message);
console.log('Encrypted (with public key): ' + encrypted.toString('hex'));
var decrypted = bitcore.ECIES.decrypt(key.private, encrypted);
console.log('Decrypted (with private key): "' + decrypted.toString() + '"');
};
// This is just for browser & mocha compatibility
if (typeof module !== 'undefined') {
module.exports.run = run;
if (require.main === module) {
run();
}
} else {
run();
}

View File

@ -7,6 +7,7 @@ var unmute = require('./mute').unmute;
var examples = [
'Address',
'ECIES',
'HierarchicalKey',
'PeerManager',
'Rpc',