Commit Graph

398 Commits

Author SHA1 Message Date
Christopher Jeffrey
43b0533a18 minor improvements and fixes. 2015-12-27 23:54:53 -08:00
Christopher Jeffrey
afcb89f76f block and tx getters. coinbase height. multisig input test. 2015-12-24 13:19:29 -08:00
Christopher Jeffrey
1f8bf8c377 input and output getters. 2015-12-24 12:18:00 -08:00
Christopher Jeffrey
6ceeb6800b remove useless line. 2015-12-24 03:27:34 -08:00
Christopher Jeffrey
42d872b268 calculate block reward. 2015-12-24 00:34:31 -08:00
Christopher Jeffrey
1fb6cb04b4 clean up input and output schema. 2015-12-23 23:44:59 -08:00
Christopher Jeffrey
207d9e1a30 refactor input and output data. 2015-12-23 23:12:54 -08:00
Christopher Jeffrey
0ccf67aef6 more input and output data work. 2015-12-23 21:55:25 -08:00
Christopher Jeffrey
cf9e11e356 add ids to inputs and outputs without addresses. 2015-12-23 20:09:14 -08:00
Christopher Jeffrey
f3ae1c517a send block and merkleblock packets correctly. 2015-12-23 19:56:33 -08:00
Christopher Jeffrey
b77c34789e refactor getData for inputs and outputs. 2015-12-23 19:55:27 -08:00
Christopher Jeffrey
b14c4daee0 refactor tx.utxos(). 2015-12-23 18:31:31 -08:00
Christopher Jeffrey
389ee296b0 improve tx building. minor style fixes. utils.uniq. 2015-12-23 16:24:29 -08:00
Christopher Jeffrey
d32a951f37 fix isMultisig: compare to n value. 2015-12-23 11:45:43 -08:00
Christopher Jeffrey
2299ee757e minor refactor. 2015-12-23 11:35:57 -08:00
Christopher Jeffrey
dddd6b0b49 minor: inspect methods. 2015-12-23 05:45:33 -08:00
Christopher Jeffrey
f68750991d add block.reward. add coinbase data to into. failsafe for getFee. 2015-12-23 05:33:48 -08:00
Christopher Jeffrey
fdc11b76b2 start checking for height coinbases earlier. 2015-12-23 04:44:21 -08:00
Christopher Jeffrey
58d8e3ce53 fix coinbase parsing. 2015-12-23 04:14:51 -08:00
Christopher Jeffrey
2f6f3e11b1 Revert "use big numbers when calculating fee."
This reverts commit a057dc4064.
2015-12-23 02:42:57 -08:00
Christopher Jeffrey
a057dc4064 use big numbers when calculating fee. 2015-12-23 02:42:36 -08:00
Christopher Jeffrey
d54a532a66 fix error thrown in output.inspect. 2015-12-23 02:35:32 -08:00
Christopher Jeffrey
b3f457ee31 improve locktime checks and coinbase parsing. 2015-12-23 02:34:51 -08:00
Christopher Jeffrey
4ac398e41b add tx to prev output data. 2015-12-22 22:50:13 -08:00
Christopher Jeffrey
47618898c7 minor. 2015-12-22 20:11:09 -08:00
Christopher Jeffrey
3d417f48df improve coinbase height check. 2015-12-22 20:07:20 -08:00
Christopher Jeffrey
618177b6a6 grab block height from the coinbase script. 2015-12-22 19:30:32 -08:00
Christopher Jeffrey
07a1322749 inspect methods. better data parsing. expose modules. 2015-12-22 19:27:36 -08:00
Christopher Jeffrey
b522aa2b06 handle merkleblock vs block better. 2015-12-22 15:03:17 -08:00
Christopher Jeffrey
1c8604477f improve script type tests. improve input/output data. 2015-12-22 14:50:07 -08:00
Christopher Jeffrey
b16a86b2d4 fix typo. 2015-12-22 06:50:09 -08:00
Christopher Jeffrey
d3e4dfaf5c fix some getters. move getInputData and getOutputData. wallet.toAddress. 2015-12-22 06:21:01 -08:00
Christopher Jeffrey
a17fe6fe5f use dynamic input and output objects. 2015-12-22 05:00:55 -08:00
Christopher Jeffrey
a91f245e86 add types to data. aliases for utils. 2015-12-22 04:03:15 -08:00
Christopher Jeffrey
eb6a9fc20d make data easier to extract from inputs and outputs. 2015-12-22 03:22:49 -08:00
Christopher Jeffrey
a6e3024e9b peer address and port. 2015-12-22 03:19:27 -08:00
Christopher Jeffrey
68c16b214a add rblock and rhash helpers. 2015-12-22 02:15:33 -08:00
Christopher Jeffrey
52b653083c add features potentially useful for blockchain explorers. 2015-12-21 20:00:13 -08:00
Christopher Jeffrey
a7ea69f48a improve utils: primarily toBTC and fromBTC. 2015-12-21 15:20:01 -08:00
Christopher Jeffrey
500f079632 fix script arithmetic, op_verify, and wallet.fillUnspent. 2015-12-21 11:26:13 -08:00
Christopher Jeffrey
d28716c98d use regular addresses for wallet prefix. 2015-12-20 19:35:56 -08:00
Christopher Jeffrey
87d4d4b0ad refactor script and wallet. better redeem script error. 2015-12-20 16:08:00 -08:00
Christopher Jeffrey
c0d0423f14 hd/wallet: minor. 2015-12-20 13:29:39 -08:00
Christopher Jeffrey
b900d706c0 move varint and readIntv to utils. 2015-12-20 02:01:19 -08:00
Christopher Jeffrey
f25d69f30f put user agent in constants. 2015-12-20 01:57:47 -08:00
Christopher Jeffrey
93e42e90a1 drop old fee and dust constants. style. 2015-12-20 01:50:18 -08:00
Christopher Jeffrey
a50ee3e0ba remove wallet.getPublicKeys(). 2015-12-20 01:45:17 -08:00
Christopher Jeffrey
1db84a0528 wallet json and prefix. style. cleanup. 2015-12-20 01:43:09 -08:00
Christopher Jeffrey
61699cca3a style: function names. 2015-12-19 15:43:28 -08:00
Christopher Jeffrey
0aff6d7cfe improve script.isValidSig. 2015-12-19 15:26:26 -08:00
Christopher Jeffrey
2e7892c798 use keyPair() in script.verify. whitespace. 2015-12-19 15:24:19 -08:00
Christopher Jeffrey
a18a501c37 refactor hd keys. 2015-12-19 15:14:56 -08:00
Christopher Jeffrey
b20bcf701b fix private key encryption. style changes. 2015-12-19 14:00:23 -08:00
Christopher Jeffrey
75afb6d953 fix utils.toBTC 2015-12-19 02:57:01 -08:00
Christopher Jeffrey
cb2bcc21c6 prevent buffered _writes from binding thousands of events. 2015-12-19 02:52:51 -08:00
Christopher Jeffrey
a96f27682f style. fix addr timestamp. 2015-12-19 02:17:01 -08:00
Christopher Jeffrey
d3811acc28 move chain.on("fork") somewhere sane. 2015-12-19 02:08:42 -08:00
Christopher Jeffrey
1a6633bade style consistency - again. 2015-12-19 02:05:46 -08:00
Christopher Jeffrey
6411ec8914 fix p2sh multisig verification. 2015-12-19 01:43:34 -08:00
Christopher Jeffrey
7cae4c4eb5 remove uint8array check for now. minor style. 2015-12-18 22:57:39 -08:00
Christopher Jeffrey
8746248c2c addr packet parsing. 2015-12-18 22:55:06 -08:00
Christopher Jeffrey
1e802c152f comments. more style consistency. 2015-12-18 22:53:31 -08:00
Christopher Jeffrey
5ece45091b style consistency. 2015-12-18 22:37:02 -08:00
Christopher Jeffrey
9fe8afa7d3 emit orphan event. 2015-12-18 20:33:19 -08:00
Christopher Jeffrey
283157dd71 add allowEval option. 2015-12-18 17:56:06 -08:00
Christopher Jeffrey
0bd4d798a9 fix locator hashes by height. 2015-12-18 17:38:59 -08:00
Christopher Jeffrey
7cabdcfda5 fix getOrphanRoot and usage. 2015-12-18 17:31:45 -08:00
Christopher Jeffrey
d1f8e9b5ff add chain.hasOrphan method. 2015-12-18 16:58:26 -08:00
Christopher Jeffrey
e735249d0d try to choose from at least 5 potential peers when syncing. 2015-12-18 16:52:32 -08:00
Christopher Jeffrey
086b32cb73 minor: initialize syncPeer. 2015-12-18 16:39:29 -08:00
Christopher Jeffrey
cf502913b6 check to see if chain is synced. 2015-12-18 16:35:00 -08:00
Christopher Jeffrey
34e90c6baa handle chain forks from checkpoints. enforce one syncPeer. 2015-12-18 16:30:58 -08:00
Christopher Jeffrey
4984c306b9 minor: function name. 2015-12-18 15:44:15 -08:00
Christopher Jeffrey
6ae273f84d tx.verify: compare top stack item against zero instead of one. 2015-12-18 15:43:17 -08:00
Christopher Jeffrey
5942209f41 pass size into block and tx for maxsize checks. 2015-12-18 15:41:34 -08:00
Christopher Jeffrey
7ffcc8e7f3 check for syncPeer on blockchain fork. 2015-12-18 13:12:04 -08:00
Christopher Jeffrey
91618258e7 add a peers.bad list for peers with forked blockchains. 2015-12-18 13:10:27 -08:00
Christopher Jeffrey
5791672c07 pass _network to tx. script debugging. tx filled total. 2015-12-18 13:01:23 -08:00
Christopher Jeffrey
82983af52b pool wallets. chain errors. checkpoint failure. 2015-12-18 12:10:39 -08:00
Christopher Jeffrey
d109eaba6c handle reject packet. 2015-12-17 19:47:20 -08:00
Christopher Jeffrey
135208910d always set nSequence to zero when nLockTime is present. 2015-12-17 18:33:27 -08:00
Christopher Jeffrey
1e0a153b59 do not overwrite lockTime input by user. 2015-12-17 17:58:09 -08:00
Christopher Jeffrey
7f70b573c1 enforce checklocktimeverify for nLockTime when adding input. tx.prevOut method. 2015-12-17 17:56:46 -08:00
Christopher Jeffrey
aac4911b4e remove comments for pushdata issue. 2015-12-17 17:39:08 -08:00
Christopher Jeffrey
f89908bb65 script formatting 2015-12-17 17:37:13 -08:00
Christopher Jeffrey
3e747f0df4 comment 2015-12-17 17:33:02 -08:00
Christopher Jeffrey
5b68ec0b3e add option for colored coin output creation. 2015-12-17 17:31:37 -08:00
Christopher Jeffrey
efe1181bc1 move key sorting to utils. 2015-12-17 17:23:33 -08:00
Christopher Jeffrey
b74e8de067 input tests. function names. getInputKey/getOutputKey. 2015-12-17 17:14:41 -08:00
Christopher Jeffrey
6abfc10a28 improve input checks with keys/hashes/redeemscript. 2015-12-17 16:53:35 -08:00
Christopher Jeffrey
6caa6b91dd add spendable checking for checklocktimeverify. 2015-12-17 16:06:08 -08:00
Christopher Jeffrey
5e89aedf0b improve input testing. 2015-12-17 16:06:08 -08:00
Christopher Jeffrey
0c8168c697 rename colored coin check. all input script tests. 2015-12-17 16:06:08 -08:00
Christopher Jeffrey
3e608c2cc6 script and standard transaction types. prefixes. 2015-12-17 16:06:08 -08:00
Christopher Jeffrey
07a6788831 optimize block and tx rendering. script maxes. sync. 2015-12-17 16:06:08 -08:00
Christopher Jeffrey
88ddb3620c get blockchain sync working. fix pushdata ops. 2015-12-17 16:05:48 -08:00
Christopher Jeffrey
5e5507f668 optimize checkmultisig. 2015-12-15 01:48:21 -08:00
Christopher Jeffrey
c44ea0090f implement sighash_single bug. 2015-12-15 01:41:44 -08:00
Christopher Jeffrey
1b07d6e906 minor cleanup. 2015-12-15 01:23:49 -08:00
Christopher Jeffrey
c68ab4ee7d implement all sighash types. add hasUnspent(). 2015-12-15 01:22:24 -08:00