Commit Graph

79 Commits

Author SHA1 Message Date
Jude Nelson
b66ff92afa improve name-transfer consensus hash quirk 2018-01-22 17:54:35 -05:00
Jude Nelson
f63f779abd completed TODO item 2018-01-22 15:38:13 -05:00
Jude Nelson
f16515e613 document the name-transfer consensus hash quirk better, and fix a bug in the case of multiple consecutive name-transfers 2018-01-22 15:37:52 -05:00
Jude Nelson
38cf56fdcd remove dead code 2018-01-21 00:58:29 -05:00
Jude Nelson
a9a002eee5 remove dead code 2018-01-21 00:58:15 -05:00
Jude Nelson
a4a9e29295 no longer need to save transfer_consensus_hash 2018-01-20 16:17:59 -05:00
Jude Nelson
fd91a265a0 attempt to fix name-transfer consensus hash quirk, and document real-world examples where it shows up 2018-01-20 16:17:34 -05:00
Jude Nelson
4d965d9062 remove dead code 2018-01-19 15:30:30 -05:00
Jude Nelson
18bbaa183a apply transfer consensus hash quirk 2018-01-19 15:14:18 -05:00
Jude Nelson
ce965baf2e verify that the consensus hash is valid, and preserve the one we need to snapshot separately 2018-01-19 15:13:57 -05:00
Jude Nelson
711e11df0b fix op_canonicalize_quirks to preserve op_fee float/int based on current last creation op by default (deferring to previous db record's last creation op and op_fee values only when needed) 2018-01-17 17:01:35 -05:00
Jude Nelson
0e36eab0ea preorders don't have last_creation_op 2018-01-17 15:30:08 -05:00
Jude Nelson
a955c775cc last_creation_op 2018-01-17 14:19:06 -05:00
Jude Nelson
af775a606e last_creation_op 2018-01-17 14:18:56 -05:00
Jude Nelson
eaf1c6c9cd debug output for consensus hash quirk in name transfer 2018-01-17 14:18:44 -05:00
Jude Nelson
84d91eb3e0 add code to preserve name record quirks 2018-01-17 14:18:24 -05:00
Jude Nelson
f8ded9884a rework announce so that you can only send an announcement from a previously-sent zone file 2018-01-16 18:48:28 -05:00
Jude Nelson
b1e1846630 fix up name_import's find-previous logic to just ask the DB 2018-01-14 15:52:13 -05:00
Jude Nelson
2705d59e1e remove all restore_delta() and snv_consensus_extras() code, and remove all dependence on blockstack_client from our operations. Also remove deprecated state_*() helpers that had been required for propagating ancilliary operation state to the database, i.e. in order to ensure that name operations' histories could be rewound. This is now handled automatically with a better database schema. 2018-01-12 18:33:04 -05:00
Jude Nelson
41c8693bae now that restore_delta() and snv_consensus_extras() and BACKUP_FIELDS are no longer required, remove all ancilliary ops_*() methods that are used to query and manipulate them. 2018-01-12 18:32:35 -05: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
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
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
65147a144e print exceptions in test mode 2017-09-29 16:03:27 -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
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
0451d81d92 log renewal fee 2017-09-29 00:49:36 -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
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
Aaron Blankstein
c878b62c8a /usr/bin/env python -> python2. our code is not python3 friendly, we should specify that 2017-08-17 13:40:01 -04:00
Jude Nelson
23e8e69009 TODO notes 2017-06-15 11:19:07 -04:00
Jude Nelson
15bcb452ee clean up imports 2017-04-27 19:23:15 -04:00
Jude Nelson
eb06526aa4 use generic virtualchain multisig script check 2017-04-20 17:37:17 -04:00
Jude Nelson
9c12126d95 use generic virtualchain multisig script check 2017-04-20 17:37:02 -04:00
Jude Nelson
ff07b90bd1 use keylib base58 instead of pybitcoin base58 2017-04-20 17:36:49 -04:00
Jude Nelson
1a07180041 remove dead code 2017-04-17 15:38:59 -04:00
Jude Nelson
62965d4f00 remove dead code 2017-04-12 17:10:15 -04:00
Jude Nelson
c5ab587523 return false on mismatched sender (backport from master) 2017-03-09 20:02:49 -05:00
Jude Nelson
99810d512a use the announcement API in the blockstack client 2017-01-30 01:34:43 -05:00
Jude Nelson
66360657c5 remove dead code 2016-10-27 00:03:43 -04:00
Jude Nelson
707e6a9086 move SNV consensus restoration logic to the client 2016-10-24 03:22:47 -04:00
Jude Nelson
22a84cbb78 track 'last_create_op' in the db 2016-10-24 03:22:28 -04:00
Jude Nelson
527e46ad6d use the new 'last_creation_op' column instead of (expensively)
calculating it from the DB.
2016-10-24 03:21:47 -04:00