Daniel Cousens
61c57adbf8
Address: Expected T, got PARAM for Buffer assertion
11 years ago
Daniel Cousens
2b2081bed9
base58check: buffers only, remove explicit 0
Undefined is treated as zero if it ever gets to this point anyway, so no
value is added by having this default param here.
A test fixture to verify this behaviour is added.
11 years ago
Daniel Cousens
baec325e6f
base58: use signum over compareTo
11 years ago
Daniel Cousens
5f88cb8931
ECKey: use signum over compareTo
11 years ago
Daniel Cousens
b10e96cbff
ecdsa: serializeSig should return a Buffer
11 years ago
Daniel Cousens
7e9b5d8584
bufferutils: return opcode for use
11 years ago
Daniel Cousens
6f3d829be0
all: Expected T, got PARAM
11 years ago
Daniel Cousens
2f44628604
Transaction: refactor hashForSignature
Adds asserts to ensure only valid hashes are created (until the
implementation is complete).
Also uses `Script.without` to remove OP_CODESEPARATOR from the Scripts
as required by the protocol.
11 years ago
Daniel Cousens
7d94d1b068
Script: add fromChunks and without
11 years ago
Daniel Cousens
d18f2dba00
bufferutils: add PUSHDATA implementation
11 years ago
Daniel Cousens
54950c9abb
Transaction: fix SIGHASH_* constant values
11 years ago
Daniel Cousens
db814439a3
Transaction: extract DEFAULT_SEQUENCE constant
Also fixes the bug when the sequence number is 0 and
`TransactionIn.defaultSequence` is used; resulting in an undefined
sequence number as it is undefined.
11 years ago
Daniel Cousens
7494a146a6
ECKey: fix exception tests
These weren't broken as such, but they weren't distinctly checking that
the right exception was thrown either.
11 years ago
Daniel Cousens
6cfa729dae
ecdsa: fix missing exceptions
11 years ago
Daniel Cousens
2fc69b0834
address/base58check: fix missing exceptions/tests
All the `invalid2` tests have been removed as they were not invalid
base58check. They were actually valid in some cases.
They will be re-integrated in more specific bitcoin core tests in
relation to Address/ECKey respectively.
11 years ago
Daniel Cousens
47ae862ae9
base58: fix missing exceptions
11 years ago
John Russell
343289229e
ensures that pubKey length is greater than m
ensure that pubKey length is greater than m
use Array.isArray over instanceof
error message
11 years ago
Daniel Cousens
8514bbfabd
Address: remove Address.Error
By removing Address.Error, we remove a code smell.
This part of the code base was also not under any form of test.
Test data and tests have therefore been added verifying its behaviour in
both Wallet and Address tests.
11 years ago
Kyle Drake
600209b1a6
hdwallet: remove fromHex, add better tests for edge cases
11 years ago
Daniel Cousens
08951be66f
Script: add createPubKeyScriptPubKey
11 years ago
Kyle Drake
f545ed1279
remove crypto hash transition code
11 years ago
Daniel Cousens
58fd12e66d
ecdsa: always use signature object
11 years ago
Daniel Cousens
bd1a08bfa1
ecdsa: use signum() over compareTo
11 years ago
Kyle Drake
bc062fbdce
cleanup some unused ec.js code
11 years ago
Daniel Cousens
aca565239a
ECKey: remove unnecessary slice
11 years ago
Daniel Cousens
cd326921bc
bigi: upgrade to 1.1.0
11 years ago
Daniel Cousens
1087ac07de
sec: fix formatting
11 years ago
Daniel Cousens
b8858c0bc9
sec: use BigInteger.fromHex directly
11 years ago
Daniel Cousens
da48c988f6
sec: use a hashtable for lookup
11 years ago
Daniel Cousens
087ca551f5
ecdsa: fix indentation
11 years ago
Daniel Cousens
d05d661aea
ecdsa: use standard declarative notation for functions
11 years ago
Daniel Cousens
bcfd62fdb5
ecdsa: remove implicit ecparams
11 years ago
Daniel Cousens
2dec1375a1
ecdsa: use (r, s) values directly
11 years ago
Daniel Cousens
8d7408202f
ecdsa: consistent parameter ordering
11 years ago
Daniel Cousens
abe65b8d4a
ecdsa: use shamirs trick
11 years ago
Daniel Cousens
a17a5b23d9
ec: fix point decoding for other curves
11 years ago
Daniel Cousens
5ec9504ed6
ecdsa: opt for shiftRight, pow and square
In the given situations, these offer better readability, or in the case
of shiftRight, a substantial performance increase.
11 years ago
Daniel Cousens
7d89ff427c
ecdsa: comment cleanup
11 years ago
Daniel Cousens
0865f09d20
ec/dsa: extract P_OVER_FOUR as a curve specific constant
This actually resolves a possible bug if multiple ecparams were used
(aka different values for P_OVER_FOUR, but only the cached was used).
11 years ago
Daniel Cousens
1e54c521d5
ec: extract BigInteger constants
11 years ago
Daniel Cousens
d9ce4bee6b
ec: use signum() not equals(BigInteger.ZERO)
11 years ago
Daniel Cousens
d14b08efd1
ec/dsa: recovery param now used consistently
Also added an assertion rather than massaging the input.
11 years ago
Daniel Cousens
24371425f9
ec: decodeFrom now uses Buffers and handles errors
11 years ago
Daniel Cousens
a3f691bf7c
ecdsa: parseSigCompact use Buffer API
parseSigCompact also now returns the correct recovert parameter without
the need to subtract the compression bit.
This makes it easier to use.
11 years ago
Daniel Cousens
f7c7265d64
ecdsa: parseSig now uses buffer API
11 years ago
Daniel Cousens
ccca6989b5
ec: getEncoded now uses Buffer API
11 years ago
Daniel Cousens
db3ffe58d1
message: use serializeSigCompact
11 years ago
Daniel Cousens
4c7108d561
ecdsa: add serializeSigCompact and tests
This also adds tests for all other ECDSA serialize/parsing functions.
The k, r, s and D values were sourced from test vectors on
https://bitcointalk.org/index.php?topic=285142.40 .
The compact signatures (aka, i values) were generated from bitcoinjslib, but they
are straight forward anyway.
11 years ago
Daniel Cousens
b208a6ab78
crypto/ecdsa: moves HmacSHA256 to crypto
11 years ago
Daniel Cousens
99a1b7274c
Transaction: use the type embedded in the signature
11 years ago