Daniel Cousens
d8883e8d32
Adds BI.toPaddedBuffer and toBuffer
2014-04-24 07:22:23 +10:00
Daniel Cousens
bc37e65014
Enforces Array input for deterministicGenerateK
2014-04-23 06:28:00 +10:00
Kyle Drake
1b66976d92
Merge pull request #146 from dcousens/magictests
...
MagicHash Tests
2014-04-21 09:39:50 -07:00
Kyle Drake
21aa517cd2
Merge pull request #143 from dcousens/multisigfix
...
Multi-sig ScriptSig Support
2014-04-21 09:39:03 -07:00
Daniel Cousens
ae60e6eb95
Replacse JSBN with bigi
2014-04-22 02:19:30 +10:00
Daniel Cousens
b95b5d5a04
Removes unused imports and unused parameter
2014-04-22 02:11:25 +10:00
Daniel Cousens
873dc95321
Isolates test/ec.js ECPointFp.decodeFrom tests
2014-04-22 02:08:00 +10:00
Daniel Cousens
96ebb65099
Removes ecdsa.getBigRandom
2014-04-22 02:04:56 +10:00
Daniel Cousens
f5ce83beca
Adds working implementation of Script.createP2SHMultisigScriptSig
2014-04-22 00:28:13 +10:00
Daniel Cousens
c178804356
Updates test fixtures to use bitcoin core test data
2014-04-22 00:24:20 +10:00
Daniel Cousens
231ccdd721
Now shares base58 data with Address base58 tests
2014-04-22 00:24:03 +10:00
Daniel Cousens
1bcc7cfd95
Adds shared base58 test vectors
2014-04-22 00:24:02 +10:00
Daniel Cousens
12a5b75cbe
Address now properly checks malformed base58
2014-04-22 00:24:02 +10:00
Daniel Cousens
dd049fc764
Adds magicHash test fixtures
2014-04-22 00:23:12 +10:00
Daniel Cousens
69823552c3
Moves network import to top
2014-04-22 00:23:12 +10:00
Daniel Cousens
5515fa6c49
Removes convert module usage
2014-04-22 00:23:11 +10:00
Daniel Cousens
7f8dcd58cb
Removes unused imports
2014-04-21 21:55:53 +10:00
Daniel Cousens
6edd97d4fd
Removes convert usage
2014-04-21 21:55:49 +10:00
Daniel Cousens
1d1306b054
Removes Address.fromPubKey and improves test vectors
2014-04-20 04:38:33 +10:00
Daniel Cousens
682ec133bb
Migrates Address to stricter API subset
2014-04-18 17:12:29 +10:00
Daniel Cousens
b4f70dcdde
Migrates ECKey to stricter API
2014-04-18 06:36:27 +10:00
GreenAddress.it
9d876198f5
Moves 'low S value' test from eckey.js to ecdsa.js
2014-04-17 06:33:35 +02:00
GreenAddress.it
d7c2e4d5a5
Uses low 's' values for signatures
2014-04-17 06:05:41 +02:00
Kyle Drake
3219e5e727
Merge pull request #132 from dcousens/remmisc
...
Removes test/misc.js and moves tests to appropriate location
2014-04-16 14:25:35 -07:00
Daniel Cousens
814aa9e552
HDWallet now uses Buffers internally
2014-04-17 06:45:24 +10:00
Daniel Cousens
f047afef2d
Updates network.js constant names
2014-04-17 05:50:59 +10:00
Daniel Cousens
56336b9c2b
Removes use of convert module
2014-04-17 04:16:51 +10:00
Daniel Cousens
827f00715c
Moves test/misc.js tests to appropriate location
2014-04-17 04:10:05 +10:00
Daniel Cousens
8a9a377d70
Merge pull request #129 from dcousens/indexclean
...
Cleanup of Index.js
2014-04-14 16:21:54 +10:00
Daniel Cousens
addf4528d4
Removes Key module (use ECKey)
2014-04-14 15:45:31 +10:00
Wei Lu
c3d95010ae
standardize test descriptions & add nonstandard script test vector
...
[follow-up #125 ]
2014-04-14 12:25:48 +08:00
sidazhang
92cff2fb43
Test vectors for nulldata (OP_RETURN) and multisig
2014-04-13 14:32:22 -07:00
sidazhang
aa43e98ac0
Aligning type naming with bitcoind and fixed pubkeyhash bug
2014-04-11 15:20:42 -07:00
Daniel Cousens
6de94856e3
Makes ECDSA capitalization consistent
2014-04-09 04:11:13 +10:00
Wei Lu
ba4a4d79ed
Merge pull request #119 from dcousens/cryptoutil
...
Adds ./crypto and standardizes hash usage
2014-04-08 22:16:35 +08:00
Daniel Cousens
665953300b
Changes deepEqual to equal
2014-04-08 23:50:27 +10:00
Daniel Cousens
d12a2cde49
Adds tests and fixtures for ./crypto
2014-04-08 23:39:22 +10:00
Daniel Cousens
c99a576fbd
Migrates all usage of crypto-js/sha256 to ./crypto
2014-04-08 23:07:46 +10:00
Daniel Cousens
81d9c8e759
Renames util.js to crypto.js
2014-04-08 22:00:28 +10:00
Daniel Cousens
1df5fadc6f
Renames test description appropriately
2014-04-08 17:35:03 +10:00
Daniel Cousens
c93bad3be1
Fixes actual/expected parameter ordering
2014-04-07 05:04:49 +10:00
Wei Lu
703275f235
Merge pull request #112 from dcousens/b58
...
Base58 isolation and preparation for Buffers
2014-04-04 16:41:00 +08:00
Daniel Cousens
6fa0c07763
Changes existing code to use new base58 API
2014-04-04 05:10:12 +11:00
Daniel Cousens
f53b821cc9
Isolates Base58Check encoding from Base58 code/tests
2014-04-03 19:45:05 +11:00
Wei Lu
364a24fd1e
assert.throws matches error messages properly
2014-04-02 12:43:34 +08:00
lms
b79ccb2c0c
100% coverage of wallet.js
2014-04-01 21:05:46 +02:00
Daniel Cousens
04684b74f1
Some cosmetic fixes
2014-04-01 15:52:40 +11:00
Wei Lu
93fe1b4c78
cosmetic standardization
...
[closes #56 ]
2014-03-31 11:47:47 +08:00
Wei Lu
161127d65a
Merge branch 'msgvers-patch2' of github.com:dcousens/bitcoinjs-lib into dcousens-msgvers-patch2
...
Conflicts:
src/message.js
2014-03-31 10:08:25 +08:00
Daniel Cousens
c521add619
Moves shared constants initialization to beforeEach
2014-03-31 08:21:57 +11:00
Wei Lu
66e04fe701
Merge branch 'multisig_tests' of github.com:juliustayl/bitcoinjs-lib into juliustayl-multisig_tests
...
Conflicts:
test/script.js
2014-03-29 22:13:39 +08:00
Wei Lu
db35a84a80
Merge pull request #105 from dcousens/removeexport
...
Removes deprecated ECKey.export function
2014-03-29 19:24:54 +08:00
Daniel Cousens
8f7f50d555
Removes deprecated ECKey.export function
2014-03-29 18:12:02 +11:00
Daniel Cousens
10dea421d5
Removes circular dependancy of ECKey
2014-03-29 17:50:50 +11:00
Daniel Cousens
78e91e8648
Further isolates failure tests and joins [un]/compressed key tests
2014-03-29 17:06:33 +11:00
Daniel Cousens
38f09b49e9
Now using Bytes consistently for signatures
2014-03-29 06:05:07 +11:00
Daniel Cousens
7ec046f797
Changes Message.*Message function names to Message.*
2014-03-29 06:03:43 +11:00
Daniel Cousens
e82ffa5028
Adds recoverPubKey simple test
2014-03-29 04:24:23 +11:00
Wei Lu
d7eb87433c
isolate Message.verifyMessage tests from Message.signMessage
2014-03-28 16:32:51 +08:00
Daniel Cousens
e03f938ced
Adds failing test for Message.verifyMessage
2014-03-28 16:44:00 +11:00
Julius Taylor
bad2f769ff
added redeem script test
...
refactored the previous multi-sig address test a bit and added a test
to validate the # of signatures required and possible addresses
included in the redeemscript
2014-03-27 22:56:10 -04:00
Kyle Drake
2f5b302288
Merge pull request #97 from dcousens/reverseVarInt
...
Adds varIntToNum conversion function
2014-03-26 16:20:58 -07:00
Wei Lu
65fb593be2
remove unnecessary deepEqual
2014-03-26 20:44:07 +08:00
Wei Lu
39c181dce6
allow fee to be set to zero
2014-03-26 20:20:58 +08:00
Wei Lu
4d4388f6bf
make wallet async functions truly async
2014-03-26 20:05:13 +08:00
Daniel Cousens
f12f8eac48
Adds failing test for larger transaction
2014-03-26 19:11:10 +11:00
Daniel Cousens
20599f66c9
Adds varIntToNum conversion function
2014-03-26 18:30:17 +11:00
Wei Lu
8d2525dba1
allow feePerKb to be set to zero
2014-03-26 08:43:34 +08:00
Wei Lu
68b08b638a
add async version of createTx
2014-03-26 08:43:33 +08:00
Wei Lu
f7d4895b74
add async version of setUnspentOutputs
2014-03-26 08:43:33 +08:00
Wei Lu
7bfa6ab9d2
remove scriptPubKey from wallet.outputs, set/get unspent outputs as it is unused
2014-03-26 08:43:33 +08:00
Wei Lu
58ab0b631e
getBalance returns total unspent
2014-03-26 08:43:33 +08:00
Wei Lu
9fc5505730
getUnspentOutputs excludes spent outputs
2014-03-26 08:43:33 +08:00
Wei Lu
77b5d1ee21
getCandidateOuputs ignores spent outputs
2014-03-26 08:43:33 +08:00
Wei Lu
471bc7ed97
skip change if it is not above dust threshold
2014-03-26 08:43:32 +08:00
Wei Lu
90921798cf
throws error on insufficient fund
2014-03-26 08:43:32 +08:00
Wei Lu
7c81bfef72
check for dust before creating transaction
2014-03-26 08:43:32 +08:00
Wei Lu
913b48e87f
sign tx
2014-03-26 08:43:32 +08:00
Wei Lu
2dc0f69d00
createTX returns tx with expected inputs and outputs
2014-03-26 08:43:32 +08:00
Wei Lu
3d12d3b038
implement and use txOut.scriptPubKey
2014-03-26 08:43:32 +08:00
Wei Lu
eb9e98aa7b
minor refactoring: Transaction tests use fixtures
2014-03-26 08:43:31 +08:00
Wei Lu
b7d65fb757
Transaction is able to estimate fees
2014-03-26 08:43:31 +08:00
Wei Lu
e574693594
wallet.outputs[0].output -> wallet.outputs[0].receive
...
output is overloaded. Considering we have output.spend, output.receive makes sense to me
2014-03-26 08:43:31 +08:00
Wei Lu
dbb5681366
add tests and refactor wallet.processTx
2014-03-26 08:43:31 +08:00
Wei Lu
83381186d1
add (some) fromAddress and getInType tests to script
2014-03-26 08:43:31 +08:00
Wei Lu
c3880c0cdf
script.toAddress -> script.getToAddress
2014-03-26 08:43:31 +08:00
Wei Lu
423124966f
add toAddress and getOutType tests to script
2014-03-26 08:43:31 +08:00
Wei Lu
01dc34d720
throw error when unspent output does not have required keys
2014-03-26 08:42:35 +08:00
Wei Lu
26afbccc98
wallet allows setting unspent outputs
2014-03-26 08:42:35 +08:00
Wei Lu
16dc68cbaa
wallet exposes unspent outputs via a getter
...
also add reverseEndian method to convert
2014-03-26 08:42:35 +08:00
Kyle Drake
68e8834c66
Merge pull request #94 from dcousens/patch-2
...
VarInt now uses correct prefix for 64-bit
2014-03-25 17:31:19 -07:00
Daniel Cousens
baa50d6aa2
Adds simple test vectors for numToVarInt
2014-03-26 05:05:52 +11:00
Kyle Drake
4c82a09aae
Merge pull request #95 from juliustayl/multisig-tests
...
validate multi-sig address
2014-03-25 09:29:00 -07:00
Julius Taylor
a4317d67be
validate multi-sig address
...
This is a test I have been using to validate a 2-of-3 multi sig address
using known public keys as well as validating the multi sig address
from the redeem script. I am working on more redeem script validation
tests but I want to make sure I am on the right track and see if this
test is something you all would deem useful.
2014-03-25 01:32:43 -04:00
Kyle Drake
a74c878b59
merge eckeyoutput
2014-03-24 15:11:34 -07:00
Daniel Cousens
a1944fdc77
Adds some ECKey tests
2014-03-25 04:51:14 +11:00
Daniel Cousens
a96dfea1f4
Adds compression flag to toHex/toBin and tests
2014-03-25 03:41:44 +11:00
Wei Lu
9358a40500
tabs -> spaces
2014-03-24 03:19:39 +08:00
Daniel Cousens
48883dd069
Changes expected key output to hex
2014-03-24 05:09:03 +11:00
Daniel Cousens
2e2932c410
Renames variables to better reflect their values
2014-03-23 18:42:52 +11:00
Daniel Cousens
e9fdfecfea
Changes default EC*Key.toString behaviour to Hex
2014-03-23 18:42:52 +11:00
Daniel Cousens
9bab1e96ad
Fixes network tests for proper address types
2014-03-22 19:12:26 +11:00
Daniel Cousens
fcf67a87cc
Restructures test/eckey.js
2014-03-22 19:12:26 +11:00
Daniel Cousens
b40374e332
Changes to new version-less ECKey API
2014-03-22 19:12:26 +11:00
Daniel Cousens
74ee2f90d0
Adds failing test for #78
2014-03-22 16:26:44 +11:00
Wei Lu
35747fb1fb
Merge pull request #76 from coinpunk/transactioncleanups
...
Many cleanups to Transaction, see detailed.
2014-03-21 15:54:59 +08:00
Wei Lu
ea723c7caf
remove mocha config file
...
[fixes #75 ]
2014-03-21 10:13:48 +08:00
Kyle Drake
28e146431c
Many cleanups to Transaction, see detailed.
...
Default-ize the sequence rather than use a number, and default to bytes
for input. I doubt anybody ever uses this anyways.
Remove weird convenience code, and remove wallet logic. Checking a TX's
affects on a wallet should be managed by the wallet object.
Remove parsing for the weirder SIGHASH types. People use this library
for creating SIGHASH_ALL transactions, and I don't see the need to
support these other types at the moment since this library's more used
for wallets than for hardcore bitcoin tx analysis/creation. They weren't
tested anyways.
Add note about potentially improving performance by providing
pubkey/address. Deriving from the private key is slower, that
information should probably be cached by the end user.
2014-03-20 15:40:07 -07:00
Wei Lu
b7861e4336
replace jsbn's rng with module secure-random
...
This uses window.crypto.getRandomValues on browser
and crypto.randomBytes on node
2014-03-20 17:19:06 +08:00
Kyle Drake
28517bed13
Merge pull request #71 from bitcoinjs/transaction-tests
...
Transaction tests & fix addInput hash allowed formats
2014-03-17 18:40:49 -07:00
Wei Lu
a26c01b8da
Test validateSig. Use validateSig to test transaction signing
2014-03-18 09:31:17 +08:00
Kyle Drake
ace3fd122c
Merge pull request #60 from bitcoinjs/hd-keychain-structure
...
HD wallet keychain structure
2014-03-17 17:00:18 -07:00
Wei Lu
9df37a31b1
test transaction signing (failing)
2014-03-18 01:32:31 +08:00
Wei Lu
be9c19c50c
add tests to addOutput
2014-03-17 18:01:36 +08:00
Wei Lu
2e6ef6cb85
fix and add tests for addInput
2014-03-17 18:01:09 +08:00
Wei Lu
a5ee07f7f6
Add tests to transaction deserialization
...
lock_time -> locktime
2014-03-17 16:31:35 +08:00
Wei Lu
9f2da415ea
fix script constructor array check
2014-03-17 16:13:49 +08:00
Wei Lu
31cfb11178
new master key resets accounts and addresses
2014-03-16 13:36:57 +08:00
Wei Lu
a7a7999e3f
fix Wallet default constructor
2014-03-15 10:18:59 +08:00
Wei Lu
b2f010428f
store accounts in closure instead of on object
2014-03-14 10:35:01 +08:00
Wei Lu
207163704b
return private key rather than HD wallet node
2014-03-14 10:35:01 +08:00
Wei Lu
9200479159
getPrivateKey derives key on the fly
...
also added getPrivateKeyFromAddress
2014-03-14 10:35:01 +08:00
Wei Lu
ab9e782d14
private a method to generate change addresses
2014-03-14 10:35:00 +08:00
Wei Lu
1212099bfc
Wallet address derivation follows bip32/bitcoinj keychain structure
...
Also wallet accepts bytes in constructor
[#60 ]
2014-03-14 10:34:37 +08:00
Wei Lu
44012b47b5
change hd wallet constructor to take bytes
...
original constructor -> fromSeedString, fromMasterHex -> fromSeedHex
[#60 ]
2014-03-14 10:03:56 +08:00
Kyle Drake
c277fed4e1
cleanup runners, add coverage script, fix typo
2014-03-11 12:23:37 -07:00
Kyle Drake
7219c27413
Merge pull request #62 from bitcoinjs/compressed-sign
...
Fix sign/verify for with compressed keys
2014-03-11 12:12:52 -07:00
Andreas Brekken
29ad6b692e
Message signing does not work with compressed keys. ref #61
2014-03-11 18:25:36 +01:00
Wei Lu
3d6b66e811
move convert methods from util to convert
2014-03-11 09:52:48 +08:00
Wei Lu
9c15fa0cbf
Merge pull request #57 from bitcoinjs/upgrade-crypto-js
...
Use crypto-js as a module from npm
2014-03-11 09:14:49 +08:00
Wei Lu
45e55a07b0
fix transaction serialization/deserialization
...
[closes #58 ]
2014-03-09 13:46:20 +08:00
Wei Lu
d2b790fef9
throw error when input to script constructor is not an array
...
[#58 ]
2014-03-09 13:43:36 +08:00
Wei Lu
a281a5ab53
migrate crypto-js to 3.1.2
2014-03-09 09:49:24 +08:00
Wei Lu
33857437db
add tests for bytes and words conversion
2014-03-07 22:44:49 +08:00
Wei Lu
bf1be94fe3
add tests for checkEncode and checkDecode
2014-03-07 22:44:41 +08:00
Kyle Drake
a6706ea8be
fix spacing
2014-03-06 17:57:32 -06:00
Kyle Drake
09925cff5a
cleanup throw tests, add case for bad input
2014-03-06 17:27:40 -06:00
Kyle Drake
fdc78dad2e
merge weilu's changes
2014-03-06 17:21:42 -06:00
Wei Lu
2f3e597596
reorganize address tests #50
2014-03-06 09:45:56 +08:00
xnova
786198f130
* Fixes address.js to be able to deal with testnet P2SH addresses
...
* Enhanced address.js testsuite...now also verifies address versions
* Enhances README to show how to run test suite
2014-03-05 16:53:29 -05:00
Kyle Drake
b9de999434
Merge pull request #28 from bitcoinjs/hd-testnet-support
...
HD testnet support (#27 ) + unify network names
2014-03-01 15:21:08 -08:00
Andreas Brekken
81b44ef269
Add RFC test vectors for convert.bytesToBase64
2014-03-01 18:08:52 +01:00
Wei Lu
2e97828379
throws exception if specified network is unknown
...
also move network type tests to hdwallet
2014-02-28 17:59:01 +08:00
Wei Lu
02b3a2b564
HDWallet prod -> mainnet
2014-02-28 17:28:03 +08:00
Wei Lu
eaf84c4283
move address versions into network
...
Also change address type name:
address_types -> addressVersion
p2sh_types -> p2shVersion
prod -> mainnet
2014-02-28 16:58:14 +08:00
Wei Lu
293c864f4f
HD wallet versions: Bitcoin -> prod, BitcoinTest -> testnet
2014-02-28 14:27:31 +08:00
Wei Lu
cc0a042f2f
squashed commits from #27
2014-02-28 12:05:48 +08:00
Wei Lu
09ee406106
Revert "Merge pull request #27 from xnova/master"
...
due to broken tests, moved the changes to branch hd-testnet-support
This reverts commit a4ba59e9ba
, reversing
changes made to 36d3d6ebaa
.
2014-02-28 11:52:19 +08:00
xnova
2ca02c47ce
added testcases for new logic
2014-02-27 12:25:28 -05:00
Wei Lu
36d3d6ebaa
use options in wallet contructor & add tests
...
[#26 ]
2014-02-27 11:55:35 +08:00
Michael Gooden
b8215dea60
Add testnet support to Address and ECKey, more tests.
...
Signed-off-by: Michael Gooden <me@michaelgooden.net>
2014-02-24 18:31:18 +02:00
Andreas Brekken
966d2ee90d
Remove obsolete bip32.js
2014-01-16 14:03:34 +07:00
Andreas Brekken
5f9e2624f8
Rewrite HD Wallet (BIP0032) with all test vectors
2014-01-16 14:03:09 +07:00
Andreas Brekken
6cc7a23bdd
Begin work to properly cover the test vectors from bip32 docs
2014-01-11 16:31:48 +07:00
Andreas Brekken
f591cc0111
Reformat all tests for more modern mocha syntax (describe, it)
2014-01-11 13:57:43 +07:00
Andreas Brekken
d6290ef5df
Rename test files to match what they test
2014-01-11 13:54:23 +07:00
Pablo Martin
f9cbcbeb2b
missing BIP32_PRIME definition in bip32 tests.
2013-12-12 17:46:39 +01:00
Pablo Martin
740a0fcb7d
test vectors for bip32.
2013-12-12 11:14:27 +01:00
Roman Shtylman
41f0027883
port message to common.js style and add tests
2013-03-02 12:28:13 -05:00
Roman Shtylman
e94636ef25
fix test require so browserify works for testling
2013-02-17 00:51:16 -05:00
Roman Shtylman
0faac29134
start to split into node commonjs style modules
...
- no longer is the global Bitcoin used for modules
- cleaner and more maintainable code
- add more tests
2013-02-17 00:40:14 -05:00
Stefan Thomas
50b13d2941
More work on split key protocol.
2011-09-03 19:36:45 +01:00
Stefan Thomas
e8fba132cf
Added more tests.
2011-08-29 12:10:11 +01:00
Stefan Thomas
1df76fd793
Add tests.
2011-08-26 20:47:48 +01:00