Commit Graph

137 Commits

Author SHA1 Message Date
Simon 4d11e5d2b9 Update mainnet addresses used for testing to have the correct number 2016-10-01 07:19:24 -07:00
Simon 2d6e97ecc5 Add field fMinerTestModeForFoundersRewardScript to chainparams 2016-09-30 18:31:51 -07:00
Simon 02acbfc262 Add mainnet 2-of-3 multisig addresses for testing. 2016-09-30 18:29:10 -07:00
Simon 6c54e9fc0b Update testnet founders reward addresses 2016-09-30 14:42:47 -07:00
Simon 22dadb35ec Refactor and fix per review 2016-09-30 14:42:47 -07:00
Simon 241867b115 Founders reward: Refactor test and formatting per review. 2016-09-30 14:42:47 -07:00
Simon 3b30d8361a Founders reward: changed index computation, added new test and some refactoring. 2016-09-30 14:42:47 -07:00
Simon db0f931570 Add founders reward to ChainParams.
Fix bug where subsidy slow shift was ignored.
2016-09-30 14:42:47 -07:00
Kevin Gallagher 9fc324a139 Updates dns.testnet.z.cash -> dnsseed.testnet.z.cash
People seem to agree that dnsseed.* is a more intuitive address.
The original address was committed to beta1 as a result of a misunderstanding.
The DNS seeder service will be updated to coincide with at beta2 release.
2016-09-26 14:34:26 -07:00
Sean Bowe 88188dc2a3 Update pchMessageStart and add testnet DNS boostrapper. 2016-09-09 00:37:49 -06:00
Jack Grigg 66f07f5d0d Regenerate genesis blocks for new powLimits 2016-09-07 08:18:46 +12:00
Jack Grigg 3e24a533f5 Restrict powLimit due to difficulty averaging 2016-09-07 08:17:43 +12:00
Jack Grigg 8f3ec042af Expand bounds on difficulty adjustment 2016-09-06 13:13:23 +12:00
Jack Grigg 57466ea652 Remove mainnet DNS seeds, set checkpoint to genesis
Closes #1185
2016-09-01 17:01:28 +12:00
Daira Hopwood 727ed5ffa3 Update pchMessageStart for the z9 testnet. ⚧Ⓐ
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-08-25 15:55:51 +01:00
Daira Hopwood c6a7e897bc Add mostly-static checks on consistency of Equihash parameters, MAX_HEADERS_RESULTS, and MAX_PROTOCOL_MESSAGE_LENGTH.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-08-24 06:13:06 +01:00
Jack Grigg 5be6abbf84 Store the Equihash solution in minimal representation in the block header
The genesis blocks and miner tests have been regenerated, because changing the
block header serialisation format changes the block hash, and thus validity.

The Equihash solutions have been removed from the bloom test inputs for
simplicity (block validity is not checked there; only a valid serialisation is
necessary).
2016-08-16 16:02:39 +12:00
Jack Grigg caa0348f04 Update Equihash hash generation to match the Zcash spec
Changes:

- floor(512/n)*n/8 bytes of BLAKE2b output is split between floor(512/n)
  adjacent indices, instead of using one hash call per index.

- Parameters with n/(k+1) mod 8 != 0 will expand the BLAKE2b output to byte
  boundaries for colliding, instead of using a longer output and clearing bits.

- The genesis blocks have been regenerated.

- The test vectors have been regenerated.

- The Equihash inputs for the cancellation tests were modified to ensure that
  valid solutions were available to exercise the full solver.
2016-08-16 11:02:04 +12:00
Simon a8270035c0 Release process for z8. Issue #1140. 2016-08-06 15:37:24 -07:00
Jack Grigg ca202e2db1 Change Equihash parameters to n = 200, k = 9 (about 563-700 MiB) 2016-08-06 15:27:27 +12:00
Simon 0ccb650b5a Update genesis block hashes and test data. 2016-07-27 00:55:48 -07:00
Simon a2cf219581 Update genesis blocks. 2016-07-26 17:09:27 -07:00
Simon 174a68b3b7 Use new public/private key pairs for alert system. 2016-07-15 18:03:30 -07:00
Sean Bowe 3cb927661e Remove the mainnet checkpoints. 2016-06-29 14:21:03 -06:00
Taylor Hornby 1ea8b00926 Change the network magic numbers. 2016-06-16 19:46:43 -06:00
Taylor Hornby 39bb34eae7 Merge remote-tracking branch 'jack/990-default-ports' into zc.v0.11.2.latest 2016-06-16 19:28:24 -06:00
zkbot 62a2d12672 Auto merge of #1026 - ebfull:address-serialization, r=ebfull
Zcash address encoding

We need to encode Zcash addresses so they aren't as large and unweildy. We're using Base58Check just like upstream does, and to ensure the first character is "z" in our addresses we must use two bytes for the version string. Two bytes gives us an extra character for free, so this PR targets the beginning of addresses to have "zc".

```
$ ./src/zcash-cli zcrawkeygen
{
    "zcaddress" : "tnvaj4ZbZG83tj4RwZcFeLgJoSt8nw1ZvSCG8EMyowAsXTQgJPat77Y43BVdVCrwrbLy7GG9msJDYdn5hmreHmkXAkX17hb",
    "zcsecretkey" : "SKzkxCRWvscKnroSFyhCqhY332KcDMH4LLNdK2TsSvbmr3CGAB8B",
    "zcviewingkey" : "10aa74046f31cbe5eaa8965d1e104853234c3d6c6e45f9c497ca3a025d159755"
}
```

This PR also encodes the spending keys with a prefix that targets "SK". The spec needs to be updated with these changes.

Testnet addresses will start with "tn".

Closes #572
2016-06-16 18:52:30 +00:00
Sean Bowe 05a6d19a54 Testnet spending keys should start with 'TK'. 2016-06-16 12:16:49 -06:00
Jack Grigg 3985a40d1f Change default ports 2016-06-17 00:21:58 +12:00
zkbot 1178df0883 Auto merge of #1004 - str4d:931-difficulty-algorithm, r=ebfull
Implement new difficulty algorithm

Closes #931. Closes #696.
2016-06-15 23:26:49 +00:00
Sean Bowe 13039c5362 Make testnet addresses always start with 'tn'. 2016-06-15 16:22:36 -06:00
Sean Bowe d5d2fb71cf Guarantee first two bytes of spending key are SK 2016-06-15 16:15:54 -06:00
Sean Bowe 0d6864e465 Added encoding for Zcash spending keys. 2016-06-15 16:03:57 -06:00
Sean Bowe e104fcddf8 Use base58check to encode Zcash payment addresses, such that the first two bytes are "zc". 2016-06-15 14:59:05 -06:00
zkbot 6793168a2e Auto merge of #1017 - ebfull:coinbase-must-be-protected, r=ebfull
Enforce that coinbases must be protected

This PR forces miners to place their funds in the private value transfer system, making "transparent coins" opt-in for users, and increasing privacy for all participants on a systemic level.

Closes #101.
2016-06-15 03:06:23 +00:00
Jack Grigg f2c48e15e5 Implement new difficulty algorithm (#931)
The algorithm is based on DigiShield v3/v4.
2016-06-15 09:48:42 +12:00
Sean Bowe a180d0a6c6 Rename to `fCoinbaseMustBeProtected`. 2016-06-14 15:16:34 -06:00
Sean Bowe c0dde76d8a Disable coinbase-must-be-protected rule on regtest. 2016-06-13 12:23:55 -06:00
Jack Grigg 6f14382a02 Regenerate genesis blocks 2016-06-11 16:52:02 +12:00
Jack Grigg ae37d2a4cd Increase Equihash parameters to n = 96, k = 3 (about 430 MiB)
Includes a tweak to set the fixed-width of the rows based on whether the first
or last round is widest. This is necessary for some parameters, these ones
included.
2016-06-11 12:15:25 +12:00
Jack Grigg 45e3deea8a Decrease block interval to 2.5 minutes 2016-06-10 11:45:04 +12:00
Jack Grigg 2ce992956b Regenerate genesis blocks 2016-06-07 21:54:13 +12:00
Taylor Hornby 592b2f0e64 z4 release 2016-06-01 13:42:03 -06:00
zkbot b1f699660f Auto merge of #887 - str4d:mining-slow-start, r=ebfull
Implement mining slow start

Closes #762.
2016-05-27 02:15:24 +00:00
Sean Bowe 383f8b0c8a Change testnet network magics. 2016-05-16 22:54:33 -06:00
Jack Grigg 7a1f55183d Disable mining slow start in regtest mode 2016-05-10 23:11:32 +12:00
Jack Grigg bcb34c0802 Implement mining slow start with a linear ramp 2016-05-10 23:03:18 +12:00
Sean Bowe 62fdd8d094 Change pchMessageStart for new testnet. 2016-04-11 12:46:46 -06:00
Jack Grigg b82dccaa0d Adjust genesis blocks to have valid solutions and hashes
The mainnet genesis block is artifically easy; we will revert this when we
actually start using mainnet.
2016-04-08 13:56:00 +12:00
Jack Grigg fdda3c5085 Use Equihash for Proof-of-Work
The main and test networks are configured to use parameters that are currently
low-memory but usable with the basic solver; they will be increased once the
solver is optimised. The regtest network is configured to have extremely low
memory usage for speed.

Note that Bitcoin's double-hasher is used for the difficulty check. This does
not match the paper, but is simpler than changing the block header
serialization. Single hashing is kept for the EquiHash solver because there is
no requirement on execution time there, only on memory usage.
2016-04-08 13:56:00 +12:00