BIPs 157 & 158: Block Filtering stuff #636

pull jimpo wants to merge 1 commits into bitcoin:master from jimpo:client-side-filtering changing 3 files +916 −0
  1. jimpo commented at 10:20 pm on January 17, 2018: contributor

    This is a revision of #609 that is intended as a replacement due to the number of substantial changes. Test vectors will be added once the BIP has been reviewed by the community and the reference implementation is updated.

    Abstract

    This BIP describes a new light client protocol in Bitcoin that improves upon currently available options. The standard light client protocol in use today, defined in BIP 37, has known flaws that weaken the security and privacy of clients and allow denial-of-service attack vectors on full nodes. The new protocol overcomes these issues by allowing light clients to obtain compact probabilistic filters of block content from full nodes and download full blocks if the filter matches relevant data.

    New P2P messages empower light clients to securely sync the blockchain without relying on a trusted source. This BIP also defines a filter header, which serves as a commitment to all filters for previous blocks and provides the ability to efficiently detect malicious or faulty peers serving invalid filters. The resulting protocol guarantees that light clients with at least one honest peer are able to identify the correct block filters.

    State of Implementation

    We’ve tested the implementation of both a light client implementing this BIP, as well as the serving full-node on Bitcoin’s testnet over the past several months. Additionally, this new operating mode also serves as the basis for our light weight Lightning node. These implementations are based on an earlier version of the spec, and require some updates.

  2. Roasbeef cross-referenced this on Jan 17, 2018 from issue new bip: compact client side filtering by Roasbeef
  3. jimpo force-pushed on Jan 18, 2018
  4. jimpo cross-referenced this on Jan 18, 2018 from issue Build tx index in parallel with validation by jimpo
  5. luke-jr commented at 5:08 am on January 18, 2018: member
    Please use BIP number 158.
  6. luke-jr added the label New BIP on Jan 18, 2018
  7. luke-jr renamed this:
    Client Side Filtering
    BIP 158: Client Side Block Filtering
    on Jan 18, 2018
  8. jimpo commented at 5:19 am on January 18, 2018: contributor
    @luke-jr Thanks! There are two BIPs now though. It would be nice to get two sequential numbers.
  9. luke-jr commented at 5:30 am on January 18, 2018: member
    Two BIPs? What am I overlooking? I don’t see that?
  10. jimpo commented at 5:35 am on January 18, 2018: contributor

    There are two files. They are related, but separate BIPs.

    1. Client Side Block Filtering
    2. Compact Block Filters for Light Clients
  11. luke-jr commented at 5:35 am on January 18, 2018: member
    Sorry, totally overlooked that this PR had two files.. Let’s go with 157 & 158 then? Also, note there is no Editor key in the preamble.
  12. jimpo commented at 5:36 am on January 18, 2018: contributor
    Great, thanks. Will update shortly.
  13. luke-jr renamed this:
    BIP 158: Client Side Block Filtering
    BIPs 157 & 158: Block Filtering stuff
    on Jan 18, 2018
  14. jimpo force-pushed on Jan 18, 2018
  15. jimpo force-pushed on Jan 18, 2018
  16. jimpo force-pushed on Jan 18, 2018
  17. jimpo force-pushed on Jan 18, 2018
  18. jimpo force-pushed on Jan 18, 2018
  19. jimpo force-pushed on Jan 18, 2018
  20. jimpo force-pushed on Jan 18, 2018
  21. jimpo force-pushed on Jan 19, 2018
  22. jimpo commented at 9:40 pm on January 22, 2018: contributor
    @luke-jr Anything else required for merge here?
  23. BIP 157 & 158: client-side block filtering. 996c7c8e88
  24. jimpo force-pushed on Jan 22, 2018
  25. luke-jr commented at 2:42 am on January 23, 2018: member
    Looks good
  26. luke-jr merged this on Jan 23, 2018
  27. luke-jr closed this on Jan 23, 2018

  28. hkjn commented at 11:57 am on January 23, 2018: none

    Maybe you’re already aware, but FYI there’s a remaining TODO in BIP158 for test vectors:

    cc @jimpo @luke-jr

  29. jimpo deleted the branch on Mar 8, 2018
  30. jimpo cross-referenced this on Apr 20, 2018 from issue Build txindex in parallel with validation by jimpo
  31. sipa referenced this in commit a07e8caa5d on Apr 26, 2018
  32. crwatkins cross-referenced this on Jun 20, 2018 from issue add countermeasure -- do not update blockchain data filters by kristovatlas
  33. HashUnlimited cross-referenced this on Sep 6, 2018 from issue Build txindex in parallel with validation by HashUnlimited
  34. UdjinM6 referenced this in commit 2924424924 on May 21, 2021
  35. UdjinM6 referenced this in commit f3ce0156a1 on May 25, 2021
  36. UdjinM6 referenced this in commit 7ff6515c88 on May 25, 2021
  37. UdjinM6 referenced this in commit 0f9f133f78 on Jun 5, 2021
  38. gades referenced this in commit 997422aee5 on Apr 30, 2022
  39. malbit referenced this in commit 7a3fadc360 on Aug 7, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bips. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-30 03:10 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me