Commit Graph

23694 Commits

Author SHA1 Message Date
Duke Leto
585bf34432 Checkpoints 2021-03-31 15:47:12 -04:00
Duke Leto
187933077a Require -debug for CalculateNextWorkRequired details 2021-03-31 15:45:24 -04:00
Duke Leto
bb67868a5b Remove dead code 2021-03-31 14:48:44 -04:00
Duke Leto
d202b05d55 Enforce nBits starting at daaForkHeight 2021-03-31 14:47:46 -04:00
Duke Leto
869169570e Calculate nBits correctly when checking the first block header we see after startup 2021-03-31 14:22:10 -04:00
Duke Leto
93a931bbd2 Hush has no JoinSplits 2021-03-30 20:12:06 -04:00
Duke Leto
c051631f6b Log all nbits data and the delta in csv 2021-03-30 16:11:13 -04:00
Duke Leto
84dffacdea More details about invalid RPC replies 2021-03-29 17:51:56 -04:00
Duke Leto
fe46773bed Log more data about incorrect diffbits 2021-03-29 17:46:35 -04:00
Duke Leto
fe0d371165 Improve TLS error reporting 2021-03-29 09:57:03 -04:00
Duke Leto
d74fc51d2f Update checkpoints 2021-03-27 19:11:25 -04:00
Duke Leto
bae63f7674 Change default daa fork height 2021-03-27 18:55:48 -04:00
Duke Leto
af5f461d0b bump version 2021-03-27 07:48:45 -04:00
Duke Leto
95697cfaa8 Enforce DAA fork at correct height 2021-03-27 07:44:50 -04:00
Duke Leto
6e7b44b7c0 daa fork height 2021-03-06 16:32:41 -05:00
Duke Leto
cfeaa47fa3 Checkpoints up to 440k 2021-02-26 08:42:59 -05:00
Duke Leto
e1d5c5b731 Bump version to 3.6.3 and ++ proto version 2021-02-25 16:07:27 -05:00
Duke Leto
15ef25bf65 Try hard to find asmap.dat in all scenarios: src, binary, packages 2021-02-23 11:36:57 -05:00
Duke Leto
974a6f11d5 Merge branch 'master' of https://git.hush.is/hush/hush3 2021-02-23 10:57:49 -05:00
Duke Leto
00a7437ad8 Add -fPIC to make wolfssl happy on Ubuntu 16.04 2021-02-23 07:54:40 -08:00
Duke Leto
cec16658f1 Comments for future historians 2021-02-23 07:43:28 -05:00
Duke Leto
5ac04de029 Update manpages 2021-02-21 08:21:31 -05:00
Duke Leto
e2e6e44ca4 Add new -maxdebugfilesize CLI option and default to 15MB 2021-02-16 13:34:20 -05:00
Duke Leto
f0eccfcbd5 Update checkpoints 2021-02-16 08:39:31 -05:00
Duke
25aaca1283 Turn on ASN map for peer bucketing by default
The -asmap CLI arg now is given data by default, the first cryptocoin
that I am aware doing this. Bitcoin Core has let asmap stuff languish
on branches and PRs for a very long time, and it indeed has improved,
but people in the streets needs something Right Now.

In Bitcoin Core, -asmap is turned off by default and additionally, it's
quite annoying to generate the file to give to it, which is not included
with Bitcoin Core for either licensing or drama reasons, pick one.

bitcoin-asmap looks promising, but still, will not be enabled by
default, if it ever is merged:

https://github.com/bitcoin/bitcoin/pull/18573

In Hush, we decided to turn it ON BY DEFAULT and additionally,
revolutionarily, we give users the fucking data to use the damn feature,
by default, without them having to do anything. Ignorance is bliss, just
like Extreme Privacy.

Recently SD 1.1.1 learned to do this in it's own inimitable way, so that
release supports this feature without having Hush 3.6.2.

Why is ASN mapping always better than /16 (Class B) Bucketing?

It's just basic math.

  * A /16 means 65K "buckets" that a peer can be put into
  * Current (Jan 2020) ASN map has 7.4M buckets

That means the ASN bucketing method has over 100000 times more buckets
to put peers into, which means finer-grained filtering of peers
into actual logical networks intead of just IP addresses that are close.

Even an old out of date ASN map will always bucket peers better than a
/16, and all cryptocoins should migrate to doing this by default.

The main reason for this ASN bucketing is to defend against P2P layer
attacks such as the "Erebus Attack"

https://erebus-attack.comp.nus.edu.sg/
2021-02-08 22:04:26 -05:00
Duke Leto
9dc5e4e0e4 Default to using contrib asmap if -asmap CLI arg is specified with no argument 2021-02-08 12:10:25 -05:00
Duke Leto
b870172671 bump ver and copyright year 2021-02-08 11:44:32 -05:00
Duke Leto
48159bd650 Update network RPC docs 2021-02-08 08:56:10 -05:00
Duke Leto
000ef4ac91 Keeping HUSH on the down low 2021-01-27 13:39:27 -05:00
Duke Leto
cf57365698 Deletions and cleanups 2021-01-26 08:56:08 -05:00
Duke Leto
ca4fb7b9a0 TLS tweaking and freaking 2021-01-24 19:30:54 -05:00
Duke Leto
415636af68 Improve TLS p2p error-handling and reduce logspam 2021-01-24 15:57:21 -05:00
Duke Leto
1488a03f1c Improved TLS error handling and teach getpeerinfo about cipher of each connection 2021-01-24 15:06:34 -05:00
Duke Leto
f0e242632d Hide some logspam behind -zdebug 2021-01-24 15:05:41 -05:00
Duke Leto
c1b0a84b3a Cleanup dead code and less logspam 2021-01-24 13:29:27 -05:00
Duke Leto
c9b4dfa9c7 Force WolfSSL side-channel resistance
There seems to be some build-bug in WolfSSL, such that even though
--enable-harden (HARDEN) is default, it's not set correctly in options.h .

So we define it correctly just after parsing all other config options
BUT BEFORE we load the rest of WolfSSL headers.

These will be defined no matter what options are given to wolfssl ./configure:

ECC_TIMING_RESISTANT
TFM_TIMING_RESISTANT
2021-01-24 13:09:25 -05:00
Duke Leto
2485eb6e5e cleanup 2021-01-24 13:06:16 -05:00
Duke Leto
1f4c4f27e6 Refactoring 2021-01-24 08:51:17 -05:00
Duke Leto
cf2ce8cde0 Checkpointz 2021-01-24 05:08:01 -05:00
Duke Leto
1189208779 Remove some sprout tests 2021-01-23 22:53:32 -05:00
Duke Leto
0a99c80150 Optimize mempool by removing unnecessary sprout checks 2021-01-23 22:51:57 -05:00
Duke Leto
60108cf105 Fix ALIGN16 build warning and remove more joinsplit dingleberriez 2021-01-23 22:42:03 -05:00
Duke Leto
482990936f Cleanup 2021-01-23 22:30:56 -05:00
Duke Leto
2e31b7d2dc lol 2021-01-23 22:18:57 -05:00
Duke Leto
ed7ed6d193 Hush hush hush 2021-01-23 20:55:36 -05:00
Duke Leto
fe95a524fa Hush dat mempool 2021-01-23 20:51:11 -05:00
Duke Leto
8f70c5c356 HUSHCC 2021-01-23 20:47:44 -05:00
Duke Leto
0eb6887cd7 Do not create _7776 files 2021-01-23 20:45:35 -05:00
Duke Leto
a9477ea5a1 Port Bitcoin PR#13131 to fig Windows SIGTERM bug 2021-01-10 12:49:58 -05:00
Duke Leto
cde6d33ad1 The term 'whitelist' is racist and so we choose to call this feature 'allowlist' 2021-01-10 10:46:22 -05:00