1
0
mirror of https://github.com/lightning/bolts.git synced 2024-11-19 01:50:03 +01:00
BOLT: Basis of Lightning Technology (Lightning Network Specifications)
Go to file
Matt Corallo 2e8f2095a3 Remove zlib compression gossip query support
Gossip query compression is not very useful - it was added for
mobile clients to, in theory, sync the gossip data directly from
P2P peers, but to my knowledge no mobile clients actually use it
for that, or at least use it where the gossip *query* data is a
substantial portion of their overall bandwidth usage.

Further, because of the semantics of `gossip_timestamp_filter`, its
impractical to ensure you receive a reliable, full view of the
gossip data without re-downloading large portions of the gossip
data on startup.

Ultimately, gossip queries are a pretty non-optimal method of
synchronizing the gossip data. If someone wants highly optimized
gossip data synchronization a new method based on set
reconciliation needs to be propose.

Finally, the current gossip query encoding semantics do not allow
for negotiation and instead require all lightning implementations
take a zlib dependency in some form or another. Given the recent
zlib decoding memory corruption vulnerability, this seems like an
opportune time to simply remove the zlib support, requiring that
nodes stop sending compressed gossip query data (though they can
support reading such gossip query data as long as they wish).

This is an alternative to the suggested gossip query encoding
support in #825.
2022-04-21 18:23:38 +00:00
bolt04 bolt04: minor JSON fix and generate the exact number of bytes for the padding 2020-01-24 18:17:10 +01:00
bolt07 Add test vector for extended queries 2019-09-16 22:36:59 +02:00
tools tlvs -> tlv_stream in extract-formats.py 2020-11-09 13:10:22 -06:00
.aspell.en.pws Fix typo and aspell list. (#963) 2022-02-25 12:17:18 +01:00
.copy-edit-stylesheet-checklist.md Fix typos 2019-09-26 06:12:41 +00:00
.gitattributes Make Markdown linguist-detectable (#930) 2021-10-25 20:55:05 +02:00
.travis.yml spelling: check all the .md files 2019-07-28 07:03:19 +00:00
00-introduction.md Make it explicit when to send warnings, errors, fail channel and close connection. 2021-12-14 10:32:22 +10:30
01-messaging.md BOLT 1: adds remote address to optional init_tlvs 2022-01-07 16:39:19 +01:00
02-peer-protocol.md Echo channel_type in accept_channel 2022-03-14 14:58:34 -05:00
03-transactions.md Clarify the sighash types for HTLC Success and Timeout transactions (#954) 2022-01-31 21:05:20 +01:00
04-onion-routing.md Add payment metadata to payment request 2022-01-03 20:09:14 +01:00
05-onchain.md Clarify the sighash types for HTLC Success and Timeout transactions (#954) 2022-01-31 21:05:20 +01:00
07-routing-gossip.md Remove zlib compression gossip query support 2022-04-21 18:23:38 +00:00
08-transport.md Replace RFC7539 with RFC8439 (#763) 2020-08-03 22:56:00 +02:00
09-features.md anchors: follow up changes after initial zero fee anchors merge (#903) 2022-01-04 09:26:43 +01:00
10-dns-bootstrap.md BOLT 10 copy edit (#440) 2018-08-07 00:10:11 +00:00
11-payment-encoding.md Add payment metadata to payment request 2022-01-03 20:09:14 +01:00
CONTRIBUTING.md CONTRIBUTING.md: first draft of how to write and change spec. 2019-07-28 07:03:19 +00:00
README.md Fix typo in name mailing list name (#931) 2021-10-27 15:54:09 +02:00

Lightning Network In-Progress Specifications

The specifications are currently a work-in-progress and currently being drafted.

Pull requests and comments welcome, seeking input from community stakeholders.

Discussion available on the lightning-dev mailing list.

Start here for Table of Contents

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.