Commit Graph

1018 Commits

Author SHA1 Message Date
Thomas Kerin
244c3d4f18 scripthash.input.check / decode: allow situation where chunks length ==1, and don't attempt to classifyInput if witness 2016-11-12 19:25:51 +01:00
Thomas Kerin
fdcd277ba9 expose signer through TxSigner 2016-11-12 18:35:17 +01:00
Thomas Kerin
155c9afe05 remove redundant copy of solveScript 2016-11-12 18:23:44 +01:00
Thomas Kerin
3a03691b7d move & rename anything to do with signable_scripts 2016-11-12 18:18:08 +01:00
Thomas Kerin
b09cf89f97 extractSigs - verify pubKey & pubKeyHash purported public keys, plus a round of comments 2016-11-12 18:01:54 +01:00
Thomas Kerin
c215f350fc Make it clearer what solve aims to find, and make remove branches from sign 2016-11-12 17:49:59 +01:00
Thomas Kerin
c3ed014488 Avoids code duplication by deriving sigVersion / solution for the necessary step 2016-11-12 17:32:26 +01:00
Thomas Kerin
09bdc1deee SerializeSigData: operations on arrays before final pushAll (scriptSig) 2016-11-12 17:16:57 +01:00
Thomas Kerin
c60a6418b5 working again 2016-11-12 17:10:53 +01:00
Thomas Kerin
9d766df519 bleh, rushed commit 2016-11-12 15:45:59 +01:00
Thomas Kerin
c0bbd76ad0 example for solveOutput, also checks every sigHash test vector 2016-11-12 15:26:53 +01:00
Thomas Kerin
78faaddf4d remove SIGNABLE_TYPES and P2SH_scripts 2016-11-12 14:53:06 +01:00
Thomas Kerin
ffca5afcff Solve Output: take an output script, returns {type, script, solvedBy, requiredSigs, canSign} 2016-11-12 14:53:06 +01:00
Daniel Cousens
8ae194ab9c transaction: hashForWitnessV0 s/amount/value 2016-11-09 12:30:08 +11:00
Daniel Cousens
bdf6a9d458 Transaction: initialize to ZERO earlier 2016-11-09 12:14:07 +11:00
Thomas Kerin
4c68cd9a5a Test that parsing a transaction with superfluous witness data leads to an error 2016-11-09 12:12:49 +11:00
Daniel Cousens
7fb5259233 Transaction: add Witness serialization and hashForWitnessV0 2016-11-09 12:12:49 +11:00
Thomas Kerin
b5e46c2931 Replace script type strings with constants 2016-11-04 12:21:26 +11:00
Daniel Cousens
9db9763221 tests: add script.*.*.decode tests 2016-11-04 07:23:02 +11:00
Daniel Cousens
0c67f5e585 templates: add toJSON for clearer error message 2016-11-04 07:23:02 +11:00
Daniel Cousens
ce5babde83 templates: fix nullData return value 2016-11-04 07:23:02 +11:00
Daniel Cousens
69d8e9ed9e move templates to templates/index.js 2016-11-04 07:23:02 +11:00
Daniel Cousens
d9fa39a2cc scripts: extract all scripts to encode/decode/check style 2016-11-04 07:23:02 +11:00
Thomas Kerin
27b48e8aa2 Add methods to decode information from output scripts 2016-11-02 10:58:45 +11:00
Thomas Kerin
53f08a7569 Script: add function for parsing multisig type scripts 2016-11-02 10:58:45 +11:00
Daniel Cousens
a956b8859f networks: drop dogecoin and dustThreshold 2016-10-20 23:40:46 -05:00
Daniel Cousens
1f66b9e3d8 HDNode: add comment about Q.compressed assumption 2016-10-18 17:45:37 +11:00
Thomas Kerin
6067220cba Remove redundant check for uncompressed public key 2016-10-18 15:59:47 +11:00
Daniel Cousens
b14abac4a1 HDNode: remove HDNode.toString for safety 2016-10-18 15:42:44 +11:00
Thomas Kerin
7b1167708a Transaction and block versions are signed integers 2016-10-13 09:29:03 +11:00
Daniel Cousens
3de754a9a2 TransactionBuilder: remove hashTypes inconsistency issues, resolves #642 2016-10-13 00:55:19 +11:00
Daniel Cousens
9dcf4d4b8b TransactionBuilder: add note why fixMultisigOrder is separate 2016-10-13 00:55:19 +11:00
Daniel Cousens
7059b177eb TransactionBuilder: re-order in order of usage 2016-10-13 00:55:19 +11:00
Daniel Cousens
6056e7913e TransactionBuilder: fixMultisigOrder only works if a redeemScript exists 2016-10-13 00:55:19 +11:00
Daniel Cousens
1ff64d207e TransactionBuilder: flatten prepareInput P2SH detection 2016-10-13 00:55:19 +11:00
Daniel Cousens
a58c959099 TransactionBuilder: localize fixMultisigOrder assumptions 2016-10-13 00:55:19 +11:00
Daniel Cousens
0e2480523a TransactionBuilder: expandInput, consistent variable names 2016-10-13 00:55:19 +11:00
Daniel Cousens
f3cc71a75f TransactionBuilder: simplify buildInput logic 2016-10-13 00:55:19 +11:00
Daniel Cousens
090b8177d1 TransactionBuilder: flatten inconsistency checks 2016-10-13 00:55:19 +11:00
Daniel Cousens
5dcf38c0c5 HDNode: clearer error for bad path type 2016-10-12 13:15:54 +11:00
Daniel Cousens
9f1ebf72a6 types: remove unused UInt2, BIP32 is capitals 2016-10-12 13:15:54 +11:00
Daniel Cousens
4ee298c414 block: add type checking 2016-10-10 11:20:20 +11:00
Daniel Cousens
dd4596a44a block: use merkle-lib instead of inline calculation 2016-10-10 11:20:20 +11:00
Daniel Cousens
3bff2c63af transaction: simplify toBuffer offset management 2016-10-10 07:56:18 +11:00
Daniel Cousens
f7b2fdfe60 TransactionBuilder: avoid input mutation until after exception possibility 2016-10-09 22:04:32 +11:00
Daniel Cousens
17377381c4 TransactionBuilder: if prevOutScript is defined, but not signable, try 1 last time 2016-10-09 22:04:32 +11:00
Daniel Cousens
45b0e35264 transaction/types: use Satoshi over UInt53 2016-10-07 14:25:44 +11:00
Daniel Cousens
ecc6d45a7e types: add Satoshi 2016-10-07 14:25:44 +11:00
Daniel Cousens
29a865788d use varuint-bitcoin 2016-10-07 10:55:34 +11:00
Daniel Cousens
7cdabef954 ecdsa: remove unused functions 2016-10-06 21:40:42 +11:00