Compare commits
55 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
51c53b16ce | ||
|
|
29b11b1896 | ||
|
|
e20df21449 | ||
|
|
dc3f653fe2 | ||
|
|
a868ec0ef4 | ||
|
|
e2952b6e3a | ||
|
|
0d238f1165 | ||
|
|
28bb0f4cfc | ||
|
|
684c306833 | ||
|
|
722e2efeae | ||
|
|
100de8a9ba | ||
|
|
5d2d5ef024 | ||
|
|
0d58557cac | ||
|
|
26fb622cbe | ||
|
|
2ff90b7ab9 | ||
|
|
b1a7a9907c | ||
|
|
38b69f4bfc | ||
|
|
cd69983c31 | ||
|
|
bac81ce88e | ||
|
|
fe4bbf3d72 | ||
|
|
3e43d79b6e | ||
|
|
4984d81284 | ||
|
|
8c423d5cf1 | ||
|
|
9640cba354 | ||
|
|
ebbf6b4ef7 | ||
|
|
8b451f2bb5 | ||
|
|
b18ee9a49d | ||
|
|
f76b184e48 | ||
|
|
5986e9b887 | ||
|
|
9096fc4928 | ||
|
|
f21cb1d8b0 | ||
|
|
bf54f79856 | ||
|
|
21c5cff10d | ||
|
|
c996f08040 | ||
|
|
b5219c7805 | ||
|
|
c9c49da658 | ||
|
|
e154c205b3 | ||
|
|
c380e4698a | ||
|
|
50d36d5b30 | ||
|
|
66b11a565f | ||
|
|
acd86fdc43 | ||
|
|
586c8c0e20 | ||
|
|
f28d500b76 | ||
|
|
2fe70f9f52 | ||
|
|
c730eb5b3f | ||
|
|
df8e219a89 | ||
|
|
b0d1121165 | ||
|
|
fdea02e9a6 | ||
|
|
212fa1498e | ||
|
|
7f03d154dd | ||
|
|
98056209a9 | ||
|
|
693f2aac7b | ||
|
|
ba9ff424c2 | ||
|
|
29dcf56262 | ||
|
|
36c164cb30 |
@ -1 +1 @@
|
|||||||
repo_token: lBB0wwrjIH3RkwvTjkv8g5r4aUjcIUreC
|
repo_token: 92KyB69bPowWlcfgXqc24kE5Qt60cCPba
|
||||||
|
|||||||
1
.gitignore
vendored
1
.gitignore
vendored
@ -11,3 +11,4 @@ coverage
|
|||||||
.DS_Store
|
.DS_Store
|
||||||
docs
|
docs
|
||||||
browser/bitcore-dev.js
|
browser/bitcore-dev.js
|
||||||
|
browser/testdata.js
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
language: node_js
|
language: node_js
|
||||||
node_js:
|
node_js:
|
||||||
- '0.10'
|
- '0.10.35'
|
||||||
notifications:
|
notifications:
|
||||||
hipchat:
|
hipchat:
|
||||||
rooms:
|
rooms:
|
||||||
|
|||||||
@ -104,7 +104,7 @@ node browser/build.js -a
|
|||||||
To generate a customized bitcore bundle, you can specify which submodules you want to include in it with the -s option:
|
To generate a customized bitcore bundle, you can specify which submodules you want to include in it with the -s option:
|
||||||
|
|
||||||
```
|
```
|
||||||
node browser/build.js -s Transaction,Address
|
node browser/build.js -s lib/Transaction,lib/Address
|
||||||
```
|
```
|
||||||
|
|
||||||
This will generate a `browser/bundle.js` containing only the Transaction and Address class, with all their dependencies. Use this option if you are not using the whole bitcore library, to optimize the bundle size, script loading time, and general resource usage.
|
This will generate a `browser/bundle.js` containing only the Transaction and Address class, with all their dependencies. Use this option if you are not using the whole bitcore library, to optimize the bundle size, script loading time, and general resource usage.
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
5960
browser/testdata.js
5960
browser/testdata.js
File diff suppressed because one or more lines are too long
1941
examples.md
1941
examples.md
File diff suppressed because it is too large
Load Diff
22
examples/browser/ECIES.html
Normal file
22
examples/browser/ECIES.html
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<script src="../../browser/bundle.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var bitcore = require('bitcore');
|
||||||
|
var Buffer = bitcore.Buffer;
|
||||||
|
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 encrypt');
|
||||||
|
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() + '"');
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
</html>
|
||||||
@ -9,7 +9,7 @@ var format = es.through(
|
|||||||
if (file.isStream()) return this.emit('error', new Error('Streaming not supported'));
|
if (file.isStream()) return this.emit('error', new Error('Streaming not supported'));
|
||||||
|
|
||||||
//add indentation
|
//add indentation
|
||||||
var contents = "\t" + file.contents.toString("utf8").split("\n").join("\n\t");
|
var contents = "\n```js\n\n" + file.contents.toString("utf8").split("\n").join("\n") + "```\n";
|
||||||
//add header
|
//add header
|
||||||
contents = ["#", path.basename(file.path), "\n", contents].join("");
|
contents = ["#", path.basename(file.path), "\n", contents].join("");
|
||||||
file.contents = new Buffer(contents, "utf8");
|
file.contents = new Buffer(contents, "utf8");
|
||||||
|
|||||||
@ -189,7 +189,13 @@ Address.fromPubkeyHashScriptSig = function(scriptSig, network) {
|
|||||||
//extract an address from scriptSig
|
//extract an address from scriptSig
|
||||||
Address.fromScriptSig = function(scriptSig, network) {
|
Address.fromScriptSig = function(scriptSig, network) {
|
||||||
if (typeof scriptSig === 'string') {
|
if (typeof scriptSig === 'string') {
|
||||||
scriptSig = new Script(new Buffer(scriptSig, 'hex'));
|
try {
|
||||||
|
var scriptSigBuf = new Buffer(scriptSig, 'hex')
|
||||||
|
} catch(err) {
|
||||||
|
// Error: Invalid public key
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
scriptSig = new Script(scriptSigBuf);
|
||||||
}
|
}
|
||||||
if (!network)
|
if (!network)
|
||||||
network = 'livenet';
|
network = 'livenet';
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
var util = require('../util');
|
var util = require('../util');
|
||||||
var Script = require('./Script');
|
var Script = require('./Script');
|
||||||
var Bignum = require('bignum');
|
var Bignum = require('bignum');
|
||||||
var Binary = require('binary');
|
|
||||||
var Step = require('step');
|
|
||||||
var buffertools = require('buffertools');
|
var buffertools = require('buffertools');
|
||||||
var Transaction = require('./Transaction');
|
var Transaction = require('./Transaction');
|
||||||
var TransactionIn = Transaction.In;
|
var TransactionIn = Transaction.In;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
var Net = require('net');
|
var Net = require('net');
|
||||||
var Binary = require('binary');
|
var Put = require('bufferput');
|
||||||
var buffertools = require('buffertools');
|
var buffertools = require('buffertools');
|
||||||
|
|
||||||
function Peer(host, port, services) {
|
function Peer(host, port, services) {
|
||||||
@ -45,7 +45,7 @@ Peer.prototype.toString = function() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Peer.prototype.toBuffer = function() {
|
Peer.prototype.toBuffer = function() {
|
||||||
var put = Binary.put();
|
var put = new Put();
|
||||||
put.word32le(this.lastSeen);
|
put.word32le(this.lastSeen);
|
||||||
put.word64le(this.services);
|
put.word64le(this.services);
|
||||||
put.put(this.getHostAsBuffer());
|
put.put(this.getHostAsBuffer());
|
||||||
|
|||||||
@ -15,6 +15,7 @@ function RpcClient(opts) {
|
|||||||
this.protocol = (opts.protocol == 'http') ? http : https;
|
this.protocol = (opts.protocol == 'http') ? http : https;
|
||||||
this.batchedCalls = null;
|
this.batchedCalls = null;
|
||||||
this.disableAgent = opts.disableAgent || false;
|
this.disableAgent = opts.disableAgent || false;
|
||||||
|
this.rejectUnauthorized = opts.rejectUnauthorized || false;
|
||||||
}
|
}
|
||||||
|
|
||||||
RpcClient.prototype.batch = function(batchCallback, resultCallback) {
|
RpcClient.prototype.batch = function(batchCallback, resultCallback) {
|
||||||
@ -33,6 +34,7 @@ var callspec = {
|
|||||||
decodeRawTransaction: '',
|
decodeRawTransaction: '',
|
||||||
dumpPrivKey: '',
|
dumpPrivKey: '',
|
||||||
encryptWallet: '',
|
encryptWallet: '',
|
||||||
|
estimateFee: 'int',
|
||||||
getAccount: '',
|
getAccount: '',
|
||||||
getAccountAddress: 'str',
|
getAccountAddress: 'str',
|
||||||
getAddedNodeInfo: '',
|
getAddedNodeInfo: '',
|
||||||
@ -163,6 +165,7 @@ function rpc(request, callback) {
|
|||||||
path: '/',
|
path: '/',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
port: self.port,
|
port: self.port,
|
||||||
|
rejectUnauthorized: self.rejectUnauthorized,
|
||||||
agent: self.disableAgent ? false : undefined,
|
agent: self.disableAgent ? false : undefined,
|
||||||
};
|
};
|
||||||
if (self.httpOptions) {
|
if (self.httpOptions) {
|
||||||
@ -204,7 +207,7 @@ function rpc(request, callback) {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
req.on('error', function(e) {
|
req.on('error', function(e) {
|
||||||
var err = new Error('Could not connect to bitcoin via RPC: ' + e.message);
|
var err = new Error('Could not connect to bitcoin via RPC at host: ' + self.host + ' port: ' + self.port + ' Error: ' + e.message);
|
||||||
log.err(err);
|
log.err(err);
|
||||||
callback(err);
|
callback(err);
|
||||||
});
|
});
|
||||||
|
|||||||
@ -7,7 +7,6 @@ var util = require('../util');
|
|||||||
var bignum = require('bignum');
|
var bignum = require('bignum');
|
||||||
var Put = require('bufferput');
|
var Put = require('bufferput');
|
||||||
var Parser = require('../util/BinaryParser');
|
var Parser = require('../util/BinaryParser');
|
||||||
var Step = require('step');
|
|
||||||
var buffertools = require('buffertools');
|
var buffertools = require('buffertools');
|
||||||
var error = require('../util/error');
|
var error = require('../util/error');
|
||||||
var WalletKey = require('./WalletKey');
|
var WalletKey = require('./WalletKey');
|
||||||
@ -633,14 +632,19 @@ Transaction.prototype.getReceivingAddresses = function(networkName) {
|
|||||||
ret = [];
|
ret = [];
|
||||||
for (var i = 0; i<this.outs.length; i++) {
|
for (var i = 0; i<this.outs.length; i++) {
|
||||||
var o = this.outs[i];
|
var o = this.outs[i];
|
||||||
var addr = Address.fromScriptPubKey(o.getScript(), networkName)[0].toString();
|
var addrs = Address.fromScriptPubKey(o.getScript(), networkName);
|
||||||
ret.push(addr);
|
if (typeof addrs[0] !== 'undefined') {
|
||||||
|
ret.push(addrs[0].toString());
|
||||||
|
} else {
|
||||||
|
ret.push(null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
};
|
};
|
||||||
|
|
||||||
Transaction.prototype.getSendingAddresses = function(networkName) {
|
Transaction.prototype.getSendingAddresses = function(networkName) {
|
||||||
var ret = [];
|
|
||||||
if (!networkName) networkName = 'livenet';
|
if (!networkName) networkName = 'livenet';
|
||||||
|
var ret = [];
|
||||||
for (var i = 0; i<this.ins.length; i++) {
|
for (var i = 0; i<this.ins.length; i++) {
|
||||||
var input = this.ins[i];
|
var input = this.ins[i];
|
||||||
var scriptSig = input.getScript();
|
var scriptSig = input.getScript();
|
||||||
|
|||||||
@ -744,8 +744,9 @@ fnToSign[Script.TX_SCRIPTHASH] = TransactionBuilder.prototype._signScriptHash;
|
|||||||
// sign
|
// sign
|
||||||
// ----
|
// ----
|
||||||
// Signs a transaction.
|
// Signs a transaction.
|
||||||
// `keys`: an array of strings representing private keys to sign the
|
// `keys`: an array of strings representing private keys to sign the transaction in WIF private key format
|
||||||
// transaction in WIF private key format OR bitcore's `WalletKey` objects
|
// OR bitcore's `WalletKey` objects
|
||||||
|
// OR string representing private keys to sign the transaction in WIF private key format separated by commas
|
||||||
//
|
//
|
||||||
// If multiple keys are given, each will be tested against the transaction's
|
// If multiple keys are given, each will be tested against the transaction's
|
||||||
// scriptPubKeys. Only the valid private keys will be used to sign.
|
// scriptPubKeys. Only the valid private keys will be used to sign.
|
||||||
@ -756,6 +757,7 @@ fnToSign[Script.TX_SCRIPTHASH] = TransactionBuilder.prototype._signScriptHash;
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
TransactionBuilder.prototype.sign = function(keys) {
|
TransactionBuilder.prototype.sign = function(keys) {
|
||||||
|
if (typeof keys === "string") keys = keys.split(',');
|
||||||
if (!(keys instanceof Array))
|
if (!(keys instanceof Array))
|
||||||
throw new Error('parameter should be an array');
|
throw new Error('parameter should be an array');
|
||||||
|
|
||||||
@ -819,10 +821,12 @@ TransactionBuilder.prototype.build = function() {
|
|||||||
//
|
//
|
||||||
TransactionBuilder.prototype.toObj = function() {
|
TransactionBuilder.prototype.toObj = function() {
|
||||||
|
|
||||||
|
var utxos = this.selectedUtxos && this.selectedUtxos[0] ? this.selectedUtxos : JSON.parse(this.vanilla.utxos);
|
||||||
|
|
||||||
var ret = {
|
var ret = {
|
||||||
version: TOOBJ_VERSION,
|
version: TOOBJ_VERSION,
|
||||||
outs: JSON.parse(this.vanilla.outs),
|
outs: JSON.parse(this.vanilla.outs),
|
||||||
utxos: JSON.parse(this.vanilla.utxos),
|
utxos: utxos,
|
||||||
opts: JSON.parse(this.vanilla.opts),
|
opts: JSON.parse(this.vanilla.opts),
|
||||||
scriptSig: this.vanilla.scriptSig,
|
scriptSig: this.vanilla.scriptSig,
|
||||||
};
|
};
|
||||||
|
|||||||
@ -23,8 +23,6 @@ bnjs.fromBuffer = function(buf, opts) {
|
|||||||
buf = nbuf;
|
buf = nbuf;
|
||||||
}
|
}
|
||||||
var hex = buf.toString('hex');
|
var hex = buf.toString('hex');
|
||||||
if (hex.length % 2)
|
|
||||||
hex = "0" + hex;
|
|
||||||
var bn = new bnjs(hex, 16);
|
var bn = new bnjs(hex, 16);
|
||||||
return bn;
|
return bn;
|
||||||
};
|
};
|
||||||
@ -32,9 +30,7 @@ bnjs.fromBuffer = function(buf, opts) {
|
|||||||
bnjs.prototype.toBuffer = function(opts) {
|
bnjs.prototype.toBuffer = function(opts) {
|
||||||
var buf;
|
var buf;
|
||||||
if (opts && opts.size) {
|
if (opts && opts.size) {
|
||||||
var hex = this.toString(16);
|
var hex = this.toString(16, 2);
|
||||||
if (hex.length % 2)
|
|
||||||
hex = "0" + hex;
|
|
||||||
var natlen = hex.length/2;
|
var natlen = hex.length/2;
|
||||||
buf = new Buffer(hex, 'hex');
|
buf = new Buffer(hex, 'hex');
|
||||||
|
|
||||||
@ -56,9 +52,7 @@ bnjs.prototype.toBuffer = function(opts) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
var hex = this.toString(16);
|
var hex = this.toString(16, 2);
|
||||||
if (hex.length % 2)
|
|
||||||
hex = "0" + hex;
|
|
||||||
buf = new Buffer(hex, 'hex');
|
buf = new Buffer(hex, 'hex');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -160,6 +160,12 @@ Key.sign = function(hash, priv, k) {
|
|||||||
var Q = Point.multiply(G, k);
|
var Q = Point.multiply(G, k);
|
||||||
var r = Q.x.mod(n);
|
var r = Q.x.mod(n);
|
||||||
var s = k.invm(n).mul(e.add(d.mul(r))).mod(n);
|
var s = k.invm(n).mul(e.add(d.mul(r))).mod(n);
|
||||||
|
//enforce low s
|
||||||
|
//see BIP 62, "low S values in signatures"
|
||||||
|
var n_half = bignum.fromBuffer(new Buffer("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0", 'hex'), {size: 32});
|
||||||
|
if (s.cmp(n_half) > 0) {
|
||||||
|
s = new bignum(n).sub(s);
|
||||||
|
}
|
||||||
} while (r.cmp(new bignum(0)) <= 0 || s.cmp(new bignum(0)) <= 0);
|
} while (r.cmp(new bignum(0)) <= 0 || s.cmp(new bignum(0)) <= 0);
|
||||||
|
|
||||||
return {r: r, s: s};
|
return {r: r, s: s};
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
var bignum = require('bignum');
|
|
||||||
var Point = require('../Point');
|
var Point = require('../Point');
|
||||||
var SecureRandom = require('../SecureRandom');
|
var SecureRandom = require('../SecureRandom');
|
||||||
var bignum = require('bignum');
|
var bignum = require('bignum');
|
||||||
|
|||||||
73
package.json
73
package.json
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "bitcore",
|
"name": "bitcore",
|
||||||
"description": "Bitcoin Library",
|
"description": "Bitcoin Library",
|
||||||
"version": "0.1.36",
|
"version": "0.1.41",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Stephen Pair",
|
"name": "Stephen Pair",
|
||||||
"email": "stephen@bitpay.com"
|
"email": "stephen@bitpay.com"
|
||||||
@ -30,6 +30,10 @@
|
|||||||
{
|
{
|
||||||
"name": "Gordon Hall",
|
"name": "Gordon Hall",
|
||||||
"email": "gordon@bitpay.com"
|
"email": "gordon@bitpay.com"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Esteban Ordano",
|
||||||
|
"email": "eordano@gmail.com"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"keywords": [
|
"keywords": [
|
||||||
@ -49,44 +53,27 @@
|
|||||||
"install": "node-gyp rebuild",
|
"install": "node-gyp rebuild",
|
||||||
"test": "node browser/build.js -a && node_modules/.bin/istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec && cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
|
"test": "node browser/build.js -a && node_modules/.bin/istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec && cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
|
||||||
"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha -- --reporter spec test",
|
"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha -- --reporter spec test",
|
||||||
"prepublish": "node browser/build.js -m"
|
"prepublish": "node browser/build.js -a"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"grunt-browserify": "~2.0.0",
|
"asn1.js": "0.4.1",
|
||||||
"grunt-contrib-watch": "~0.5.3",
|
"async": "~0.2.10",
|
||||||
"grunt-markdown": "~0.5.0",
|
"bignum": "^0.9.0",
|
||||||
"grunt-mocha-test": "~0.8.2",
|
"binary": "^0.3.0",
|
||||||
"grunt-shell": "~0.6.4",
|
|
||||||
"protobufjs": "=3.0.0",
|
|
||||||
"coveralls": "^2.10.0",
|
|
||||||
"istanbul": "~0.2.6",
|
|
||||||
"commander": "~2.2.0",
|
|
||||||
"mocha": ">=1.15.1",
|
|
||||||
"sjcl": "=1.0.1",
|
|
||||||
"hash.js": "=0.3.1",
|
|
||||||
"bn.js": "=0.13.3",
|
|
||||||
"jsrsasign": "=0.0.3",
|
|
||||||
"elliptic": "=0.15.7",
|
|
||||||
"bindings": "=1.1.1",
|
"bindings": "=1.1.1",
|
||||||
|
"bn.js": "=1.0.0",
|
||||||
|
"brfs": "=1.0.0",
|
||||||
|
"browserify-buffertools": "git://github.com/maraoz/browserify-buffertools.git",
|
||||||
"bufferput": "git://github.com/bitpay/node-bufferput.git",
|
"bufferput": "git://github.com/bitpay/node-bufferput.git",
|
||||||
"bignum": "=0.6.2",
|
|
||||||
"binary": "=0.3.0",
|
|
||||||
"step": "=0.0.4",
|
|
||||||
"buffers": "=0.1.1",
|
"buffers": "=0.1.1",
|
||||||
"buffertools": "=2.1.2",
|
"buffertools": "=2.1.2",
|
||||||
"browserify": "=3.40.0",
|
"elliptic": "=1.0.0",
|
||||||
"browser-pack": "=2.0.1",
|
"hash.js": "=0.3.2",
|
||||||
"browserify-buffertools": "git://github.com/maraoz/browserify-buffertools.git",
|
"jsrsasign": "=0.0.3",
|
||||||
"socks5-client": "~0.3.6",
|
|
||||||
"brfs": "=1.0.0",
|
|
||||||
"chai": "=1.9.1",
|
|
||||||
"uglifyify": "=1.2.3",
|
|
||||||
"async": "~0.2.10",
|
|
||||||
"event-stream": "~3.1.5",
|
|
||||||
"gulp-concat": "~2.2.0",
|
|
||||||
"gulp": "~3.8.2",
|
|
||||||
"preconditions": "^1.0.7",
|
"preconditions": "^1.0.7",
|
||||||
"asn1.js": "0.4.1"
|
"protobufjs": "=3.0.0",
|
||||||
|
"sjcl": "=1.0.1",
|
||||||
|
"socks5-client": "~0.3.6"
|
||||||
},
|
},
|
||||||
"testling": {
|
"testling": {
|
||||||
"harness": "mocha-bdd",
|
"harness": "mocha-bdd",
|
||||||
@ -104,6 +91,7 @@
|
|||||||
},
|
},
|
||||||
"browser": {
|
"browser": {
|
||||||
"bignum": "./lib/browser/Bignum.js",
|
"bignum": "./lib/browser/Bignum.js",
|
||||||
|
"buffertools": "browserify-buffertools",
|
||||||
"./lib/Key.js": "./lib/browser/Key.js",
|
"./lib/Key.js": "./lib/browser/Key.js",
|
||||||
"./lib/Point.js": "./lib/browser/Point.js",
|
"./lib/Point.js": "./lib/browser/Point.js",
|
||||||
"./lib/ECIES.js": "./lib/browser/ECIES.js",
|
"./lib/ECIES.js": "./lib/browser/ECIES.js",
|
||||||
@ -112,12 +100,27 @@
|
|||||||
},
|
},
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.10"
|
"node": ">=0.10 <0.10.36"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"sinon": "^1.10.3",
|
"browserify": "=3.40.0",
|
||||||
|
"chai": "=1.9.1",
|
||||||
|
"commander": "~2.2.0",
|
||||||
|
"coveralls": "^2.10.0",
|
||||||
|
"event-stream": "~3.1.5",
|
||||||
"express": "4.6.1",
|
"express": "4.6.1",
|
||||||
|
"grunt-browserify": "~2.0.0",
|
||||||
|
"grunt-contrib-watch": "~0.5.3",
|
||||||
|
"grunt-markdown": "~0.5.0",
|
||||||
|
"grunt-mocha-test": "~0.8.2",
|
||||||
|
"grunt-shell": "~0.6.4",
|
||||||
|
"gulp": "~3.8.2",
|
||||||
|
"gulp-concat": "~2.2.0",
|
||||||
|
"istanbul": "~0.2.6",
|
||||||
|
"mocha": ">=1.15.1",
|
||||||
|
"optimist": "0.6.1",
|
||||||
"request": "2.39.0",
|
"request": "2.39.0",
|
||||||
"optimist": "0.6.1"
|
"sinon": "^1.10.3",
|
||||||
|
"uglifyify": "=1.2.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -934,8 +934,8 @@ describe('TransactionBuilder', function() {
|
|||||||
it('should check sign parameters', function() {
|
it('should check sign parameters', function() {
|
||||||
var b = getP2shBuilder(1);
|
var b = getP2shBuilder(1);
|
||||||
(function() {
|
(function() {
|
||||||
b.sign(testdata.dataUnspentSign.keyStringsP2sh[0])
|
b.sign(testdata.dataUnspentSign.keyStringsP2sh[0]);
|
||||||
}).should.throw('array');
|
}).should.not.throw('array');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user