Ruben de Vries
7aaae4c001
Refactoring extractInput
and __build
to enable nested scripts (P2SH[ P2PKH / multsig ]
).
...
This is preperation for the segwit support which will have `P2SH[ P2WSH[ P2PKH / multsig ] ]` scripts
2016-02-15 14:12:04 +01:00
Karel Bilek
3c56e80fc6
Simplifying path regex
2016-02-14 16:25:55 +01:00
Karel Bilek
6a74eb6993
Renaming Path to Bip32Path, invalid to fixtures
...
Only thing I haven't been able to do is to add "undefined" to fixtures. So I could not properly test
that node.derivePath() properly fails as it should. However, I added "null" there, and "null" and "undefined"
behave in similar way in JavaScript, so that should catch that.
2016-02-14 16:12:16 +01:00
Karel Bilek
d2b43f1dfe
Validating path
...
Again through typeforce
2016-02-13 23:25:30 +01:00
Karel Bilek
182698f53d
Using parseInt instead of + in path parsing
...
+ can cause issues - +"" is 0. parseInt("", 10) is NaN, which is better (since it causes typeforce to throw).
2016-02-13 15:51:42 +01:00
Karel Bilek
7defe6fe4c
Adding path derivation
...
The argument is path of either numbers or strings.
String with "'" at the end signifies hardened path.
2016-02-12 12:37:29 +01:00
Karel Bilek
4a72001335
Typechecking indexes
...
As a consequence, it will not allow accidentally double-hardened indexes.
It also won't allow strings or forgotten parameters.
2016-02-06 17:57:11 +01:00
Karel Bílek
fbcb478560
Adding function to decide if HDNode is public
...
Public === neutered. Private === not neutered
2016-02-05 20:26:23 +01:00
Ruben de Vries
7c7537fc57
use typeforce >= 1.6.2 which allows us to use typeforce.TfTypeError
with a custom error message.
2016-02-02 14:04:37 +01:00
JP Richardson
682ba7e549
Merge pull request #530 from bitcoinjs/lesscomp
...
address: fix compiled assumption for fromOutputScript
2016-01-27 22:50:05 -06:00
Daniel Cousens
67da1b30e3
address: fix compiled assumption for fromOutputScript
2016-01-28 15:35:57 +11:00
JP Richardson
4ee194e840
Merge pull request #507 from bitcoinjs/locktime
...
txbuilder: add setLockTime
2016-01-27 08:29:00 -06:00
Daniel Cousens
f3913516ca
Merge pull request #509 from bitcoinjs/pow
...
Add Block proof-of-work validation function
2016-01-28 01:00:17 +11:00
Daniel Cousens
6c0745adce
TxBuilder: add setLockTime
2016-01-28 00:55:44 +11:00
Daniel Cousens
d7da292063
script_number: initialize result to 0
2016-01-05 13:11:49 +11:00
Daniel Cousens
302bbe81ba
script_number: refactor to mimic bitcoin/bitcoin
2016-01-05 02:38:04 +11:00
Daniel Cousens
945bdfa747
script_number: refactor
2016-01-05 02:30:21 +11:00
Daniel Cousens
29a1a839ec
script: exposes scriptNumber through script.number
2016-01-05 02:11:48 +11:00
Daniel Cousens
059f48b0c4
script_number: add impl/tests
2016-01-05 01:59:58 +11:00
Daniel Cousens
e4ba88e54f
block: rename verifyPow to checkProofOfWork
2016-01-04 12:49:33 +11:00
Daniel Cousens
92b446f6a5
block: variable extraction
2016-01-04 12:49:33 +11:00
Daniel Cousens
bac700f52c
block: use buffer, faster, verified
2016-01-04 12:49:33 +11:00
Daniel Cousens
86b51b2d62
add Block.calculateTarget, use Buffer comparison rather than bigi
2016-01-04 12:49:33 +11:00
Daniel Cousens
26ccb43047
block: add Block.prototype.verifyPow
2016-01-04 12:49:33 +11:00
Daniel Cousens
cab3022719
add OP_CHECKLOCKTIMEVERIFY and integration tests
2015-12-22 14:13:45 +11:00
Daniel Cousens
540a6643ac
txbuilder: clarify SIGHASH invalidation logic in addInput/addOutput
2015-11-26 12:46:55 +11:00
Daniel Cousens
881a23f9d5
txbuilder: rename tx.outs.length to nOutputs
2015-11-26 12:07:32 +11:00
Daniel Cousens
693e39c061
script: use Buffer.isBuffer consistently
2015-11-26 12:07:04 +11:00
Daniel Cousens
d48a7ab682
address: avoid unnecessary unchunking
2015-11-25 19:19:21 +11:00
Daniel Cousens
f60cb2e491
scripts: ensure isPubKeyHashOutput/isScriptHashOutput adhere to BIP62
2015-11-25 19:19:21 +11:00
Kirill Fomichev
5de6818fcb
Fix TransactionBuilder.addOutput
2015-11-24 08:18:16 +03:00
Alex Seville
a1da3065c4
Remove const
and replace with var
...
To keep the project consistenly ES5.
Source: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const
2015-11-18 22:04:21 -08:00
Daniel Cousens
173994c6e0
script: avoid slice if n !== pubKeys.length
2015-10-02 13:03:33 +10:00
Daniel Cousens
0ca1e40a6d
script: refactor isMultisigOutput for clarity
2015-10-02 13:03:33 +10:00
Daniel Cousens
5be9b04741
script: isolate initialization of REVERSE_OPS
2015-10-02 12:59:30 +10:00
Daniel Cousens
74c2f1d957
script: n/m must be numbers, not data
2015-10-02 12:51:34 +10:00
Kirill Fomichev
eae8bcf676
fix isMultisigOutput
2015-10-01 23:12:38 +03:00
Daniel Cousens
0b4c67406f
use [].reverse over prototype
2015-09-27 23:49:29 +10:00
Daniel Cousens
5c1c4589c0
remove use of buffer-reverse
2015-09-27 23:30:06 +10:00
Daniel Cousens
731a31ecba
use buffer-reverse
2015-09-25 17:49:05 +10:00
Daniel Cousens
28372f0cd7
use buffer-equals
2015-09-25 17:49:05 +10:00
Daniel Cousens
daafb9794e
ECPair/HDNode: adds getNetwork
2015-09-21 17:37:21 +10:00
Daniel Cousens
57d0ea84a2
HDNode: adds getPublicKeyBuffer
2015-09-21 17:37:09 +10:00
Daniel Cousens
923266672b
HDNode: add sign/verify
2015-09-21 16:42:22 +10:00
Daniel Cousens
888393fa8f
tests: add HDNode fromSeed throwing tests
2015-09-14 17:50:38 +10:00
Daniel Cousens
05cfdf6a6a
docs: remove inline endian-ness notes, no endianness
2015-09-14 15:03:36 +10:00
Daniel Cousens
322ade58e4
revert 4b825bf
2015-09-09 12:32:12 +10:00
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