Commit Graph

337 Commits

Author SHA1 Message Date
Christopher Jeffrey
6acef06cbc
address: implement bech32 addresses. 2017-04-12 23:13:29 -07:00
Marty Jones
3db7482e65 [Trivial] Adds JSHint param name 2017-04-10 20:05:56 -05:00
Christopher Jeffrey
d7e2942117
netaddress: fix fromHost. 2017-03-14 06:10:35 -07:00
Christopher Jeffrey
695305cf68
mtx: add by-value sorting. 2017-03-14 06:09:29 -07:00
Christopher Jeffrey
cdbad54a8c
net: improvements. see comments.
- Improved local address handling.
- Enabled upnp discovery.
- Added retry for dns seeds.
- Improved hostlist in general.
2017-03-07 17:10:47 -08:00
Christopher Jeffrey
e9650da89c
tx: prevent getRate from throwing. 2017-03-05 17:57:26 -08:00
Christopher Jeffrey
b8bf8209f0
ip/netaddress: add reachability score. 2017-03-02 15:25:44 -08:00
Christopher Jeffrey
9f09de4867
rpc/http/wallet: more aggressive validation for addrs/keys. 2017-02-28 14:52:54 -08:00
Christopher Jeffrey
60ff33bdb2
block: minor. 2017-02-28 10:13:48 -08:00
Christopher Jeffrey
e9d87dcd98
refactor: lint. 2017-02-28 10:09:17 -08:00
Christopher Jeffrey
914b66b94f
block: do not cache height parsing. 2017-02-28 09:20:23 -08:00
Christopher Jeffrey
a535d7d414
tx: fix witness item check. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
ac70656e71
chain/tx: fixes. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
33bda01d21
tx/mempool: simplify some witness policy. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
7688d80e74
block/chain: refactor block verification and caching. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
426ab85f15
block: remove commitment hash cache. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
f71f2d954b
chain: optimize reward calculation. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
4e7df6ef87
docs: get jsdoc compiling again. 2017-02-03 22:47:26 -08:00
Christopher Jeffrey
80d47b8db4
wallet: more failsafes for sending. 2017-01-29 17:21:16 -08:00
Christopher Jeffrey
0f8fd1dc77
minor: lint. 2017-01-28 19:09:12 -08:00
Christopher Jeffrey
86fdf33f8a
block: fix isBlock. 2017-01-27 18:10:51 -08:00
Christopher Jeffrey
8e6819714b
merkleblock: improve extractTree perf. 2017-01-27 00:08:49 -08:00
Christopher Jeffrey
5073c1508f
net: tor support for outgoing conns. 2017-01-24 18:25:44 -08:00
Christopher Jeffrey
b8324e0b09
ip: rename some functions. 2017-01-23 23:08:21 -08:00
Christopher Jeffrey
07c3177227
ip: better tor support. 2017-01-23 22:44:17 -08:00
Christopher Jeffrey
658120de6d
netaddr: fix isIPv6. 2017-01-23 19:58:06 -08:00
Christopher Jeffrey
016d0da096
ip/netaddress: better ip parsing. 2017-01-23 19:36:19 -08:00
Christopher Jeffrey
3374bffd14
invitem: rename witness flag for consistency. 2017-01-23 05:34:05 -08:00
Christopher Jeffrey
33fbdff127
mtx: call TX.getJSON in MTX.toJSON. see #120. 2017-01-22 14:41:11 -08:00
Christopher Jeffrey
2ee6cea969
net: better dos protection for merkleblocks. 2017-01-18 21:54:35 -08:00
Christopher Jeffrey
4cba97a0a8
wallet/net: ensure low FPR of bloom filters. see #118. 2017-01-18 20:53:01 -08:00
Christopher Jeffrey
db49f44c8a
peer: refactor version packet handling. 2017-01-16 03:33:54 -08:00
Christopher Jeffrey
d89678eaac
tx: assertions. 2017-01-15 18:31:37 -08:00
Christopher Jeffrey
5ee83e9114
tx: some misc cleanup. 2017-01-15 17:52:42 -08:00
Christopher Jeffrey
94460ba592
mtx: fix mtx.fromJSON. 2017-01-15 17:10:24 -08:00
Christopher Jeffrey
15579a6b21
outpoint: minor. 2017-01-15 16:26:25 -08:00
Christopher Jeffrey
a53b2c0eef
primitives: cloning and assertions. 2017-01-15 15:17:33 -08:00
Christopher Jeffrey
58da4be8fa
primitives: more aggressive asserting. 2017-01-15 13:18:35 -08:00
Christopher Jeffrey
daaa1c5fa5
address: fix types by val. 2017-01-13 15:11:42 -08:00
Christopher Jeffrey
79eea76cc4
output: remove output mutability and addr caching. 2017-01-12 16:13:32 -08:00
Christopher Jeffrey
e36f78f6bf
coin: add rhash method. 2017-01-12 12:41:04 -08:00
Christopher Jeffrey
72f6a1d239
mtx: allow base58 addrs in outputs. 2017-01-12 03:28:03 -08:00
Christopher Jeffrey
e718caa1ff
tx: extra assertion. 2017-01-10 00:07:18 -08:00
Christopher Jeffrey
fb53992bf6
address: fix witnessscripthash. 2017-01-09 23:25:35 -08:00
Christopher Jeffrey
4c557744a2
refactor: address, amount, uri, errors. 2017-01-09 23:07:02 -08:00
Christopher Jeffrey
2145cadc10
mtx/script: minor. optimize script.fromProgram. 2017-01-09 13:26:18 -08:00
Christopher Jeffrey
a25610857e
mtx: lint. 2017-01-08 21:55:27 -08:00
Christopher Jeffrey
ee4e918024
mtx/tests: more refactoring. 2017-01-08 21:49:54 -08:00
Christopher Jeffrey
95c205b309
mtx: less overloading. 2017-01-08 02:44:55 -08:00
Christopher Jeffrey
8987c0d870
wallet/mtx: fix fee checking and refactor some mtx functions. 2017-01-08 01:36:01 -08:00
Christopher Jeffrey
a4602a22cb
tx: refactor address getting. 2017-01-07 22:42:57 -08:00
Christopher Jeffrey
0eef277984
mtx: coin selector refactor. 2017-01-07 15:39:18 -08:00
Christopher Jeffrey
bea77b0ec7
mtx: refactor coin selection. 2017-01-07 00:18:45 -08:00
Christopher Jeffrey
3b45648750
mtx: fix bip69 impl. 2017-01-06 23:59:58 -08:00
Christopher Jeffrey
3236c367b1
tx: refactor locktimes. 2017-01-06 11:09:52 -08:00
Christopher Jeffrey
122b4a9fb3
tx: refactor. 2017-01-06 10:52:22 -08:00
Christopher Jeffrey
75430cae8b
refactor: more moving. 2017-01-06 10:18:21 -08:00
Christopher Jeffrey
5caf6210b9
refactor: move constants around. 2017-01-06 09:57:55 -08:00
Christopher Jeffrey
d1a4e53896
bloom/net: move bloom constants. net services, move inv types. 2017-01-06 01:57:49 -08:00
Christopher Jeffrey
cca763ca95
peer: avoid compactblock dos. 2017-01-05 14:35:28 -08:00
Christopher Jeffrey
cd8e464079
net: redesign stall behavior and block management. 2017-01-05 14:35:28 -08:00
Mokhtar Naamani
bbafbbb98c netaddress: fix fromHost to include BLOOM service 2017-01-02 17:18:17 +02:00
Christopher Jeffrey
b5ff10e74f
tx: minor. 2016-12-30 00:05:50 -08:00
Christopher Jeffrey
943c5d2d12
net: treat services as a u32. 2016-12-27 15:28:19 -08:00
Christopher Jeffrey
74dbff2377
net: add addrman serialization. 2016-12-27 14:29:46 -08:00
Christopher Jeffrey
1a4984d533
net: add hasServices method. 2016-12-21 15:31:55 -08:00
Christopher Jeffrey
24e6ed7a26
net: rewrite hostlist. bitcoind-style management. 2016-12-21 13:18:03 -08:00
Christopher Jeffrey
127a52aaf1
refactor: rename network address. 2016-12-20 12:47:19 -08:00
Christopher Jeffrey
3baaeadd14
tx: comments and addr fixes. 2016-12-20 00:40:49 -08:00
Christopher Jeffrey
9fd7153100
netaddress: minor. 2016-12-19 04:19:16 -08:00
Christopher Jeffrey
37a3f83334
keyring: add refresh method. 2016-12-18 20:41:30 -08:00
Christopher Jeffrey
595ada8c86
mtx/wallet: more sanity checks for sending. 2016-12-18 03:20:47 -08:00
Christopher Jeffrey
c358a1b59e
mtx: coin selection - handle reorgd coinbases. 2016-12-18 02:54:01 -08:00
Christopher Jeffrey
edf47d67c8
primitives: refresh call. 2016-12-16 22:02:05 -08:00
Christopher Jeffrey
761b6d6636
net: refactor host management. 2016-12-16 13:50:45 -08:00
Christopher Jeffrey
2e26909e85
rpc: add witness nonce for submitted blocks. 2016-12-15 16:12:35 -08:00
Christopher Jeffrey
33a8e1e511
block/tx: sigops cost/size/weight. 2016-12-13 16:52:31 -08:00
Christopher Jeffrey
14c9a37cd9
packets: more serialization nonsense. 2016-12-13 02:58:49 -08:00
Christopher Jeffrey
41a2a46403
tx: refactor sighash v0. 2016-12-12 10:53:28 -08:00
Christopher Jeffrey
fcf6254d29
address: refactor. 2016-12-12 06:50:13 -08:00
Christopher Jeffrey
dfefc7182f
serialization: more sizes. 2016-12-11 19:16:02 -08:00
Christopher Jeffrey
3b9e4d6c6e
refactor: use static writers everywhere. 2016-12-11 17:26:42 -08:00
Christopher Jeffrey
f7c9a24802
tx/coins: start using static writers more. 2016-12-11 13:44:20 -08:00
Christopher Jeffrey
1296bb2302
serialization: add size calculation and static writer. 2016-12-11 12:19:18 -08:00
Christopher Jeffrey
808d8678a6
tx: add sigops vsize calculation. 2016-12-11 10:35:17 -08:00
Christopher Jeffrey
72d5eec710
block/bip152/merkleblock: refactor some block things. 2016-12-11 10:10:00 -08:00
Christopher Jeffrey
d4cb8d82a2
minor: comments. 2016-12-11 08:32:46 -08:00
Christopher Jeffrey
48fc7549ce
tx/wallet: misc fixes. 2016-12-11 06:14:32 -08:00
Christopher Jeffrey
59645ac3ec
refactor: remove extra properties from tx and block. 2016-12-11 05:35:31 -08:00
Christopher Jeffrey
f3801fa8a7
refactor: move coins. 2016-12-10 22:00:27 -08:00
Christopher Jeffrey
b77aa9240e
coins: refactor and comments. 2016-12-10 20:43:49 -08:00
Christopher Jeffrey
d2e61d1fa2
test: cleanup tests. 2016-12-10 14:43:58 -08:00
Christopher Jeffrey
5e3b05ff11
bench: clean up benchmarks. 2016-12-10 13:32:28 -08:00
Christopher Jeffrey
bf2e7d1486
test: fix tx tests. 2016-12-10 08:11:24 -08:00
Christopher Jeffrey
4484a11ede
tx/block: refactor. 2016-12-10 07:18:05 -08:00
Christopher Jeffrey
092c1a90df
coins: undo coins fixes. 2016-12-09 17:29:33 -08:00
Christopher Jeffrey
12b3274d33
refactor: pass coin viewpoints for every function requiring inputs. 2016-12-09 07:15:35 -08:00
Christopher Jeffrey
ead3f64b7f
Merge branch 'pass-coins-4' into coins-compression-2 2016-12-09 00:01:14 -08:00
Christopher Jeffrey
9d4f946dda
mtx: minor. 2016-12-08 02:19:17 -08:00
Christopher Jeffrey
ee7d39ce81
policy: lower min relay fee to 1000. 2016-12-08 02:11:33 -08:00
Christopher Jeffrey
4e9bec4cd3
refactor: lint. 2016-12-07 17:52:53 -08:00
Christopher Jeffrey
9e4db47792
wallet: improve size estimation. 2016-12-06 23:29:13 -08:00
Christopher Jeffrey
f7e50e3435
tx: pass coins into scripting system. 2016-12-06 17:37:35 -08:00
Christopher Jeffrey
9215e4fe48
address: better network validation. 2016-12-06 14:24:05 -08:00
Christopher Jeffrey
21f4f45205
mempool: refactor coin and orphan handling. 2016-12-04 20:14:18 -08:00
Christopher Jeffrey
1d5bcc5918
block/worker: misc fixes. 2016-12-04 18:59:49 -08:00
Christopher Jeffrey
72b68532e3
ldb: add db cache-size option. 2016-12-04 13:59:08 -08:00
Christopher Jeffrey
38eca965a7
mempool: orphan serialization. 2016-12-04 03:14:25 -08:00
Christopher Jeffrey
a95aba92fb
serialization: less polymorphism. 2016-12-04 00:54:50 -08:00
Christopher Jeffrey
c190dd2aad
util: refactor encoding. 2016-12-02 04:34:38 -08:00
Christopher Jeffrey
873475b835
mtx: refactor signing. 2016-12-01 00:29:34 -08:00
Christopher Jeffrey
81e71e7922
wallet: drop wallet getters. 2016-11-30 23:12:01 -08:00
Christopher Jeffrey
ded3bc34f3
refactor: start moving away from getters. 2016-11-30 21:31:52 -08:00
Christopher Jeffrey
311b9841fb
chain: more refactoring. 2016-11-30 16:02:56 -08:00
Christopher Jeffrey
cdee4ce251
coins: refactor. 2016-11-29 20:36:23 -08:00
Christopher Jeffrey
0f529d5f8b
chain/block: reorder some consensus checks. 2016-11-29 20:36:23 -08:00
Christopher Jeffrey
507fd89948
timedata: move time to network object. 2016-11-28 16:58:48 -08:00
Christopher Jeffrey
d1e37582d1
block/crypto: refactor merkle trees. 2016-11-28 15:59:30 -08:00
Christopher Jeffrey
1997864ec2
coins: refactor compression. 2016-11-27 22:23:12 -08:00
Christopher Jeffrey
cb59675b06
refactor: rename buffer reader/writer vars. 2016-11-26 10:56:50 -08:00
Christopher Jeffrey
20cdb1adbc
miner: clear coins. 2016-11-26 09:27:17 -08:00
Christopher Jeffrey
0e40eb6491
tx/block: remove hashAsync. 2016-11-22 10:28:54 -08:00
Christopher Jeffrey
f376289684
crypto: implement subtle api for browser. 2016-11-21 17:50:05 -08:00
Christopher Jeffrey
1827b945dd
walletdb: new client api. 2016-11-19 18:26:27 -08:00
Christopher Jeffrey
9353a86e14
modules: blockchain technology (tm). 2016-11-19 11:24:01 -08:00
Christopher Jeffrey
bf34a8133d
btc: rename. 2016-11-19 11:14:38 -08:00
Christopher Jeffrey
b754973511
utils/btc: rename. 2016-11-19 10:45:31 -08:00
Christopher Jeffrey
ae093d2242
amount/utils: drop utils.btc and utils.satoshi. 2016-11-19 09:59:47 -08:00
Christopher Jeffrey
7f3c265085
net: rename timedata. 2016-11-19 06:53:59 -08:00
Christopher Jeffrey
3014229d9a
workers: rename. 2016-11-19 06:48:55 -08:00
Christopher Jeffrey
0631148705
modules: more refactoring. 2016-11-19 05:29:29 -08:00
Christopher Jeffrey
6f9ad90e07
modules: drop all circular deps. 2016-11-19 02:26:05 -08:00
Christopher Jeffrey
bc00697adb
mempool/miner: mining and mempool refactor. 2016-11-18 06:35:20 -08:00
Christopher Jeffrey
aba22e24d7
coin: drop getAge. 2016-11-17 08:19:52 -08:00
Christopher Jeffrey
39ffc214dd
coin: minor. 2016-11-17 07:37:07 -08:00
Christopher Jeffrey
44483a0549
primitives: lint. 2016-11-17 04:19:57 -08:00
Christopher Jeffrey
39aee21030
tx: refactor network handling in json serialization. 2016-11-17 04:05:32 -08:00
José Pedro Rusakiewicz
c9aada2420 solved p2pk comparison in mtx 2016-11-04 15:23:17 +00:00
Christopher Jeffrey
5dfdbfb8b1
mtx: clean up signing methods. 2016-11-02 21:26:39 -07:00
Christopher Jeffrey
e68538633d
mtx: fix scriptVector for p2pk. fixes #93. 2016-11-02 21:21:19 -07:00
Christopher Jeffrey
f1b266e53b
mtx: pass keyring into all signing methods. 2016-11-02 21:20:19 -07:00
Christopher Jeffrey
d8006cb9df
coin: better json. 2016-10-24 16:35:19 -07:00
Christopher Jeffrey
3b333c07cd
walletdb: start separating out walletdb. 2016-10-24 15:32:22 -07:00
Christopher Jeffrey
3c48124658
lint. 2016-10-23 03:24:32 -07:00
Christopher Jeffrey
d371fc5d14
chain: add chain options and merkle block serialization. 2016-10-22 11:41:38 -07:00
Christopher Jeffrey
4e331f1111
tx: lint. 2016-10-21 19:38:12 -07:00
Christopher Jeffrey
de18e92117
coin: safely handle coin.fromTX. 2016-10-21 19:38:10 -07:00
Christopher Jeffrey
690c8840e0
tx: clean up address handling. 2016-10-21 19:38:10 -07:00
Christopher Jeffrey
33bcc08656
tx/block: cache hashes. 2016-10-21 19:38:09 -07:00
Christopher Jeffrey
d73c80c21d
tx: serialization. 2016-10-21 19:38:09 -07:00
Christopher Jeffrey
284932f4cf
txdb: serialization. 2016-10-21 19:38:09 -07:00
Christopher Jeffrey
2f72937686
txdb: comments. serialization. 2016-10-21 19:38:09 -07:00
Christopher Jeffrey
acaf0600e7
mempool: do not accept replace by fee. 2016-10-21 19:38:07 -07:00
Christopher Jeffrey
2e56a82280
txdb: handle state and balance differently. 2016-10-21 19:38:07 -07:00
Christopher Jeffrey
469474ae0a
tx: refactor witness sighash. 2016-10-21 19:38:05 -07:00
Christopher Jeffrey
958b8ead18
doc: fix parse error. 2016-10-21 19:38:03 -07:00
Christopher Jeffrey
5010c5588b
tx/block: s/32/u32/g 2016-10-03 05:32:39 -07:00
Christopher Jeffrey
476cc48702
tx: improve witness parsing. 2016-10-03 05:19:03 -07:00
Christopher Jeffrey
32a2e119e1
walletkey: comments and fixes. 2016-10-03 03:43:16 -07:00
Christopher Jeffrey
3e59282c66
deps: browser transform. 2016-10-03 01:48:08 -07:00
Christopher Jeffrey
d7c1ee9dc2
migrate: walletdb 2 to 3. 2016-10-02 23:24:13 -07:00
Christopher Jeffrey
f0223146af
deps: massive refactor. 2016-10-02 23:24:11 -07:00
Christopher Jeffrey
376d6303b7
env: refactor how default instances work. 2016-10-02 23:24:10 -07:00
Christopher Jeffrey
960393a53f
wallet: use separate branch for nested addrs. 2016-10-02 23:24:10 -07:00
Christopher Jeffrey
8c5c9de132
wallet: more rewriting. 2016-10-02 23:24:09 -07:00
Christopher Jeffrey
d2832f001d
wallet: wallet key. 2016-10-02 23:24:09 -07:00
Christopher Jeffrey
61a77d90e9
wallet: more rewriting. 2016-10-02 23:24:09 -07:00
Christopher Jeffrey
f0a37f3e5e
refactor: replace callback comments. 2016-09-23 01:05:06 -07:00
Christopher Jeffrey
c2e1e4bfc9
refactor: chain. txdb. wallet. 2016-09-22 23:58:19 -07:00
Christopher Jeffrey
f158a73a2d
refactor: fixes. workers. locks. 2016-09-22 02:54:56 -07:00
Christopher Jeffrey
d78151d3d3
refactor: promises. 2016-09-20 15:28:14 -07:00
Christopher Jeffrey
72597c9faf
test: add more mempool tests. 2016-09-19 14:16:14 -07:00
Christopher Jeffrey
d18482507a
mempool: safer handling of wtxs. 2016-09-19 06:53:21 -07:00
Christopher Jeffrey
c0f4225b32
tx/mempool: fix mutated witnesses in rejects filter. 2016-09-19 04:41:29 -07:00
Christopher Jeffrey
ab052eb81d
script: implement bip114v2. 2016-09-18 14:17:11 -07:00
Christopher Jeffrey
d6576c51f1
merkleblock: use buffers for tree hashes. 2016-09-16 19:18:00 -07:00
Christopher Jeffrey
eb5d0cf972
peer: refactor. 2016-09-16 18:50:56 -07:00
Christopher Jeffrey
5da0aceb38
packets 2016-09-16 17:03:56 -07:00
Christopher Jeffrey
07285ebdd7
refactor: rename cost to weight. 2016-09-13 02:06:18 -07:00
Christopher Jeffrey
0c90212f6d
refactor: drop all object literals. 2016-09-13 00:13:07 -07:00
Christopher Jeffrey
7f31a41e84
perf: start using bcoin-native. 2016-09-12 14:10:20 -07:00
Christopher Jeffrey
c9ebe29e39
crypto: do not expose crypto module from utils. 2016-09-06 15:15:36 -07:00
Christopher Jeffrey
c43c84cde7
mtx: cleanup coin selector. 2016-09-06 00:47:41 -07:00
Christopher Jeffrey
1b87514542
mtx: refactor coin selection. 2016-09-05 23:57:24 -07:00
Christopher Jeffrey
5a41c04bfd
mtx: add setSequence. 2016-08-29 15:01:19 -07:00
Christopher Jeffrey
872560eeb9
address: minor. 2016-08-26 15:27:07 -07:00
Christopher Jeffrey
6105095379
refactor: more restructuring. 2016-08-24 04:59:06 -07:00