Commit Graph

30468 Commits

Author SHA1 Message Date
Duke Leto
30bfc7be3a Add asmap to linux binary script 2021-02-22 08:20:32 -05:00
Duke Leto
3f7d51ce60 Add asmap.dat to Debian package 2021-02-22 08:15:19 -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 Leto
1c17315073 Merge branch 'asmap' into dev 2021-02-08 22:24:44 -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
da27ee50eb Add ASN map data
This data will be used by hushd, SD and potentially other GUI clients,
so it makes the most sense for it to live here.
2021-02-06 11:26:33 -05:00
Duke Leto
d5cc1a459c Overview of Hush doc 2021-01-28 05:02:41 -05:00
Duke Leto
abed6ee77f Emoji are essential to a functioning society 2021-01-28 02:34:31 -05:00
Duke Leto
94b593662d Update relnotes 2021-01-28 02:31:24 -05:00
Duke Leto
6cd14dd63d Add some details about 3.6.1 release 2021-01-27 13:55:37 -05:00
Duke Leto
4902388692 Merge branch 'master' into dev 2021-01-27 13:42:38 -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
527c862cd2 Bump version and copyright year 2021-01-24 19:33:40 -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
cf9dc41361 Update to WolfSSL 4.6.0 which has XChaCha20 2021-01-24 13:06:37 -05:00
Duke Leto
2485eb6e5e cleanup 2021-01-24 13:06:16 -05:00
Duke Leto
93d1fd37f7 update manpage script 2021-01-24 13:06:01 -05:00
Duke Leto
f75bcb3ed3 update tests 2021-01-24 13:05:40 -05:00
Duke Leto
810c0ebe8b update docs 2021-01-24 13:05:28 -05:00
Duke Leto
f60a3e125e cleanup makefile 2021-01-24 13:05:18 -05:00
Duke Leto
d6b850a855 Add protipz for hushdevz 2021-01-24 11:15:50 -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
5554b760f4 Delete the kmd bash completion scripts which I originally wrote, lol 2021-01-24 04:47:10 -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
Duke Leto
70f9ac87b6 We do not know the gender of Satoshi, and it is a dumb concept anyway 2021-01-10 09:56:40 -05:00
Duke Leto
8fe3e238f0 Exclusively TLS connections at p2p layer; dump peers more often 2021-01-10 09:54:42 -05:00
Duke Leto
e05a4e4733 Merge branch 'dev' of https://git.hush.is/hush/hush3 into dev 2021-01-07 16:47:05 -05:00
Duke Leto
2733101a6a Harden p2p layer against Eclipse Attacks 2021-01-07 16:46:30 -05:00