Commit graph

977 commits

Author SHA1 Message Date
Daniel Cousens
a5196dedcb ECPair: enforce <= 0, not just === 2015-09-09 00:48:06 +10:00
Daniel Cousens
a72e608898 ECPair: loop until within interval 2015-09-09 00:48:06 +10:00
Daniel Cousens
1ea5252511 TxBuilder: only allow OP_0's when building 2015-09-08 21:22:54 +10:00
Daniel Cousens
b252924517 types: remove ECCurve 2015-09-05 15:42:25 +10:00
Daniel Cousens
e8cb7c16da Transaction: coinBaseHash no longer relevant 2015-09-05 14:28:28 +10:00
Daniel Cousens
4b825bf2a8 HDNode: stop exposing constants 2015-09-05 14:27:53 +10:00
Daniel Cousens
ccfaaf0b6f ecdsa: remove curve parameter 2015-09-05 14:27:53 +10:00
Daniel Cousens
146bc8e11a address: re-use fromBase58Check internally 2015-09-05 14:27:53 +10:00
Daniel Cousens
48dc0a9054 script: no need to use readUInt8 2015-09-05 14:27:53 +10:00
Daniel Cousens
2d75b7e7ff standard: remove padded Blocks 2015-09-05 14:10:32 +10:00
Daniel Cousens
ec1195bcee Merge pull request #448 from bitcoinjs/bip66
Extract BIP66 module
2015-08-25 14:17:44 +10:00
Daniel Cousens
e94ec00919 types: restore quacking behaviour 2015-08-25 13:47:11 +10:00
Wei Lu
79db118417 Merge pull request #446 from bitcoinjs/wifex
ECPair: extract WIF to 3rd party module
2015-08-23 23:24:07 +08:00
Daniel Cousens
96c04d0787 ECPair: makeRandom, fix comparison 2015-08-24 01:04:36 +10:00
Daniel Cousens
d46035a35f ECPair: rm duplicate throw 2015-08-24 01:00:51 +10:00
Daniel Cousens
b12f559b85 HDNode: consistent capitalization in comments 2015-08-22 12:53:47 +10:00
Daniel Cousens
92937a8ded script: rm unused ecurve 2015-08-22 12:37:17 +10:00
Daniel Cousens
3106fc13ca script: refactor isCanonicalPubKey to bitcoin-core equivalent 2015-08-22 12:32:03 +10:00
Daniel Cousens
0ff5bd5698 script: add isDefinedHashType to check hashType 2015-08-22 12:32:03 +10:00
Daniel Cousens
abac254d0d script: use bip66 for signature checking 2015-08-22 11:54:00 +10:00
Daniel Cousens
1e23085ad7 use bip66 module 2015-08-21 20:35:22 +10:00
Daniel Cousens
252336ab8c ECPair: fix modulo bias in makeRandom 2015-08-21 16:46:18 +10:00
Daniel Cousens
efacd387be ECPair: extract WIF to 3rd party module 2015-08-20 20:16:57 +10:00
Daniel Cousens
e3f21ebeb2 HDNode: avoid creating multiple buffers 2015-08-20 14:23:27 +10:00
Daniel Cousens
8934de591c use baddress/bcrypto/bscript for ambuigities 2015-08-20 13:55:13 +10:00
Daniel Cousens
6ec687deba rename scripts to script 2015-08-20 13:55:13 +10:00
Daniel Cousens
18e9cdcc02 rename Address to address 2015-08-20 13:55:13 +10:00
Daniel Cousens
8f9d59fb18 ECPair: stop exposing ECDSA curve 2015-08-20 13:55:13 +10:00
Daniel Cousens
ca4debd92e types: Expected Buffer, length to follow 2015-08-19 15:27:06 +10:00
Daniel Cousens
c06df2df8a TxBuilder: fix equals is undefined in Node 0.10 2015-08-18 14:55:23 +10:00
Daniel Cousens
97a0008445 types: rm Script type 2015-08-18 14:45:00 +10:00
Daniel Cousens
706f5d7a9c scripts: adds tests for *HashOutput 2015-08-18 14:44:30 +10:00
Daniel Cousens
ab1215adc1 scripts: refactor to/from ASM 2015-08-18 14:44:30 +10:00
Daniel Cousens
b933c6da44 scripts: re-add constrained hash types to *HashOutput 2015-08-18 14:44:30 +10:00
Daniel Cousens
20fd3cee8c rename EMPTY to EMPTY_SCRIPT, extract VALUE_UINT64_MAX constant 2015-08-18 14:44:30 +10:00
Daniel Cousens
e2abe2b3af merge Script/scripts 2015-08-18 14:44:30 +10:00
Daniel Cousens
151386c46d scripts: remove coercion, fromASM returns Buffer 2015-08-18 14:44:30 +10:00
Daniel Cousens
812d74aa0a coerce wherever necessary for now 2015-08-18 14:44:29 +10:00
Daniel Cousens
e05f8a542d remove Script object 2015-08-18 14:44:29 +10:00
Daniel Cousens
e743c58ed6 remove usage of instanced Scripts 2015-08-18 14:44:29 +10:00
Daniel Cousens
5d2abb523e HDNode: use typeforce.tuple for arguments 2015-08-18 14:21:38 +10:00
Daniel Cousens
fd7f0b0ef8 address: use input first errors, easier detection 2015-08-18 09:27:55 +10:00
Daniel Cousens
6002d9abd4 ecdsa: fix up tuple indentation 2015-08-14 10:56:31 +10:00
Daniel Cousens
94e16fbe37 rename __disableExcess to __noStrict 2015-08-14 10:56:31 +10:00
Daniel Cousens
92d16142d1 ECSignature: use types.tuple for arguments 2015-08-14 10:56:31 +10:00
Daniel Cousens
33a9dc4cce dustThreshold is a UInt53 2015-08-14 10:56:31 +10:00
Daniel Cousens
70c874e3cc bufferutils: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
d85df4a6d6 TransactionBuilder: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
c1a965d096 ECSignature: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
f2f0747187 Transaction: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
e4b697a261 scripts: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
1d4a71852f Script: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
395c43ad74 block: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
8f821f4768 ECPair: remove use of assert 2015-08-14 10:56:31 +10:00
Daniel Cousens
254b670427 add types 2015-08-14 10:56:30 +10:00
Daniel Cousens
5ae66d46e4 mv opcodes.js -> opcodes.json 2015-08-14 10:53:44 +10:00
Daniel Cousens
a8db7b2cbf block: use Tx.byteLength to avoid double serialization 2015-08-14 08:23:50 +10:00
Daniel Cousens
ae0001ce37 TxBuilder: more explicit comment for address type parameter 2015-08-13 19:07:09 +10:00
Daniel Cousens
56160622ca adhere to standard 5.0.0 2015-08-13 14:25:32 +10:00
Daniel Cousens
47364293a9 message: remove old TODO 2015-08-11 16:45:32 +10:00
Daniel Cousens
64657eb81f ECSignature: further avoidance of assert 2015-08-11 16:42:45 +10:00
Daniel Cousens
9d1c610c08 Transaction: capitalize Buffer constants 2015-08-11 16:42:45 +10:00
Daniel Cousens
6fbdecc39d networks: remove pchMessageStart chain parameter 2015-08-11 16:41:34 +10:00
Daniel Cousens
a4eb58f103 TxBuilder: pass network through fromTransaction, fixes failing tests 2015-08-07 16:56:27 +10:00
Daniel Cousens
1e90e1620a TxBuilder: throw on keyPair network inconsistency 2015-08-07 16:54:22 +10:00
Daniel Cousens
2971816588 TxBuilder: pass network through to fromTransaction 2015-08-07 16:41:24 +10:00
Daniel Cousens
f47decaa2f HDNode: adopt new strict network list parameters 2015-08-07 16:36:10 +10:00
Daniel Cousens
d3579289bd ECPair: use 1 line for throw 2015-08-07 16:36:10 +10:00
Daniel Cousens
6443e4c2b6 ECPair: support strict network syntax 2015-08-07 16:36:10 +10:00
Daniel Cousens
f5d99d8f8a address: remove network detection 2015-08-07 16:36:10 +10:00
Daniel Cousens
b67a3dcf9e TxBuilder: specify missing network information for TxBuilder 2015-08-07 16:36:10 +10:00
Daniel Cousens
37d094c179 TxBuilder: avoid use of network dependent functions where possible 2015-08-07 16:36:10 +10:00
Daniel Cousens
bdf92f73b4 HDNode: use throw over assert 2015-07-28 17:42:10 +10:00
Daniel Cousens
1a4000cc98 address: throw Invalid address instead of hash/version for fromBase58Check 2015-07-24 12:18:00 +10:00
Daniel Cousens
13f414c122 remove Address constructor 2015-07-24 12:18:00 +10:00
Daniel Cousens
abd27dd2be TxBuilder: disable Address object as valid input 2015-07-24 12:18:00 +10:00
Daniel Cousens
e9193df290 message: cease accepting an Address object 2015-07-24 12:18:00 +10:00
Daniel Cousens
588b346f5d ECPair: cease using Address for address encoding 2015-07-24 12:18:00 +10:00
Daniel Cousens
5ce093739e TxBuilder: clarify comment about coin base script support 2015-07-20 16:30:55 +10:00
Daniel Cousens
5021714a85 ECSignature: verbose comments are overly verbose, see BIP if necessary 2015-07-07 18:04:52 +10:00
Daniel Cousens
e8fd3887da ECSignature: account for SIGHASH being ignored 2015-07-07 17:47:29 +10:00
Daniel Cousens
92f9342c69 adhere more closely to BIP66 2015-07-07 17:42:01 +10:00
Daniel Cousens
5ba0c3d578 Merge pull request #420 from bitcoinjs/ecdsabreak
index: stop exposing ecdsa
2015-07-07 10:35:07 +10:00
Wei Lu
db3523d2c9 Merge pull request #418 from bitcoinjs/ecdsatypes
Stricter typing in ECDSA
2015-07-05 16:42:44 +08:00
Daniel Cousens
97c4de9da6 *: throw new Error over assert(false, ... 2015-06-23 16:44:05 +10:00
Daniel Cousens
7bd63fd9b9 index: stop exposing ecdsa 2015-06-23 16:17:45 +10:00
Daniel Cousens
73d8128f0f ecdsa: always enforce types in ecdsa 2015-06-23 16:11:34 +10:00
Daniel Cousens
eb5508565a Merge pull request #411 from blocktrail/sign-incorrect-op0s-master
fix txb.sign having issues when an incomplete TX contains OP_0s, but not enough
2015-06-01 12:01:36 +10:00
Daniel Cousens
04f448cc8d tx-builder: remove unnecessary this context 2015-05-30 14:32:14 +10:00
Wei Lu
88cc90481f add missing bufferutils require 2015-05-30 12:12:19 +08:00
Wei Lu
d7019e7492 Revert "bufferutils: remove equal, use Buffer.compare"
This reverts commit 75540b6116.
See discussion in https://github.com/bitcoinjs/bitcoinjs-lib/pull/410
2015-05-30 11:50:38 +08:00
Ruben de Vries
d2bee4d67f fix txb.sign having issues when an incomplete TX contains OP_0s, but not enough 2015-05-28 22:47:01 +02:00
Daniel Cousens
f64df79555 *: adhere to standard 3 2015-05-21 00:46:36 +10:00
Daniel Cousens
7b0060d4a5 Merge pull request #400 from bitcoinjs/hashfor
Add non SIGHASH_ALL flag support
2015-05-03 19:24:46 +10:00
Daniel Cousens
4c030be343 ecdsa: remove unused verifyRaw 2015-04-28 16:51:20 +10:00
Daniel Cousens
a221bd142c ecdsa: split steps up further as per sec1-v2.pdf 2015-04-28 16:51:20 +10:00
Daniel Cousens
4f8c7f4348 ecdsa: 1.6.1 moved to relevant section 2015-04-28 16:51:20 +10:00
Daniel Cousens
e073ee3d46 ecdsa: avoid 2-line if statements 2015-04-28 16:51:20 +10:00
Daniel Cousens
5d36135c91 transaction: s/txout/txOut/ 2015-04-28 11:08:23 +10:00
Daniel Cousens
833bf9fa86 transaction: add SIGHASH_* implementations 2015-04-28 11:04:06 +10:00
Daniel Cousens
f9b99fc0df txbuilder: remove unused bufferutils import 2015-04-27 12:06:01 +10:00
Daniel Cousens
75540b6116 bufferutils: remove equal, use Buffer.compare 2015-04-22 10:17:16 +10:00
Daniel Cousens
5fee511ff5 rm ECKey/ECPubKey 2015-04-09 15:29:05 +10:00
Daniel Cousens
e106d02731 standard formatting fixes 2015-03-19 14:06:36 +11:00
Daniel Cousens
4c8b0f38ea replace ECKey/ECPubKey with ECPair 2015-03-19 13:33:28 +11:00
Daniel Cousens
31832293dd ECPair: lazily calculate Q 2015-03-19 13:33:28 +11:00
Daniel Cousens
7559ee880d add ECPair module 2015-03-19 13:33:28 +11:00
Daniel Cousens
b5c42303ff crypto: use packages directly 2015-03-17 12:31:53 +11:00
Daniel Cousens
bd464d7cb5 networks: remove estimateFee entirely 2015-03-17 08:23:14 +11:00
Daniel Cousens
7d2e1cd3ba networks: remove exhaustive non-top 5 networks 2015-03-17 08:23:13 +11:00
Daniel Cousens
01036ee294 Merge pull request #380 from bitcoinjs/magic
Magic constants
2015-03-17 08:01:49 +11:00
Daniel Cousens
0e0a12da27 txbuilder: fix #374 null inputs 2015-03-16 13:53:28 +11:00
Daniel Cousens
063b036988 networks: remove magicPrefix double up 2015-03-16 11:34:51 +11:00
Daniel Cousens
fc8dd65c0e networks: name e variable in loop 2015-03-16 11:34:51 +11:00
Daniel Cousens
1079bf95c1 message: use messagePrefix naming over magicPrefix 2015-03-16 11:34:51 +11:00
Daniel Cousens
607b3b7983 networks: use byteLength over toBuffer 2015-03-16 11:34:51 +11:00
Daniel Cousens
9cda36fc76 Transaction: extract byteLength calculation to prototype method 2015-03-16 11:34:51 +11:00
Daniel Cousens
c3a39444e3 networks: extract estimateFee as a bind 2015-03-16 11:34:51 +11:00
Daniel Cousens
6a551d9e1e networks: s/magicPrefix/messagePrefix, adds magic constant 2015-03-16 11:34:51 +11:00
Daniel Cousens
6c02e1692a txbuilder: re-add verification optimizations 2015-03-13 15:42:13 +11:00
Daniel Cousens
4660b84c2d txbuilder: refactor for clarity 2015-03-13 15:28:26 +11:00
Ruben de Vries
000625c191 prefill signatures with OP_0s and place signatures in correct order in txb.sign when it's not already prefilled with OP_0s 2015-03-05 10:21:40 +01:00
Daniel Cousens
7a469f6620 Merge pull request #372 from bitcoinjs/op0fix
TransactionBuilder multisig OP_0 fix
2015-03-05 18:46:16 +11:00
Daniel Cousens
b6622b4cff script: return malformed script if returned pushDataOut out of range 2015-03-04 21:28:48 +11:00
Daniel Cousens
d00ec9af29 scripts: fix isScriptHashInput classification 2015-03-04 21:00:07 +11:00
Daniel Cousens
ec66ca9b1a bufferutils/script: allow for invalid pushDatInts, fixes #367 2015-03-04 20:48:28 +11:00
Daniel Cousens
bcf8d0177d TxBuilder: fix OP_0 in buildComplete 2015-03-03 10:04:24 +11:00
Daniel Cousens
af3491822e scripts: multisigInput only uses scriptPubKey for validation, OP_0 validation not necessary 2015-03-03 09:53:57 +11:00
Daniel Cousens
4668cb1f95 TxBuilder: simplify addInput 2015-03-02 18:10:05 +11:00
Daniel Cousens
7f3b4c93ba TxBuilder: move param coercion from Transaction to TxBuilder 2015-03-02 17:51:14 +11:00
Daniel Cousens
5beee20038 bufferutils: add equal 2015-03-02 17:32:20 +11:00
Daniel Cousens
8d3686d046 remove deprecated functionality 2015-03-02 17:27:16 +11:00
Daniel Cousens
08cc8f8621 crypto: remove Hmac* exposure in API 2015-03-02 15:33:39 +11:00
Daniel Cousens
bdb372da7d rename Message to message 2015-03-02 14:09:19 +11:00
Daniel Cousens
5f8484645d remove base58check
Use bs58check package solely from here on.
2015-03-02 14:02:47 +11:00
Daniel Cousens
0bba21546f various: more standard-format artifact fixes 2015-03-02 13:50:49 +11:00
Daniel Cousens
8aa4f9ecc9 ecdsa/ecpubkey: rectify #364 artifacts 2015-03-02 13:25:09 +11:00
Daniel Cousens
399803affa use standardjs formatting 2015-02-24 12:45:38 +11:00
Daniel Cousens
9daf937e93 tests: add API consistency and tests for #366 2015-02-24 12:23:31 +11:00
Daniel Cousens
49050f9d26 Merge pull request #366 from Sjors/hdnode
Allow constructing HDNode from an ECPubKey.
2015-02-24 12:15:47 +11:00
Daniel Cousens
1da8297f3c Merge pull request #363 from bitcoinjs/coinbase
Coinbase Transaction parsing
2015-02-23 09:10:48 +11:00
Sjors Provoost
8a38a24b9f Allow constructing HDNode from an ECPubKey. 2015-02-20 17:25:44 -05:00
Daniel Cousens
50dab3b6bf block: use Transaction.fromBuffer 2015-02-19 18:59:56 +11:00
Daniel Cousens
23bae5748e Transaction: fix coinbase script handling 2015-02-19 12:51:25 +11:00
Daniel Cousens
dc253bb77c Transaction: extract Script size calculations 2015-02-19 12:32:05 +11:00
Daniel Cousens
49345748bb Transaction: add isCoinbaseHash static method 2015-02-19 12:15:27 +11:00
Daniel Cousens
f13650544b Transaction: add internal flag to disable size assertion 2015-02-19 12:03:43 +11:00
Daniel Cousens
c9826221fb scripts: catch error in Script.fromBuffer 2015-02-16 02:39:57 +11:00
Daniel Cousens
73bf8a42ea TxBuilder: hashtype only relevant to things we can sign 2015-02-13 13:18:29 +11:00
Daniel Cousens
4ef2c19d71 TxBuilder: defer mutation further, but still catch non-standards 2015-02-13 13:18:29 +11:00