Commit Graph

546 Commits

Author SHA1 Message Date
Jude Nelson
3adbc2bc11 don't require url on fast_sync 2017-10-04 19:02:07 -04:00
Jude Nelson
a4c77e3294 require 0.17 or newer 2017-10-04 17:54:43 -04:00
Jude Nelson
33a1c1d995 abort when the config version is obsolete 2017-10-04 17:54:27 -04:00
Jude Nelson
effc2d6db3 a NAME_REGISTRATION/NAME_RENEWAL's burn address must go to a v2 namespace's address for the first year (fee collection period) of its existence, starting from its reveal block. after that, fees go to the null burn address (to discourage squatting or gratuitous namespace registration) 2017-10-04 00:03:54 -04:00
Jude Nelson
f13df668a5 introduce a fixed interval of time during which a v2 namespace can collect fees. 2017-10-04 00:03:19 -04:00
Jude Nelson
5d0bcbce19 plug DoS problem whereby a namespace can be preordered by a non-p2pkh script (this is allowed; this fix stops nodes from crashing when it happens) 2017-10-03 13:07:20 -04:00
Jude Nelson
36e506e18b feed stdout and stderr to the parent process when doing a sqlite3 backup, so we can properly catch database-lock errors 2017-10-01 16:31:50 -04:00
Jude Nelson
b8f340c3a1 preserve sender_pubkey across renewal 2017-10-01 14:37:45 -04:00
Jude Nelson
4e579bdbed fix debug output on burn fee 2017-09-29 18:09:58 -04:00
Jude Nelson
c2c293f040 Merge branch 'develop-hardfork' of https://github.com/blockstack/blockstack-core into develop-hardfork 2017-09-29 16:04:14 -04:00
Jude Nelson
65147a144e print exceptions in test mode 2017-09-29 16:03:27 -04:00
Aaron Blankstein
c91d130d97 fix logging typo 2017-09-29 15:28:26 -04:00
Jude Nelson
3550d9bff3 version bump 2017-09-29 02:00:16 -04:00
Jude Nelson
3961f9cd2c minimum atlas version is now 0.17 2017-09-29 01:59:39 -04:00
Jude Nelson
b61ab54747 don't forget namespace lifetime multiplier 2017-09-29 00:50:02 -04:00
Jude Nelson
9563b9bcf4 a preorder will expire in min(144, namespace['lifetime']) blocks 2017-09-29 00:50:02 -04:00
Jude Nelson
8eb8028bb8 log deletes 2017-09-29 00:50:02 -04:00
Jude Nelson
5aec8946d1 f-day 2014 is at 488500; renewal grace period is 5000 blocks; price multiplier for names and namespaces is 1/10 2017-09-29 00:50:02 -04:00
Jude Nelson
c1825c868a return whether or not a name is expired 2017-09-29 00:50:02 -04:00
Jude Nelson
5842fed87a op_fee can be None, if it is not given 2017-09-29 00:49:38 -04:00
Jude Nelson
c6e7399c46 add methods to get the last block and consensus hashes 2017-09-29 00:49:38 -04:00
Jude Nelson
511679c03e check version, block height, and consensus hash when talking to other atlas nodes 2017-09-29 00:49:38 -04:00
Jude Nelson
7145bcfee8 don't allow transfer if we're in the renewal grace period 2017-09-29 00:49:37 -04:00
Jude Nelson
1860edb8f6 don't allow update if we're in the renewal grace period 2017-09-29 00:49:37 -04:00
Jude Nelson
f74e14c033 don't allow revoke if we're in the name renewal grace period 2017-09-29 00:49:37 -04:00
Jude Nelson
6de96721b0 don't clear out sender_pubkey 2017-09-29 00:49:37 -04:00
Jude Nelson
6063d4b5e5 add checks to see if the name is in the renewal grace period 2017-09-29 00:49:37 -04:00
Jude Nelson
d880b43031 include grace period in name expiration calculation 2017-09-29 00:49:37 -04:00
Jude Nelson
4620edf6e7 include epoch config for grace period 2017-09-29 00:49:36 -04:00
Jude Nelson
64f9c1f951 remove analytics; pass along expire_block and renewal_deadline 2017-09-29 00:49:36 -04:00
Jude Nelson
0451d81d92 log renewal fee 2017-09-29 00:49:36 -04:00
Jude Nelson
f6fe5bb18d comment on burn addr 2017-09-29 00:49:36 -04:00
Jude Nelson
442457ddbe rearrange a few things so test framework constants get set correctly 2017-09-29 00:49:35 -04:00
Jude Nelson
d65269d5bd burn_address is an indirect consensus field 2017-09-29 00:49:35 -04:00
Jude Nelson
86776315de remove unused code 2017-09-29 00:49:35 -04:00
Jude Nelson
ba6379df18 After F-day 2017, a NAME_REGISTRATION and NAME_RENEWAL may correspond to a namespace that requires the user pay the namespace creator (a version-2 namespace). Enforce this at the consensus level---a NAME_REGISTRATION and NAME_RENEWAL are only valid in a version-2 namespace if the user paid the namespace creator 2017-09-29 00:49:35 -04:00
Jude Nelson
9caa75e0fd extract burn address and outputs from the transaction; remember the burn address to validate NAME_REGISTRATIONs and NAME_RENEWALs that follow 2017-09-29 00:49:33 -04:00
Jude Nelson
b3246f9b35 after F-day 2017, allow version-2 namespaces (which allow pay-to-creator for name registration). Update the consensus logic to (1) check for version-2 if we're in the relevant epoch, and if so, require users to send their name fees to the NAMESPACE_PREORDER's payment address 2017-09-29 00:49:32 -04:00
Jude Nelson
97cd614921 back up burn address on NAMESPACE_REVEAL; obtain burn address from outputs; obtain fee from outputs 2017-09-29 00:49:31 -04:00
Jude Nelson
f57c1e14b2 delegate determining the burn output and value to the operation; don't try to do it universally 2017-09-29 00:49:30 -04:00
Jude Nelson
6f6a1c401e add get_preorders_at() 2017-09-29 00:49:27 -04:00
Jude Nelson
37604b8b9c slightly stronger assertions when creating state regarding what has to be in the preorder operation; allow an operation to stipulate that additional fields be backed up by a successor operation besides its consensus fields 2017-09-29 00:49:26 -04:00
Jude Nelson
0f50609d4e define pay-to-burn versus pay-to-creator namespace version bits 2017-09-29 00:49:26 -04:00
Jude Nelson
a447cabb3e use new price table for namespace price calculation 2017-09-29 00:49:26 -04:00
Jude Nelson
28b2e49c37 allow register to include a zone file hash; allow renew to include a zone file hash and a new recipient. 2017-09-29 00:49:26 -04:00
Jude Nelson
9526be7579 register and renew can include a zone file hash, so check these operations when queuing zone file hashes to atlas 2017-09-29 00:49:25 -04:00
Jude Nelson
e52071d572 add epoch 3--reduces namespace prices, enables renew/transfer/update in one tx, enabled register/update in one tx. 2017-09-29 00:49:25 -04:00
Jude Nelson
04f265d8df safety check if no addresses are visible in the output 2017-09-29 00:49:02 -04:00
Aaron Blankstein
c6125f5efe bug needs to use a tuple, not the generator 2017-09-29 00:48:49 -04:00
Aaron Blankstein
08e390b288 version bump plus fix in the migration code 2017-09-29 00:48:49 -04:00