Commit graph

214 commits

Author SHA1 Message Date
Christopher Jeffrey
ee913e0547
bip152/consensus: drop MAX_HEADER_SIZE constant. 2019-01-21 22:06:26 -08:00
Christopher Jeffrey
40157aa468
hsd: several hard-forks.
- Change PoW to KMAC+BLAKE2b-256, remove Cuckoo Cycle.
- Change to a 10 minute block time (updates other constants,
                                    including the halving interval).
- Add `filterRoot` to block header.
- Add a separate witnessRoot.

The last change fixes our original misdesigned segwit, which made syncing a
non-witness chain more difficult than it needed to be. The previous design
merkelized the transaction itself and there was only one merkle root, which was
essentially a witness root. This required "witness data hashes" to be requested
for each block in a non-witness sync. Using a separate tree is just a better
design in the end.
2019-01-21 22:06:25 -08:00
Christopher Jeffrey
016c487261
pkg: remove bn.js dependency. 2018-08-10 16:34:06 -07:00
Christopher Jeffrey
9cd21308b3
chain/net: fix initial block sync. 2018-08-07 22:22:15 -07:00
Christopher Jeffrey
771c8d42aa
pkg: rename btc->ui. 2018-08-01 20:34:21 -07:00
Christopher Jeffrey
a03fcd1a23
pkg: rename to hsd. 2018-08-01 20:00:09 -07:00
Christopher Jeffrey
b46abfb034
merkle: cleanup. 2018-08-01 11:52:35 -07:00
Christopher Jeffrey
6920520f6c
names: better dos limits. 2018-08-01 04:40:59 -07:00
Christopher Jeffrey
8a49ed432e
consensus: add MAX_BLOCK_OPENS. 2018-07-29 22:59:39 -07:00
Christopher Jeffrey
ba8896712b
protocol: add rfc6962-2. 2018-07-25 11:59:39 -07:00
Christopher Jeffrey
169da98147
pkg: update deps. remove build. 2018-07-19 05:40:48 -07:00
Christopher Jeffrey
d4782e0cc1
hskd: switch to buffer maps and structs. 2018-07-15 06:22:25 -07:00
Christopher Jeffrey
5868ffe5b3
net/protocol: prepare for new testnet. 2018-07-12 07:41:01 -07:00
Christopher Jeffrey
8ce798dda9
covenants: commit auction state to tree. add OPEN covenant. 2018-07-11 23:35:09 -07:00
Christopher Jeffrey
e7e09c40c6
covenants: get claim tests passing. 2018-07-10 01:21:36 -07:00
Christopher Jeffrey
da209bb63e
chain: add rollover soft-fork. 2018-07-08 18:11:45 -07:00
Christopher Jeffrey
6bdd295067
claim-proofs: implement rsa hardening soft-fork. 2018-07-08 12:04:11 -07:00
Christopher Jeffrey
285ac862b7
consensus: implement permissionless claim proofs. 2018-07-07 16:33:56 -07:00
Christopher Jeffrey
51373778ff
net: fix block serving. 2018-06-19 10:56:43 -07:00
Christopher Jeffrey
49bd336508
networks: hardfork renewal time. 2018-06-19 10:16:35 -07:00
Christopher Jeffrey
674d1d6003
net: fix various p2p serialization issues. 2018-06-19 09:32:47 -07:00
Christopher Jeffrey
23cd4a93e1
networks: alter testnet params. 2018-06-19 08:58:13 -07:00
Christopher Jeffrey
e4aa758de6
hskd: update root zone and genesis block. 2018-06-19 05:42:48 -07:00
Christopher Jeffrey
ab0be8498c
tx/consensus: use locktime granularity. 2018-06-19 03:36:38 -07:00
Christopher Jeffrey
ee4444f3e2
tx/consensus: add max tx weight and size. 2018-06-19 02:23:09 -07:00
Christopher Jeffrey
1be93e9907
consensus: add MAX_HEADER_SIZE. 2018-06-17 13:59:11 -07:00
Christopher Jeffrey
3172a26509
networks: update launch date. 2018-06-17 03:27:13 -07:00
Christopher Jeffrey
d995c7c158
hardfork: fix retargetting. change avg window to 17. 2018-06-17 03:11:19 -07:00
Christopher Jeffrey
a3acced655
block: switch to a single merkle root. 2018-06-15 01:38:59 -07:00
Christopher Jeffrey
c1a3e013fd
tx: merkelized transaction ids. 2018-06-14 21:34:35 -07:00
Christopher Jeffrey
847dff3949
protocol/miner: officially move maxUpdates to consensus params. 2018-06-12 22:36:52 -07:00
Christopher Jeffrey
aa802a169c
chain: reorganize some consensus checks. 2018-06-12 22:36:51 -07:00
Christopher Jeffrey
a397ea4c6e
chain: switch to 5 minute block time. add reserved field in header. closes #10 and #11. 2018-06-08 19:30:38 -07:00
Christopher Jeffrey
5b7dc58bda
tree: switch back to 32 byte name hashes. closes #8. 2018-06-08 18:19:23 -07:00
Christopher Jeffrey
f3db8d8c39
hskd: update links. 2018-06-08 07:13:46 -07:00
Christopher Jeffrey
a83074d9c2
consensus: consider changing block time to 5 minutes. 2018-05-29 06:42:33 -07:00
Christopher Jeffrey
6bdc73b50e
chain: switch to new name tree. commit only 160 bit name hashes. 2018-05-28 09:02:54 -07:00
Christopher Jeffrey
1e562be4cd
resource: use dns label compression. 2018-04-26 02:31:26 -07:00
Christopher Jeffrey
05bfd80a73
rules: remove cold output. 2018-04-25 20:01:06 -07:00
Christopher Jeffrey
5e72972f94
dns: get sig0 and recursive server working. 2018-03-19 08:30:40 -07:00
Christopher Jeffrey
45a3b0f8e6
test: auction tests. 2018-03-15 13:06:05 -07:00
Christopher Jeffrey
47d1bb9cf3
networks/net: fix up addr management and sync. 2018-03-14 16:25:02 -07:00
Christopher Jeffrey
d5d53ba0d1
networks: individualize keys for each network. 2018-03-14 02:34:21 -07:00
Christopher Jeffrey
6e61171a2c
protocol: update regtest genesis block. 2018-03-13 23:26:27 -07:00
Christopher Jeffrey
9e52d2f518
test: get tests passing. 2018-03-13 23:21:17 -07:00
Christopher Jeffrey
be40dc7f0d
networks: refactor addressPrefix. 2018-03-12 20:26:23 -07:00
Christopher Jeffrey
75fe4a530e
hskd: fix cuckoo requires. 2018-03-12 20:19:10 -07:00
Christopher Jeffrey
ab190fc89f
protocol: new genesis blocks. 2018-03-12 20:12:19 -07:00
Christopher Jeffrey
26d80de901
networks: simnet name params. 2018-03-12 20:10:46 -07:00
Christopher Jeffrey
b44686ce99
network: change pow params for testnet/mainnet. 2018-03-12 20:00:35 -07:00