Commit Graph
23485 Commits
Author SHA1 Message Date
Duke Leto a64b721d4c update coin name in exceptions 2020-09-20 11:55:56 -04:00
Duke Leto e87101bd1f RPC help fixes 2020-09-20 11:16:42 -04:00
Duke Leto 1064d33f43 Update some copyright stuff in windows files 2020-09-20 11:13:38 -04:00
Duke Leto 9e6cdec2f6 Update hush-cli cli help 2020-09-19 20:38:43 -04:00
Duke Leto 01e493d207 Update checkpoints up to block 295K 2020-09-19 12:38:11 -04:00
Duke Leto 06c6494dfb Merge branch 'duke' into dev 2020-09-19 12:18:24 -04:00
Duke Leto 9e288d185b Define the halving interval, initial transition period and fix format string bug 2020-09-19 12:17:26 -04:00
Duke Leto 65da80de58 Implement entire Hush block subsidy schedule
We now have our halving schedule implemented until the BR goes to zero.
The data was calculated via two new scripts which are in ./contrib :

$ ./contrib/hush_halvings
1,12500000000,340000
2,312500000,2020000
3,156250000,3700000
4,78125000,5380000
5,39062500,7060000
6,19531250,8740000
7,9765625,10420000
8,4882812,12100000
9,2441406,13780000
10,1220703,15460000
11,610351,17140000
12,305175,18820000
13,152587,20500000
14,76293,22180000
15,38146,23860000
16,19073,25540000
17,9536,27220000
18,4768,28900000
19,2384,30580000
20,1192,32260000
21,596,33940000
22,298,35620000
23,149,37300000
24,74,38980000
25,37,40660000
26,18,42340000
27,9,44020000
28,4,45700000
29,2,47380000
30,1,49060000
31,0,50740000
32,0,52420000
33,0,54100000

$ ./contrib/hush_block_subsidy_per_halving
0,1250000000,1125000000,125000000
1,625000000,562500000,62500000
2,312500000,281250000,31250000
3,156250000,140625000,15625000
4,78125000,70312500,7812500
5,39062500,35156250,3906250
6,19531250,17578125,1953125
7,9765625,8789062,976562
8,4882812,4394531,488281
9,2441406,2197265,244140
10,1220703,1098632,122070
11,610351,549316,61035
12,305175,274658,30517
13,152587,137329,15258
14,76293,68664,7629
15,38146,34332,3814
16,19073,17166,1907
17,9536,8583,953
18,4768,4291,476
19,2384,2145,238
20,1192,1072,119
21,596,536,59
22,298,268,29
23,149,134,14
24,74,67,7
25,37,33,3
26,18,16,1
27,9,8,0
28,4,4,0
29,2,2,0
30,1,1,0
31,0,0,0

These show that the block subsidy for miners goes to 0 at the 31st halving
and that the Founders Reward AKA Dev Tax goes to 0 at the 27th halving. There
is also some current KMD internals code that we inherited that prevents
the FR from being less than 10000, so that code would currently set our FR
to 0 at the 14th halving and lead less HUSH being mined than the planned 21M and
even a bit less than the amount under 21M that normally happens, such as in BTC.
We have some time to deal with the bug, since halving 14 is in about 52 years.
2020-09-19 11:03:35 -04:00
Duke Leto 599c842096 WIP full supply curve 2020-09-18 17:50:04 -04:00
Duke Leto 2ea974a402 Update comments 2020-09-18 17:15:51 -04:00
Duke Leto 6fec2f8fe0 Merge pull request #131 from MyHush/danger
Update Hush emission schedule code
2020-09-18 14:06:43 -07:00
Duke Leto 794c32143c Staked notaries are not supported on Hush smart chains 2020-09-18 16:59:15 -04:00
Duke Leto fab0f94942 Cleanup and update copyrights 2020-09-18 16:49:42 -04:00
Duke Leto 5adfbf80ee Bump protocol version since this is a mandatory consensus change, in the future we can make this a minimum protocol version 2020-09-18 16:42:14 -04:00
Duke Leto 70455eb41e update version 2020-09-18 16:41:28 -04:00
Duke Leto d65fbabc77 Correctly specify the exact block height when Hush block reward goes to zero 2020-09-18 16:34:36 -04:00
Duke Leto 3e60d1187f Fix logging bug where incorrect number of zins/zouts was shown (block vs tx counts) 2020-09-18 13:09:30 -04:00
Duke Leto 62fc6af52c cleanup 2020-09-18 11:47:06 -04:00
Duke Leto c5189df034 A few useful comments in hush_commission() 2020-09-15 13:18:01 -04:00
Duke Leto 909285b981 Where Would I Be Without @DenioD 2020-09-15 13:15:11 -04:00
Duke Leto 396488306b Optional logspam is best logspam 2020-09-15 13:09:36 -04:00
Duke Leto c422ec37b7 Initialize numhalvings and do not print for now, since we dont calculate it here 2020-09-15 10:15:03 -04:00
Duke Leto 0920f264be cleanup 2020-09-14 15:56:25 -04:00
Duke Leto 65b45d9f88 mining logspam 2020-09-14 15:53:34 -04:00
Duke Leto 1ae419b54c cleanup 2020-09-14 15:34:09 -04:00
Duke Leto b83f38c615 komodo_commission logspam 2020-09-14 15:27:26 -04:00
Duke Leto 5fc4b4c770 Use the correct interval at z2zheight 2020-09-14 15:14:47 -04:00
Duke Leto 3f2e814067 alert system updates 2020-09-13 19:15:15 -04:00
Duke Leto 5c5e545e75 HUSH has no JoinSplits 2020-09-13 19:12:21 -04:00
Duke Leto 98e9ed80d7 Merge branch 'danger' of github.com:MyHush/hush3 into danger 2020-09-13 13:28:46 -04:00
Duke Leto b22a73fc29 Run-time randomly generated Sietch zdust addresses
This commit drastically improves the privacy of the HUSH anonymity set
under attacks which ingest wallet.dat's which have been obtained by
seizure, i.e. stealing someones HUSH wallet.dat and putting it into
chain analysis software. Ciphertrace is known to do this to ZEC and XMR
and we can assume all chain analysis companies are implementing new
ways to de-anonymize privacy coins with any data they can obtain.

Instead of randomly sending to a randomly chosen static address,
hushd Sietch zdust addresses are now randomly generated at run-time. These
addresses are not stored in wallet.dat in any way and their private keys
are not known except by the internal memory of hushd for a few milliseconds.
This data is not stored in long-lived data structures of hushd, only as long
as the RPC z_getnewaddress is running or the equivalent function for internals
code paths. The seeds or private keys of these addresses are never stored on disk.

This now brings hushd on par with SDL, which already does this via a
different but equivalent seed phrase technique.

With this technique, if a HUSH wallet.dat is seized, it's impossible to tell
if any of the shielded outputs are random Sietch zdust with random data payload
or a one-time-use zaddr with encrypted payload.
2020-09-13 12:35:41 -04:00
Duke Leto 4f70252524 Increase max --sietch-min-zouts to 50 2020-09-13 11:24:47 -04:00
Duke Leto 85a40ae2ed Tweak copyright 2020-09-13 11:23:55 -04:00
DenioD 702ea5fe91 delete joinsplit from rawtransactions #127 2020-09-12 15:11:52 +02:00
DenioD 2075d0da25 Port scheduler race condition fix from BTC upstream #133, https://github.com/bitcoin/bitcoin/commit/12519bf62b8c49b1c1744eca6ea5b3162a61f962 2020-09-12 10:01:33 +02:00
DenioD 5d86afef6a Port -txsend from str4d #37, https://github.com/zcash/zcash/pull/4522 2020-09-12 09:12:40 +02:00
Duke Leto a45ee31765 Add a static makefile for now 2020-09-11 10:30:56 -04:00
Duke Leto 7ae5a565d5 Add a bunch of things required by bip39 dependencies 2020-09-11 10:30:01 -04:00
Duke Leto 514348c427 Add various bip39 and base32/base58 stuff 2020-09-11 10:29:00 -04:00
Duke Leto 650498ec27 bip39 updates + tweaks 2020-09-11 10:27:14 -04:00
Duke Leto 5d08cd7b57 Refactor Hush supply curve into a dedicated function and increase logspam 2020-09-11 07:23:44 -04:00
Duke Leto 032c7cbb9f Add transaction time to z_listreceivedbyaddress which drastically speeds up SD operations 2020-09-09 12:58:53 -04:00
Duke Leto 0614f51f28 Fix more docs bugs 2020-09-09 11:51:59 -04:00
Duke Leto fc9725ca44 Fix docs 2020-09-09 11:45:23 -04:00
Duke Leto ba4f1710a4 Merge branch 'danger' of github.com:MyHush/hush3 into danger 2020-09-09 11:43:00 -04:00
Duke Leto 5412da7d71 Connect z_listreceivedaddress to the outside world 2020-09-09 11:42:52 -04:00
Jonathan "Duke" Leto 844626f457 Block 128 has a block reward of 11.25 HUSH 2020-09-08 15:06:06 -07:00
Jonathan "Duke" Leto dd13bfb394 Yep 2020-09-08 14:38:58 -07:00
Jonathan "Duke" Leto f4294a25cf Be more explicit 2020-09-08 14:33:52 -07:00
Duke Leto b432e27f1b Refactor hush block subsidy 2020-09-08 16:10:32 -04:00