summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaius Cosades <cosades@gmx.com>2018-05-16 23:22:47 +0200
committerbitcoindev <bitcoindev@gnusha.org>2018-05-16 21:22:50 +0000
commit173aed8e82c49dc0ef8f8658d7311e2926c9aa5a (patch)
tree4c1fb599dec4577b74a9ecddbaadc0c7f1fb1f81
parent95d05450f755a6478a390e79f3ac5b9827b99480 (diff)
downloadpi-bitcoindev-173aed8e82c49dc0ef8f8658d7311e2926c9aa5a.tar.gz
pi-bitcoindev-173aed8e82c49dc0ef8f8658d7311e2926c9aa5a.zip
[bitcoin-dev] Moving away from BIP37, unsetting NODE_BLOOM
-rw-r--r--9b/15bd495db46940e66eea4e091b3c7b6005773e71
1 files changed, 71 insertions, 0 deletions
diff --git a/9b/15bd495db46940e66eea4e091b3c7b6005773e b/9b/15bd495db46940e66eea4e091b3c7b6005773e
new file mode 100644
index 000000000..8c86f1aec
--- /dev/null
+++ b/9b/15bd495db46940e66eea4e091b3c7b6005773e
@@ -0,0 +1,71 @@
+Return-Path: <cosades@gmx.com>
+Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
+ [172.17.192.35])
+ by mail.linuxfoundation.org (Postfix) with ESMTPS id 9FA29D3A
+ for <bitcoin-dev@lists.linuxfoundation.org>;
+ Wed, 16 May 2018 21:22:50 +0000 (UTC)
+X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6
+Received: from mout.gmx.net (mout.gmx.net [212.227.15.19])
+ by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 7FA65683
+ for <bitcoin-dev@lists.linuxfoundation.org>;
+ Wed, 16 May 2018 21:22:49 +0000 (UTC)
+Received: from [77.111.244.4] ([77.111.244.4]) by
+ 3c-app-mailcom-bs10.server.lan (via HTTP);
+ Wed, 16 May 2018 23:22:47 +0200
+MIME-Version: 1.0
+Message-ID: <trinity-7531fbc9-dd91-4b67-a415-605d261d7851-1526505767645@3c-app-mailcom-bs10>
+From: "Caius Cosades" <cosades@gmx.com>
+To: bitcoin-dev@lists.linuxfoundation.org
+Content-Type: text/plain; charset=UTF-8
+Date: Wed, 16 May 2018 23:22:47 +0200
+Importance: normal
+Sensitivity: Normal
+X-Priority: 3
+X-Provags-ID: V03:K1:cRmNtvd3escogoZTOUlBL2bZxSOBxvaO0E19xanGF9h
+ w4wXYYpO3LIt833rW7px8NMV/U6jKWvBRptShhVAdQHzb8jC4P
+ ireZhP+OWeZs/7Srcum7eJhEG1j18pbaoLPIetvuUSlHc7WSSk
+ xzO8qISZi0d0Cm44Rhzeg+9FEbNVRJjXRmF/FFtVuuqi4VuP/s
+ 8gkw9u2dCPfq7zmWHpx5sM7JcuV7MijUqh6expAL/vCLvbPB9j
+ VIR99GUUy8hqa7jHHZl6Btjin1IG1OwvqCRolCREoYkaAOX+sc 7GphW8=
+X-UI-Out-Filterresults: notjunk:1;V01:K0:wAeBxVr6Qek=:T6/ayEfMUSvDCnFkdQeLEZ
+ BB5XTdvtMAqcuVIQIZRp7UJqwmrVQOrv1KWz508eClysDgk9/gGsndW7QrOHO8yj3DwYJuhds
+ zER5q4oL65lP7Fttuzc2gke4RdEjXfWFDFkVsT+RuN4+AiqnBQEhesmMVdnKnO5U78+nMNz0z
+ 51GWf2c1J5bh8Zs1vDZAZulJEm4oa847zxngrbkVbOnfMgzZEy8YjbmdQZ9PMc+xHKtgd58Az
+ F6Za3s7LtxxTLTrti3Y/5nJFSehl44bjz8jSx0c4drtZ5vdbCkqN+9hTVn7ytT07jlvHWDHas
+ zwgos+3LY1w/PBps3QONyzzLKPZ9KdOoLK5QhU+cAeCYmUbTC/oFl0bU7USNNU9G1Zn42UYRB
+ 18ILiZQq9avRaWf3U7Jw1xRwRQ3j0At4Yow/KaqhiAn3XPFc08Ml+c/22sCC8phbrwMS1gi72
+ 5Hsv5C/cz6HFAuXMyWmzaOOwcZ05LrfHvblNJILPWDrnXAUVZFsD
+X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM,
+ RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1
+X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
+ smtp1.linux-foundation.org
+X-Mailman-Approved-At: Wed, 16 May 2018 21:24:02 +0000
+Subject: [bitcoin-dev] Moving away from BIP37, unsetting NODE_BLOOM
+X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
+X-Mailman-Version: 2.1.12
+Precedence: list
+List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
+List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
+ <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
+List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
+List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
+List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
+List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
+ <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
+X-List-Received-Date: Wed, 16 May 2018 21:22:50 -0000
+
+As previously discussed[0][1][2] on the mailing list, github issue commentary, and IRC channels, there's substantial reason to disable BIP37 in network nodes which are getting stronger as the size of the chain increases. BIP37 has significant denial of service issues which are unsolvable in the design, it introduces undue load on the bitcoin network by default, and doesn't provide an acceptable amount of security and reliability to "lightweight wallets" as originally intended.
+
+BIP37 allows "lightweight wallets" to connect to nodes in the network, and request that they load, deseralize, and expensively apply an arbitrary bloom filter to their block files and mempool. This should never have been the role of nodes in the network, rather it should have been opt-in, or performed by a different piece of software entirely. The inability of the nodes to cache the responses or meaningfully rate limit them makes it detrimental to serve these requests.
+
+BIP37 was intended to have stronger privacy than it does in reality[3][4], where effectively any node that can capture `filterload` and `filteradd` responses can trivially de-anonymize an entire wallet that has connected irrespective of the amount of noise they add to their filters. The connected node lying by omission is undetectable by any wallet software, where they will be lead to believe that there are no matching responses; this is counter-able by further destroying privacy and loading down the network by having multiple peers simultaneously return filter results and hoping that at least one isn't lying.
+
+NODE_BLOOM has been implemented already which allows nodes to signal in their service message that they do, or do not support filtering. I suggest that in the next major release this is defaulted to 0, and any software relying on BIP37 move to using other filtering options, or another piece of dedicated software to serve the requests. Future releases of the reference software should remove BIP37 commands entirely.
+
+
+[0]: https://www.reddit.com/r/Bitcoin/comments/3hjak7/the_hard_work_of_core_devs_not_xt_makes_bitcoin/cu9xntf/?context=3
+[1]: https://github.com/bitcoin/bitcoin/issues/6578
+[2]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-August/010535.html
+[3]: https://jonasnick.github.io/slides/2016-zurich-meetup.pdf
+[4]: https://eprint.iacr.org/2014/763.pdf
+