Esteban Ordano
d688222769
Add toAddress(network) functionality to scripts
2014-12-30 15:23:09 -03:00
Yemel Jardi
98fe6b2abd
Merge pull request #863 from eordano/feature/getData
...
Add getData functionality to script
2014-12-30 14:47:54 -03:00
Esteban Ordano
dc92bdd474
Add getData functionality to script
2014-12-30 14:30:36 -03:00
Yemel Jardi
d922a625b9
Rename toFiat() to atRate()
2014-12-28 17:40:11 -03:00
Yemel Jardi
e7839d9ba2
Add from/to Fiat methods to Unit class
2014-12-25 19:04:03 -03:00
Manuel Araoz
0914624860
fix releaser script
2014-12-24 11:44:13 -03:00
Manuel Aráoz
6ea9c7b005
Merge pull request #842 from eordano/feature/G7/hdprivkey
...
Adding G7 methods to HDPrivateKey
2014-12-23 12:59:51 -03:00
Esteban Ordano
c3a178061c
Adding G7 methods to HDPrivateKEy
2014-12-23 12:34:38 -03:00
Esteban Ordano
2006b3aae2
Add G7 methods to HDPublicKey
2014-12-23 12:23:35 -03:00
Manuel Araoz
225ade6c7a
return comment to deterministicK
2014-12-22 17:33:00 -03:00
Manuel Araoz
aa6ecfd79b
hash 100% coverage
2014-12-19 19:23:30 -03:00
Manuel Araoz
686bc091ba
remove dead code
2014-12-19 18:54:10 -03:00
Manuel Araoz
fb57a60666
fix all tests
2014-12-19 18:53:21 -03:00
Manuel Araoz
6c518f1f45
refactoring interpreter
2014-12-19 18:28:52 -03:00
Manuel Araoz
370f69df88
refactor BN and ECDSA
2014-12-19 17:23:53 -03:00
Manuel Aráoz
56591db68d
Merge pull request #831 from eordano/review/block
...
Coverage for block and blockheader
2014-12-19 17:23:49 -03:00
Esteban Ordano
4980f7a646
Test coverage: last branch untested from PublicKey
2014-12-19 16:44:49 -03:00
Esteban Ordano
2a084e641c
Coverage for block and blockheader
...
* JSDocs where already good, written by @braydonf
2014-12-19 16:37:57 -03:00
Manuel Aráoz
58f68ba8d2
Merge pull request #829 from eordano/review/keys
...
PrivateKey, PublicKey, Network linted
2014-12-19 16:24:47 -03:00
Esteban Ordano
c15dafc29e
Merge pull request #822 from eordano/review/jsdoc-address
...
Minor improvements on Address
2014-12-19 16:19:08 -03:00
Esteban Ordano
36e87d8822
PrivateKey, PublicKey, Network linted
...
* Added 100% test coverage for them also
2014-12-19 16:18:05 -03:00
Esteban Ordano
1ec4c7f512
Minor improvements on Address
...
* Update JSDocs
* Branch coverage 100%
* Removed duplicated test
* Updated names of tests
2014-12-19 15:41:20 -03:00
Manuel Aráoz
b69997711b
Merge pull request #823 from eordano/review/jsdoc-unit
...
Review Unit class
2014-12-19 15:27:55 -03:00
Manuel Aráoz
bd2e326708
Merge pull request #824 from eordano/review/jsdoc-uri
...
Lint and cover URI completely
2014-12-19 15:26:56 -03:00
Manuel Aráoz
ccf9527bd7
Merge pull request #827 from eordano/lint/interpreter
...
Lint script/interpreter
2014-12-19 15:26:35 -03:00
Esteban Ordano
a379876e0b
Delete lint errors from autogenerated file
2014-12-19 14:21:48 -03:00
Esteban Ordano
490279acb0
Lint script/interpreter
2014-12-19 14:17:58 -03:00
Esteban Ordano
b5f8188a1f
Lint and cover URI completely
2014-12-19 13:41:54 -03:00
Esteban Ordano
be599e5a1b
Review Unit class
...
* Add 100% code coverage
* Add custom error code
* Linted source and test
* More descriptive test messages
2014-12-19 13:18:22 -03:00
Manuel Aráoz
85169a3874
Merge pull request #812 from eordano/feature/safeSerialize
...
Modify Transaction Interface
2014-12-19 10:37:24 -03:00
Esteban Ordano
99db72ba90
Add `uncheckedAddInput` function
...
* For internal usage: for example, testing Script.Interpreter
2014-12-19 10:30:20 -03:00
Esteban Ordano
9a73338c91
Add tests for changes to Transaction interface
2014-12-18 20:38:19 -03:00
Braydon Fuller
6d42e01718
Fix formatting issue with examples
2014-12-18 17:07:01 -05:00
Esteban Ordano
e5631b1a69
Modify transaction interface
...
* Add checks when serializing
* Add default _estimateSize to generic inputs
* Fix multisig size estimation
* Change _addOutput to addOutput
* Add addInput and using that internally
* Split `getFee` out from `_updateChangeOutput`
2014-12-18 14:09:44 -03:00
Esteban Ordano
24dc84d614
Dont lose sighash when signing with multiple keys
2014-12-18 02:19:39 -03:00
Esteban Ordano
de4413745d
Fix missing disambiguation
2014-12-18 01:43:04 -03:00
Esteban Ordano
a352937566
Fix transaction order
2014-12-18 01:42:45 -03:00
Esteban Ordano
6be0c047b7
Update index for the documentation
2014-12-17 17:40:15 -03:00
Manuel Araoz
3dd86446e0
add Interpreter docs and refactor a bit
2014-12-17 17:25:00 -03:00
Braydon Fuller
7d15b2bf0f
Private Key: Fix bug with tests and missing "new"
2014-12-17 12:34:21 -05:00
Manuel Aráoz
43264616a6
Merge pull request #788 from eordano/feature/buffertest
...
Add tests for bufferutils
2014-12-17 12:57:34 -03:00
Esteban Ordano
12cac0e33d
Fix tests on browsers: need to add Buffer exception
2014-12-17 12:38:56 -03:00
Esteban Ordano
c793559fa9
Fix bug on HD*Keys
2014-12-17 12:31:04 -03:00
Manuel Aráoz
a0827d662f
Merge pull request #785 from yemel/feature/json-rpc
...
JSON RPC
2014-12-17 12:30:25 -03:00
Esteban Ordano
afb5b6971f
Add tests for bufferutils
2014-12-17 12:10:02 -03:00
Manuel Aráoz
9f51b1b4ce
Merge pull request #772 from braydonf/docs/block
...
Block: Updated documentation, and changed to use consistent naming.
2014-12-17 11:58:22 -03:00
Esteban Ordano
65ec886008
Merge pull request #783 from braydonf/tests/paymentprotocol
...
Payment Protocol: Added tests and misc formatting. Closes #697
2014-12-17 07:39:13 -03:00
Yemel Jardi
d7b8b370f1
RPC: Refactor, documentation and tests
2014-12-17 03:34:22 -03:00
Braydon Fuller
bf5f770a67
Payment Protocol: Added tests and misc formatting
2014-12-16 23:40:40 -05:00
Yemel Jardi
4173f4b49e
include old files
2014-12-17 01:35:26 -03:00
Esteban Ordano
9f442e8ec4
Merge pull request #777 from maraoz/add/tx_invalid/tests
...
add tx_invalid.json tests
2014-12-16 23:13:59 -03:00
Manuel Aráoz
bcae1101fa
Merge pull request #771 from eordano/feature/change
...
Add Fee Estimation and Change Address to Transaction
2014-12-16 22:50:53 -03:00
Manuel Aráoz
902d5de6bf
Merge pull request #775 from eordano/feature/addressmultisig
...
Add capability to instantiate an Address from public keys and a threshold
2014-12-16 22:46:58 -03:00
Manuel Araoz
84deec297a
add tx_invalid tests
2014-12-16 22:40:59 -03:00
Esteban Ordano
f7f7d147c6
Add change features
2014-12-16 22:39:25 -03:00
Manuel Aráoz
ef9b02c94d
Merge pull request #776 from eordano/feature/countMissingSignatures
...
Add count for missing signatures
2014-12-16 22:37:16 -03:00
Esteban Ordano
5f5cf15241
Add capability to instantiate an Address from public keys and a threshold
2014-12-16 22:36:50 -03:00
Esteban Ordano
ce8927690f
Add count for missing signatures
2014-12-16 22:30:13 -03:00
Esteban Ordano
ce94626908
Move: Script and Interpreter into subfolder
2014-12-16 21:11:36 -03:00
Braydon Fuller
d86e718743
Block: Updated documentation, and changed to use consistent naming.
2014-12-16 18:19:27 -05:00
Manuel Araoz
cd00b3ebe5
tx_valid tests passing!
2014-12-16 18:47:58 -03:00
Manuel Araoz
b3be9461cf
tx_valid tests passing!
2014-12-16 18:47:58 -03:00
Manuel Araoz
d56fb04575
add ScriptInterpreter#verify docs
2014-12-16 18:46:43 -03:00
Esteban Ordano
20fc304f44
Merge pull request #765 from maraoz/test/sig_noncanonical
...
add sig_noncanonical.json tests
2014-12-16 18:02:40 -03:00
Esteban Ordano
d4b8c4adc6
Remove globals
2014-12-16 17:30:43 -03:00
Esteban Ordano
4433bd422b
Refactor gulpfile
2014-12-16 17:21:41 -03:00
Esteban Ordano
ed9a9f6da9
Fix wrong jsdocs
2014-12-16 17:21:41 -03:00
Manuel Araoz
c272412df2
add sig_noncanonical.json tests
2014-12-16 16:34:22 -03:00
Manuel Aráoz
e39543b730
Merge pull request #758 from eordano/fix/precondArgument
...
Fix #756 : Preconditions Invalid Argument
2014-12-16 15:41:07 -03:00
Braydon Fuller
e3fa89ce62
PublicKey: Fix formatting issue for inspect
2014-12-16 12:25:01 -05:00
Esteban Ordano
1b19255fd1
Fix #756 : Preconditions Invalid Argument
2014-12-16 13:52:25 -03:00
Manuel Araoz
3eba0bc546
address review comments
2014-12-16 13:33:57 -03:00
Manuel Araoz
7683d2c2ed
fix post-rebase confilcts
2014-12-16 13:33:57 -03:00
Manuel Araoz
4fcc048311
script interpreting working
2014-12-16 13:33:57 -03:00
Manuel Araoz
49192a1ed7
style change to BufferUtil
2014-12-16 13:33:57 -03:00
Manuel Araoz
50dd4e8e66
fix all script validation tests, yay!
2014-12-16 13:33:56 -03:00
Manuel Araoz
4b68c3725d
generalize script tests
2014-12-16 13:33:56 -03:00
Manuel Araoz
ddd11e908c
all script_valid tests passing!
2014-12-16 13:33:56 -03:00
Manuel Araoz
0ddec23c02
fix some more tests
2014-12-16 13:33:56 -03:00
Manuel Araoz
a761ac91c2
some more passing tests
2014-12-16 13:33:56 -03:00
Manuel Araoz
73874ae873
import Sighash
2014-12-16 13:33:56 -03:00
Manuel Araoz
9aa6152f25
trying to fix OP_CHECKSIG script evaluation
2014-12-16 13:33:56 -03:00
Manuel Araoz
6a0512e1bf
pass some more tests
2014-12-16 13:33:56 -03:00
Manuel Araoz
401b5b1b4a
Pubkey -> PublicKey
2014-12-16 13:33:56 -03:00
Manuel Araoz
cf48899a3a
make creation methods class methods
2014-12-16 13:33:56 -03:00
Manuel Araoz
c888c3baa7
adding some signature methods for script interpreting
2014-12-16 13:33:56 -03:00
Manuel Araoz
3de71f8558
refactors and fixes for script interpreter
2014-12-16 13:33:56 -03:00
Manuel Araoz
c64a38a54a
trying to fix ScriptInterpreter
2014-12-16 13:33:56 -03:00
Manuel Aráoz
7064a07f99
Merge pull request #744 from braydonf/feature/transport-peer-pool
...
Transport: Added a peer pool to maintain a set of connected peers. Closes #724
2014-12-16 12:44:56 -03:00
Braydon Fuller
709cda2618
Transport/Pool: Mark internal functions
2014-12-16 03:30:57 -05:00
Braydon Fuller
b403cc3770
Transport/Pool: Added tests to check that new addrs are added
2014-12-16 02:02:06 -05:00
Manuel Aráoz
e52be70ed0
Merge pull request #752 from eordano/review/doc
...
Update docs and minor changes to codebase
2014-12-16 03:09:26 -03:00
Esteban Ordano
9d0b5e04fe
Update Signature, URI, Unit
2014-12-16 03:02:05 -03:00
Esteban Ordano
63f1d307fa
Reviewing docs
2014-12-16 02:45:23 -03:00
Braydon Fuller
e04cb76854
Transport/Pool: Use sinon for tests.
2014-12-15 21:43:10 -05:00
Braydon Fuller
1a1d63321a
Transport: Added a peer pool to maintain a set of connected peers
2014-12-15 21:43:10 -05:00
Braydon Fuller
6f37520a58
Merge pull request #750 from eordano/test/publicWIF
...
Add `network` property to PublicKey
2014-12-15 18:02:03 -05:00
Braydon Fuller
c7edfdd2b1
Merge pull request #751 from eordano/fix/bufferReadNoLength
...
Remove calls to read() with no arguments
2014-12-15 17:56:56 -05:00
Esteban Ordano
5bed12ebe3
Remove calls to read() with no arguments
2014-12-15 19:37:19 -03:00
Esteban Ordano
48ce24dfbe
Fix tests to allow network on public keys
2014-12-15 19:28:59 -03:00
Esteban Ordano
d1a590dc89
Merge pull request #719 from yemel/refactor/remove-compressed
...
Remove compressed argument from PrivateKey and PublicKey constructors
2014-12-15 18:49:39 -03:00
Esteban Ordano
de4d2884c7
Modify Transaction to use Multisig
...
* Allow `Script#add` to add a Script causing concatenation of opcodes
* Add `Script#equals` to compare scripts
* Add `Script#fromAddress`
* Drop `_payTo` methods
* Add `Script.buildP2SHMultisigIn`
Greatly simplifying the internal transaction object
2014-12-15 18:19:54 -03:00
Esteban Ordano
1535805f1c
Add PublicKeyHashInput class
2014-12-15 18:19:39 -03:00
Esteban Ordano
af43228daf
Add `PublicKeyHashInput` and `ScriptHashInput`.
...
Remove `_outpoints`, `_utxos` from Transaction, as that info
can be efficiently retrieved from the inputs
2014-12-15 18:19:39 -03:00
Manuel Aráoz
264a239e5a
Merge pull request #737 from braydonf/bug/to-object
...
Transaction: `toJSON` / `fromJSON` tests
2014-12-15 17:06:08 -03:00
Yemel Jardi
428bcaf4c9
Remove compressed argument from private key and public key constructors
2014-12-15 14:48:17 -03:00
Manuel Aráoz
a2b1554a44
Merge pull request #738 from braydonf/tests/base58-keys
...
Tests: Added bitcoind base58 key json data and tests
2014-12-15 12:42:10 -03:00
Braydon Fuller
96c7812ed1
PrivateKey: Lodash to check if undefined, and made tests not random (T2)
2014-12-15 10:20:38 -05:00
Braydon Fuller
b13c4fb0c9
Added inspect prototype G5
2014-12-14 15:13:01 -05:00
Braydon Fuller
920f25b58e
Tests: Added bitcoind base58 key data and tests
2014-12-13 16:10:41 -05:00
Braydon Fuller
6f6d568661
Transaction: toNumber/fromNumber to set satoshis
2014-12-13 15:10:51 -05:00
Braydon Fuller
ad4bc9324f
Transaction: Use Script toString for transaction JSON output
2014-12-13 14:54:07 -05:00
Braydon Fuller
b544b0594d
Added test to check that Transaction fromJSON could initialize from toJSON, and fixed a bug.
2014-12-13 14:54:07 -05:00
Braydon Fuller
f43c2f9aa3
Fixed bug, toObject should use other object's toObject
2014-12-13 14:54:07 -05:00
Braydon Fuller
dee30c749a
Unit: Fixed bug, stringified toJSON output
2014-12-12 20:08:46 -05:00
Braydon Fuller
e4cf84519d
BN: Remove toJSON and fromJSON methods from BN, as they are equivalent to toString and fromString
2014-12-12 19:06:06 -05:00
Braydon Fuller
002eb3dcf5
Transaction: Added toObject method and changed toJSON to return a string
2014-12-12 19:03:14 -05:00
Braydon Fuller
cddd55afc4
URI/Unit: Added toObject method and changed toJSON to return a string
2014-12-12 18:53:27 -05:00
Braydon Fuller
c0bbf96dc1
Keys: Added toObject method and changed toJSON to return a string
2014-12-12 18:47:15 -05:00
Braydon Fuller
1c0caac8c3
HDKeys: Added toObject method and changed toJSON to return a string
2014-12-12 18:39:16 -05:00
Braydon Fuller
19a17017a9
Block: Added toObject method and changed toJSON to return a string
2014-12-12 18:34:43 -05:00
Braydon Fuller
354c03987a
Address: Added toObject method and changed toJSON to return a string
2014-12-12 18:22:31 -05:00
Braydon Fuller
0e7f5e89f2
Fixed issue with js util naming
2014-12-12 17:54:48 -05:00
Manuel Aráoz
04fba31293
Merge pull request #721 from braydonf/standardize-json
...
Standardize toJSON and related
2014-12-12 19:19:08 -03:00
Braydon Fuller
46a9a6d83c
Opcode: Added toBuffer and fromBuffer methods
2014-12-12 15:33:40 -05:00
Braydon Fuller
4ddf3d117c
Keys: Modified and added standardized toJSON/fromJSON prototypes
2014-12-12 13:39:49 -05:00
Braydon Fuller
93502d1523
Fix naming
2014-12-12 12:09:15 -05:00
Braydon Fuller
683ac93c0b
Fix utility naming issue
2014-12-12 12:06:39 -05:00
Braydon Fuller
162438d111
Block: Change utility naming
2014-12-12 12:06:39 -05:00
Braydon Fuller
3276236cce
Consistent names for utilities
2014-12-12 12:06:39 -05:00
Braydon Fuller
94cc10b1a3
Changed *Json to *JSON and returned an object so that methods can be called from other toJSON methods without the double-stringification issue.
2014-12-12 12:06:39 -05:00
Braydon Fuller
7aaee6466f
Fix spacing formatting issues
2014-12-12 11:24:14 -05:00
Braydon Fuller
32ac9bb63e
Change utility naming
2014-12-12 11:05:22 -05:00
Braydon Fuller
1858766627
Standardized toJSON, fromJSON, toString and fromString interfaces
2014-12-12 09:51:59 -05:00
Manuel Aráoz
d6caab69ca
Merge pull request #720 from braydonf/feature/immutable-opcode
...
Opcode: Modify `from` methods to be static, and an instance be immutable.
2014-12-12 11:19:30 -03:00
Esteban Ordano
40932f39ce
Merge pull request #717 from braydonf/feature/hdkeys-immutable
...
HDKeys: Modified to have immutable properties
2014-12-12 10:23:26 -03:00
Braydon Fuller
77be24a52f
Bump
2014-12-11 22:27:37 -05:00
Braydon Fuller
6bb9990a2b
Opcode: JS-Beautify
2014-12-11 20:37:54 -05:00
Braydon Fuller
1b2e9728ce
Opcode: Modify from methods to be static, and an instance be immutable.
2014-12-11 20:19:54 -05:00
Braydon Fuller
c73c56f938
HDKeys: Modified to have immutable properties
2014-12-11 15:37:31 -05:00
Manuel Aráoz
d1b4c25c6f
Merge pull request #713 from braydonf/ref/private-key-network
...
PrivateKey: Add docs and refactor to use network object
2014-12-11 17:20:24 -03:00
Manuel Araoz
d3b761fc7c
Opcode('*').toNumber() -> Opcode.*
2014-12-11 16:19:22 -03:00
Manuel Araoz
bb8373ead7
remove script_interpreter for partial commit
2014-12-11 16:19:22 -03:00
Manuel Araoz
53f6a31e73
refactor script
2014-12-11 16:19:22 -03:00
Manuel Araoz
81f1469f9a
add preconditions to opcode
2014-12-11 16:19:21 -03:00
Manuel Araoz
f5b7f73d09
fixing tests for new script internals 2
2014-12-11 16:19:21 -03:00
Manuel Araoz
016bc6e3ed
fixing tests for new script internals
2014-12-11 16:19:21 -03:00
Manuel Araoz
898bdac05f
working towards script interpreting
2014-12-11 16:19:21 -03:00
Manuel Araoz
7ee9601d8a
starting with script_interpreter
2014-12-11 16:19:21 -03:00
Esteban Ordano
e1f1f4b6f6
Hotfix: Remove console.log
2014-12-11 16:11:47 -03:00
Esteban Ordano
005cf074fd
Merge pull request #696 from yemel/feature/transport
...
P2P Peer Connections
2014-12-11 16:10:18 -03:00
Braydon Fuller
5b0bedee6c
PrivateKey: Fixed documentation
2014-12-11 13:29:21 -05:00
Braydon Fuller
d4d3d4ab4a
PrivateKey: Add documentation and refactor to use network object as a parameter.
2014-12-11 13:21:09 -05:00
Manuel Aráoz
b89f15bcf1
Merge pull request #705 from braydonf/ref/address-network
...
Address: Documentation and Network Refactor
2014-12-11 13:22:04 -03:00
Yemel Jardi
9b6183b083
Improving code thanks to jshint
2014-12-11 13:11:55 -03:00
Yemel Jardi
ee169a80af
Replace buffertools
2014-12-11 12:45:24 -03:00
Braydon Fuller
56161676c3
Address: Change discoverMeta to classifyVersion and add a general address validation example
2014-12-11 10:42:10 -05:00
Yemel Jardi
c30f656540
Remove custom hex function at networks.js
2014-12-11 11:57:14 -03:00
Yemel Jardi
63022783dd
Add developer guide section
2014-12-11 11:31:52 -03:00
Esteban Ordano
ef49dda0fd
Move input to subfolder before refactor
...
Gonna inherit from it on two subclasses: "P2SH Input" and "P2PKH Input"
They'll have a `addSignature` method, to deal with new signatures,
a `clearSignatures`, in case the outputs change and the signatures get
invalidated, `countMissingSignatures`, and a reference to the UTXO
they'll be spending, so all logic regarding "p2sh mapping" gets to
be in here and the Transaction class is not polluted.
2014-12-11 09:18:20 -03:00
Braydon Fuller
3b061b057f
Address: Added documentation and refactored to accept both a string and network object.
2014-12-10 23:44:17 -05:00
Yemel Jardi
57968674ef
Add a better check on networkMaps
2014-12-10 18:09:27 -03:00
Yemel Jardi
228e7e214a
Add tests
2014-12-10 18:09:27 -03:00
Yemel Jardi
2d4b26a6a1
Add missing serializations
2014-12-10 18:09:27 -03:00
Yemel Jardi
56907c1a3b
Add missing argument
2014-12-10 18:09:27 -03:00
Yemel Jardi
9ce450c142
Remove old tests
2014-12-10 18:09:27 -03:00
Yemel Jardi
30740be5df
Remove old files
2014-12-10 18:09:27 -03:00
Yemel Jardi
8eca7285e0
Refactor and documentation
2014-12-10 18:09:26 -03:00
Yemel Jardi
5dc124a438
Add inheritance to messages and expose them as a module
2014-12-10 18:09:26 -03:00
Yemel Jardi
68f50b2f61
Add messages serialization
2014-12-10 18:09:26 -03:00
Yemel Jardi
a9e54a7856
Progress on sending and receiving messages
2014-12-10 18:09:26 -03:00
Yemel Jardi
a1e8f3c596
Add transport/peermanager class
2014-12-10 18:09:26 -03:00
Yemel Jardi
4faa1a4a46
Add transport/peer class
2014-12-10 18:09:26 -03:00
Yemel Jardi
f1d2009418
Add transport/connection class
2014-12-10 18:09:26 -03:00
Manuel Araoz
ec464681fe
add sorting to Script#buildMutlisigOut()
2014-12-10 16:46:20 -03:00
Esteban Ordano
1579eed9af
Consistency with "id", "hash", and "_getHash"
2014-12-10 15:20:42 -03:00
Esteban Ordano
0c28bc1786
Split buildPKH arguments, add Copy constructor on publickey
2014-12-10 12:46:21 -03:00
Esteban Ordano
5c974a8ef2
Refactor transaction to match new API
...
* Refactor transaction into a different subfolder
* Added a lot of tests for sighash and transaction serialization (from
reddit's and Ryan X. Charles' `fullnode`)
* Drop "only" from sighash tests and consolidate logs
2014-12-10 12:44:30 -03:00
Manuel Araoz
b61bd6f76a
add Script#isPushOnly()
2014-12-10 12:39:09 -03:00
Manuel Aráoz
01b74b8df5
Merge pull request #695 from eordano/feature/errors
...
Add a preconditions module, and refactor errors
2014-12-10 12:35:31 -03:00
Esteban Ordano
ea17a6ace1
Add a preconditions module, and refactor errors
...
100% code coverage for the preconditions module.
Usage:
```
$.checkState(something === anotherthing, 'Expected something to be
anotherthing');
$.checkArgument(something < 100, 'something', 'must be less than 100');
$.checkArgumentType(something, PrivateKey, 'something'); // The third
argument is a helper to mention the name of the argument
$.checkArgumentType(something, PrivateKey); // but it's optional (will
show up as "(unknown argument)")
```
2014-12-10 11:56:38 -03:00
Manuel Aráoz
6727342202
Merge pull request #689 from eordano/feature/scriptOpcodeUpdate
...
Feature/script opcode update
2014-12-09 18:18:19 -03:00
Esteban Ordano
fd531de123
Update opcode and script transactions
2014-12-09 17:53:30 -03:00
Manuel Aráoz
22b1193e32
Merge pull request #688 from eordano/feature/addressMethods
...
Add check functions to Address
2014-12-09 17:51:25 -03:00
Esteban Ordano
3551742fee
Miscelaneus updates to docs and bufferreader/writer
2014-12-09 17:31:20 -03:00
Esteban Ordano
1816ba197f
Add check functions to Address
2014-12-09 17:25:36 -03:00
Braydon Fuller
c86f6d68a9
ECDSA: Remove console.log
2014-12-09 13:51:10 -05:00
Manuel Aráoz
fb1978c5f5
Merge pull request #679 from eordano/feature/ecdsabackport
...
Backport changes to ECDSA from fullnode
2014-12-09 15:09:33 -03:00
Esteban Ordano
4879007bc7
Merge pull request #676 from braydonf/feature/block-handling-validation
...
Block: Added validation of proof of work, merkle tree and other interface changes. Closes #601
2014-12-09 13:54:31 -03:00
Esteban Ordano
4e9e89cdbf
Move license notes to LICENSE
2014-12-09 13:46:14 -03:00
Esteban Ordano
736bcd6bd4
Backport changes to ecdsa from fullnode
2014-12-09 12:01:52 -03:00
Esteban Ordano
f8397a617e
Add option to create private key from hex
2014-12-09 11:40:30 -03:00
Esteban Ordano
baf6a24d23
Add ".publicKey" property to PrivateKey
2014-12-09 11:21:47 -03:00
Braydon Fuller
5d1da9802c
Block: Added validation of proof of work, merkle tree and other interface changes. Closes #601
2014-12-08 14:51:43 -05:00
Manuel Aráoz
33715a994e
Merge pull request #666 from braydonf/bug/public-key-validation
...
PublicKey: Add test to verify that both uncompressed an compressed keys validate.
2014-12-05 10:31:10 -03:00
Manuel Araoz
58b43345c0
add docs
2014-12-04 18:39:13 -03:00
Manuel Araoz
6c5198b743
fix a browser test
2014-12-04 15:38:46 -03:00
Manuel Araoz
d19ad6f384
remove commented code
2014-12-04 15:10:19 -03:00
Manuel Araoz
eaaab5c7d0
implement Script.buildScriptHashOut()
2014-12-04 15:06:56 -03:00
Manuel Araoz
4bca5316ea
implement Script.buildDDataOut()
2014-12-04 15:06:56 -03:00
Manuel Araoz
b87e687fd9
implement Script.buildPublicKeyHashOut()
2014-12-04 15:06:56 -03:00
Manuel Araoz
163925c754
implement Script.buildMultisigOut()
2014-12-04 15:06:56 -03:00
Manuel Araoz
7b54a53414
add Opcode.smallInt()
2014-12-04 15:06:56 -03:00
Manuel Araoz
4fae69807d
change isOpReturn to isDataOut
2014-12-04 15:06:56 -03:00
Manuel Araoz
d05aa27bed
finish all tests
2014-12-04 15:06:56 -03:00
Braydon Fuller
012466d411
PublicKey: Remove compressed boolean from validation, not nessassary.
2014-12-04 13:06:10 -05:00
Braydon Fuller
64c0d5f942
Payment Protocol: Restore and reorganize files for payment protocol.
2014-12-04 10:43:40 -05:00
Esteban Ordano
d29d8d267d
Add message to stack
2014-12-03 11:49:33 -03:00
Esteban Ordano
121b9fc090
Fixes issues with errors
2014-12-03 10:06:44 -03:00
Manuel Araoz
ef8f1eabd2
add script.isStandard()
2014-12-02 14:20:58 -03:00
Manuel Araoz
c4cc6ba56d
fix tests with new script api
2014-12-02 14:20:58 -03:00
Manuel Araoz
87c40193b9
add pubkey in pubkey out script types
2014-12-02 14:20:58 -03:00
Manuel Araoz
3e2bcaa297
more verbose invalid script error
2014-12-02 14:20:58 -03:00
Manuel Araoz
ed0fc6298c
fix classify tests
2014-12-02 14:20:58 -03:00
Manuel Araoz
7d9151abc6
fix classify tests
2014-12-02 14:20:58 -03:00
Manuel Araoz
293a3299d4
add classify tests
2014-12-02 14:20:58 -03:00
Manuel Araoz
72b5dcc6af
add Script.isMultisigIn
2014-12-02 14:20:58 -03:00
Manuel Araoz
96e1451d28
add script.isMultisigOut
2014-12-02 14:20:58 -03:00
Manuel Araoz
350816ad40
opcode refactor: isSmallIntOp
2014-12-02 14:20:58 -03:00
Manuel Araoz
4a6755d0d1
add Script#prepend()
2014-12-02 14:20:57 -03:00
Manuel Araoz
ebf97aa4bb
fix condition style again
2014-12-02 14:20:02 -03:00
Manuel Araoz
94f1afbad7
fix tests
2014-12-02 14:20:02 -03:00
Manuel Araoz
98be01b207
fix conditional format
2014-12-02 14:20:02 -03:00
Manuel Araoz
66e96e5fa4
make tests pass with Script refactor
2014-12-02 14:20:02 -03:00
Manuel Araoz
87f6651554
initial Script refactor
2014-12-02 14:20:02 -03:00
Braydon Fuller
3fc12e87d7
Merge pull request #648 from braydonf/ref/default-networks
...
Networks: Consistency of network reference and fix hardcoded value
2014-12-02 11:12:20 -05:00
Braydon Fuller
968f9936d8
Networks: Add mainnet alias
2014-12-02 10:55:25 -05:00
Braydon Fuller
d5d88287cd
Networks: Consistency of network reference for 'livenet', and removed hardcoded value.
2014-12-02 10:48:21 -05:00
Esteban Ordano
3dbb35a708
Fixes build, add "mainnet" again and fixes uri
2014-12-02 12:40:42 -03:00
Esteban Ordano
2b866a8460
Merge pull request #630 from braydonf/feature/immutable
...
Immutable Address, PublicKey and PrivateKey
2014-12-02 12:17:03 -03:00
Esteban Ordano
3d56ed3b4d
Merge pull request #637 from braydonf/feature/public-key-to-address
...
PublicKey: Added toAddress prototype. Closes #599
2014-12-02 12:16:29 -03:00
Esteban Ordano
7682cfa359
Merge pull request #644 from braydonf/ref/default-network
...
Default the network, if not specified, to `networks.defaultNetwork`. Closes #559
2014-12-02 12:16:11 -03:00
Braydon Fuller
b91b0fe4a5
PrivateKey: Use defaultNetwork if not specified
2014-12-01 18:10:18 -05:00
Braydon Fuller
eb72310a62
Address: Use defaultNetwork if network is not specified
2014-12-01 18:07:39 -05:00
Braydon Fuller
6e36baebc6
Tests: Enable tests for network, include defaultNetwork, check each constant, build browser tests before running to make sure it's up-to-date
2014-12-01 17:55:57 -05:00
Braydon Fuller
4adf1fcb14
Network: Replaced all instances of mainnet with livenet for consistency
2014-12-01 17:31:39 -05:00
Yemel Jardi
9cd9eeba1f
convert amout to satoshis
2014-12-01 17:36:52 -03:00
Yemel Jardi
db4561f834
Add documentation
2014-12-01 17:18:10 -03:00
Yemel Jardi
c9951be2dc
Base URI class and tests
2014-12-01 17:18:10 -03:00
Yemel Jardi
80937362be
Address constructor allows an address instance
2014-12-01 17:17:10 -03:00
Manuel Aráoz
1175c475a2
Merge pull request #627 from yemel/feature/unit-util
...
Utility for unit conversion
2014-12-01 16:17:17 -03:00
Braydon Fuller
b06866f86f
PublicKey: Added toAddress prototype. Closes #599
2014-12-01 14:15:59 -05:00
Yemel Jardi
ab517cae9c
refactor double quote
2014-12-01 16:02:28 -03:00
Yemel Jardi
3208ca2a44
Allow creating instance without new
2014-12-01 16:02:06 -03:00
Braydon Fuller
3298a01498
Immutable Address, PublicKey and PrivateKey
2014-12-01 12:44:32 -05:00
Yemel Jardi
d978160ddb
Utility for unit conversion
2014-12-01 12:33:45 -03:00
Braydon Fuller
9a76bf30ff
Crypto/Point: Added test coverage and documentation, and refactored validation
2014-12-01 10:14:36 -05:00
Esteban Ordano
865a69f6f2
add testing for key cache
2014-12-01 10:00:46 -03:00
Esteban Ordano
13fd2592fc
Add autogenerated errors
2014-11-30 09:47:44 -03:00
Esteban Ordano
803027353a
Change errors
2014-11-30 09:47:44 -03:00
Esteban Ordano
94f3f02210
Add missing javadocs
2014-11-30 09:47:44 -03:00
Esteban Ordano
a2a51ecc0c
Fix style: move each static function to an appropiate namespace
2014-11-30 09:47:44 -03:00
Esteban Ordano
53900f3196
Add cache to derivation
2014-11-30 09:47:44 -03:00
Esteban Ordano
4c0769fa09
100% test coverage on hdpublickey
2014-11-30 09:47:44 -03:00
Esteban Ordano
edc5b24d69
100% test coverage for HDPrivateKey
2014-11-30 09:47:44 -03:00
Esteban Ordano
950ea6ed1a
Add public key
2014-11-30 09:47:44 -03:00
Esteban Ordano
ad74b549a1
Fixes interfaces
2014-11-30 09:47:44 -03:00
Esteban Ordano
5728c30371
Add tests
2014-11-30 09:47:44 -03:00
Esteban Ordano
b89bdd19f8
Add HDPrivateKey class
2014-11-30 09:47:44 -03:00
Manuel Araoz
1f3d7d9872
move Signature to crypto/
2014-11-27 16:42:44 -03:00
Braydon Fuller
95b489c306
JSDoc: Update Address, PublicKey and PrivateKey so that they are documented.
2014-11-26 14:21:45 -05:00
Esteban Ordano
0695cda651
fix jsdoc
2014-11-26 12:56:43 -03:00
Esteban Ordano
4b201a8db1
Replace grunt with gulp
2014-11-25 21:26:52 -03:00
Esteban Ordano
73265d9089
Refactor network.js
2014-11-25 20:39:43 -03:00
Braydon Fuller
a50655c7d3
Merge branch 'feature/keys-interface-rename-tests' into feature/keys-interface-rename
2014-11-25 17:38:24 -05:00
Braydon Fuller
747b14dc2e
Merge branch 'v0.8' into feature/keys-interface-rename
2014-11-25 17:37:24 -05:00
Braydon Fuller
7de28610a5
Keys: Fix browser data types
2014-11-25 15:30:25 -05:00
Braydon Fuller
2a2dc8196d
Crypto: Update ECDSA with to use PrivateKey and PublicKey
2014-11-25 15:10:22 -05:00
Braydon Fuller
f6e610dd28
Merge branch 'bug/recursive-tests' into feature/keys-interface-rename-tests
2014-11-25 14:55:35 -05:00
Braydon Fuller
cd4583f954
Encodings: Updated Base58 for the latest version.
2014-11-25 14:40:43 -05:00
Braydon Fuller
8c4301cb0a
Tests: Updated tests to run from sub-directories and fixed crypto and encoding related missing updates.
2014-11-25 14:20:43 -05:00
Braydon Fuller
85ce140aeb
Keys: Renamed Privkey to PrivateKey and Pubkey to PublicKey
2014-11-25 13:21:53 -05:00
Braydon Fuller
35d0cbc5a6
Keys: Modified interface of Pubkey and Privkey so that an instance can be relied upon as valid.
2014-11-25 12:30:52 -05:00
Manuel Aráoz
f4bf23be82
Merge pull request #573 from braydonf/ref/remove-keypair
...
Keys: Refactored to use Pubkey and Privkey and removed Keypair
2014-11-25 12:22:38 -03:00
Manuel Aráoz
b97e448af6
Merge pull request #575 from braydonf/ref/package-update-2014-11
...
Package: Updated to include the latest versions of dependencies
2014-11-25 11:45:40 -03:00
Braydon Fuller
deb54c5a20
Address: Return new instance if `this` isn't already instantiated.
2014-11-24 15:47:30 -05:00
Braydon Fuller
cfb32f7fc8
Package: Updated to include the latest versions of dependencies
2014-11-24 15:20:14 -05:00
Braydon Fuller
23c1ed3599
Keys: Refactored to use Pubkey and Privkey and removed Keypair
2014-11-24 12:53:16 -05:00
Braydon Fuller
9863b123c0
Address: Increase test coverage
2014-11-23 15:34:19 -05:00
Braydon Fuller
3c9cc23501
Address: Improved error messages and type, and added inspect prototype for console output.
2014-11-21 22:20:44 -05:00
Braydon Fuller
5ff349758c
Address: Fix Buffer data recognition in browsers
2014-11-21 19:58:47 -05:00
Braydon Fuller
0df97a42fe
Address: Fix indentation, typos and simplify isValid
2014-11-21 19:02:58 -05:00
Braydon Fuller
8f32063375
Address: Add missing semicolons
2014-11-21 14:31:34 -05:00
Braydon Fuller
90341f2ab6
Address: Modified interface so that any instance of Address can be assumed to be valid.
2014-11-21 14:18:31 -05:00
Manuel Araoz
4508fb6765
fix references to encoding
2014-11-21 12:54:56 -03:00
Manuel Araoz
deee8c6887
refactor protocol->encoding
2014-11-21 11:43:37 -03:00
Manuel Araoz
e0340213fe
remove KDF
2014-11-21 10:43:12 -03:00
Manuel Araoz
5440baad83
fix tests for random
2014-11-20 18:46:43 -03:00
Manuel Araoz
f0a4aebdfb
reorder tests
2014-11-20 18:08:31 -03:00
Manuel Araoz
a9d029341d
remove extras
2014-11-20 13:31:51 -03:00
Manuel Araoz
044337a30f
use strict to core
2014-11-20 12:56:35 -03:00
Manuel Araoz
ca9b8d8f7b
use strict to protocol
2014-11-20 12:52:32 -03:00
Manuel Araoz
56ca8a20c1
use strict to protocol
2014-11-20 12:23:46 -03:00
Manuel Araoz
7650b35482
use strict to extras
2014-11-20 12:18:08 -03:00
Manuel Araoz
2bf1ed8f34
use strict to crypto
2014-11-20 12:16:27 -03:00
Manuel Araoz
6f2913eed4
fix references
2014-11-20 11:50:23 -03:00
Manuel Araoz
481aa04cdb
add comment to identity.js
2014-11-20 11:44:46 -03:00
Manuel Araoz
5dd3eae34f
move more files
2014-11-19 12:19:10 -03:00
Manuel Araoz
cebd3aaa18
move files
2014-11-19 11:57:07 -03:00
Manuel Araoz
54fa31c85d
remove crypto
2014-11-18 18:59:31 -03:00